설명하기에 앞서 Return Address는 ret gadget과 같은 말이다.

 

NOP Sledf랑 비슷해 보이는 RET Sled, ret sled란 무엇일까?

 

RET Sled란 RET를 여러번 호출해서 스택상의 위치를 계속 옮기는 작업이다.

RET는 무엇인가?

RET는 어셈블리어 명령어로 두가지로 구성된다.

 

pop eip, jmp eip

 

pop과 jmp는 많이 들어봐서 익숙할 것이다.

 

pop eip를 통해 stack pointer가 가리키는 값을 eip에 저장하고

jmp eip를 통해 eip에 저장된 그 위치로 이동하는 일을 수행한다.

ret가 실행됬을때의 ESP, EIP

(stack pointer는 ret가 실행되기전 leave명령어의 pop ebp가 실행된 후 RET+4를 가리킨다.)

 

leave 명령어로 인해 base pointer는 caller가 가지고 있던 값으로 복귀 되고 스택의 top은 return address를 가리키게 된다.

이때 ret의 명령어를 이용해 pop eip로 eip에 Return Address를 넣고 jmp eip로 retrun address로 이동하여 해당 주소에 있는 명령들이 실행되게 된다.

 

RET Sled는 이를 이용하여 ret 명령어를 계속해서 실행하는 것이다.

 

이를 이용하면 원하는 위치에 명령어를 넣고 실행시킬수 있다.

 

예시를 간단히 설명하겠다.

 

 

return address에 ret명령어의 주소가 있다면 ret가 한번 더 실행되고 pop eip가 일어나며 eip에는 뒤에 있는 주소가 들어가게 된다.

이를 계속 반복하여 원하는 위치를 ESP가 가리킬때 pop eip와 jmp eip를 통해 쉘같은 것들을 실행 시킬수 있는 것이다.

'Basic Concepts > System' 카테고리의 다른 글

SFPO(Stack Frame Pointer OverFlow)  (0) 2020.04.22
BOF(Buffer Over Flow)  (0) 2020.04.22
NOP Sled  (0) 2020.04.10
경쟁상태(race condition)  (0) 2020.02.25
스택(Stack)과 스택프레임(Stack Frame)  (0) 2020.01.26

NOP Sled 기법

 

NOP Slide = NOP Sled

미끄러지는 NOP이라는, NOP 썰매라는 뜻이며 NOP는 어셈블리어로 0x90으로 아무것도 하지 않는다는 명령어이다.

NOP은 0x90으로 표현되며 그 갯수 만큼의 주소 공간을 확보할수 있다.

그래서 NOP으로 shellcode의 앞부분을 채우면 정확하지 아니한 근처값의 주소여도 쉘코드가 실행되게 할수 있다.

 

앞주소를 0x90(NOP)로 채우면 아무것도 수행하지 않고 지나간 후 내가 의도한 값에 도달하기에 NOP Sled, NOP Slide라 불리어 진다.

'Basic Concepts > System' 카테고리의 다른 글

SFPO(Stack Frame Pointer OverFlow)  (0) 2020.04.22
BOF(Buffer Over Flow)  (0) 2020.04.22
RET Sled  (0) 2020.04.22
경쟁상태(race condition)  (0) 2020.02.25
스택(Stack)과 스택프레임(Stack Frame)  (0) 2020.01.26

유니버설 플러그 & 플레이는 범용 플러그 & 플레인 라고도 한다.

 

컴퓨터 네트워크 프로토콜의 집합으로 UPnP이라는 용어는 컴퓨터에 직접 장치를 유동적으로 부착하는 기술인 플러그 & 플레이에서 비롯된 것이다.

 

UPnP는 PC, 무선장비등을 네트워크에 접속시켰을시 서로가 서로를 인식하고 자동으로 인터넷과 웹 프로토콜을 사용하여 연결 해주는 일을 한다.

 

UPnP를 사용하면 네트워크 접속 환경을 자동으로 구성한다.

ex)

토렌트의 경우 설치시 별도의 포트포워딩 없이 작동이 되는데 이 또한 UPnP를 이용하였기 때문이다.
(설정을 통하여 포트포워딩을 확인할수 있다.)

'Basic Concepts > Network' 카테고리의 다른 글

생각날때마다 끄적이는 DDOS 대응방안  (0) 2020.04.24
curl(Clinet URL)  (0) 2020.03.17
SSL Strip Attack & SSL MITM Attack  (0) 2020.02.27
SSL (Secure Socket Layer)  (0) 2020.02.26
HSTS(HTTP Strict Trasport Security)  (0) 2020.02.25

메타정보 EXIF(exchangeable image file format)란 디지털 카메라의 이미지 파일 안에 저장되어 있는 파일 형식을 말한다.

 

  • 날짜와 시간 정보
  • 카메라 정보(카메라 제조사, 모델명)
  • 카메라 설정(초점 거리, 플래시, ISO 감도, 조리개, 셔터 속도, 회전 방향, 색 공간 등)
  • 저작권 정보(저가형 카메라는 아무 문자열이나 저장하지만, 고가형 카메라는 이 부분을 사용자가 설정할 수 있다)
  • 위치 정보(지원하는 기종에 한해서)

위와 같은 데이터를 내포하고 있다.

'Basic Concepts > Forensic' 카테고리의 다른 글

About Window Registry  (0) 2020.09.08
Window Artifact  (0) 2020.01.22

curl 은 커맨드 라인에서의 데이타 송수신 툴로 HTTP와 HTTPS 를 지원한다.

HTTP 기반의 서비스를 테스트하는 용도로 사용된다.

 

*http, https 뿐만 아니라  FTP, FTPS, SCP, SFTP, TFTP, TELNET, DICT, LDAP, LDAPS, FILE, SSL, HTTP POST, HTTP PUT, FTP uploading, HTTP form기반의 upload, proxies, cookies, user+password 인증도 제공한다.

 

사용법

curl [-option] [url]

 

옵션

-d HTTP Post data

-H 헤더 설정, 헤더 정보 전달

-i 헤더값 확인

-k https 사이트를 SSL certificate 검증없이 연결

-l 사이트의 header정보와 body정보 확인

-s 진행 내역이나 메시지 등을 출력 하지 않게 함

-v request, response의 헤더와 바디 확인

 

 

다른 플러그인 : https://wappalyzer.com/

'Basic Concepts > Network' 카테고리의 다른 글

생각날때마다 끄적이는 DDOS 대응방안  (0) 2020.04.24
UPnP(Universal Plug & Play)  (0) 2020.04.01
SSL Strip Attack & SSL MITM Attack  (0) 2020.02.27
SSL (Secure Socket Layer)  (0) 2020.02.26
HSTS(HTTP Strict Trasport Security)  (0) 2020.02.25

+ Recent posts