轻量级前端框架助力开发者提升项目效率与性能
643
2022-10-12
【Python脚本进阶】2.3、利用FTP与Web批量抓“ 肉机”(上):构建匿名FTP扫描器
目录
一、简介
1.1、历史:
1.2、分析:
1.3、基础知识:
二、构建匿名FTP扫描器
2.1、概述:
2.2、函数:
2.3、实现:
一、简介
1.1、历史:一次被称为k985ytv 的批量入侵中, 攻击者使用了FTP 的匿名账户和偷来的用户名/密码获得了22400 个不同站点的控制权, 并在536000 个网页上挂了马(Huang,2011) 。利用获得的访问权限, 攻击者注入了一段JavaScript 代码, 将正常的网页重定向到乌克兰的一个恶意网站那里。一旦被黑掉的网站把浏览它的用户重定向到乌克兰的那台恶意主机那里之后, 恶意主机就会利用浏览器中的漏洞, 安装假的用来窃取用户信用卡信息的“ 防病毒程序” 。这次k985ytv 攻击最终取得了巨大的成功。1.2、分析:通过检查被黑服务器的FTP 日志,某个自动执行的脚本先连接到目标主机, 攻击者上传一个新的含有恶意重定向脚本的index.htm。被黑掉的服务器就能给任何一台访问其网页的有漏洞的浏览器种木马。1.3、基础知识:文件传输协议(FTP) 服务允许用户在一个基于TCP 的网络主机间传输文件。通常情况下, 用户使用用户名和相应的密码登录FTP 服务器。一些FTP 服务器提供匿名登录的能力。在这种情况下, 用户输入用户名“anonymous", 并提交一个电子邮件地址代替密码。
二、构建匿名FTP扫描器
2.1、概述:网站允许匿名FTP 访问是不安全的。但是许多网站为此提供的正当理由却是: 匿名FTP 访问有助于网站访问软件更新。2.2、函数:ftp_login() :登录 FTP 服务器,如果成功,该函数返回 TRUE。如果失败,则返回 FALSE 和一个警告。语法:ftp_login(ftp_connection,username,password)FTP.quit ():向服务器发送 QUIT 命令并关闭连接2.3、实现:利用Python 中的ftplib 库编写一个小脚本, 确定一个服务器是否允许匿名登录。anonLogin()函数接收的参数是一个主机名, 并返回一个布尔值来描述该主机是不是提供匿名FTP 登录。具体的操作过程是, 该函数尝试建立一个匿名FTP 连接。如果成功, 则返回'true" 。如果在建立连接的过程中函数抛出了一个异常, 则返回“False" 。运行 python anonLogin.py
import ftplibdef anonLogin(hostname): try: ftp = ftplib.FTP(hostname) ftp.login('anonymous', 'password') print('\n(*) ' + str(hostname) + ' FTP Anonymous Logon Succeeded.') ftp.quit() return True except Exception as e: print('[*]' + str(e)) print('\n[-]' + str(hostname) + 'FTP Anonymous Logon Failed.') return Falsehost = '192.168.190.131'anonLogin(host)
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~