Python 开发 黑客内外网信息收集.(帮助 得到信息攻击计算机内外网.)

目录:

Python 开发学习的意义:

Python 开发 内外网信息收集的步骤:

(1)域名反查 IP 功能.

(2)识别目标是否存在CDN.

(3)端口扫描

(4)子域名查询

(5)内网主机信息探针.


Python 开发学习的意义:

(1)学习相关安全工具原理.

(2)掌握自定义工具及拓展开发解决实战中无工具或手工麻烦批量化等情况.

(3)在二次开发 Bypass,日常任务,批量测试利用等方面均有帮助.

 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

猜你喜欢

转载自blog.csdn.net/weixin_54977781/article/details/124672474