Merhaba arkadaşlar,
Python ile yazdığım SQLi Scanneri sizinle paylaşmak istiyorum
GitHub Linki: https://github.com/blackvkng/SQLi_Scanner
Kullanımı;

Çalışmasına Örnek verecek Olursak;

Scriptin yaptığı çok basit, "links.txt" dosyasını okuyor ardından "links.txt" dosyasında bulunan sayfaların hepsinde SQLi açığı arıyor ve Bulduğu SQLi Açıklı Siteleri Dizin Altında Bir Dosyaya Kaydediyor. Eğer Elinizde Çok Fazla Site Varsa Program İle Hızlıca Kontrol Edebilirsiniz.
Kaynak Kodlar;
Not:
Python 2.x ile çalıştırınız. Mechanize Modülü Kurulu Olmalıdır. Kurmak İçin;
Kaynak Kodta Anlayamadığınız Bir Yer Olursa, Yardımcı Olmaya Çalışırım.
Python ile yazdığım SQLi Scanneri sizinle paylaşmak istiyorum
GitHub Linki: https://github.com/blackvkng/SQLi_Scanner
Kullanımı;

Çalışmasına Örnek verecek Olursak;

Scriptin yaptığı çok basit, "links.txt" dosyasını okuyor ardından "links.txt" dosyasında bulunan sayfaların hepsinde SQLi açığı arıyor ve Bulduğu SQLi Açıklı Siteleri Dizin Altında Bir Dosyaya Kaydediyor. Eğer Elinizde Çok Fazla Site Varsa Program İle Hızlıca Kontrol Edebilirsiniz.
Kaynak Kodlar;
Kod:
#!/usr/bin/env python2
#-*- coding: utf-8 -*-
#Coded By Black Viking
#
#
import mechanize
from time import *
import sys
import os
import re
if os.name == "nt":
bold = ""
underline = ""
green = ""
blue = ""
yellow = ""
red = ""
endcolor = ""
else:
bold = "\033[1m"
underline = "\033[4m"
green = "\033[92m"
blue = "\033[94m"
yellow = "\033[93m"
red = "\033[91m"
endcolor = "\033[0m"
br = mechanize.Browser()
br.set_handle_robots(False)
br.addheaders = [('User-agent', 'Mozilla/5.0 (compatible; Konqueror/3.5; Linux) KHTML/3.5.5 (like Gecko) (Kubuntu)')]
sql_error = ["error in your SQL syntax", "Query failed", "supplied argument is not a valid MySQL result resource in", "You have an error in your SQL syntax",
"ORDER BY", "mysql_num_rows()", "SQL query failed", "Microsoft JET Database Engine error '80040e14'", "Microsoft OLE DB Provider for Oracle",
"Error:unknown", "Fatal error", "mysql_fetch", "Syntax error"]
def usage():
print bold+green+"-"*31+endcolor
print bold+green+"|"+red+" Coded By Black Viking "+green+"|"+endcolor
print bold+green+"-"*31+endcolor
print bold+yellow+"-"*65+endcolor
print bold+blue+"Usage:"+endcolor
print bold+green+"$ ./sqli.py -l <"+red+"links.txt"+green+"> -o <"+red+"output_file.txt"+green+">"+endcolor
print bold+green+"$ ./sqli.py --links <"+red+"links.txt"+green+"> --output <"+red+"output_file.txt"+green+">"+endcolor
print bold+yellow+"-"*65+endcolor
sys.exit()
def sqli_scan(link, o_name):
file = open(o_name, "a")
source = br.open(link+"'").read()
for i in sql_error:
if i in source:
print bold+blue+"[+]"+green+link+yellow+" --> "+i+endcolor
file.write(link+" --> "+i+"\n")
break
else:
pass
def main():
if len(sys.argv) == 5:
if sys.argv[1] == "-l" or sys.argv[1] == "--links":
if sys.argv[3] == "-o" or sys.argv[3] == "--output":
l_file = sys.argv[2]
linksx = open(l_file, "r").read()
links = linksx.split("\n")
print bold+green+"-"*31+endcolor
print bold+green+"|"+red+" Coded By Black Viking "+green+"|"+endcolor
print bold+green+"-"*31+endcolor
print "\n"
print bold+yellow+"Start Time: "+endcolor+strftime("%H:%M:%S")+"\t\t"+strftime("%d/%m/%Y")
print "\n"
for a in links:
try:
sqli_scan(a, sys.argv[4])
except:
pass
print "\n"+bold+yellow+"Finish Time: "+endcolor+strftime("%H:%M:%S")+"\t\t"+strftime("%d/%m/%Y")
sys.exit()
else:
usage()
else:
usage()
else:
usage()
if __name__ == '__main__':
main()
Not:
Python 2.x ile çalıştırınız. Mechanize Modülü Kurulu Olmalıdır. Kurmak İçin;
Kod:
python -m pip install mechanize
Kaynak Kodta Anlayamadığınız Bir Yer Olursa, Yardımcı Olmaya Çalışırım.




