ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

[Perl] Небольшой доркер
  #1  
Старый 08.07.2008, 13:35
Аватар для biophreak
biophreak
Постоянный
Регистрация: 03.08.2007
Сообщений: 367
Провел на форуме:
876216

Репутация: 209
По умолчанию [Perl] Небольшой доркер

Для собственных нужд был написан небольшой гугл-доркер, ибо руками гугл парсить не очень удобно :))
Все существующие под нужды не подходили, может еще кому пригодится :)
Никаких тред, проксей там нету, ибо для одного раза нужно было ))
Код:
#!/usr/bin/perl -s
use LWP::UserAgent;
use strict;
use warnings;
use diagnostics;
my @uas = (
 "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.4",
 "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.4) Gecko/20070309 Firefox/2.0.0.5",
 "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.2) Gecko/20070309 Firefox/2.0.0.3"
);
$| = 1;
my($logfile,$ua,$page,$url,$response,$con,$results,$dorksfile,@dorks);

$ua = LWP::UserAgent->new;
$ua->timeout(30);

sub usage{
 exit print qq(Usage:
 $0 <dorks file> <logs file> [number of results](optional, defaul=100)
 $0 dorks.txt results.log\n\n);
}

$dorksfile = shift || usage();
$logfile = shift || usage();
$results = shift || 100;

open my $DF, '<', $dorksfile or die "Cant open dorks file $dorksfile: $!\n";
open my $LOG,'>>', $logfile or die "Cant open: $!\n";
foreach(<$DF>)
{
    $_ =~ s/\s+$//go;
    $_ =~ s/\s+|\t+/+/go;
    $_ =~ s/\n|\r//go;
    print "[Searching dork: $_]\n";
    $ua->agent($uas[rand $#uas]);
    dorkie($_);
}
close $DF;

sub dorkie
{
	my $dork = shift;
	$response = $ua->get("http://www.google.com.au/search?hl=en&num=".$results."&q=".$dork."&start=0") or die "Cant get Google's contents: $!\n";
	print $LOG "[Dork: $dork]\n";
	if($response->is_success)
	{
	    $con = $response->content;
	    while ($con =~ m/<h2 class=(.*?)><a href=\"(.*?)\" class=(.*?)>/goi)
	    {
		my $url = $2;
		$url = "http://".$1 if($url =~ m/http:\/\/(.*)\"(.*)/goi);
		print $LOG "$url\n";
		
	    }
	} else 
	{
	    if($response->status_line =~ m/403/)
	    {
		print $LOG "[-] Forbidden\n";
		return 0;
	    } else
	    {
		print $LOG "[-] Cannot connect\n";
		return 0;
	    }
	}
	print $LOG "[End of dork: $dork]\n\n"
}
close($LOG)
UPD: Добавил рандомизатор юзерагентов, при желании список пополнить можно. Хотя против гугла - это как против танка тапок, но все же :))

Последний раз редактировалось biophreak; 08.07.2008 в 14:34..
 
Ответить с цитированием

  #2  
Старый 08.07.2008, 13:41
Аватар для Chaak
Chaak
Познавший АНТИЧАТ
Регистрация: 01.06.2008
Сообщений: 1,047
Провел на форуме:
5321514

Репутация: 3313


Отправить сообщение для Chaak с помощью ICQ
По умолчанию

А для чего он нужен?
 
Ответить с цитированием

  #3  
Старый 08.07.2008, 13:47
Аватар для biophreak
biophreak
Постоянный
Регистрация: 03.08.2007
Сообщений: 367
Провел на форуме:
876216

Репутация: 209
По умолчанию

Знаешь что такое Google Dorks?
Так вот, в файл пишешь эти самые дорки(каждый - на новой строке), например "Powered by Invision Power Board", доркер обращается к гуглу с этим самым запросом и сохраняет в файл результаты поиска(урлы тоесть), которые содержат строку "Powered by Invision Power Board".
Так же можно юзать встроенный "язык запросов" гугла, типа "site:" - поиск по сайту, "intitle:" - поиск строки в заголовке, и так далее, про язык запросов на самом гугле можно прочиать, ссылку не помню, к сожалению
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Небольшой спам-лист (mail.ru) A110ut Инвайты, mails, базы - Покупка, продажа 4 29.01.2006 11:27



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ