Python3.7黑帽編程——黑軟篇(基礎篇)

引子

Hacker(黑客),往往被人們理解爲只會用非法手段來破壞網絡安全的計算機高手。但是,黑客其實不是這樣的,真正的“網絡破壞者”是和黑客名稱和讀音相似的駭客。
駭客,是用黑客手段進行非法操作併爲己取得利益的人。黑客,是用黑客手段爲國家或單位做事的人。
那麼,既然黑客不是一個很壞的職業,我們就可以去試着學習。

黑客本身的初衷

——黑客其實一直是善良的。 駭客其實他的前身就是黑客。
駭客與黑客分家,有這麼一個故事:
原本,只有黑客一族。而不久後,有些黑客想用黑客手段來獲取利益,不斷被其他的黑客反對。於是,那些黑客悄悄私下成立了一個新的族羣——駭客族。
駭客族產生後,一直處於保密狀態,所以,沒有人知道這個族。
直到有一天——
駭客族出現了一次大騷動:
不斷的進行網絡欺騙、流量攻擊,盜取了很多人的賬號,還修改了一些大型的搜索網站。
於是,從這天開始,黑駭(黑客和駭客)分家了。
黑客的初衷本是一些測試程序漏洞的計算機高手,他們還幫國家和單位做事。但是,人心總是貪婪,造成了駭客的誕生。
從此以後,殺毒軟件誕生了。

基礎篇

安裝編程環境:Python3.7 IDE

在編寫程序進行黑客攻擊和病毒編寫之前,我們得先安裝我們的編程環境:Python3.7 IDE
從網絡上下載:Python3.7 IDE
下載Python3.7

接着,雙擊它,按照安裝嚮導完成安裝。

啓動

在Windows搜索欄中搜索:Python
會顯示出:

顯示的圖片
打開它!Python3.7的界面

打造攻擊目標:VMware虛擬機

我們現在還沒有一個攻擊目標,因爲我們現在不能攻擊別人的電腦,否則,你就是駭客了。
那麼,我們只有安裝VMware虛擬機了。
安裝VMware Workstation player
(注:此處不細說,因爲版本不一,安裝不一樣)
打開!
VMware Workstation player運行界面
然後,請下載Windows 7 原生純淨鏡像,可以百度“我告訴你”,點擊第二個,下載Windows7。

新建虛擬機

點擊“創建新虛擬機”
在瀏覽處選擇Windows純淨鏡像
點擊“下一步”
輸入安全密鑰
這裏需要輸入Windows7的密鑰,按圖中輸入。
下一步:
輸入電腦名
下一步:
輸入硬盤大小
完成
我們已經完成了VMware Workstation 虛擬機的配置,現在我們啓動它:
啓動

加載中
在這段時間內,計算機(虛擬機)會重啓數次,最終完成安裝。
安裝成功後即可開始使用Windows 7 ,並且可以向它發起猛烈的攻擊了。
正在啓動
Windows7是微軟(Microsoft)的傑出產品之一,但可惜的是它還是被更優秀的Windows10取代。在2015年,微軟(Microsoft)正式宣佈不再支持Windows7,也就意味着,不會再有新的更新給使用Windows7的用戶了。
啓動成功!
啓動成功!我們可以在這臺Windows上工作,並且也可以攻擊它了!

編寫經典程序——Hello,World!

打開Python,點擊File,New。
在彈出的窗口中輸入:

print('Hello, World!')

點擊Run,最後一個選項,查看結果。
顯示:

Hello, World!

這表示IDE程序可用,也表示,你已經成爲一名程序員了!

測試網絡的PING

PING程序是Microsoft(微軟公司)爲Windows用戶準備的網絡檢測程序,使用他,可以幫你查看網絡狀態和網絡是否可訪問。
鍵擊“windows鍵+R”,打開運行窗口,輸入cmd,回車,即可打開終端窗口。在這裏,你可以做很多一般人做不到的事情。

運行
cmd
在終端裏輸入ping/?,查看詳細用法。
ping
常用指令:
PING -t ip
注:這樣可以PING指定的IP到永遠,除非你停止它。很多初級黑客喜歡用這個參數來進行網絡堵塞的攻擊。
PING -l 大小 ip
注:這樣可以設置發送包大小
PING -n 次數 ip
注:這樣可以設置次數。

試試對baidu.com進行PING指令

打開終端,輸入PING -n 10 -l 10 baidu.com
ping
(此命令必須在Windows 8以上纔可以運行,Windows 7部分版本不支持PING網頁)
我們檢測到我們可以連接到baidu.com,說明我們的網絡是可用的。

TCP\IP協議

TCP/IP傳輸協議,即傳輸控制/網絡協議,也叫作網絡通訊協議。它是在網絡的使用中的最基本的通信協議。TCP/IP傳輸協議對互聯網中各部分進行通信的標準和方法進行了規定。並且,TCP/IP傳輸協議是保證網絡數據信息及時、完整傳輸的兩個重要的協議。TCP/IP傳輸協議是嚴格來說是一個四層的體系結構,應用層、傳輸層、網絡層和數據鏈路層都包含其中。
TCP/IP協議是Internet最基本的協議,其中應用層的主要協議有Telnet、FTP、SMTP等,是用來接收來自傳輸層的數據或者按不同應用要求與方式將數據傳輸至傳輸層;傳輸層的主要協議有UDP、TCP,是使用者使用平臺和計算機信息網內部數據結合的通道,可以實現數據傳輸與數據共享;網絡層的主要協議有ICMP、IP、IGMP,主要負責網絡中數據包的傳送等;而網絡訪問層,也叫網路接口層或數據鏈路層,主要協議有ARP、RARP,主要功能是提供鏈路管理錯誤檢測、對不同通信媒介有關信息細節問題進行有效處理等。
TCP/IP協議能夠迅速發展起來併成爲事實上的標準,是它恰好適應了世界範圍內數據通信的需要。它有以下特點:
(1)協議標準是完全開放的,可以供用戶免費使用,並且獨立於特定的計算機硬件與操作系統。
(2)獨立於網絡硬件系統,可以運行在廣域網,更適合於互聯網。
(3)網絡地址統一分配,網絡中每一設備和終端都具有一個唯一地址。
(4)高層協議標準化,可以提供多種多樣可靠網絡服務。

TCP/IP協議的層次

網絡層

IP協議
網絡層引入了IP協議,制定了一套新地址,使得我們能夠區分兩臺主機是否同屬一個網絡,這套地址就是網絡地址,也就是所謂的IP地址。IP協議將這個32位的地址分爲兩部分,前面部分代表網絡地址,後面部分表示該主機在局域網中的地址。如果兩個IP地址在同一個子網內,則網絡地址一定相同。爲了判斷IP地址中的網絡地址,IP協議還引入了子網掩碼,IP地址和子網掩碼通過按位與運算後就可以得到網絡地址。
ARP協議
即地址解析協議,是根據IP地址獲取MAC地址的一個網絡層協議。其工作原理如下:ARP首先會發起一個請求數據包,數據包的首部包含了目標主機的IP地址,然後這個數據包會在鏈路層進行再次包裝,生成以太網數據包,最終由以太網廣播給子網內的所有主機,每一臺主機都會接收到這個數據包,並取出標頭裏的IP地址,然後和自己的IP地址進行比較,如果相同就返回自己的MAC地址,如果不同就丟棄該數據包。ARP接收返回消息,以此確定目標機的MAC地址;與此同時,ARP還會將返回的MAC地址與對應的IP地址存入本機ARP緩存中並保留一定時間,下次請求時直接查詢ARP緩存以節約資源。
路由協議
首先通過IP協議來判斷兩臺主機是否在同一個子網中,如果在同一個子網,就通過ARP協議查詢對應的MAC地址,然後以廣播的形式向該子網內的主機發送數據包;如果不在同一個子網,以太網會將該數據包轉發給本子網的網關進行路由。網關是互聯網上子網與子網之間的橋樑,所以網關會進行多次轉發,最終將該數據包轉發到目標IP所在的子網中,然後再通過ARP獲取目標機MAC,最終也是通過廣播形式將數據包發送給接收方。而完成這個路由協議的物理設備就是路由器,路由器扮演着交通樞紐的角色,它會根據信道情況,選擇並設定路由,以最佳路徑來轉發數據包。
所以,網絡層的主要工作是定義網絡地址、區分網段、子網內MAC尋址、對於不同子網的數據包進行路由。

傳輸層

鏈路層定義了主機的身份,即MAC地址,而網絡層定義了IP地址,明確了主機所在的網段,有了這兩個地址,數據包就從可以從一個主機發送到另一臺主機。但實際上數據包是從一個主機的某個應用程序發出,然後由對方主機的應用程序接收。而每臺電腦都有可能同時運行着很多個應用程序,所以當數據包被髮送到主機上以後,是無法確定哪個應用程序要接收這個包。因此傳輸層引入了UDP協議來解決這個問題,爲了給每個應用程序標識身份。
UDP協議
UDP協議定義了端口,同一個主機上的每個應用程序都需要指定唯一的端口號,並且規定網絡中傳輸的數據包必須加上端口信息,當數據包到達主機以後,就可以根據端口號找到對應的應用程序了。UDP協議比較簡單,實現容易,但它沒有確認機制,數據包一旦發出,無法知道對方是否收到,因此可靠性較差,爲了解決這個問題,提高網絡可靠性,TCP協議就誕生了。
TCP協議
TCP即傳輸控制協議,是一種面向連接的、可靠的、基於字節流的通信協議。簡單來說TCP就是有確認機制的UDP協議,每發出一個數據包都要求確認,如果有一個數據包丟失,就收不到確認,發送方就必須重發這個數據包。爲了保證傳輸的可靠性,TCP協議在UDP基礎之上建立了三次對話的確認機制,即在正式收發數據前,必須和對方建立可靠的連接。TCP數據包和UDP一樣,都是由首部和數據兩部分組成,唯一不同的是,TCP數據包沒有長度限制,理論上可以無限長,但是爲了保證網絡的效率,通常TCP數據包的長度不會超過IP數據包的長度,以確保單個TCP數據包不必再分割。
傳輸層的主要工作是定義端口,標識應用程序身份,實現端口到端口的通信,TCP協議可以保證數據傳輸的可靠性。

應用層

理論上講,有了以上三層協議的支持,數據已經可以從一個主機上的應用程序傳輸到另一臺主機的應用程序了,但此時傳過來的數據是字節流,不能很好的被程序識別,操作性差,因此,應用層定義了各種各樣的協議來規範數據格式,常見的有http,ftp,smtp等,在請求Header中,分別定義了請求數據格式Accept和響應數據格式Content-Type,有了這個規範以後,當對方接收到請求以後就知道該用什麼格式來解析,然後對請求進行處理,最後按照請求方要求的格式將數據返回,請求端接收到響應後,就按照規定的格式進行解讀。
所以應用層的主要工作就是定義數據格式並按照對應的格式解讀數據。

黑客入門的操作命令

1、“肉雞”

“肉雞”有點類似牽線木偶,是指可以被黑客神不知鬼不覺地遠程控制的電腦或者大型服務器。不論什麼系統都有可能淪爲“肉雞”。

2、“木馬”

“木馬”是一種在運行後可以得到系統的控制權的程序。拿網頁木馬舉例,主要是利用瀏覽器的漏洞把網頁木馬搞到瀏覽器訪問者本地上,然後自動執行的。

3、“後門”

黑客在通過某種手段成功控制目標主機之後,搞到系統的訪問權限。訪問系統後通過系統漏洞得到root權限,再安裝rootkit,就可以較長時間地控制該目標主機。

4、“弱口令”

弱口令的安全強度不高,易於被猜到破解的密碼,比如123456、654321。

5、“溢出”

“溢出”一般指的是緩衝區溢出。說白了,就是程序沒有進行有效地監測,導致輸入的數據沒執行。這樣的程序和沒有執行的數據越來越多,最後程序會解體,也有可能錯誤地執行黑客的命令。

6、“花指令”

“花指令”是用彙編語言寫成的,導致殺毒軟件無法對病毒進行合理地判斷。因爲殺毒軟件有順序規則,就是從頭到尾來查殺病毒。而一旦病毒的頭尾順序不對,殺毒軟件就歇菜了。

7、“免殺”

“免殺”,顧名思義,就是免去殺毒軟件的查殺。使用一些技術把程序進行修改,這些技術主要有加殼、加密、加花指令等。

8、“加殼”

“加殼”的目的主要有壓縮文件、將程序編碼加密、免殺等,主要通過一些不一般的算法改變可執行程序或者DLL動態鏈接庫文件的編碼。

9、“Shell”

“Shell”是一種程序或者命令的執行環境。比如,一般用遠程溢出程序後,可以成功控制遠程電腦,在該電腦執行系統命令的環境就是“Shell”。

完成黑客術語

看着上面那些熟練又富有含義的術語,也許你也想知道如何去實現它們。其實,實現它們並不難!因爲我們現在有了黑客軟件,加殼免殺花指令啥的,根本不在話下!
那我們就從最簡單的開始吧!

“肉雞”“後門”

我們想讓別人的計算機成爲我們的肉雞,首先要先去控制他(裝上後門)。最常用的就是控制木馬了,可以直接去控制。
我們下載大白鯊遠程控制軟件,打開後,界面如下:

這裏,我已經連上一臺計算機了,我可以隨意控制他,比如彈出窗口,不允許鼠標移動,隱藏任務欄等。那麼,我就來教教大家如何實現這樣。
首先,點擊配置程序。
然後會彈出如下界面:

這就可以開始配置你的病毒了。通常,基本設置是不用更改的,直接點擊高級設置:

輸入配置的名稱,接着,點擊圖標設置:

選擇一個圖片,點擊“生成服務器端”。
好了,我們的木馬已經做好了,接下來,就可以試試威力了。

效果

我通過遠程控制效果如下:



“免殺”“加殼”“花指令”

那問題來了——只要把這個文件分享給別人,別人的殺毒軟件就會刪除這個文件。那怎麼辦呢??

彆着急,我們可以加殼和免殺!也許,我們還可以利用花指令!

實現

打開黑防專版——自由小組免殺殼上殼V1.0

我們點擊>>>>>後面的小框,選擇一個exe文件,確認。
這樣,免殺器就可以幫你免殺這個文件了。

利用啊D注入工具實現SQL注入

打開啊D注入工具:

輸入指定網址,回車,即可進行SQL注入。
(最後跟着軟件嚮導完成注入)

中級篇

在本篇裏,你將有能力去實現網站入侵……

網站入侵

網站其實也是一臺計算機,他只不過是整天開着,讓我們連接它而已。那麼,我們該如何入侵它呢?
其實不難,我們怎麼入侵計算機,就怎麼入侵網站。
那麼,我們即將就要開始網站入侵的訓練了,你們——
準備好了嗎?

找到目標

這裏,我選了一個非法的網站作爲入侵對象。

第一步 PING

我們先PING一下對方,拿到對方IP:
202.60.245.174

第二步 漏洞掃描

接下來,我們就來掃描。
打開Fluxay Beta 5.0,開始掃描。
會發現,掃描出了一些漏洞(可能沒有,那是因爲網站的漏洞維護很嚴密),我們還通過漏洞拿到了對方的某些用戶的密碼。但是沒有管理員的密碼。
那我們只好繞道了。

第三步 用大白鯊生成server程序

生成server程序見前面的部分。

第四步 Telnet對方IP

telnet對方IP(請使用80端口),看看對方主機是否有密碼。如果有,那麼先終止此進程。如果沒有,成功連接了,那麼,你就可以進行以下步驟。

第四步第一部分

進入對方主機,現在我們的權限還很低。我們還無法操作文件,只可以進行簡單的命令。
再次使用Fluxay流光進行掃描,如果有用戶名和密碼,那麼,你就重新進行Telnet,輸入用戶名和密碼,重新連接。
如果成功,那麼你已經是Administrator管理員權限了,你可以刪除文件了。

第四步第二部分

我們自己編寫一個網頁:

<html>
<head>
 <h1>404</h1>
 <h2>Not Found</h2>
</head>
<body>
 <p>This webpage cannot be found. It may be deleted or does not exist. Please contact the webpage developer for confirmation.</p>
</body>
</html>

保存爲index.html,放入對方主機的網頁文件夾下,刪除原來的index.html,(可能是別的文件,你找到首頁文件,刪除首頁文件,然後將自己寫的文件命名爲原來首頁文件的名稱)然後,保存更改(可能不需要)。

第四步第三部分

將server.exe(大白鯊木馬的文件)放入對方C:\Programming\文件夾下,然後,start C:\Programming\server.exe,即可。
這下,終止Telnet進程,你試試訪問那個網頁,會顯示:

說明,你成功的更改了對方的網站!你成功入侵了對方網站!

第五步(在第四步無法行動時) 掃描並重新Telnet

再次使用Fluxay流光進行掃描,如果有用戶名和密碼,那麼,你就重新進行Telnet,輸入用戶名和密碼,重新連接。
如果成功,那麼你已經是Administrator管理員權限了,你可以刪除文件了。

第六步 執行第四步後續計劃

詳見第四步

恭喜

你已經成功的入侵了對方的網站,你已經是一個高級的黑客了!
接下來,你可以在別人的網站裏爲所欲爲,你可以將上面的圖片換成自己的頭像,或者,你可以粗暴點——直接刪除他的所有文件!

成爲頂級黑客

我們的技術和別的頂級黑客比還是差的很遠,那麼,我們可以去學習,學習別人的經驗,讓自己也變成頂級黑客!
如果你想成爲黑客,其實只學Python是不行的,你還必須懂一些C++和C,畢竟系統也是C和C++寫的。
如果你不想學C++和C,也可以,你也可以用Python成爲黑客——誰說Python就無能呢?

高級篇

在這一篇,我們將學習很多道理。

黑客

在網上,關於黑客的介紹是:

黑客(hacker)泛指擅長IT技術的人羣、計算機科學家,黑客們精通各種編程語言和各類操作系統,伴隨着計算機和網絡的發展而產生成長。
黑客一詞,最初曾指熱心於計算機技術、水平高超的電腦專家,尤其是程序設計人員,後逐漸區分爲白帽、灰帽、黑帽等,其中黑帽即駭客(cracker)。在媒體報道中,黑客一詞常指軟件駭客(software cracker),而與黑客(黑帽子)相對的則是白帽子(維護計算機和互聯網安全)。

但是,
錯了!
其實,黑客、白客、駭客,他們都不是一家。
駭客,指用黑客技術去做壞事的人。
黑客,指的是用黑客技術去幫國家、幫單位做事的人,他們往往不會去無緣無故去破壞計算機。
白客,指用黑客攻擊來嗅探系統漏洞,然後提交給漏洞所有者的人。
我們要成爲的什麼?
我們可以成爲黑客,可以成爲白客,但是,不可以成爲駭客!

利用SAMInside進行Windows密碼破解

SAMInside是一款基於Windows的密碼恢復(破解)軟件,利用它,你可以破解本計算機的用戶和密碼。
黑客們經常在入侵對方後,會進行挖掘數據。當然,少不了管理員的密碼。因爲只有拿到Administrator,纔可以較長時間控制目標主機。
那麼,該怎麼辦呢?Fluxay流光也破不出Administrator的密碼,只可以破低級用戶的密碼(Administrator也可能,要看對方設置)。那麼,這時,進入對方計算機的黑客就用這個軟件在計算機後臺破解對方的密碼。
這次,咱們只來學如何破解本機的密碼,不去學習入侵破解。

打開SAMInside

SAMInside的界面如下:

實現密碼破解

在剛打開SAMInside時,是沒有用戶的。我們需要點擊:

纔可以看到用戶。
現在,我們點擊右邊的小榔頭,選擇一個破解方式
接着:

即可破解密碼。

恭喜

你已經是一位很厲害的黑客了!你可以去入侵網站,還可以去破解密碼!
你可以選擇繼續閱讀我後面的書籍,來繼續走下去。
你也可以放棄,這得由你決定。
下次再見!

附錄 A 黑客軟件下載地址

我講解的所有黑客軟件都可以在網站下載到,推薦下載“小鳳黑客工具包”,這裏面的工具很多,我講解的也大概都有。
大家在使用黑客軟件時,要注意病毒,並且,也不要用黑客軟件去做壞事。

附錄 B 問答

問:爲什麼Fluxay流光掃描失敗了,沒有任何的密碼出現?
因爲密碼破解的可能性不是百分百的,可能是對方計算機密碼比較安全,Fluxay的數據庫裏沒有。你可以嘗試自己編寫一個字典數據庫來給Fluxay用,我上傳了一個還不錯,你可以去看看。
問:爲什麼我用Python無法執行你的代碼?Python顯示報錯。
可能是因爲版本問題,也可能是你沒有安裝指定庫。你可以將錯誤複製,在CSDN論壇上問一問,說不定有好答案。
問:想成爲一個著名黑客,是不是必須要學習C++?
不一定。任何一門編程語言都可以完成指定的操作。你不一定要學C++,但是,作爲一門黑客,你至少得掌握兩門語言。我會幾個編程語言:Python、Java、JavaScript、Html、C++、VB……還有很多。這就是我能成功的原因。
問:成爲一名著名黑客時間得很長吧?
不一定。在於你的興趣,和你的導師。如果你的興趣濃厚,那麼,你很快就可以成爲一名黑客。
問:您一直在說攻擊,爲什麼不教教我們如何防禦?
因爲,最好的防禦就是攻擊。當你瞭解如何攻擊時,你就會如何防禦。你知道大白鯊木馬是一種遠程控制木馬,你就會知道如何去防禦——下載防病毒產品。你知道DDoS攻擊的原理,就知道應該在遭受攻擊時關閉網絡服務。

發佈了19 篇原創文章 · 獲贊 456 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章