Ricerca tra la vecchia roba

Hackmeeting 0x0E

Posted: giugno 22nd, 2011 | Author: | Filed under: Hack, Life | 1 Comment »

Il mondo finira’, ma dato che a noi ci importa il giusto, intanto organizziamo un altro hackmeeting.

Con questo incipit inizia il manifesto dell’hackmeeting di quest’anno: dal 24 al 26 giugno, a Firenze presso il csa nEXt Emerson. Come al solito grandi emozioni. Se qualcuno che mi legge ci va, mi faccia sapere (ma qualcuno mi leggerà?)


Fare screenshot su un samsung galaxy S

Posted: giugno 19th, 2011 | Author: | Filed under: Tips&Tricks | Commenti disabilitati su Fare screenshot su un samsung galaxy S

Dopo mesi di ricerche vane, un post rivela quello che sembrava impossibile: gli steps sono

  1. tenere premuto il tasto back
  2. premere e rilasciare il tasto home
  3. lasciare il tasto back

A questo punto nella directory ScreenCapture potete trovare i vari screenshot in comodi files PNG.


Rooting del samsung galaxy s, the easy way

Posted: maggio 17th, 2011 | Author: | Filed under: Hack | 1 Comment »

Ecco in semplici passi come ottenere il rooting del Samsung Galaxy S in maniera semplice, semplice: in pratica servono 2 cose

  1. Heimdall
  2. CF-Root

Il primo è un programma da utilizzare per il flashing della ROM/Firmware dell’apparecchio: nei forum viene sempre citato Odin che è uno strumento leaked dai laboratori samsung che ha il piccolo difetto di funzionare solamente su Windows (dyo mio), mentre questo è multipiattaforma ed open source.

Nella Home page si possono trovare le indicazioni sul progetto e le varie modalità di download (binary per winzoz, pacchetti debian, MacOSX, sorgenti); io prima ho optato per i pacchetti debian ma purtroppo al momento di partire per il flashing restituiva il seguente errore

heimdall-frontend: symbol lookup error: heimdall-frontend: undefined symbol: _ZN9QListData11detach_growEPii

Quindi ho optato per la compilazione da sorgenti: abbastanza lineare, basta seguire le istruzioni, non  fosse che siccome usa le qt4 possono sorgere dei problemi di compilazione se si hanno installate anche le qt3; in tal caso è comodo controllare che si usi effettivamente la giusta versione per la compilazione

$ ls -l `which qmake`
lrwxrwxrwx 1 root root 23  6 mar 19.56 /usr/bin/qmake -> /etc/alternatives/qmake

altrimenti usare il comando update-alternatives in maniera opportuna. Una volta compilato, installato e lanciato dovrebbe apparire la seguente schermata

CF-root invece è, secondo la descrizione del suo creatore

rooted kernel […] for the “rooting beginners” and those who want to keep as close to stock as possible. CF-Root takes the kernel from an original Samsung firmware, and just adds root, busybox, and (unprotected recovery and CWM compatibility) OR (CWM3)

in pratica un semplice kernel che riabilita l’utente root e comandi standard di un sistema unix (da una installazione busybox). La situazione particolare è che qui si tratta di installare solo il kernel e non firmware vari mettendo in pericolo le funzionalità dell’apparecchio. Dalla pagina dovete scaricare la versione del kernel che matcha quella del vostro sistema attuale che potete scoprire semplicemente digitando *#1234# in modalità tastiera telefonica: nel mio caso è I9000XWJS8 (dovete guardare la voce PDA), quindi ho scaricato CF-Root-XW_NEE_JS8-v1.3-BusyBox-1.17.1.zip.

Dezippate, detarrate e vi ritroverete con un file zImage che dovrete andare a selezionare alla voce “Kernel (zImage)” di Heimdall; a questo punto potete mandare il cellulare in modalità “download” (io uso lo sgamo) e collegare il cavo USB al computer (si consiglia di caricare il cellulare completamente). Ora viene il bello: cliccate su “Start” e vedrete la barra avanzare velocemente e al termine della procedura, dopo pochi secodi, il cellulare si riavvierà.

Ovviamente consiglio di leggere attentamente le fonti originali cercando di capire esattamente i passi da seguire per evitare di trasformare il proprio cellulare in un fermacarte!!


Android 3-Button-Fix in hardware

Posted: maggio 17th, 2011 | Author: | Filed under: General, Hack | Commenti disabilitati su Android 3-Button-Fix in hardware

Come spiegato qui è possibile indurre la modalità di ripristino di un samsung galaxy S grazie ad un minimo di elettronica. Parrebbero bastare tipo due resistenze!

Su ebay è possibile acquistare per meno di 10€ questo prodigio che sul mio apparecchio funziona da dyo se per caso come me non avete la voglia/tempo/coraggio.

Nella foto qui a fianco potete osservare come si presenta questo apparecchio.

Per chi si fosse perso le puntate precedenti, è presente una modalità, detta di “download”, attraverso cui è possibile agire sulla “installazione” di default del proprio Samsung Galaxy S; questa modalità è l’ultima scialuppa di salvataggio in caso di cattivo aggiornamento e per motivi sconosciuti alle persone sane di mente. alcuni vendors la disabilitano.


Eliminare dati GPS da immagini

Posted: marzo 27th, 2011 | Author: | Filed under: Hack, privacy, Tips&Tricks | Commenti disabilitati su Eliminare dati GPS da immagini

Come i miei cari lettori ben sapranno possiedo un cazzo di cellulare Android e della sua fottuta telecamera e del suo malefico GPS integrato con mille sistemi per conoscere la tua posizione; bene, non ricordandomi bene se l’opzione era disabilitata nelle foto ho controllato dalla linea di comando

$ exiftool '/media/3397-07D8/DCIM/Camera/2011-03-27 18.45.35.jpg' | grep GPS
GPS Version ID                  : 2.2.0.0
GPS Latitude Ref                : North
GPS Longitude Ref               : East
GPS Altitude Ref                : Above Sea Level
GPS Time Stamp                  : 16:44:40
GPS Measure Mode                : 2-Dimensional Measurement
GPS Dilution Of Precision       : 1
GPS Processing Method           : CELLID
GPS Date Stamp                  : 2011:03:27
GPS Altitude                    : 0 m Above Sea Level
GPS Date/Time                   : 2011:03:27 16:44:40Z
GPS Latitude                    : 66 deg 6' 66.66" N
GPS Longitude                   : 6 deg 66' 66.66" E
GPS Position                    : 66 deg 6' 66.66" N, 6 deg 66' 66.66" E

Non è carino!!!1!!!! vediamo di eliminare ‘sta merda

$ convert -strip '/media/3397-07D8/DCIM/Camera/2011-03-27 18.45.35.jpg' nuovonome.jpg
$ exiftool nuovonome.jpg
ExifTool Version Number         : 8.15
File Name                       : nuovonome.jpg
Directory                       : /tmp
File Size                       : 1409 kB
File Modification Date/Time     : 2011:03:27 19:05:03+02:00
File Permissions                : rw-r--r--
File Type                       : JPEG
MIME Type                       : image/jpeg
JFIF Version                    : 1.01
Resolution Unit                 : inches
X Resolution                    : 72
Y Resolution                    : 72
Image Width                     : 2560
Image Height                    : 1920
Encoding Process                : Baseline DCT, Huffman coding
Bits Per Sample                 : 8
Color Components                : 3
Y Cb Cr Sub Sampling            : YCbCr4:2:2 (2 1)
Image Size                      : 2560x1920

Come vedete niente più dati GPS.


Creare una progress bar da un processo già avviato

Posted: marzo 20th, 2011 | Author: | Filed under: firefox, Hack, linux, Tips&Tricks | Commenti disabilitati su Creare una progress bar da un processo già avviato

Stavo ascoltando l’audio di Wu Ming 1 relativamente al 150ennale dell’unità d’italia e avendo cliccato direttamente dal browser mi aveva aperto la risorsa con il plugin di mplayer; l’intervento è abbastanza lungo e succede che magari devo andare a mangiare e voglio capire se bastano due minuti perché finisca oppure meglio cucinare subito però non posso saperlo siccome questo player non ti visualizza il tempo che manca, come fare?

La soluzione è utilizzare il filesystem virtuale /proc: questo sottoinsieme di directory contiene dei file che descrivono lo stato del computer ed in particolare dei processi. Per esempio, io cerco tramite ps quale è il PID del plugin di mplayer

$ ps ax
...
16783 ?        Ssl    0:19 mplayer -wid 0x4000038 -osdlevel 1 -nojoystick -nocon
...

posso andarmi a cercare quali file descriptor ha aperto questo programma (e tra di essi ci sarà il file con l’audio che sto ascoltando)

$ ls -l /proc/16783/fd/*
...
lr-x------ 1 packz packz 64 20 mar 21.17 /proc/16783/fd/5 -> /tmp/mplayZ1FhAY.mp3
...

Per sapere quanto manca devo trovare la posizione in cui il processo sta leggendo il file

$ cat /proc/16783/fdinfo/5 
pos:    33677312
flags:    0100000

e la dimensione totale del file stesso

$ wc -c /tmp/mplayZ1FhAY.mp3
56845588 /tmp/mplayZ1FhAY.mp3

Con un pizzico di magia da shell ottengo la percentuale

$ bc -l
33677312/56845588
.59286725998858521790

Un po’ più di metà, mi tocca cucinare subito!

P.S: Per questo tricks ringraziare questo blog (ha sempre informazioni molto valuable).


Hacking android

Posted: marzo 19th, 2011 | Author: | Filed under: Hack | Commenti disabilitati su Hacking android

In un attimo di pazzia proletaria sono diventato un possessore di un Samsung Galaxy S con l’obiettivo di portare dentro di me il male che aleggia intorno ai computer: come apparecchio non c’è male, schermo da paura, funzionalità come se piovesse e cosa più importante, un sistema operativo con il quale pacioccare in allegria o almeno quella era l’idea.

Prima cosa  che ti fa sclerare è il fatto che il cellulare ha linux inside ma per fare gli aggiornamenti devi usare quel pacco di “samsung kies” che gira solo su winzoz 🙁 si può ovviare a questo utilizzando opportuni strumenti come si vedrà in seguito.

Ma veniamo alla parte più interessante, cioé l’hacking dell’apparecchio: prima di tutto c’è da sapere che questo mitico cellulare ha due modalità particolari da cui si può accedere all’avvio: la modalità di recovery e la modalità di download. La prima modalità permette l’accesso ad un apposito menù ed è utilizzata per resettare il cellulare alle impostazioni di fabbrica, aggiornare il sistema utilizzando un archivio chiamato di default “update.zip” e si accede con la sequenza di tasti Home+Vol down+power (spegnete il cellulare, quando siete sicuri che sia spento, premete quella sequenza di tasti fino a non vedere qualche segnale di vita dal vostro cellulare e lasciate andare il tasto power che altrimenti si rispegne, ad un certo punto vi dovrebbe comparire un menù). La modalità di download (rappresentata nell’immagine del post) è analoga (vi si accede con la sequenza Home+Vol up+power) ma più importante: entrando in questa modalità è possibile ripristinare qualunque danno fatto durante un aggiornamento, tanto che è consigliato su qualunque forum di sicerarsi di averla abilitata prima di eseguire qualsiasi cosa. Il bello sta proprio qui, alcuni venditori disabilitano questa modalità per evitare che la gente ci giochi non sapendo (?) che li sta mettendo nella merda; una soluzione ci sarebbe, e consisterebbe nel flasharsi un nuovo firmware e per essere sicuri che funzioni si necessità diventare root sul proprio cellulare, solo che quest’ultima cosa necessita a sua volta di una customizzazione pericolosa senza la modalità di recovery… è un serpente che si mangia la coda!!!11!!!! come fare? semplice: usiamo un exploit!

Bisogna sapere che Google mette a disposizione un ambiente di sviluppo (la cosidetta SDK) con cui costruire programmi appositi per questo apparecchio; assieme alla SDK ci sono dei tools tra cui adb (advanced debugging bridge), un demone che in pratica permette di effettuare delle operazioni sul proprio cellulare tra cui copiare file da/sul cellulare etc… una curiosità di questo pezzo di software è il fatto che sia bacato, nel senso che esiste un exploit in the wild che permette di accedere come root: ecco le istruzioni (do per scontato che sappiate come far funzionare adb)

/android $ adb push rageagainstthecage-arm5.bin /data/local/tmp/rageagainstthecage
263 KB/s (5392 bytes in 0.020s)

/android $ adb shell chmod 700 /data/local/tmp/rageagainstthecage

/android $ adb shell
$ cd /data/local/tmp
cd /data/local/tmp
$ ./rageagainstthecage
./rageagainstthecage[*] CVE-2010-EASY Android local root exploit (C) 2010 by 743C[*] checking NPROC limit ...
[+] RLIMIT_NPROC={3084, 3084}[*] Searching for adb ...
[+] Found adb as PID 64[*] Spawning children. Dont type anything and wait for reset!
[*]
[*] If you like what we are doing you can send us PayPal money to
[*] 7-4-3-C[at]web.de so we can compensate time, effort and HW costs.
[*] If you are a company and feel like you profit from our work,
[*] we also accept donations > 1000 USD!
[*]
[*] adb connection will be reset. restart adb server on desktop and re-login.
$
/android $ adb kill-server

/android $ adb start-server
* daemon not running. starting it now *
* daemon started successfully *

/android $ adb shell
#

Quel cancelletto indica che abbiamo avuto accesso come root 😉 Se vi interessa sapere come funziona leggete questo.

P.S: adb continuerà a girare come root fino al riavvio del cellulare, sappilo!!!


Qualche opzione di emerge

Posted: dicembre 13th, 2010 | Author: | Filed under: Gentoo, Tips&Tricks | Tags: , | Commenti disabilitati su Qualche opzione di emerge

Gentoo mi piace, però qualche volta mi ritrovo con un sistema impossibile da aggiornare o con qualche problema di update; questa volta è stato un aggiornamento di perl, per scoprirlo ho dovuto leggere le news di gentoo come indicato alla fine dell’ultimo emerge:

$ eselect news list
News items:
[1]   read    2009-04-06  Migration to X.org Server 1.5
[2]   read    2009-04-18  Generation 1 Java Setup Deprecated
[3]   read    2009-07-12  xorg-x11-7.4 and xorg-server-1.5 kernel support
[4]   read    2009-10-02  Migration to X.org Server 1.6 and libxcb 1.4
[5]   read    2009-10-08  Upgrade to GNOME 2.26
[6]   read    2010-01-31  Removal of libGL.la
[7]   read    2010-02-28  Layman storage path changed from version 1.3.0 on
[8]   read    2010-02-21  MySQL 5.1 unmasking and upgrade procedures
[9]   read    2010-03-23  New desktop subprofiles for GNOME and KDE
[10]  read    2010-04-23  Upgrade to GNOME 2.28
[11]  read    2010-03-25  Python 3.1
[12]  read    2010-08-01  –as-needed enabled in default profiles
[13]  read    2010-10-22  Perl 5.12 upgrade procedure

Possiamo leggere la news nella maniera seguente

$ eselect news read 13
2010-10-22-perl-5.12-upgrade-procedure
Title                     Perl 5.12 upgrade procedure
Author                    perl-team <perl@gentoo.org>
Author                    Torsten Veller <tove@gentoo.org>
Posted                    2010-10-22
Revision                  1

==> Run `perl-cleaner –all` after upgrading to a new Perl version! <==

“Perl 5.12 is not binary compatible with prior releases of Perl. If
you have built extensions (i.e. modules that include C code) using an
earlier version of Perl, you will need to rebuild and reinstall those
extensions.” [1]

In fact, in Gentoo you currently have to rebuild all Perl modules and
all binaries linking libperl to get into a consistent state again.

perl-cleaner generates a list of broken packages and passes it to your
package manager to reinstall them. After reinstalling the packages,
perl-cleaner outputs a list of files the script could not deal with
(like modules installed not via the package manager).

See `man perl-cleaner` for its options.

[1] http://search.cpan.org/dist/perl-5.12.2/INSTALL#Changes_and_Incompatibilities

Il problema è che lanciando perl-cleaner non ottenevo l’effetto sperato in quanto mi diceva che dovevo unmaskare (~x86) un casino di pacchetti. Il problema non è l’unmaskare i packages (o almeno, se sai cosa stai facendo) ma il fatto che (di default) una volta lanciato l’emerge, esso ti manda l’avviso che bisogna unmaskare, però indicando solo il primo package che ha dato problema. Quindi se ce ne sono 15 ti tocca rilanciarlo 15 volte e non è carino visto che non è immediato.

Un primo approccio è stato de-unmaskare tutti i pacchetti che con i vari upgrade precedenti avevo unmaskato nell’ottica di eliminare dipendenze inverse particolari. Purtroppo anche de-unmaskando la situazione non è cambiata e quindi mi sono detto “è possibile che non esista una opzione che mi permetta di vedere in un colpo solo tutti i pacchetti che hanno problemi nell’emerge che voglio fare?” e ho pensato al sacro principio sancito dal RTFM.

Leggere la pagina di emerge è stata la mossa vincente e mi ha fatto arrivare alla seguente combinazione di opzioni (solo l’ultima è una innovazione, le altre le usavo già di default ma già che ci sono vi illumino di sapienza)

emerge --ask --update --verbose --deep --keep-going=True --autounmask system world

che posso spiegare brevemente così

  • –ask: prima di effettuare l’effettivo aggiornamento chiedi
  • –update: esegui l’aggiornamento dei pacchetti che hanno degli aggiornamenti disponibili
  • –deep: esegui l’update anche per le dipendenze (l’opzione precedente aggiorna solo i pacchetti contenuti nel world, questa opzione dice di aggiornare anche i pacchetti da cui questi dipendono)
  • –keep-going: in caso di errore nell’emerge continua con i rimanenti
  • –autounmask: se ci sono dei pacchetti che per qualche motivo bloccano l’upgrade, mostra quali cambiamenti si necessitano e blocca l’upgrade

È proprio questa ultima opzione quella che cercavo: se ci sono problemi si blocca e mostra cosa bisogna scrivere in package.keyword e package.use per mandare a buon fine l’upgrade. Una volta copiato il tutto l’upgrade va che è un piacere e finalmente dopo più di un mese ho una installazione gentoo senza problemi di upgrade.


Hard disk da 1TB da porre in abominio

Posted: settembre 25th, 2010 | Author: | Filed under: Hack, Installation party, Life, linux, Tips&Tricks | Commenti disabilitati su Hard disk da 1TB da porre in abominio

Nella stesura del Levitico, il nostro signore deve essersi dimenticato di porre in abominio una cosa molto importante: gli HD SATA da 1TB in quanto possono causare peripezie di indicibile sofferenza.

Read the rest of this entry »


Security through obscurity, la saga continua…

Posted: settembre 18th, 2010 | Author: | Filed under: Hack, link, networking, privacy | Commenti disabilitati su Security through obscurity, la saga continua…

in questo articolo descriveremo il procedimento con la quale l’algoritmo Telsey genera la wpa di default impostata da FASTWEB

viaTelsey FASTWEB: Full Disclosure « White Hats Crew.