POST방식이여서 Body로 정보가 넘어가는 것을 볼 수 있다. 나머지는 GET방식이랑 똑같이 진행하면 된다.

 

Select도 GET방식과 똑같이 진행하면 되는데 1개의 행만 검색되므로 limit라는 옵션을 넣어 검색하면 된다.

 

limit [시작할 위치], [조회할 데이터 수]

'공부 > bWAPP' 카테고리의 다른 글

SQL Injection (Login Form/Hero)  (0) 2020.02.26
SQL Injection (AJAX/JSON/jQuery)  (0) 2020.02.25
SQL Injection (GET/Select)  (0) 2020.02.23
SQL Injection (GET/Search)  (0) 2020.02.21
Server-Side Includes (SSI) Injection  (0) 2020.02.20

https://github.com/nshalabi/SysmonTools

 

nshalabi/SysmonTools

Utilities for Sysmon. Contribute to nshalabi/SysmonTools development by creating an account on GitHub.

github.com

Sysmon Tools는 sysmonview와 sysmonshell로 이루어져 있다. SysmonView는 생성된 다양한 이벤트를 논리적으로 그룹화하고 링크하여 로그를 추적 및 시각화하여 보여준다. SysmonShell은 간단한 인터페이스를 통해 sysmon xml 구성을 작성하고 적용이 가능하다.

'공부 > 침해대응' 카테고리의 다른 글

[침해대응] 가상 환경 구축 #1 - ESXi  (0) 2020.03.25
ELK 설치  (0) 2020.02.27
시스몬(Sysmon) 설치  (0) 2020.02.20
윈도우 분석 도구  (0) 2020.02.19
정보 수집 방법(리눅스)  (1) 2020.02.19

get방식이며 url에 정보가 담겨있는 것을 확인할 수 있다. search처럼 검색하는 폼은 없지만 url을 통해서 충분히 취약점 검사를 할 수 있다.

url의 movie 뒤에다가 작은 따옴표를 넣으니 SQL 관련 오류가 확인되었다.

search에 했던거 그대로 union select 1,2,3,4,5,6,7을 넣으니 인젝션된 것을 확인할 수 있다. 단 movie=뒤에 붙는 숫자는 영화 번호로 확인되는데 존재하는 번호면 해당 영화 목록만 표시되니 없는 번호만 넣어야 한다.

'공부 > bWAPP' 카테고리의 다른 글

SQL Injection (AJAX/JSON/jQuery)  (0) 2020.02.25
SQL Injection (POST/Search, Select)  (0) 2020.02.24
SQL Injection (GET/Search)  (0) 2020.02.21
Server-Side Includes (SSI) Injection  (0) 2020.02.20
PHP Code Injection  (0) 2020.02.19

SQL 인젝션은 DB에 접근하는 폼에서 입력값을 검증하지 않을 경우, 악의적인 SQL 쿼리를 입력하여 DB 정보를 탈취하는 것이다. 시나리오를 살펴보자!

 

영화를 검색하는 폼이 나온다. 작은따옴표를 입력해서 취약점이 있는지 확인한다.

작은따옴표를 입력한 이유는 DB에서 작은따옴표로 문자 데이터를 구분하기 때문이다. 위와 같이 오류가 발생했으므로 쿼리 결과를 항상 참으로 만들고 나머지는 주석 처리하여 검색해보자.

모든 영화 목록들이 검색된 것을 볼 수 있다. 취약점을 확인했으니 다른 정보들도 알아보자.
SQL 질의어 중 SELECT는 특정 Column을 불러올 수 있는데 시나리오 사이트에 있는 영화 검색기도 select로 검색된 거다. 영화 검색기를 이용해서 select문으로 다른 정보들도 탈취를 할 수 있다. UNION을 사용하면 가능하다. union은 영어 단어 그대로 조합인데 두 개의 select문을 합칠 수 있다. 단 제약조건이 있는데 두 개의 select문의 컬럼 개수가 동일해야 한다.

 

union select 1# 로 시작해서 select 1,2# ... 점차늘려서 필드가 생성될때까지 검색해보자. 컬럼의 수가 같아야 한다는 제약조건을 이용한 방법이다. 2, 3, 4, 5에 sql구문을 넣어 원하는 정보를 나타낼수있다.

@@version 입력해 sql버전을 확인했다. 테이블 명도 확인할 수 있다.

'union select all 1,table_name,3,4,5,6,7 from information_schema.tables#

해석하자면 information_schema(데이터베이스)의 tables 테이블의 테이블 이름을 두번째 컬럼에 출력.

information_schema에는 데이터베이스에 속한 데이터들의 정보를 저장되어있는데 tables 테이블은 DB에 존재하는 테이블에 대한 정보를 제공한다.

 

users라는 테이블에 계정 정보가 있다고 추측할 수 있다. 이번에는 users 테이블의 컬럼 이름을 검색해보자.

'union select 1,column_name,3,4,5,6,7 from information_schema.columns where table_name='users'#

이제 컬럼의 이름도 알았으니 조합해서 사용자 계정 정보를 탈취해보자.

'union select 1,id,login,password,email,6,7 from users#

대응 방안으로는 mysql_real_escape_string 함수가 있다.

'공부 > bWAPP' 카테고리의 다른 글

SQL Injection (POST/Search, Select)  (0) 2020.02.24
SQL Injection (GET/Select)  (0) 2020.02.23
Server-Side Includes (SSI) Injection  (0) 2020.02.20
PHP Code Injection  (0) 2020.02.19
OS Command Injection  (0) 2020.02.19

https://docs.microsoft.com/en-us/sysinternals/downloads/sysmon

 

Sysmon - Windows Sysinternals

Monitors and reports key system activity via the Windows event log.

docs.microsoft.com

 

1. 관리자 권한으로 CMD를 실행한다.

2. cd 명령어로 Sysmon64.exe 파일이 있는곳으로 이동한다.

3. Sysmon64.exe를 입력해 실행하면 각종 명령어 옵션들이 나온다.

-i : 기본 설정으로 설치

-h : 해시값 설정  ex) Sysmon64.exe -i -h md5,sha256

-n : 네트워크 모니터링 설정

-u : unintsall

'공부 > 침해대응' 카테고리의 다른 글

[침해대응] 가상 환경 구축 #1 - ESXi  (0) 2020.03.25
ELK 설치  (0) 2020.02.27
Sysmom tools 설치  (0) 2020.02.24
윈도우 분석 도구  (0) 2020.02.19
정보 수집 방법(리눅스)  (1) 2020.02.19

SSI란 웹 페이지 내에서 CGI를 사용하지 않고서도 방문자 카운터, 로고 수정 등을 간단히 사용할 수 있게 해주는 기능이다. 시나리오를 확인해 보자.

'Lookup' 버튼을 누르니 .shtml이라는 확장자를 가진 사이트에 연결되었다. shtml은 ssi를 사용한다는 건데 특수문자에 대한 필터링이 되어있지 않으면 ssi커맨드를 통해 정보가 노출될 수 있다. 커맨드는 여러개 있지만 <!--#exec cmd="명령어"--> 를 사용해보겠다.

<!--#exec cmd="cat /etc/passwd"--> 입력 결과

미디엄 레벨에서는 addslashes라는 함수를 쓰는데, 이 함수는 (' " \) 작음 따옴표, 큰 따옴표, 역슬래시를 필터링한다.

'공부 > bWAPP' 카테고리의 다른 글

SQL Injection (GET/Select)  (0) 2020.02.23
SQL Injection (GET/Search)  (0) 2020.02.21
PHP Code Injection  (0) 2020.02.19
OS Command Injection  (0) 2020.02.19
iFrame Injection  (0) 2020.02.19

top 실행

op 명령어를 실행한 모습이다. CPU점유율, 메모리 사용량, 실행 프로그램 등 여러 가지 정보들을 보여주고 있다. 하지만 top 기능보다 보기 편한 프로그램이 있다.

htop라는 도구인데 데비안 계열은 apt-get, 레드헷 계열은 yum으로 설치가 가능하다.

htop 실행

htop라는 명령어로 실행 가능하며 하단에 보이는 대로 단축키가 있어 편리하다.

이미지 분석

1. FTK Imager
시스템을 이미징 하거나, 이미징 된 이미징 파일을 로드하거나, 로드 된 이미징(장치)로 부터 파일 분석 및 추출이 가능
2 .analyzeMFT
NFTS 파일 시스템의 $MFT파일을 분석. 위의 FTK Imager로 export한 $MFT를 분석
3. NTFS Log Tracker
NTFS 파일 시스템의 $LogFile 파일을 분석
4. WinPrefetchView
사용자가 시스템을 사용하면서 자주 사용한 응용 프로그램에 대한 저보를 담고 있는 Prefetch 파일 정보를 분석하여 출력
5. Everything
검색 도구, 정규식 표현을 이용하여 시스템에서 특정 날짜에 수정된 파일이나 생성된 파일을 검색하거나 특정 확장자의 파일을 검색
6. ShadowExplorerPortable
시스템에 생성된 복원지점을 확인 및 탐색하는 도구
7. VSC_Toolset
시스템에 생성된 VSC를 분석하여 이전 VSC와 현재 시스템의 VCS를 비교하여 수정된 사항을 분석 비교해주는 도구

 

레지스트리 수집과 분석

1. REGA
시스템에서 레지스트리를 수집하고 수집한 레지스트리에 저장된 정보를 분석
2. LastActivityView
접근하거나 실행된 파일에 대한 로그를 확인
3. JumpListsView
레지스트리 OpenSavePid, LastVisitPid, Recentdocs 정보에 기반하여 정보 분석
4. LinkParser
레지스트리 Recentdocs정보에 기반하여 lnk 파일 정보를 분석
5. UserAssistView
레지스트리 UserAssist를 기반으로 사용자가 실행한 파일이나, 바로가기를 통해 실행된 정보를 파싱하여 분석
6. USBDeview
시스템에 연결된 저장 매체 흔적을 분석

 

기타 분석

1. BrowsingHistoryView
시스템에 설치된 웹 브라우저의 로그를 파싱 하여 분석
2. Strings
파일에 저장된 문자열을 추출해주는 도구
3. OTL
시스템의 정보를 분석하여 변경된 사항에 대한 정보를 보고서 형태로 지원하는 도구
4. MagnetRAMCapture
현재 시스템의 메모리를 덤프
5. Volatility
오픈소스 메모리 분석 도구, 칼리리눅스에 기본적으로 설치

'공부 > 침해대응' 카테고리의 다른 글

[침해대응] 가상 환경 구축 #1 - ESXi  (0) 2020.03.25
ELK 설치  (0) 2020.02.27
Sysmom tools 설치  (0) 2020.02.24
시스몬(Sysmon) 설치  (0) 2020.02.20
정보 수집 방법(리눅스)  (1) 2020.02.19

+ Recent posts