在Windows上用Java代碼模仿破解WIFI密碼【大牛經驗】

本文純屬技術探索,與真正的破解還有很大差距,請廣大網友切勿利用本文內容做出任何危害網絡安全的行爲。若有違法行爲,均與本人無關。

開始進入正題。在網上找了很多wifi破解工具,都是linux平臺下用的,然後還不支持虛擬機裝linux。因爲很多筆記本裝虛擬機都識別不了內置網卡。所以得把系統刻到U盤,然後用U盤啓動。但是我現在窮得連一條內褲都沒有了,哪來的U盤啊。於是就決定自己寫,而且還得用Java寫,寫了我還得在windows上運行。

一、準備工作

首先你得需要一臺能連wifi的電腦,

然後你的電腦得支持Java環境,

最後你周圍得有無線網絡。

ok,話不多說,說開擼,老夫就要開擼。於是網上找到了windows下cmd無線網絡操作的相關命令。如下:

首先需要寫配置文件,方便待會使用。首先我們可以看看配置文件張啥樣,導出配置文件看看就知道了。打開命令行,輸入這我這篇文章中,主要會用到前四個命令,其他的命令就當給各位做拓展了。

就導出了配置文件,注意,這兒的配置文件默認導出在cmd執行的當前路徑,如下,

我導出的文件就在 C:\Users\Admin 下面,可以看到文件都是wifi.xml方式。如 TP-LINK_5410.xml ,隨便打開一個我們可以看到xml文件的具體內容,但是有一些內容是我們不需要的,我們需要的是下面這個樣子

二、掃描WIFI其中 SSID_NAME 是待會我們會用到的wifi名稱, AUTH_TYPE 是wifi的加密方式, PASSWORD 是我們會暴力破解的密碼變量。

OK,背景交代得差不多了,可以開幹了。首先掃描附近的WIFI,返回所有WIFI的信息,包括SSID、加密方式、信號強度(信號太弱的,我們就不進行破解了,破解了也沒啥用)。掃描其實就是執行一個CMD命令的問題,先封裝一個CMD執行器吧。

然後掃描周圍wifi信息,並返回相關信息

三、生成配置文件

OK,接下來我們就可以開始針對每個不同的SSID生成不同的配置文件了,生成文件整個過程就是根據每個不同的密碼生成一個配置文件。大概代碼如下

需要哪些密碼可以自己現在網上找一些字典來跑,建議順序是 常用弱口令 => 字典面 => 隨機密碼(到了隨機密碼這兒,意義也不大了)。這兒給出一個常見弱口令的下載連接。反正我只用這個弱口令破解過一個WIFI。這兒爲了加快文件生成速度,我開啓了多線程。個人實際感受,如果只是幾千到幾萬個的話,其實多線程不多線程,並沒有多大區別,真正的區別在於後面嘗試連接的時候。

四、遍歷校驗配置文件

接下來就是最耗時的一步了,一個個密碼去校驗。關鍵代碼如下

兩點釋疑:

1.爲什麼需要sleep(50)? 因爲在連接後,電腦沒有立即反應過來,此時去ping的話,就算密碼正確,都會ping不成功。所以需要sleep。我破解的時候sleep(1000)的,還沒測試50行不行。

2.爲什麼需要ping網站? 因爲在第二步連接的時候,不管有沒有連接成功,都會出現 ‘已成功完成xx連接’ 的字樣。所以沒辦法,只有用ping來校驗,不過我相信一定能夠優化的。

這一步我開啓了多線程,去驗證,有人說爲什麼用多線程,明明驗證方法都 synchronized 了,我想說的是,單線程的話,之間總會有間隙的,所以爲了壓榨那一點點時間,我用了多線程。

五、連接成功

OK,至此,爲師已將畢生功力傳授給你了,你出去就說是三年經驗了。呸,說錯了,至此,整個流程大概就已經出來了,接下來就run你的程序吧。等待密碼的破解。

我一共在我家周圍瞄上了三個信號看起來還可以的wifi。用這個程序跑了40多秒,開了一個wifi的密碼 12345678。耶成功了終於可以用了。

然後根據密碼,把自家路由器設置一個橋接模式。家裏處處都有網了。

六、或者放棄

或者,你也可以放棄。愉快地用了一晚上過後,我第二天早上起來發現網斷了,原來那個網不存在了,但是到了中午又有了。我估計是底商閉店了,就斷電了,網就沒了。

於是想要撬開一個住戶的網,跑了兩個看起來信號比較好的網絡,都以失敗告終!!!因爲密碼字典不夠強大。網上下過幾個字典生成器,都不能用。算了吧先湊合用着現在的網絡,等我有空了,寫個字典生成器,來撬開。

PS:本文代碼已託管到github,若有興趣,歡迎瀏覽https://github.com/weechang/wifi-connector

本文純屬技術探索,與真正的破解還有很大差距,請廣大網友切勿利用本文內容做出任何危害網絡安全的行爲。若有違法行爲,均與本人無關。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章