简易FTP扫描器

思路:

(1)首先通过使用python的socket模块获取banner信息

(2)将banner信息与存在漏洞的版本的banner信息进行对比,如果有符合的那么说明就存在漏洞,否则不存在。

代码:

#encoding:utf-8
import socket                                                    #导入socket数据包
socket.setdefaulttimeout(2)                                       #设置网络超时时间
s=socket.socket()                                                 #创建一个socket对象
s.connect(("192.168.11.138",21))                                #使用socket连接目标服务器
ans=s.recv(1024)                                                  #从目标服务器接收信息
if ("Free Float Ftp Server (Version 1.00)" in ans):          #将接收到的信息与存在漏洞的版本进行对比,输出相应的结果print "Free Float Ftp Server is vulnerable"
elif ("3Com 3CDaemon FTP Server  Version 2.0" in ans):print  "3CDaemon FTP server is vulerable"
elif ("Ability Server 2.34 "in ans):print "Ability Server 2.34 is vulerable"
else:print "FTP server is not vulerable"

运行结果:

模块化FTP扫描

将FTP扫描写成一个功能函数的形式来调用:

代码:

#encoding:utf-8
import socket                                    #导入socket网络数据包
def retBanner(ip,port):                          #定义一个获取banner的功能函数try:                                         #异常处理socket.setdefaulttimeout(2)              #设置超时时间s=socket.socket()                        #创建socket对象s.connect((ip,port))                     #使用socket连接目标对象banner=s.recv(1024)                      #获取目标的banner信息return banner                            #返回banner信息except Exception,e:                          #异常处理print e.messagereturn
def main():                                     #定义main函数ip1="192.168.11.138"                        #设置要扫描的ip地址段ip2="192.168.11.139"                        #设置要扫描的ip地址段port=21                                     #设置要扫描的端口号banner1=retBanner(ip1,port)                 #调用banner函数获取banner信息if banner1 :print ip1+":"+banner1banner2=retBanner(ip2,port)if banner2:print ip2+":"+banner2if __name__ == '__main__':                      #调用main函数main()

运行结果:

第一个主机连接成功并且获取到了相应的banner信息,第二个主机不存在或者连接失败。

FTP漏洞扫描器

代码:

#encoding:utf-8
import socket                                    #导入socket网络数据包
def retBanner(ip,port):                          #定义一个获取banner的功能函数try:                                         #异常处理socket.setdefaulttimeout(2)              #设置超时时间s=socket.socket()                        #创建socket对象s.connect((ip,port))                     #使用socket连接目标对象banner=s.recv(1024)                      #获取目标的banner信息return banner                            #返回banner信息except Exception,e:                          #异常处理print e.messagereturn
def checkvalue(banner):if "FreeFloat Ftp Server (Version 1.00)"in banner:print "FreeFloat Ftp Server is vulnerable"elif "3Com 3CDaem FTP Server Version 2.0" in banner:print "3Com 3CDaem FTP Server is vulnerable"elif "Ability Server 2.34 "in banner:print "Ability Server is vulenerable"else:print "FTP is not vulenerable"def main():                                     #定义main函数ip1="192.168.11.137"                        #设置要扫描的ip地址段ip2="192.168.11.138"                        #设置要扫描的ip地址段port=21                                     #设置要扫描的端口号banner1=retBanner(ip1,port)                 #调用banner函数获取banner信息if banner1 :print ip1+":"+banner1checkvalue(banner1)banner2=retBanner(ip2,port)if banner2:print ip2+":"+banner2checkvalue(banner2)if __name__ == '__main__':                     #调用main函数main()

运行结果:

主要的思路还是一致的,而且代码设计思路也较为简单,可以自己思考!

HackTools————2.简单FTP网络扫描相关推荐

  1. Kali Linux网络扫描教程(内部资料)

    Kali Linux网络扫描教程(内部资料) 试读样张:http://pan.baidu.com/s/1qWuNSYw 前  言 Kali Linux是业内最知名的安全渗透测试专用操作系统.它的前身就 ...

  2. Kali Linux 网络扫描秘籍 第三章 端口扫描(三)

    第三章 端口扫描(三) 作者:Justin Hutchens 译者:飞龙 协议:CC BY-NC-SA 4.0 3.13 Dmitry 连接扫描 另一个可以对远程系统执行 TCP 连接扫描的 替代工具 ...

  3. NMAP网络扫描工具的安装与使用

    简介 NMAP是一款流行的网络扫描和嗅探工具也是一个强大的端口扫描类安全测评工具,被广泛应用在黑客领域做漏洞探测以及安全扫描,更多的nmap是一个好用的网络工具,在生产和开发中也经常用到,主要做端口开 ...

  4. 网络渗透测试实验二(网络扫描与网络侦察)

    实验目的:理解网络扫描.网络侦察的作用:通过搭建网络渗透测试平台,了解并熟悉常用搜索引擎.扫描工具的应用,通过信息收集为下一步渗透工作打下基础. 系统环境:Kali Linux 2.Windows 网 ...

  5. 【网络与系统安全实验】网络扫描与防御技术

    网络扫描与防御技术 扫描技术基础 什么是网络扫描器 网络扫描器可以通过执行一些脚本文件来模拟对网络系统进行攻击的行为并记录系统的反应,从而搜索目标网络内的服务器.路由器.交换机和防火墙等设备的类型与版 ...

  6. 【2023最新版】超详细NMAP安装保姆级教程,Nmap的介绍、功能并进行网络扫描,收藏这一篇就够了

    简介 从诞生之初,Nmap就一直是网络发现和攻击界面测绘的首选工具.从主机发现和端口扫描,到操作系统检测和IDS规避/欺骗,Nmap是大大小小黑客行动的基本工具. 为了绘制网络拓扑图,Nmap的发送特 ...

  7. 网络扫描工具Nmap使用教程(1)

    http://blog.sina.com.cn/s/blog_a1790a3701012tmo.html 1.简介 是什么:Nmap ("Network Mapper") 是一个免 ...

  8. 网络渗透实验1.0——网络扫描与网络侦察

    1.实验目的: 理解网络扫描.网络侦察的作用:通过搭建网络渗透测试平台,了解并熟悉常用搜索引擎.扫描工具的应用,通过信息收集为下一步渗透工作打下基础. 2.实验内容: 1.用搜索引擎Google或百度 ...

  9. 我谈网络扫描 -- 之三

    在本系列文章的第一,二部分(我谈网络扫描 -- 之一,之二),我们站在安全从业者的角度,讨论了网络扫描基础,各种端口和漏洞扫描技术及使用经验.接下来,我们讨论如何应对恶意网络扫描. 五. 如何应对网络 ...

最新文章

  1. 取代Python?Rust凭什么
  2. Hutool,一个贼好用的 Java 工具类库,用过都说好~
  3. eff java_eff java 15条
  4. 工作流引擎的硬功夫之1-表单自定义
  5. Java LocalDateTime类| 带示例的getDayOfWeek()方法
  6. 在win2k3上使用卡巴斯基6.0
  7. 自己制作的4X4光立方焊接时候出现的问题
  8. 解决andr_Android和iPhone浏览器大战,第2部分,为iPhone和Android构建基于浏览器的应用程序
  9. 【NodeJs】NodeJs中base16转码
  10. pdf里面的图片如何提取出来?
  11. 直播场景音频降噪,传统算法 VS AI 算法对比和实践
  12. 232转can转换器 最新工艺
  13. 提高信心的十个方法,助你考研坚持到底!
  14. AutoMapper源码解析
  15. dubbo服务暴露原理解析
  16. 激光切割机,激光切割机的几种导入方式
  17. 问题 A: 沙子的质量
  18. multiple definition of `yylloc‘
  19. JavaFX:截图功能
  20. 苹果录屏怎么设置_电脑怎么设置录屏?怎么设置电脑自动录屏?

热门文章

  1. sql server2016 安装成功后无法连接服务器localhost的一种解决方法
  2. Android 中高级面试必知必会,安卓开发指南
  3. Centos7.6 刷新DNS命令
  4. 使用python的scapy库,提供一个发送nbns询问包的一个示例代码
  5. 现在计算机的市场到底是饱和还是稀缺,为什么感觉现在的程序员很多?
  6. 蘑菇街陈琪:投资人的钱不好拿,拿了怎么花
  7. Camera CMOS Sensor成像原理
  8. 北斗RTK高精度定位在AI领域的应用
  9. 土拨鼠网站日记管理(分析推送二合一)】宝塔插件之自动爬取全站URL推送说明书
  10. python panda 库安装_python安装lib库