Upload
gbrindisi
View
1.156
Download
0
Embed Size (px)
DESCRIPTION
Wordcamp Italy 2013 Bologna
Citation preview
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
Lo Stato Attuale della Sicurezza nell'Ecosistema
di Wordpress di GIANLUCA BRINDISI
WPSCAN: CHI, COSA
Vulnerability scanner per Wordpress, open source e black box
http://wpscan.org - @_wpscan_
The Team: • Ryan Dewhurst (@ethicalhack3r) • Gianluca Brindisi (@gbrindisi) • Erwan Le Rousseau (@erwanlr) • Christian Mehlmauer (@_FireFart_)
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
WPSCAN: COME
1. Information gathering • File comuni (readme.html, debug.log, ...) • Codice Sorgente (generator tag, plugins paths, ...)
2. Enumerazione Attiva • Plugin • Temi • Utenti
3. Bonus • Login Bruteforcer • Timthumb scanner
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
WPSCAN: COME
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
WPSCAN: COME
Core Version Plugin Temi
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
DB delle vulnerabilità
WPSCAN: IL DATABASE
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
Vulnerabili1es DB
Un po di sta+s+che: • Core Vulns: > 220 • Plugin Vulns: > 480 • Theme Vulns: > 150
VULNERABILITÀ
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
VULNERABILITÀ
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
• In Wordpress:
• Rare • Coinvolgono TUTTI gli uten1 • Non banali
• Nei Plugin e nei Temi: • Frequen1 • L'impaKo dipende dalla popolarità • Banali
VULNERABILITÀ: WORDPRESS CORE
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
Wordpress è abbastanza sicuro: • E' un prodoKo maturo • Sviluppato professionalmente • Lo sviluppo è centralizzato
Qualche vulnerabilità recente: • XMLRPC Pingback Portscanner [0] • Cross-‐Site Request Forgery (CSRF) [1] • Cross-‐Site Scrip1ng (XSS) [2]
hKps://github.com/wpscanteam/wpscan/wiki/WordPress-‐3.5-‐Issues [0]: hKps://github.com/FireFart/WordpressPingbackPortScanner [1]: hKp://packetstormsecurity.com/files/116785 [2]: hKp://www.ethicalhack3r.co.uk/wordpress-‐3-‐3-‐cross-‐site-‐scrip1ng-‐xss/
VULNERABILITÀ: PLUGIN/TEMI DI TERZE PARTI
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
I plugin e i temi sono PIENI di bug: • Mol1 sono sviluppato amatorialmente • Più di 30 plugin/temi nuovi al giorno • Mol1 di più sono vendu1 aKraverso piaKaforme
commerciali (i.e. ThemeForest) Vulnerabilità ad alto impaBo:
• SQL Injec1on (SQLi) • Remote/Local File Inclusion (RFI/LFI) • Cross-‐Site Scrip1ng (XSS) • ...
VULNERABILITÀ: PLUGIN/TEMI DI TERZE PARTI
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
... Davvero?
VULNERABILITÀ: PLUGIN/TEMI DI TERZE PARTI
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
Agosto 2011: Mark Marauder scopre una vulnerabilità in TimThumb
hKp://markmaunder.com/2011/08/01/zero-‐day-‐vulnerability-‐in-‐many-‐wordpress-‐themes/
X* Plugin/Temi coinvol1
* Al tempo non avevamo le risorse per trovare il numero esaKo. In compenso abbiamo scriKo un 1mthumb scanner.
VULNERABILITÀ: PLUGIN/TEMI DI TERZE PARTI
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
Agosto 2011: Miroslav Stampar (@stamparm) decide di dare un'occhiata alla directory dei plugin....
hKp://www.exploit-‐db.com/search/?ac1on=search&filter_page=1&filter_descrip1on=&filter_exploit_text=wordpress&filter_author=miroslav+stampar&filter_plaoorm=0&filter_type=0&filter_lang_id=0&filter_port=&filter_osvdb=&filter_cve=
VULNERABILITÀ: PLUGIN/TEMI DI TERZE PARTI
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
64 Plugin vulnerabili alle SQL Injec1ons
hKp://www.exploit-‐db.com/search/?ac1on=search&filter_page=1&filter_descrip1on=&filter_exploit_text=wordpress&filter_author=miroslav+stampar&filter_plaoorm=0&filter_type=0&filter_lang_id=0&filter_port=&filter_osvdb=&filter_cve=
Agosto 2011: Miroslav Stampar (@stamparm) decide di dare un'occhiata alla directory dei plugin....
VULNERABILITÀ: PLUGIN/TEMI DI TERZE PARTI
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
SeKembre 2011: Ben Schmidt (@_supernothing) sistema1camente scansiona i server SVN alla ricerca di paKern RFI/LFI elementari...
hKp://spareclockcycles.org/2011/09/18/exploitring-‐the-‐wordpress-‐extension-‐repos/
VULNERABILITÀ: PLUGIN/TEMI DI TERZE PARTI
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
hKp://spareclockcycles.org/2011/09/18/exploitring-‐the-‐wordpress-‐extension-‐repos/
38 Plugins vulnerabili a RFI/LFI
SeKembre 2011: Ben Schmidt (@_supernothing) sistema1camente scansiona i server SVN alla ricerca di paKern RFI/LFI elementari...
VULNERABILITÀ: PLUGIN/TEMI DI TERZE PARTI
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
Novembre 2012: Una vulnerabilità di 1po XSS viene scoperta in una applet flash (swfupload.swf). Insieme con Ryan decidiamo di cercare quan1 plugin sono coinvol1...
hKp://brindi.si/g/blog/vulnerable-‐swf-‐bundled-‐in-‐wordpress-‐plugins.html
VULNERABILITÀ: PLUGIN/TEMI DI TERZE PARTI
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
Novembre 2012: Una vulnerabilità di 1po XSS viene scoperta in una applet flash (swfupload.swf). Insieme con Ryan decidiamo di cercare quan1 plugin sono coinvol1...
hKp://brindi.si/g/blog/vulnerable-‐swf-‐bundled-‐in-‐wordpress-‐plugins.html
40 Plugin Vulnerabili
VULNERABILITÀ: PLUGIN/TEMI DI TERZE PARTI
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
Basta un'occhiata veloce nelle directory di plugin e temi per trovare vulnerabilità
La carva no1zia è che non c'è nessun controllo
di qualità
La buona no1zia è che i repository SVN sono di pubblico dominio
VULNERABILITÀ: PLUGIN/TEMI DI TERZE PARTI
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
Qual'è la situazione nei market place commerciali come ThemeForest?
VULNERABILITÀ: PLUGIN/TEMI DI TERZE PARTI
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
Qual'è la situazione nei market place commerciali come ThemeForest?
Non c'è nessun controllo qualità
VULNERABILITÀ: PLUGIN/TEMI DI TERZE PARTI
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
Qual'è la situazione nei market place commerciali come ThemeForest?
Non c'è nessun controllo qualità
È tuKo closed source
VULNERABILITÀ: PLUGIN/TEMI DI TERZE PARTI
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
Qual'è la situazione nei market place commerciali come ThemeForest?
Non c'è nessun controllo qualità
È tuKo closed source
TuKo quello che possiamo fare è trovare i temi
vulnerabili tramite google dorks
VULNERABILITÀ: PLUGIN/TEMI DI TERZE PARTI
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
Errori Comuni • Nessun controllo sull'input utente • Inclusione di script terzi vulnerabili
• TimThumb • SWFupload • PLupload • ...
VULNERABILITÀ: COME COLLEZIONARLE TUTTE
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
• Da dove prendiamo le informazioni: • Wordpress CHANGELOG! • Exploit/Advisory directories/ml
• Exploit-‐db.com • Full Disclosure ML • ....
• Honeypots (sperimentale) • Passaparola -‐> TwiKer! • Cerchiamo le vulnerabilità direKamente -‐> SVN
crawling!
• Abbiamo scriKo un bot per aiutarci: @wpvulns • E abbiano anche il nostro SVN spider
VULNERABILITÀ: COME COLLEZIONARLE TUTTE
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
Il processo:
1. Advisory
2. Tes1ng! (se ne vale la pena)
3. Nel caso di uno 0day cerchiamo di contaKare gli autori (plugin/temi) o direKamente il team di Wordpress (core)
4. Aggiungiamo la vulnerabilità al DB
VULNERABILITÀ: REPORT
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
Segnalare una vulnerabilità non è immediato: • Spesso veniamo ignora1 • Il bug viene patchato di nascosto
Generalmente segnaliamo direBamente al team di Wordpress che si occupa di disabilitare la pagina del
plugin/tema dalla directory
VULNERABILITÀ: REPORT
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
Lo sviluppatore / designer ideale • Implementa uno schema di versioning • Tiene aggiornato il CHANGELOG • Non soKovaluta un'advisory • Corregge i bug e fa del suo meglio per allertare gli
uten1
CONCLUSIONI
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
Il tool serve per controllare periodicamente la presenza di vulnerabilità. Lavoriamo quo1dianamente per mantenere l'ecosistema di Wordpress più sicuro. TuKo quello che facciamo è open source -‐> CONTRIBUITE!
hKp://wpscan.org -‐ @_wpscan_
DOMANDE?
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
Gianluca Brindisi hKp://brindi.si/g/ @gbrindisi