鐘馗之眼-ZoomEye-Python__Python

來源:互聯網
上載者:User

鐘馗之眼-ZoomEyehttps://www.zoomeye.org/)網路裝置和網站等等一系列網路裝置的查詢工具,和老外那個Shodan一樣,它們一刻不停的在尋找著所有和互連網關聯的伺服器、網路攝影機、印表機、路由器等等,不停的掃描各個IP地址和不同的連接埠。


       所以,它們又成了那些(偽駭客,真正的駭客我真的很佩服)的利用工具,所以懂進攻,知防守,我們應該瞭解一下它,看看我們的網路裝置到底安不安全。

ZoomEye使用非常的簡單,只需要看著協助文檔命令就可以立刻學會使用它。快速鍵:Shift+/。


     例如:我要查詢網路攝影機(額,這個,嘖嘖),我在輸入框裡面輸入:wificam country:us 就會尋找美國的wifi網路攝影機,基本都是弱口令,就不說了,自己試試。

真正做到了不出門便知天下事。

如果不想這麼麻煩怎麼辦,好吧,人家平台已經給我們想好了,提供了API介面,我們只要按照調用規則調用即可,我給大家示範一下Python版本。

'''ZoomEye.org'''#encoding='gbk'import osimport sysimport requestsimport jsonimport timepage = 1# ZoomEye' Info (Person)# 輸入個人帳號密碼user = ''passwd = ''def Check():#POST get access_tokendata_info = {'username' : user,'password' : passwd}#dumps() -> python'object cast the type of jsondata_encoded = json.dumps(data_info)#POST respond = requests.post(url = 'https://api.zoomeye.org/user/login',data = data_encoded)try:# loads() -> json cast python'objectr_decoded = json.loads(respond.text) #get access_tokenaccess_token = r_decoded['access_token']except KeyError:return 'ErrorInfo'return access_token# 查詢文法def search():num = input('請選擇要搜尋的類型:1-> 裝置  2-> 網站\n')global kindDev kindDev = numsearch = ''search = input('請輸入要查詢的文法:\n')global queryquery = 'page=' + str(page) + '&' + 'query=' + search# 擷取Respose對象def getRespose():# get request'headerheaders = {'Authorization' : 'JWT ' + access_token}# format token and add to HTTP Headerrespond = requests.get(url = 'https://api.zoomeye.org/host/search?' + query,headers = headers)#print(respond)if respond.status_code == 401:print('需要授權登陸\n')sys.exit()return responddef getIp():result = json.loads(getRespose().text)output = open('ip.txt','a+')for i in range(0,10):print(str(result['matches'][i]['ip']) + ':' + str(result['matches'][i]['portinfo']['port']))output.write(str(result['matches'][i]['ip']) + ':' + str(result['matches'][i]['portinfo']['port']) + '\n')output.close()def ZoomEye():# get access_token from Check()global access_tokenaccess_token = Check()if 'ErrorInfo' == access_token:print('請正確輸入使用者名稱和密碼,以便擷取access_token')sys.exit()#print(access_token)# 查詢文法search();# 搜尋裝置if kindDev:page = int(input('請輸入搜尋網頁數:\n'))while True:getIp()time.sleep(0.5)page = page - 1if page == 0:sys.exit()# 搜尋網站elif kindDev:print('Web:\n')#for i in range(0,10):#print(str(result['matches'][i]['ip']) + ':' + str(result['matches'][i]['portinfo']['port']))if __name__ == '__main__':ZoomEye()

以上就是大概的調用方式,沒有仔細寫,日後慢慢補充。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.