domenica 21 aprile 2013

Nmap Base, guida

Video fatto circa un mese fa:


Sintassi:
nmap [OPTIONS] [TARGET/S]

Opzioni:

  • -iL : Accetta da un file una lista di possibili target, quindi se noi abbiamo un file contenente un elenco di host , possiamo passare -iL file , utile in abbinato con gnu/seq e gnu/echo della shell
  • -sP : Pinga l'host, utile per rilevare se un host è disponibile o no, però non è molto affidabile poiché il firewall potrebbe pure scartare le richieste ping
  • -sS : Usato di default se si fa una ricerca da utente root ( se non si hanno i permessi root, si scende nella -sT che vedremo dopo ), SYN Scan, fa uno scan usando l'analisi dei pacchetti di risposta SYN , più affidabile e più difficile da rilevare di -sT.
  • -sT : Usato quando non si dispone dei permessi superuser ( root o chiamateli come volete ) , fa lo scan come farebbe un qualsiasi programma scarso, prova a connettersi porta, se la connessione avviene porta aperta, se no chiusa, davvero poco preciso / affidabile e facilmente individuabile.
Questi sono quelli base, nel video c'è ne sono altri.


Canzoni usate:
- Feint - Laurence
- Rameses B - Visionary

Passworld, Unsecured (Analysis)

In questo post voglio discutere di un app che ho visto recentemente sul feed di androidworld:

 PASSWORLD ( https://play.google.com/store/apps/details?id=gerfor.passworld )


"As promises this app is used to keep password ( and relative account ) of your personal credentials."
Iniziamo dal inizio:
 App permission:

+Network Access ( full )
+Phone state

Io mi dovrei fidare di inserire dati personali importantissimi come carta di credito, password email e altro su un applicazione con BANNER e che richiede pieno accesso internet?
Sono certamente sicuro che venga usato solo per i banner, ma non mi sembra molto sicuro senza offesa...



Come vengono tenute le password? ho fatto una piccola indagine, ho scaricato l'app e ho messo una password di prova master ( quella generale ) e una falsa al interno del "database"

Okei, sono andato al interno di dove sono mantenuti i dati ( /data ) precisamente:

/data/data/gerfor.passworld/
e ho esaminato un attimo i contenuto, e sorpresa:

ls
- cache
- databases
- files
- shared_prefs

Per prima cosa ho guardato dentro shared_prefs, cartella usata per salvare le preferenze delle opzioni del app, cosa scopro:

<map>
<null name="DeviceId">
<string name="number">1</string>
<string name="Password">password1234</string>
</map>
Quella è la password globale ( master ), davvero nascosta bene, credo che un applicazione che voglia raggiungere l'obbiettivo di mantere le password dovrebbe usare come minimo qualche tecnica di offuscamento o cifratura, tipo md5 o sha1, insomma un qualcosa...

ma questo è il minimo:
dentro la cartella databases:










Ignorando l'eseguibile sqlite3 messo li per comodità, PASSWORD_DB, e PASSWORD_DB-journal, eh?

sqlite3 PASSWORD_DB 








Credo che questo lasci abbastanza intendere, il rischio dove sta? in pratica reale, quasi nessuna app ( tranne quelle ROOT ) può leggere il contenuto dati di un altra, quindi è abbastanza sicuro da furti, però c'è da dire una cosa, se qualcuno trova quei file ( metti caso backup di titanium, carbon ( magari su GDrive ) ) , è sicuramente compromesso poiché i dati sono COMPLETAMENTE IN CHIARO.

Credo che un app che miri a mantenere le password, almeno un minimo di crittografia sia necessaria, se no non risulta neppure credibile.