【Python】IP&whois&系统指纹获取

ip查询-域名反查ip功能

def ip_check(url):
    ip=socket.gethostbyname(url)#通过IP反查域名
    print(ip)

whois查询

def whois_check(url):
    data=whois(url)
    print(data)

CDN判断-利用返回ip条数进行判断

def cnd_check(url):
    ns="nslookup"+url#linux和windows都是这个命令
    #data=
    os.system(ns)#这样打出来的含有汉字,不是纯数据

端口扫描

1.原生自写socket协议tcp,udp扫描
2.调用第三方模块扫描
3.调用系统脚本执行

ports={'21','22','135','443','445','80','1433','3306','3389'}
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
for port in ports:
	result=server.connect_ex(('47.75.212.155',int(port)))#netstat -ano看端口开启情况,常见端口
	if result == 0:
		print(port+'|open')
	else:
		print(port+'|down')
	#whois查询,第三方模块
	data={"www.whois8.com"}
	print(data)

子域名判断

"dict.txt"是个子域名的字典。
子域名查询
1.利用字典加载爆破进行查询
dict.txt是一个字典头文件。
2.利用bing或第三方接口进行查询 domain:youku.com
在这里插入图片描述

def zym_check(url):
	urls=url.replace('www','')
	for zym_data in open('dict.txt'):
		zym_data.replace('\n','')#用空替换空格换行符
		url=zym_data+urls
		try:
			ip=socket.gethostbyname(url)
			print(url+'->'+ip)
			#python代码报错处理。用tru ,except
			time.sleep(0.1)
		except Exception as e:
			pass#这样子就会只显示出正常结果

正常流程

if __name__ == '__main__':
	check=print(sys.argv[0])
	url=print(sys.argv[2])
	if check=='all':
		ip_check(url)
		cnd_check(url)
		whois_check(url)
		zym_check(url)
	#if check=='ip':
		#ip.check('')

	ip_check()
	cdn_check()
	whois_check()
	zym_check()

内网探测

对于内网nmap扫描,开虚拟机,.1.254都是本地的网卡。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值