首页
课程
问答
CTF
社区
招聘
峰会
发现
排行榜
知识库
工具下载
看雪20年
看雪商城
证书查询
登录
注册
首页
社区
课程
招聘
发现
问答
CTF
排行榜
知识库
工具下载
峰会
看雪商城
证书查询
社区
二进制漏洞
发新帖
0
0
ShellCode没有正确执行,内容在堆栈中变了,请高手指点
发表于: 2014-11-25 16:12
4216
ShellCode没有正确执行,内容在堆栈中变了,请高手指点
ninjia远方
2014-11-25 16:12
4216
最近发现了某个软件的一个缓冲区溢出漏洞,按照绿皮书上的思路,可以成功溢出(缓冲区长度为155,接着的4个字节为EIP,缓冲区的入口地址为0x0012E498,因此直接利用缓冲区长度,放入弹框的shellcode,EIP的位置设为缓冲区入口地址,shellcode成功执行,弹出框框)。
现在遇到的问题是:我想让其弹出计算器来,使用看雪上那个经典弹出计算器的shellcode(144字节),按照上面类似的原理构造,最终计算器并没有弹出来。使用windbg查看堆栈内容,发现与实际shellcode不一样:原来shellcode中为 “FC 30“ 的地方,在堆栈中成了3F,接着后边又有一处不同,详细如下图所示。
请问各位前辈,为什么会出现这种情况?该如何解决?万分感谢!
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)
上传的附件:
02.jpg
(132.50kb,18次下载)
01.jpg
(76.50kb,33次下载)
收藏
・
0
免费
・
0
支持
分享
分享到微信
分享到QQ
分享到微博
赞赏记录
参与人
雪币
留言
时间
查看更多
赞赏
×
1 雪花
5 雪花
10 雪花
20 雪花
50 雪花
80 雪花
100 雪花
150 雪花
200 雪花
支付方式:
微信支付
赞赏留言:
快捷留言
感谢分享~
精品文章~
原创内容~
精彩转帖~
助人为乐~
感谢分享~
最新回复
(
12
)
HelloCrack
雪 币:
215
活跃值:
(90)
能力值:
( LV3,RANK:30 )
在线值:
发帖
20
回帖
209
粉丝
1
关注
私信
HelloCrack
2
楼
shellcode解码了,在shellcode前加sub,esp xxxx估计可以解决。
2014-11-25 17:08
0
ninjia远方
雪 币:
235
活跃值:
(214)
能力值:
( LV3,RANK:20 )
在线值:
发帖
14
回帖
39
粉丝
2
关注
私信
ninjia远方
3
楼
谢谢回复。试过这个办法,进入shellcode前先抬高栈顶,还是不管用。。。。
2014-11-25 17:13
0
hilylwz
雪 币:
31
活跃值:
(10)
能力值:
( LV2,RANK:10 )
在线值:
发帖
3
回帖
17
粉丝
0
关注
私信
hilylwz
4
楼
字符串问题。很多无法显示的code在文本框会变成问号“0x3f”,复制粘贴导致代码出错。写个转换器把code转换成ASCII码,然后在内存中还原执行
2014-11-26 08:37
0
ninjia远方
雪 币:
235
活跃值:
(214)
能力值:
( LV3,RANK:20 )
在线值:
发帖
14
回帖
39
粉丝
2
关注
私信
ninjia远方
5
楼
这个不是复制粘贴的哈,就是ASCII码(右边那个图就是原版shellcode),只是到内存执行了,windbg dump堆栈看到对应位置成了0x3f。
2014-11-26 09:09
0
dppdpp
雪 币:
23
活跃值:
(11)
能力值:
( LV2,RANK:10 )
在线值:
发帖
18
回帖
365
粉丝
0
关注
私信
dppdpp
6
楼
给shellcode自建个栈结构,大概12Byte就够用了当然,你code内要精打细算才行
2014-11-26 09:46
0
snowdbg
雪 币:
3171
活跃值:
(76)
能力值:
(RANK:250 )
在线值:
发帖
13
回帖
129
粉丝
2
关注
私信
snowdbg
6
7
楼
你方便的话把你测试代码发出来让大家跑下 看看问题何处,现在看数据头疼、眼花。。。还是直接调试来得快
2014-11-28 23:00
0
ycmint
雪 币:
1149
活跃值:
(888)
能力值:
( LV13,RANK:260 )
在线值:
发帖
28
回帖
893
粉丝
10
关注
私信
ycmint
5
8
楼
原来shellcode中为 “FC 30“ 的地方,在堆栈中成了3F---->
看编码 ,如果是 可显字符,到堆栈的实际地方会自动变化成ansic 表示的范围...
2014-12-4 08:27
0
huenshou
雪 币:
5
活跃值:
(31)
能力值:
( LV2,RANK:10 )
在线值:
发帖
1
回帖
4
粉丝
0
关注
私信
huenshou
9
楼
你抬高的栈顶不够吧
2014-12-4 09:54
0
ninjia远方
雪 币:
235
活跃值:
(214)
能力值:
( LV3,RANK:20 )
在线值:
发帖
14
回帖
39
粉丝
2
关注
私信
ninjia远方
10
楼
感谢大家的回复!!换了个方法解决了,用了一个只有75字节弹计算器的shellcode搞定的
2014-12-5 10:37
0
zhenwo
雪 币:
1555
活跃值:
(3103)
能力值:
( LV11,RANK:180 )
在线值:
发帖
30
回帖
246
粉丝
26
关注
私信
zhenwo
1
11
楼
转码试试,要不就是,软件用了,转大小写功能
2015-1-10 11:29
0
leeyth
雪 币:
64
活跃值:
(55)
能力值:
( LV5,RANK:60 )
在线值:
发帖
4
回帖
8
粉丝
0
关注
私信
leeyth
1
12
楼
你的特殊字符被过滤了,重新选择xor key,xor加密shellcode不要出现0x30就解决问题了。
2015-3-3 14:17
0
msf
雪 币:
69
活跃值:
(270)
能力值:
( LV3,RANK:20 )
在线值:
发帖
22
回帖
127
粉丝
5
关注
私信
msf
13
楼
你的shellcode的某些编码超出了ascii的表示范围自动转为了 ? ,就变成了内存中的0x3f 了使用纯字符的shellcode .
2015-4-2 11:47
0
游客
登录
|
注册
方可回帖
回帖
表情
雪币赚取及消费
高级回复
返回
ninjia远方
14
发帖
39
回帖
20
RANK
关注
私信
他的文章
[求助]一个C#与C++混合编写的DLL文件,使用C#调用了C++,请问如何逆向?
4972
[分享]TP-Link Archer路由器LAN RCE
33603
[求助]大家看看这个是用什么加密的??
6338
[分享]Mona.py manual
4492
ShellCode没有正确执行,内容在堆栈中变了,请高手指点
4217
关于我们
联系我们
企业服务
看雪公众号
专注于PC、移动、智能设备安全研究及逆向工程的开发者社区
谁下载
×
xihuanxue
flponline
KooJiSung
破九
fgzhanhao
hai海豚
yufengwang
AioliaSky
btmanbtman
huscj
whnet
郭兴华
kxjhcs
htpidk
Keoyo
HiHex
谁下载
×
testplay
BlueT
stoy
flponline
karpenter
破九
狗毛大圣
QEver
sunfun
wingdbg
ninjia远方
tojen
cqccqc
fatecaster
hai海豚
litintin
魔造师
宝宝的xql
地狱怪客
AioliaSky
无限游侠
btmanbtman
whnet
hualuore
starfly
htpidk
Keoyo
cvrock
HiHex
看原图
赞赏
×
雪币:
+
留言:
快捷留言
为你点赞!
返回
顶部