Using ChatGPT as HackGPT — I

Tang Hsiang
Oct 6, 2023

--

又到了讓人鬱悶無法出門玩的颱風天,難得新竹竟然可以放颱風假?!距離上一次新竹市放颱風假印象中是4年前,想說無聊沒事就來跟ChatGPT學學一些技術。剛好最近我的Netflix清單裡面跳出了基努李維演的駭客任務,我就想說那今天就來學一點駭客的資安技術吧!

以下是我問ChatGPT,請他告訴我如何駭入別人的Wifi和網域,這裡由於法律上面的問題,我拿我自己的網路做滲透測試(penetration testing),請勿以身試法,我所有的測試都是用於評估系統的安全性,為了證明網路防禦按照預期計劃正常執行,在合乎法律的底下所操作。

由於我根本對資安(Cyber Security)的內容完全不懂也沒學過,以下我會透過跟ChatGPT的對話,一步一步引導我當一個新手駭客XD

這裡我猜想滲透測試(合法的駭客)的內容,拿去問ChatGPT,他一定會拒絕回答我的問題,問完的結果,嗯…跟我想的差不多。

這裡我用了一些提示詞(prompts)的小技巧:角色扮演

由於ChatGPT回答的時候偶爾還是會出現一堆簡體字,我接下來的問答都是用英文,這樣就不會出現討厭看到的簡體字(強迫症發作),不過大家不要擔心,我會簡單解釋我問ChatGPT的內容。

現在切換語言再問他一次!

乖,真是聽話XD

接著我請他列出一些滲透測試常用的工具:

簡單看了一下 NMAP可以用來幫助我掃描網路ip,Hydra則是一個可以透過創建字典,來進行暴力破解密碼的工具。這裡我就挑選這兩個工具作為我這次任務的主要工具。

我問GPT如何透過Hydra配置路由器(router),他告訴我要先安裝Hydra、建立使用者名稱字典、密碼字典以及他給了我Hydra的簡易指令。

這裡我告訴他,我有這次要攻擊目標的ip(Internet Protocol Address)地址,並問他說我要如何準備使用者名稱字典(username)和密碼字典(passwords),請他告訴我哪裡可以找到別人已經創建好的字典列表(wordlists)。

從他給的回答,我Google了一下前2個,SecLists 和 RockYou,並在Github找到了SecLists的常見txt文字檔案表,以下為網站連結。

  1. SecLists
  2. RockYou

但本人使用Mac,儲存空間實在是寸土寸金,這次作為簡單測試,我不想要去下載這些這麼大的檔案,我就自行新增了 username.txt 和 passwords.txt。

目前大概知道Hydra的簡單操作指令了,這個時候我該需要用到前面提到過的Nmap來幫我掃描網域了。一樣打開終端機(terminal),輸入:

1.pip install Hydra

2.pip install Nmap

這裡為了避免套件有版本衝突(每次實作都一堆問題,超煩),我後來個人習慣透過Anaconda幫我重新建立一個虛擬環境,這次我把虛擬環境的名稱設定為:Hack,並且安裝了python 3.9的版本(當下最新版本為3.11)。如果不知道如何安裝的,可以參考網路上的創建環境教學,或是參考 Yolo v8 這篇文章我內文有提及如何建立新環境。

我請ChatGPT給我Nmap的基本指令,詳細的 Nmap指令教學可以參考這篇文章或是此部落格其他文章:【滲透測試LAB】如何使用Hydra & Nmap 執行遠端暴力破解

這裡我查了一下我的ip位置,和透過 https://www.whatismyip.com.tw/tw/ 所查到的ip不一樣,所以我問他為何同個網路會有2個ip地址。

ip address

得到的回答是,ip地址還有分本地端和公共端。

於是乎我在終端機分別對2個不同的ip掃描,輸入以下指令後出現了好多個端口(port)。

nmap "local ip"

nmap "public ip"

我問他:Hydra支援哪幾種端口,比對了上面Nmap掃描後的端口,發現FTP(port21)似乎可以用來作為攻擊的端口。

指令需要使用者名稱 (username)、密碼列表(passwords.txt)和ftp ip,以上三者輸入後,就能確切的破解密碼了!

下一篇:Using ChatGPT as HackGPT — II

--

--