这是做者的系列网络安全自学教程,主要是关于网安工具和实践操做的在线笔记,特分享出来与博友共勉,但愿您们喜欢,一块儿进步。前文分享了Web安全学习路线,并实现了最简单的木马和病毒代码。这篇文章将详细讲述Shodan搜索引擎的基本用法及Python命令行,具体内容包括Shodan获取指定IP地址信息、Shodan获取帐号信息、Shodan获取自身外部IP地址、Shodan检测是否有蜜罐等。python
做者做为网络安全的小白,分享一些自学基础教程给你们,但愿大家喜欢。同时,更但愿你能与我一块儿操做深刻进步,后续也将深刻学习网络安全和系统安全知识并分享相关实验。总之,但愿该系列文章对博友有所帮助,写文不易,大神们不喜勿喷,谢谢!若是对您有帮助,将是我最大的鼓励。git
PS:本文参考了B站、51CTO学院和参考文献中的文章,并结合本身的经验进行撰写,也推荐你们阅读参考文献。github
下载地址:https://github.com/eastmountyxz/NetworkSecuritySelf-studyweb
前文学习:
[网络安全自学篇] 一.入门笔记之看雪Web安全学习及异或解密示例
[网络安全自学篇] 二.Chrome浏览器保留密码功能渗透解析及登陆加密入门笔记
[网络安全自学篇] 三.Burp Suite工具安装配置、Proxy基础用法及暴库示例
[网络安全自学篇] 四.实验吧CTF实战之WEB渗透和隐写术解密
[网络安全自学篇] 五.IDA Pro反汇编工具初识及逆向工程解密实战
[网络安全自学篇] 六.OllyDbg动态分析工具基础用法及Crakeme逆向破解
[网络安全自学篇] 七.快手视频下载之Chrome浏览器Network分析及Python爬虫探讨
[网络安全自学篇] 八.Web漏洞及端口扫描之Nmap、ThreatScan和DirBuster工具
[网络安全自学篇] 九.社会工程学之基础概念、IP获取、IP物理定位、文件属性
[网络安全自学篇] 十.论文之基于机器学习算法的主机恶意代码
[网络安全自学篇] 十一.虚拟机VMware+Kali安装入门及Sqlmap基本用法
[网络安全自学篇] 十二.Wireshark安装入门及抓取网站用户名密码(一)
[网络安全自学篇] 十三.Wireshark抓包原理(ARP劫持、MAC泛洪)及数据流追踪和图像抓取(二)
[网络安全自学篇] 十四.Python攻防之基础常识、正则表达式、Web编程和套接字通讯(一)
[网络安全自学篇] 十五.Python攻防之多线程、C段扫描和数据库编程(二)
[网络安全自学篇] 十六.Python攻防之弱口令、自定义字典生成及网站暴库防御
[网络安全自学篇] 十七.Python攻防之构建Web目录扫描器及ip代理池(四)
[网络安全自学篇] 十八.XSS跨站脚本攻击原理及代码攻防演示(一)
[网络安全自学篇] 十九.Powershell基础入门及常见用法(一)
[网络安全自学篇] 二十.Powershell基础入门及常见用法(二)
[网络安全自学篇] 二十一.GeekPwn极客大赛之安全攻防技术总结及ShowTime
[网络安全自学篇] 二十二.Web渗透之网站信息、域名信息、端口信息、敏感信息及指纹信息收集
[网络安全自学篇] 二十三.基于机器学习的恶意请求识别及安全领域中的机器学习
[网络安全自学篇] 二十四.基于机器学习的恶意代码识别及人工智能中的恶意代码检测
[网络安全自学篇] 二十五.Web安全学习路线及木马、病毒和防护初探正则表达式
前文欣赏:
[渗透&攻防] 一.从数据库原理学习网络攻防及防止SQL注入
[渗透&攻防] 二.SQL MAP工具从零解读数据库及基础用法
[渗透&攻防] 三.数据库之差别备份及Caidao利器
[渗透&攻防] 四.详解MySQL数据库攻防及Fiddler神器分析数据包算法
该篇文章参考了如下文献,很是推荐你们阅读这些大牛的文章和视频:
机器学习在安全攻防场景的应用与分析 - 腾讯云FreeBuf官方
https://github.com/eastmountyxz
https://www.bilibili.com/video/av60018118 (B站白帽黑客教程)
https://www.bilibili.com/video/av63038037 (B站HACK学习)
https://www.bilibili.com/video/av68215785 (2019 网络安全/黑客基础课程新手入门必看)
Shodan的使用 - CSDN谢公子大神
2019/Web安全/漏洞挖掘/信息收集/SQLMAP/SSRF/文件上传/逻辑漏洞 (B站强推)shell
声明:本人坚定反对利用教学方法进行犯罪的行为,一切犯罪行为必将受到严惩,绿色网络须要咱们共同维护,更推荐你们了解它们背后的原理,更好地进行防御。数据库
信息收集对于渗透测试能够说是重中之重,正所谓“知己知彼,百战不殆”。因此咱们的信息收集也是同样,收集的信息越多越好。对于目标的信息收集,主要针对目标的服务器系统、数据库系统、中间件系统、应用程序系统、以及边界设备等信息。以及收集针对于系统管理员的信息收集。apache
对于信息收集方式,能够分为如下两类:编程
网络安全涉及的内容很是广,其主要的学习路线以下图所示。能够简单概括为:
虽然目前人们都认为Google是最强劲的搜索引擎,但Shodan才是互联网上最可怕的搜索引擎。与Google不一样的是,Shodan不是在网上搜索网址,而是直接进入互联网的背后通道。Shodan能够说是一款“黑暗”Google,一刻不停的在寻找着全部和互联网关联的服务器、摄像头、打印机、路由器等等。
Google不能搜索网上设备信息,而Shodan能够获取设备信息。并且不少时候服务器、摄像头、打印机、路由器等是须要管理员密码登陆的。
Shodan是用来搜索网络空间中在线设备的,你能够经过Shodan搜索指定的设备,或者搜索特定类型的设备,其中Shodan上最受欢迎的搜索内容是:webcam、linksys、cisco,netgear,SCADA等等。Shodan网址:https://www.shodan.io/
Shodan的工做原理是: 经过扫描全网设备并抓取解析各个设备返回的banner信息,经过了解这些信息Shodan就能得知网络中哪种Web服务器是最受欢迎的,或是网络中到底存在多少可匿名登陆的FTP服务器,或者哪一个ip对应的主机是哪一种设备。打开官网显示以下图所示:
Shodan使用以前须要注册与登陆,注册网址为:https://account.shodan.io/register
注册以后成果登陆,以下图所示。
登陆以后 Shodan API Key 是咱们后面须要使用的。这里请你们记录下:
API Key: Qy8iiPBIvnWxxxxxxxxxxxxHJ6ZUbdrW
假设咱们搜索“SSH”关键词,则返回结果以下图所示: (该段参考谢公子文章,强推你们阅读这位大神的博客)
上图的搜索结果包含两个部分,左侧是大量的汇总数据包括:
随后,在中间的主页面咱们能够看到包含以下的搜索结果:
该部分讲解Shodan搜索Webcam、指定IP地址、指定端口和具体城市。
在Explore搜索框中输入 webcam 进行搜索,此时会有一些不须要认证的摄像头,能够打开并查看;若是有认证,可使用默认密码或弱口令尝试登录,若是登录成功能够进行查看。
点击打开其中一个连接,其具体信息以下图所示。
某些网站须要登陆,能够尝试弱口令实现,因此网站的管理员必定要作好安全工做,密码复杂和验证、防火墙等都是必要的。
经过关键字port指定具体端口号。例如 port:22 指定搜索22号端口的主机信息,代表下面的主机开放了22号端口,对应SSH服务。
点击能够看到除了开放22号端口,还开放了其余端口,如5三、80、143等。
部分网址甚至能够查看服务器存放的地理位置,以下图所示。
Shodan搜索制定Ip地址:经过关键词host指定具体IP地址,例如 host:61.135.169.121,指定探测IP地址主机信息。这里做者以本身阿里云搭建的网站为例,host:60.205.24.36。
点击Map能够定位具体位置。
注意,部分网站会报错“No results found”,应该是网站进行了一些防御,致使查询失败,因此安全防护是很是重要的。
Shodan搜索具体城市:利用 city:城市名 指定搜索具体城市的内容,例如:city:guiyang port:22,搜索该城市开放22号端口的信息。
点击某个连接进入以下图所示。
而且包含详细的服务器信息,以下图所示。
Linux操做系统安装Shodan在Kali中安装演示:easy_install shodan
Windows系统在Python安装目录安装shodan:easy_install shodan 或 pip install shodan
使用Shodan给的API Key进行初始化操做,登陆Shodan,点击Show API Key能看到具体的值。
API Key: Qy8iiPBIvnWxxxxxxxxxxxxHJ6ZUbdrW
初始化命令以下:
shodan init Qy8iiPBIvnWxxxxxxxxxxxxHJ6ZUbdrW
Linux环境下初始化:
Windows环境下Shodan初始化:
Shodan启动与查找具体服务数量,使用shodan count Apache查询Apache服务器具体的数量。
我的感受Python命令行不太好看,而Linux系统下颜色分明,更好看点。
Shodan一个强大的功能是——命令行搜索。
利用 shodan search microsoft iis 6.0 搜索互联网上具体服务的信息,从shodan数据库中查询并返回搜索结果。
shodan search microsoft iis 6.0
search查找,直接将查询结果展现在命令行中,默认状况下只显示IP、端口号、主机名和HTTP数据
固然咱们也能够经过使用 –fields 来自定义显示内容,例如,咱们只显示IP、端口号、组织名称和主机名:
shodan search --fields ip_str,port,org,hostnames microsoft iis 6.0
若是须要查询tomcat服务器信息,则使用命令: shodan search tomcat。
内容太多的状况下,输入Q表示退出。
Shodan常见的命令包括:
命令以下:
shodan host ip地址
例如:shodan host 60.205.24.36,返回的信息包括所在国家、组织、最后更新信息时间、开放端口数、可能存在的漏洞CVE、端口运行的服务信息等。
Linux操做系统获取IP地址并查询主机信息以下图所示:
Windows环境下获取指定IP地址信息,这是很是重要的一个操做。
经过shodan info查看自身帐户的信息,包括认证的信息,由于我没有购买会员,因此都是0。
shodan info
使用shodan myip获取自身外部可见的ip地址。
shodan myip
利用shodan honeyscore查看是否有蜜罐保护。
shodan honeyscore
蜜罐
蜜罐技术本质上是一种对攻击方进行欺骗的技术,经过布置一些做为诱饵的主机、网络服务或者信息,诱使攻击方对它们实施攻击,从而能够对攻击行为进行捕获和分析,了解攻击方所使用的工具与方法,推测攻击意图和动机,可以让防护方清晰地了解他们所面对的安全威胁,并经过技术和管理手段来加强实际系统的安全防御能力。
蜜罐比如是情报收集系统。蜜罐好像是故意让人攻击的目标,引诱黑客前来攻击。因此攻击者入侵后,你就能够知道他是如何得逞的,随时了解针对服务器发动的最新的攻击和漏洞。还能够经过窃听黑客之间的联系,收集黑客所用的种种工具,而且掌握他们的社交网络。
其基本用法和上面的命令很相似,这里只经过编写Python代码实现相应的功能。
利用Python-shodan初始化API Key代码以下所示:
# -*- coding: utf-8 -*- import shodan #初始化 SHODAN_API_KEY = 'Qy8iiPBIvnWbixxxxxxxxxxx6ZUbdrW' api = shodan.Shodan(SHODAN_API_KEY)
利用Shodan API查询信息的Python代码以下:
# -*- coding: utf-8 -*- import shodan #初始化 SHODAN_API_KEY = 'Qy8iiPBIvnWbixxxxxxxxxxx6ZUbdrW' api = shodan.Shodan(SHODAN_API_KEY) #查询Apache主机数量 result = api.search('apache') print(result['total'])
输出结果以下图所示:
在上述代码中有个 result[‘total’],如何知道“total”这个键值的呢?你们能够到官网查询。
官方网站:https://developer.shodan.io/api
更多参数信息以下图所示:
针对制定IP地址进行查询。
# -*- coding: utf-8 -*- import shodan #初始化 SHODAN_API_KEY = 'Qy8iiPBIvnWbixxxxxxxxxxx6ZUbdrW' api = shodan.Shodan(SHODAN_API_KEY) #查询Apache主机数量 result = api.search('apache') print(result['total']) #查询制定IP地址 ip_res = api.host('59.110.244.199') print(ip_res['country_name'])
输出结果以下图所示:
更多参数建议查询官方网站,以下图所示。
利用Python-shodan编写基础查询脚本文件,建议同窗们能够尝试,但我我的不太喜欢运行中输入参数,因此没复现这部分代码。
这里咱们能够看到详细的参数,这些参数都是能够用于查询,并知足上面代码的命令行要求。
更多信息但愿读者结合官网API用法进行学习,做者后续也会深刻实例进行学习。
写到这里,一篇Shodan搜索引擎详解及Python命令行调用基本结束,但愿这篇基础文章对您有所帮助!尤为是网络安全的初学者,文章比较基础,也但愿大神们不喜勿喷。若是文章对您有帮助,将是我最大的鼓励,点赞、评论、阅读都行,与您同行,一块儿加油。
再忙再累,一想到你,我这张丑脸上就会泛起微笑。从三年前认识那一刻开始,你就好像阿芙洛狄忒从浪花里浮现同样,老是浮如今我心里深处。三周年快乐,更多思念见信中。
(By:Eastmount 2019-11-19 下午4点 写于武大 http://blog.csdn.net/eastmount/ )