본문 바로가기

[Exploit] BufferOver Flow - Easy Rm to MP3 Converter 버퍼 오버플로(buffer overflow) 또는 버퍼 오버런(buffer overrun)은 메모리를 다루는 데에 오류가 발생하여 잘못된 동작을 하는 프로그램 취약점이다. 컴퓨터 보안과 프로그래밍에서 이는 프로세스가 데이터를 버퍼에 저장할 때 프로그래머가 지정한 곳 바깥에 저장하는 것이다. 벗어난 데이터는 인접 메모리를 덮어 쓰게 되는데 다른 데이터가 포함되어 있을 수도 있는데, 손상을 받을 수 있는 데이터는 프로그램 변수와 프로그램 흐름 제어 데이터도 포함된다. 이로 인해 잘못된 프로그램 거동이 나타날 수 있으며, 메모리 접근 오류, 잘못된 결과, 프로그램 종료, 또는 시스템 보안 누설이 발생할 수 있다.버퍼 오버플로가 코드를 실행시키도록 설계되거나 프로그램 작동을 변경시키도록 설계된 입력에 의해 촉발.. 더보기
[Exploit] ShellCode 작성하기 간단히 쉘코드 만드는 방법입니다. [그림.1] 간단히 cmd /c calc 명령을 실행해서 계산기를 띄우는 쉘코드를 작성 할 것입니다. [그림.2] 우선 그림1에서 브레이크 포인트를 걸고 디버깅 모드로 전환하고나서 우측 마우스 클릭에 보면 어셈블리 항목이 있습니다. 그 항목으로 이동하면 그림.2와 같은 화면이 나오게 됩니다. 이 상태에서 또 우측 마우스 클릭을 하면 주소 표시, 소스코드 표시, 코드바이트 표시 등의 항목을 볼 수 가있는데 보시고 싶은 내용을 체크하면 다양하게 볼 수 있습니다. 이제 본격적인 쉘코드를 작성하겠습니다. 우선 쉘코드는 최대한 간략하게 코드를 최소화 시켜서 만들어 주는게 좋습니다. 그림.2에서 체크박스 안의 코드만 잘라서 메모장에 붙여 넣습니다. 그런데 하단 call쪽에 보면 W.. 더보기
UPX Manual unpacking 1. 개요 실행파일을 UPX로 Packing 하여 Unpacking 과정을 상세 분석하여 실행파일의 압축해제 원리를 파악한다. 파일 압축기법은 여러가지가 있으며 실행가능한 압축파일 또는 비실행 압축파일이 있습니다. 예로 실행가능한 압축파일은 UPX등이 있으며, 비실행 압축파일은 알X 빵X등이 있습니다. 여기서 실행가능한 압축파일 같은 경우는 손실 압축기법을 사용하여 실행가능한 형태의 파일의 용량을 줄여 압축을 하며 비손실 압축기법은 데이터손실 없이 압축되는 기법으로 알X 빵X등에 사용됩니다. 2. 테스트 환경 (해당 될시에만) 운영 체제 (OS) : Windows XP Service Pack 3 분석 도구 : IDA Pro 6.1, Hxd, PEView 분석 대상 : 지뢰찾기 게임(윈도우용) 3. UPX.. 더보기