Python真的無所不能!連駭客技術都要用它!你知道要用哪些技術嗎

來源:互聯網
上載者:User

標籤:如何   兩種   一個   改變   ctypes   pytho   解碼   不同   xmlrpc   

網路愛好者總是要掌握程式設計語言的,這裡推薦:python。下面,一文瞭解駭客們會用到哪些Python技術!

 

進群:548377875   即可擷取數十套PDF哦!

 

安裝依賴包

很多時候讀者們會發現,藉助大型python社區中的python庫編寫的個人工具,可以協助我們很快得到結果。你可以通過個人軟體管理組件或者可用的python軟體包管理器安裝這些庫,其中最權威的就是pip工具了。有了pip,你可以全域安裝這些依賴包(#pip install),或者逐使用者安裝($ pip install --user),或者在虛擬環境中安裝((venv) $ pip install)。讀者可以手動地使用個人發行版包管理器,或者基於Python3.4提供的庫,安裝pip包。

 

如果讀者們需要與包括JSON/XML的HTTP服務互動,我建議特別好用的requests依賴庫。該python庫可以處理與網頁互動面對的各類操作,如編碼、解碼、參數、標記、重新導向等。例如,請求和解析一個JSON資源的代碼如下:

 

 

增加TSL加密鏈路也非常簡單:

 

上述功能也可以在已經使用的串連中實現:

 

如何你不需要這些低級服務互動,還有些模組可以提供高層服務互動:

  • smtplib
  • ftplib
  • poplib
  • imaplib
  • httplib (Python 3以上版本的http用戶端)
  • nntplib
  • telnetlib (應用於服務開發和之後的需要互動命令列會話)
  • xmlrpclib (Python 3以上版本的xmlrpc用戶端)

5

安二進位操作或編碼

當開發與服務或者檔案互動的指令碼時,你經常會發現需要將資料轉換為不同格式或者編碼。在Python2.x版本中,通常使用encode或者decode方法將字串在不同格式之間轉換。

 

很可惜,這種捷徑在Python3.x版本中被取消了,encode和decode方法當前只可以實現字元編碼,如utf-8, cp1250, iso8859, big5等。

作為替代,你現在只能使用bytes類型的兩種方法實現十六進位編碼:

 

對於Base64編碼,你需要使用另外的模組(在Python2.x版本中也有):

 

URLs編碼或者解析可以用urllib.parse模組實現(Python2.x版本中是urllib)

 

Python普通資料類型(如int,float,str)與二進位之間的一般轉換,可以在stuct模組中實現:

 

Python3.2也可以使用int類型直接擷取其二進位表示:

 

ctypes 模組還有一個特別棒的特徵,如果你將cpython作為解譯器(通常大家都是這樣),就可以使用ctypes.Structure結構化描述C語言,擷取它們的二進位表示,就好像從C應用程式中轉儲的一樣。

 

ctypes 模組通常是Python程式集和C語言庫之間的橋樑,不需要編寫任何Python封裝器。有了ctypes模組,你可以使用任何C語言庫和其輸出函數:

 

上文中提到Structure 類型主要用於C語言庫的互動,在函數調用過程中傳遞或者擷取結構。

 

4

漏洞開發工具

很多CTF團體提供他們自己的的CTF解決方案架構,我發現來自Gallopsled 的pwntools架構特別有用,尤其是開發遠程elf二進位時,它包含很多方便的函數,例如位移計算(通過cyclic模式)、格式化字串開發(普通資料摘要以及產生的格式化字串)、跳躍群組合(基於ropgadget解析elf二進位以及提供產生簡單跳躍群組合調用的封裝器)和不同傳輸通道的全部API(稱作管道)。這些可以讓讀者們開發gdb編譯後端,同時簡單地改變一行代碼就可以傳輸到目標服務。

 

駭客隨牛逼,但是有些東西是禁區,可不能隨便去觸碰哦!

Python真的無所不能!連駭客技術都要用它!你知道要用哪些技術嗎

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.