成為頂級黑客--python絕技 閱讀筆記(一)

成為頂級黑客--python絕技 閱讀筆記(一)

第一章

  • 準備python開發環境

python標準庫和內置模塊提供的功能非常廣泛包括內置和數據類型,異常處理,numeric和數字模塊,文件處理能力,加密服務,與操作系統的交互操作,網絡數據處理,與IP協議的交互以及許多有用的模塊,和第三方軟件包。可以用easy_install pip apt-get

  • 下載最新的滲透測試系統光盤映像
成為頂級黑客--python絕技 閱讀筆記(一)

下載最新的BackTrack Linux滲透測試系統光盤鏡像,該系統提供了大量用於滲透測試以及電子取證,網站,網絡分析和無線攻擊的工具。

#easy_intall pyPdf python-nmap pygeoip mechanize BeautifulSoup4anhuan

安裝與藍牙有關的庫

#apt-get install python-bluez bluetooth pythin-obexftp hjh
  • python語言
成為頂級黑客--python絕技 閱讀筆記(一)

變量

python會為變量保存內存空間,所以可以不用顯示地聲明變量類型,Python解釋器可以決定變量的類型和為變量保存內存空間。

字符串

可以在python文檔中查看方法的完整列表。

列表

可以創建任意數據類型的list。此外還內置了添加,插入,刪除,出棧,索引,計數,排序,反轉等操作方法。

詞典

提供了一個可以存儲任意數量的python對象的哈希表,用items方法返回的是詞典中所有項的完整信息的列表。

#!/usr/bin/python3
dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
print ("dict['Name']: ", dict['Name'])
print ("dict['Age']: ", dict['Age'])

網絡

socket模塊提供了一個用python進行網絡連接的庫,下面是一個抓取banner的腳本。

#!/usr/bin/python
#coding=utf-8
import socket
socket.setdefaulttimeout(2)
s=socket.socket()
s.connect(("192.168.95.148",21))
answer=s.recv(1024)
s.close()
print answer

條件選擇語句

我們想要知道某個特定的FTP服務器中是否存在可以攻擊的漏洞,我們需要把服務器的響應結果是否存在可攻擊的漏洞,需要將服務器的中是否存在可以攻擊的漏洞,這需要將一些已知存在漏洞的FTP服務器版本進行比較。

#!/usr/bin/python
#coding=utf-8
import socket
s=socket.socket()
s.connect(("192.168.95.148",21))
answer=s.recv(1024)
s.close()
if ("2.3.4") in answer:
 print IP + " " + "is reachable"
else:
 print IP + " " + "is not reachable"

異常處理

我們一般把網絡連接代碼寫在try語句塊中。

#!/usr/bin/python
#coding=utf-8
import socket
s=socket.socket()
socket.setdefaulttimeout(2)
try:
 s.connect(("192.168.95.148",21))
 answer=s.recv(1024)
 s.close()
 if ("2.3.4") in answer:
 print "ip is reachable"
 else:
 print "ip is not reachable"
except Exception,e:
 print "Error:" + str(e)


分享到:


相關文章: