問題:1.更改源的問題(使下載提速)問題2:埠掃描器只能掃到一個埠
初次自己寫工具,感謝小迪師傅
使用到的模塊:
time(非必須) os socket whois(第三方庫)
目標:輸入域名后自動獲取其ip地址,判斷cdn服務,whois資訊查詢,爆破子域名,進行埠掃描
根據域名獲取ip
import socket
#ip=socket.getaddrinfo('baidu.com',8080) #該方法需要域名和埠兩個引數
ip=socket.gethostbyname('baidu.com')#根據域名獲取服務器ip
print(ip)
判斷網站是否使用了cdn技術
(使用了cdn技術的話,ping的ip可能不是服務器的真實ip)
import os
import time
def pd_cdn(ym):
q1=os.popen(f'nslookup {ym}')
q2=q1.read()#剛剛q2沒有數值,一番除錯后發現,回傳的q1的object資料只能被read一次,前面read了,后面就read不了了
q3=q2.count('.')#通過計算回傳資料中點的數量來判斷回傳了幾條ip地址
if q3>10:
print(f'{ym}使用了cdn技術')
else:
print(f'{ym}沒有使用cdn技術')
pd_cdn('www.baidu.com')
子域名收集
通過字典添加域名前綴,然后呼叫系統命令去ping,能ping通則說明該域名存在
import socket
def domain_scaner(ym,dic):#domain是域名的意思,傳入的第一個引數是主域名,第二個引數是字典路徑,都是字串格式
for ymqz in open(dic):
ymqz=ymqz.replace('\n','')#replace是對字串操作的方法,作用是替換字串中的特定字符
url=ymqz+'.'+ym#但是發現前綴和主域名拼接后不在同一行,因為讀取了dic.txt中的換行符,所以需要做一些小修改
try:
ip=socket.gethostbyname(url)#通過域名去查詢ip,域名存在就會回傳結果
jg=ip+'|'+url
print(jg+'\n')
except Exception as e:
pass
埠掃描
whois資訊查詢
import whois
q1=whois.whois('www.baidu.com')
功能集合
import whois
import os
import time
import socket
#whois查詢
def whois_check(ym):
q1=whois.whois(ym)
print(q1)
#ip判斷
def ip_check(ym):
#ip=socket.getaddrinfo('baidu.com',8080) #該方法需要域名和埠兩個引數
ip=socket.gethostbyname(ym)#根據域名獲取服務器ip
print(ip)
#判斷cdn
def pd_cdn(ym):
q1=os.popen(f'nslookup {ym}')
q2=q1.read()
q3=q2.count('.')
if q3>10:
print(f'{ym}使用了cdn技術')
else:
print(f'{ym}沒有使用cdn技術')
#子域名收集
def domain_scaner(ym):
for ymqz in open('dic.txt'):
ymqz=ymqz.replace('\n','')
url=ymqz+'.'+ym
try:
ip=socket.gethostbyname(url)
jg=ip+'|'+url
print(jg+'\n')
except Exception as e:
pass
#埠掃描
#功能集合
def information_check():
ym=input('輸入域名:')
ip_check(ym)
whois_check(ym)
pd_cdn(ym)
domain_scaner(ym)
information_check()
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/345640.html
標籤:其他
上一篇:BUUCTF-WEB
