该博客详细介绍了使用Python进行网络信息收集的五个关键步骤:1) 域名反查IP,2) 检测目标是否存在CDN,3) 执行端口扫描,4) 查询子域名,5) 探测内网主机信息。通过示例代码展示了如何利用Python的socket、os、whois和nmap等库进行网络扫描和信息探测。
摘要由CSDN通过智能技术生成
目录:
Python 开发 内外网信息收集的步骤:
(1)域名反查 IP 功能.
(2)识别目标是否存在CDN.
(3)端口扫描
(4)子域名查询
(5)内网主机信息探针.
Python 开发 内外网信息收集的步骤:
(1)域名反查 IP 功能.
import socket #使用socket库
ip 查询
ip=socket.gethostbyname('www.baidu.com') #www.baidu.com==域名
print(ip)
效果图.
(2)识别目标是否存在CDN.
识别目标是否存在CDN
采用nslookup执行结果进行返回IP的解析数目判断.
利用Python去调用执行系统命令
import os #调用 OS 模块.
cdn_data=os.popen('nslookup www.bilibili.com') #www.bilibili.com是域名.
cdn_datas=cdn_data.read() #read()是读取对象的意思.
x=cdn_datas.count(".") #count是统计字符串出现的次数.
print(x)
if x>10: #判断"."是否大于10.
print("cdn存在") #如果大于10,则存在.
else:
print("cdn不存在") #如果小于10,则不存在.
'
运行运行
效果图.
(3)端口扫描
1.原生自写socket协议tcp,udp扫描.
import socket #使用socket模块.
ports={'21','22','80','135','443','445','801','1433','3306',"3389"} #添加要查看的端口号.
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) #声明
for port in ports:
result=server.connect_ex(('192.168.43.53',int(port))) #192.168.43.53是IP地址,端口扫描时用的connect_ex
if result == 0: #判断result不等于0,则端口是打开的.
print(port+'|open')
else: #否则,端口是关闭的.
print(port+'|down')
2.whois查询
第三方库进whois查询也可以利用网上接口查询
import socket
import os
from whois import whois #调用whois 模块.
data=whois("www.baidu.com") #域名
print(data)
效果图.
(4)子域名查询
import time
def zym_check(url): #定义一个函数.
urls=url.replace('www','') #传输的时候去掉www
for zym_data in open('dic.txt'): #添加字典.
zym_data=zym_data.replace('\n','') #replace是替换字符的,就是将字符替换为空.
url=zym_data+urls
try: #出错也执行
p=socket.gethostbyname(url)
print(url+"-->"+ip) #查询这个域名
time.sleep(0.1) #添加延迟
except Exception as err:
pass #跳出,什么都不做.
if name == 'main': #引导文件
zym_check('网址') #网址.
(5)内网主机信息探针.
1.原生利用 ping 进行获取
2.原生利用 icmp,tcp,udp 等协议获取
3.利用第三方模块库 nmap 等加载扫描获取
import nmap
def nmapscan():
nm = nmap.PortScanner()
try:
data=nm.scan(hosts='192.168.53.0/24', arguments='-T4 -F')
print(nm.all_hosts())
print(nm.csv())
print(data)
except Exception as err:
print("error")
if name == 'main':
nmapscan()
学习链接:2021小迪渗透测试/网络安全工程师全套(从入门到就业)_哔哩哔哩_bilibili
文章知识点与官方知识档案匹配,可进一步学习相关知识
Python入门技能树首页概览442099 人正在系统学习中
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/weixin_54977781/article/details/124672474