Ujian Log masuk WordPress dengan Hydra di Kali Linux

Ujian Log masuk WordPress dengan Hydra di Kali Linux

Pengenalan

Terdapat bentuk web di seluruh internet. Malah laman web yang biasanya tidak membenarkan pengguna biasa untuk log masuk mungkin mempunyai kawasan admin. Penting apabila menjalankan dan menggunakan tapak untuk memastikan kata laluan gating akses kepada kawalan sensitif dan panel admin adalah selamat yang mungkin.

Terdapat cara yang berbeza untuk menyerang aplikasi web, tetapi panduan ini akan menutup menggunakan Hydra untuk melakukan serangan kekerasan pada borang log. Platform sasaran pilihan adalah wordpress. Ia mudah merupakan platform CMS yang paling popular di dunia, dan ia juga terkenal kerana diuruskan dengan buruk.

Ingat, Panduan ini bertujuan untuk membantu anda melindungi WordPress atau laman web anda yang lain. Gunakan di laman web yang anda tidak memiliki atau mempunyai kebenaran bertulis untuk diuji adalah haram.

Mendapat persediaan

Sebelum anda melakukan apa -apa, anda akan memerlukan laman web WordPress untuk disasarkan. Panduan ini juga mengandaikan bahawa anda menganjurkan laman WordPress di mesin anda sendiri. Sekiranya anda memerlukan bantuan untuk menyediakan lampu di mesin anda, lihat lampu Debian dan panduan lampu Ubuntu kami.

Anda boleh melakukan ini sama ada pada pemasangan Linux biasa atau pada pemasangan Kali Linux. Sekiranya anda menggunakan Kali, ikut lampu Debian dari Panduan Sumber. Pastikan anda mempunyai Hydra dan Curl yang dipasang pada mana -mana sistem yang anda pilih. Mereka boleh didapati di kebanyakan repositori.

Jika anda benar -benar tidak mahu menggunakan pemasangan biasa anda, anda pasti boleh menggunakan mesin lain, hanya sub dalam IP sasaran untuk localhost, dan pastikan mesin sasaran boleh diakses dari serangan.



Mengumpulkan maklumat

Sebaik sahaja anda mempunyai WordPress dan berjalan, sudah tiba masanya untuk mencari maklumat sebanyak mungkin mengenai pemasangan yang akan anda sasarkan. Ini bermakna mengetahui bagaimana borang log masuk dibina, apa yang berlaku apabila anda menyerahkannya, dan mungkin di mana ia pergi jika log masuk berjaya.

Sumber HTML

Mulakan dengan menavigasi ke halaman log masuk. Anda boleh mencarinya di Localhost/WP-Login.php. Gunakan keupayaan penyemak imbas anda untuk memeriksa kod sumber. Anda boleh klik kanan di suatu tempat di halaman dan pilih "Lihat Sumber" atau "Memeriksa Elemen."Sama ada cara anda dapat melihat sumbernya, ia hanya akan dipaparkan dengan cara yang berbeza.

Cari ke arah tengah kod. Anda mencari tag. Itulah borang log masuk sebenar. Di dalam bentuk itu terdapat beberapa keping maklumat yang anda perlukan.

Sebelum mengumpulkan maklumat, periksa sama ada borang menghantar permintaan atau pos. Dalam baris pertama borang, harus ada pilihan kaedah yang kelihatan seperti ini: kaedah = "Pos". Dalam kes WordPress, ia adalah catatan.

Pertama, cari input nama pengguna. Ia sepatutnya kelihatan seperti garis di bawah.

 

Bahagian yang anda perlukan adalah nama. Dalam kes ini, ia log.

Seterusnya, cari input kata laluan. Ia sepatutnya kelihatan serupa.

 

Sekali lagi, cari nama iaitu PWD.

Anda juga perlu mengenal pasti butang hantar supaya Hydra dapat mengemukakan borang.

 

Penting untuk log kedua -dua nama dan juga nilai.

Ada satu bahagian terakhir. Sekiranya anda tidak perasan, terdapat dua medan tersembunyi di bahagian bawah borang. Seseorang memberitahu WordPress untuk mengarahkan semula apabila borang diserahkan dan yang lain adalah kuki yang akan dicari oleh WordPress apabila borang itu diserahkan. Anda memerlukan kuki.

 

Sekali lagi, perhatikan nama dan nilai.



curl

Walaupun terdapat banyak maklumat yang akan diperoleh dengan melihat sumber HTML, terdapat beberapa perkara lagi yang perlu anda ketahui sebelum melepaskan Hydra. Walau bagaimanapun, dalam kebanyakan kes, anda mungkin dapat melaksanakan ujian dengan hanya maklumat yang anda kumpulkan. Anda hanya akan cuba log masuk dengan kelayakan yang salah, merakam mesej ralat, dan menggunakan mesej itu sebagai keadaan ujian yang gagal di Hydra.

Walau bagaimanapun, WordPress direka dengan cara yang berbeza, dan tidak ada cara yang baik untuk menguji dengan percubaan yang gagal untuk log masuk. Kerana ini, anda perlu menguji log masuk yang berjaya. Kerana anda dapat mengekalkan pemasangan WordPress anda sendiri dan log masuk ke dalamnya, ini tidak akan membuat perbezaan jika anda menguji sistem untuk pelanggan. Keadaan yang anda dapati secara tempatan mestilah universal ke WordPress.

Ada kedutan lain di sini juga. Adakah anda ingat medan redirect tersembunyi dalam bentuk? Nah, redirect itu menghalang anda daripada menggunakan keadaan seperti kehadiran perkataan, "papan pemuka," untuk menguji kejayaan juga. Anda mesti melihat permintaan itu sendiri, dan untuk itu, ada keriting.

Untuk membandingkan, anda perlu terlebih dahulu melihat halaman log masuk asal dengan curl.

$ curl -v http: // localhost/wp -login.php 

Sebilangan besar maklumat adalah sama dengan kod sumber yang anda lihat dalam penyemak imbas. Di bahagian atas, adalah maklumat mengenai permintaan HTTP. Perhatikan maklumat ini. Anda perlu membandingkannya dengan log masuk yang berjaya.

Perkara seterusnya yang perlu anda lakukan adalah berjaya log masuk dengan curl. Untuk melakukan itu, anda akan memerlukan kuki dari permintaan sebelumnya. Lihat data HTTP dan cari garis yang kelihatan seperti yang di bawah.

< Set-Cookie: wordpress_test_cookie=WP+Cookie+check; path=/

Anda akan memerlukan wordpress_test_cookie = wp+cookie+periksa bahagian.

Baiklah, sekarang anda akan memerlukan maklumat yang anda kumpulkan dari HTML bersama -sama dengan kuki itu untuk membuat permintaan itu. Inilah yang sepatutnya.

curl -v--data 'log = username & pwd = realpassword & wp-submit = log+in & testcookie = 1' --cookie 'wordpress_test_cookie = wp+cookie+cheake' http: // localhost/wp-login.php 

Oleh itu, anda mempunyai permintaan asas yang sama seperti dahulu, tetapi kali ini, anda menggunakan --data bendera dan --Cookie bendera untuk lulus curl yang membentuk data yang anda mahu berinteraksi dan cookie itu, jadi borang sebenarnya akan menyerahkan.

Rentetan data itu, log = nama pengguna & pwd = realPassword & wp-submit = log+in & testcookie = 1 sepadan secara langsung dengan maklumat yang anda kumpulkan dari HTML. Dikatakan untuk memasukkan nilai "nama pengguna" ke dalam input yang dipanggil log dan nilai "realpassword" ke dalam input yang dipanggil PWD. Pastikan anda menggunakan nama pengguna dan kata laluan sebenar untuk log masuk. Kemudian, gunakan hantar dengan nama WP-Submit dan nilai Log masuk untuk menghantar data. Pada akhirnya adalah testcookie dengan nilai 1. Itu hanya memberitahu Curl untuk menyerahkannya bersama -sama dengan data borang yang lain.

Apabila Curl melengkapkan permintaan, anda tidak akan melihat HTML, hanya banyak maklumat permintaan. Ingat bahawa pengalihan yang membuat ujian dengan "papan pemuka" tidak berfungsi sebagai keadaan ujian? Nah, sekarang pengalihan itu sendiri akan menjadi keadaan ujian. Lihat garis di bawah.

< Location: http://localhost/wp-admin/

Garis itu tidak ada dalam permintaan sebelumnya. Ia juga tidak mengandungi maklumat khusus yang berkaitan dengan pengguna atau log masuk. Itu bermaksud bahawa ia akan selalu hadir semasa log masuk WordPress yang berjaya, menjadikannya keadaan kejayaan yang sempurna untuk diuji dengan.



Ujian dengan Hydra

Akhirnya, anda mempunyai semua yang anda perlukan untuk menguji kata laluan anda dengan Hydra. Titik panduan ini tidak begitu banyak untuk menampung sintaks Hydra, tetapi ia akan memecahkan arahan yang digunakan. Sekiranya anda ingin mengetahui lebih lanjut mengenai Hydra, lihat panduan SSH yang lebih terperinci.

Hanya ada satu arahan yang anda perlukan untuk Hydra untuk menjalankan nama pengguna dan kata laluan yang mungkin untuk menguji keselamatan laman WordPress anda. Perkara yang paling mudah dilakukan ialah melihat perintah dan memecahkannya.

$ hydra -l senarai/usrname.senarai/lulus txt -p.TXT localhost -v http-form-post '/wp-login.php: log =^user^& pwd =^pass^& wp-submit = log masuk & testcookie = 1: s = lokasi ' 

Okey, jadi ini jelas banyak yang perlu diambil sekaligus. The -L Bendera memberitahu Hydra untuk menggunakan senarai kata nama pengguna di Senarai/usrname.txt. Begitu juga, -P Bendera memberitahu Hydra untuk menggunakan senarai kata laluan di senarai/lulus.txt. localhost memberitahu Hydra untuk menyasarkan localhost, dan -V menceritakannya untuk log setiap ujian dalam output konsol.

Selebihnya arahan berurusan dengan permintaan HTTP itu sendiri. http-form-post mengaktifkan modul Hydra untuk mengendalikan borang HTTP dengan kaedah pos. Ingat dari sebelumnya bahawa borang log masuk WordPress berada di muka jawatan dari. Rentetan yang berikut mengandungi semua parameter yang akan digunakan oleh Hydra. Anda harus perhatikan bahawa ia sangat serupa dengan yang digunakan untuk log masuk melalui curl.

Rentetan terdiri daripada bahagian yang berbeza yang dipisahkan oleh :. Bahagian pertama adalah alamat tepat yang sedang diuji, /WP-Login.php. Bahagian seterusnya hampir sama seperti yang digunakan oleh Curl. Ia melepasi nilai ke dalam bentuk dan menyerahkannya, termasuk kuki. Daripada lulus nilai literal, Hydra sebenarnya menggunakan pembolehubah. Notis dalam log =^pengguna^ dan pwd =^pass^. Mereka adalah pembolehubah yang dipisahkan dengan watak lobak yang mengambil nilai dari senarai kata dan menyampaikannya bersama dalam permintaan untuk setiap ujian yang dijalankan Hydra.

Sekeping terakhir rentetan adalah keadaan ujian. S menandakan bahawa ia menguji kejayaan. Sekiranya anda ingin menguji kegagalan, anda akan menggunakan F. Anda menetapkan yang sama dengan perkataan atau frasa yang diuji. Fikirkan jika hampir suka grep.

Apabila anda menjalankan ini, anda harus mendapat hasil yang positif, dengan syarat nama pengguna dan kata laluan yang betul berada dalam senarai kata yang anda berikan Hydra.

Pemikiran penutupan

Pertama, tahniah untuk membuatnya melalui semua itu. Sekiranya anda berjaya, anda kini mempunyai kaedah yang kukuh untuk menguji kekuatan kata laluan akaun pengguna WordPress anda.

Panduan ini disesuaikan dengan WordPress, tetapi anda boleh dengan mudah mengikuti langkah yang sama untuk menguji borang web lain. Sekiranya anda menjalankan aplikasi web dengan pelbagai pengguna, ini pasti idea yang baik untuk dibuat
pasti bahawa mereka menggunakan kata laluan yang kuat. Ini dapat membantu memaklumkan polisi kata laluan anda. Sekali lagi, pastikan anda sentiasa menguji dengan kebenaran.

Tutorial Linux Berkaitan:

  • Senarai alat Kali Linux terbaik untuk ujian penembusan dan ..
  • Cara Dual Boot Kali Linux dan Windows 10
  • Ubuntu 20.04 WordPress dengan pemasangan Apache
  • Ubuntu 20.04: WordPress dengan pemasangan nginx
  • Pemasangan WordPress OpenLiteSpeed
  • Cara Memasang Kali Linux di VMware
  • Gunakan WPSCAN untuk mengimbas WordPress untuk kelemahan di Kali
  • Persediaan Pelayan HTTP Kali
  • Cara memecahkan kata laluan zip di kali linux
  • Hardening Kali Linux