dominare il mondo con robot scritti in perl - warm up hackmeeting @ aula occupata p2 unical
TRANSCRIPT
Dominare il mondo con
robot scritti in Perl
Qualcuno visita il tuo sito,
e non umano...
[email protected]@105.7 FM fzz fzz
Robot?
Robot : indica una qualsiasi macchina, in grado di svolgere pi o meno indipendentemente un lavoro al posto dell'uomo.
Software Robot:
Programmare al posto dell'uomo???
Software Robot?
Ma mi faaaaccia il piacere!!!
Piuttosto possono eseguire operazioni software al postodell'uomo, magari ripetitive.
Web Robot
Sono programmi che navigano il Web automaticamente.
Alcuni motori di ricerca li usano per indicizzare i contenuti web
Altri li usano per raccogliere contenuti sul web, come indirizzi email (spammer).
Altri li usano per altro
La prestigibilizzazione
Sono conosciuti come:Robot
Spider
Crawler
Perlopi usati per conto dei motori di ricerca, come Google e Yahoo!.Google: googlebot
Yahoo!: slurp
robots.txt (1/2)
Robots should be nice to the servers they visit
Il file robots.txt
Esempio:
User-agent: GoogleDisallow:User-agent: *Disallow: /Posso bloccare i robot cattivi?
robots.txt (2/2)
In teoria si, in pratica no!
I robot possono ignorareil file robots.txtProblemi:
Indicizzazioni non desiderate (email, contenuti)
Sovraccarico sul server (botnet)Soluzioni:
Blocco IP o range di IP
Robot in giro,
Server in Paranoia! (1/4)
Alcuni robot servono a scovare vulnerabilit sui server in giro per il mondo.
Con uno scan di IP random (non penso si siano spinti oltre IPv4) controllano solitamente che siano attive le seguenti porte:22 SSH
80 HTTP
8080 HTTP
Robot in giro,
Server in Paranoia! (2/4)
Scan SSH: per un accesso totale alla macchina in base ad un file di possibili password.
Scan HTTP: verificano chesulla macchina vi siano determinate vulnerabilit (note) e tentano di exploitarle.
Esempi: spam, operazioni illecite per conto tuo.
Robot in giro,
Server in Paranoia! (3/4)
Esempio:
Dai log del server Web Apache201.116.227.194 - - [06/May/2010:05:16:29 +0200] "GET///scripts/setup.php HTTP/1.1" 404 324 "-" "ZeW"201.116.227.194 - - [06/May/2010:05:20:03 +0200] "GET//phpMyAdmin//scripts/setup.php HTTP/1.1" 404 336 "-" "ZeW"201.116.227.194 - - [06/May/2010:05:23:40 +0200] "GET124.115.146.99 - - [02/May/2010:15:47:15 +0200] "GET//zen/admin/includes/stylesheet.css HTTP/1.1" 404 277 "-" "Mozilla/4.0(compatible; MSIE 6.0; Windows 98)"
Robot in giro,
Server in Paranoia! (4/4)
Paranoia!!
Accesso SSH su porte alte, con RSA, mai in chiaro!
Installazione software stable, aggiornamento continuo sui bollettini della sicurezza, su exploit e vulnerabilit in generale.
Regole di Firewall toste
Thor
Web Robot utili!
Oltre ad essere crawlero perfidi scannatori in barbaal prossimo, alcuni programmipossono fungere da Web Robot utili.Operazioni di routine sul web
Operazioni automizzate
SMS gratis :)
Navigano il web in modo automizzato ma non random, eseguono brevi e/o coordinati Task
Essere un Browser
Questi programmi per navigare il web devono somigliare ad un browser!
Essere un User AgentFirefox, Safari, Explorer..
Comunicare via HTTPGET,POST
Estrapolare ed analizzareHTML e quant'altro JavaScript, CSS, immagini,ecc.
Quale linguaggio?
Si pu usare qualunque linguaggio di programmazione che supporti HTTP o almeno i Socket
Dovrebbe avere qualche funzione di supporto per la gestione dei Cookie
Dovrebbe essere veloce, figo..
Dovrebbe essere...
Perl!
Scripting
Cross-platform
Ad oggetti (Sim SalaBim!)
Simile a PHP
Moduli a gogo
LWP::UserAgent
Altri: Ruby, Python, Java, C (cURL), ecc..
Ragionare come
un browser
Autenticarsi
my $ua = LWP::UserAgent->new();my $cookiejar = HTTP::Cookies->new();$ua->cookie_jar($cookiejar);$ua->agent( "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1)" );my $res = POST 'http://www.sitopalloso.com/login.php', [ login => $user, password => $pass ];$content = $ua->request($res)->as_string;push @{ $ua->requests_redirectable }, 'POST';say "Zi non ti hanno creduto molto.. unless $content =~ /Benvenuto/;
Vita da Robot
Non sottovalutatela potenza dirobot in esecuzionesu un 486 di pochicentimentri!
goText
Web robot per invio SMS via Web
WWW::SMS
Risparmia & Cumparisci
AntiRobot?
Captcha (ReCaptcha)
Javascript tosto
Domande umane
Finisce qui????OCR
Algoritmi
Istanze dei browser (WWW::Mechanize::IE)
Finch il cammello va..
Lascialo andare!! :-)
Muokkaa otsikon tekstimuotoa napsauttamalla
Muokkaa jsennyksen tekstimuotoa napsauttamallaToinen jsennystasoKolmas jsennystasoNeljs jsennystasoViides jsennystasoKuudes jsennystasoSeitsems jsennystasoKahdeksas jsennystasoYhdekss jsennystaso