Installazione di Metasploit su Debian Squeeze

 

 

Metasploit Project è un progetto di sicurezza informatica che fornisce informazioni sulle vulnerabilità, semplifica le operazioni di penetration testing ed aiuta nello sviluppo di sistemi di rilevamento di intrusioni. Il sub-project più conosciuto è Metasploit Framework, uno strumento per lo sviluppo e l'esecuzione di exploit ai danni di una macchina remota. Altri sub-project importanti comprendono l'Opcode Database, l'archivio di shellcode e la ricerca nella sicurezza (Wikipedia) Ci sono diverse distribuzioni Linux che si occupano di testare la sicurezza di un sistema, tra cui la più famosa è sicuramente Backtrack. Ma Metasploit possiamo anche installarlo sulla nostra distro preferita, nel caso specifico Debian Squeeze.

 

Requisiti:

 

# apt-get install build-essential subversion ruby libruby irb rdoc libyaml-ruby libzlib-ruby libopenssl-ruby libdl-ruby libreadline-ruby libiconv-ruby rubygems sqlite3 libsqlite3-ruby libsqlite3-dev

 

Installazione:

 

$ svn co https://metasploit.com/svn/framework3/trunk/ metasploit

$ cd metasploit

$ svn up

 

avvio in modo console:

 

$ ./msfconsole

 

premere help per visionare ulteriori comandi. Per il momento mi fermo quà, in una prossima guida non escludo di proseguire con degli esempi di utilizzo.

 

enjoy 😉

Login e autenticazione da penna Usb in Linux

 

 

 

Qualche tempo fa ho fatto una guida intitolata Login e autenticazione facciale in Linux, dove avevo sperimentato sul mio netbook Aspire One, l'uso della webcam come ulteriore strumento di sicurezza, sia in fase di login che in fase di amministrazione, e devo dire che ha funzionato bene, tanto è vero che lo utilizzo ancora. Oggi invece voglio fare la stessa guida,  con la differenza che al posto della webcam si usa una chiavetta usb, in questo modo anche chi non ha la webcam o non vuole usarla, ha un modo alternativo per sperimentare. Anche questa volta utilizzerò PAM che ci aiuterà nell'impresa, per la felicità di Toshidex che di PAM ha fatto una categoria sul suo blog 🙂

Requisiti:

$ sudo apt-get install pmount pamusb-tools libpam-usb

inserire la chiavetta usb, anche se contiene altri dati non ha importanza, nulla sarà perso, ed aggiungere il device con il nome scelto (nel mio caso usb-security) a /etc/pamusb.conf con il seguente comando:

$ sudo pamusb-conf --add-device usb-security

come si può vedere sotto la chiavetta è stata subito riconosciuta:

root@debian:/home/edmond# pamusb-conf –add-device usb-security
Please select the device you wish to add.
* Using "Sony Storage Media (Sony_Storage_Media_OE07042910585-0:0)" (only option)

Which volume would you like to use for storing data ?
* Using "/dev/sdg1 (UUID: 3FB2-8744)" (only option)

Name        : usb-security
Vendor        : Sony
Model        : Storage Media
Serial        : Sony_Storage_Media_OE07042910585-0:0
UUID        : 3FB2-8744

Save to /etc/pamusb.conf ?
[Y/n]
Done.

aggiungere anche l'utente a /etc/pamusb.conf:

$ sudo pamusb-conf --add-user edmond

quindi come si può vedere sotto, abbiamo collegato l'utente al device:

root@debian:/home/edmond# pamusb-conf –add-user edmond
Which device would you like to use for authentication ?
* Using "usb-security" (only option)

User        : edmond
Device        : usb-security

Save to /etc/pamusb.conf ?
[Y/n]
Done.

adesso non ci rimane altro che modificare il file /etc/pam.d/common-auth, per far sì che possa utilizzare la nostra password di sistema.

Importante:

consiglio di tenere due shell aperte come root, nel caso qualcosa andasse storto, cosicchè si possa tornare alla configurazione normale del file /etc/pam.d/common-auth.

quindi:

$ sudo nano /etc/pam.d/common-auth

la configurazione deve essere la seguente:

#auth    [success=1 default=ignore]      pam_unix.so nullok_secure
auth   required      pam_unix.so nullok_secure
auth    sufficient      pam_usb.so
 

per tornare alla situazione normale invece:

auth    [success=1 default=ignore]      pam_unix.so nullok_secure
#auth   required      pam_unix.so nullok_secure
#auth    sufficient      pam_usb.so
 

se tutto è andato bene, da questo momento in poi l'autenticazione al login e come amministratore di sistema può avvenire solo con la chiavetta inserita. A questo proposito si possono fare delle prove aprendo il terminale per acquisire i privilegi di root e verificare se tutto funziona:

$ su edmond

 

 

enjoy 🙂

 

Uninstall programmi installati da sorgenti

 

 

Dopo vari esperimenti l'altra sera non riuscivo più a compilare, poichè avevo in precedenza installato da sorgenti alcune cose, che alla fin della fiera mi hanno compromesso il sistema (chiedere a toshidex 🙂 ) perdendo il bandolo della matassa. Comunque il problema lo avevo individuato, ma dopo svariati tentativi andati a vuoto, mi sono stancato ed ho preferito reinstallare. Certo se fosse stato un problema dovuto a qualche aggiornamento giornaliero fatto, il problema lo avrei risolto semplicemente in questo modo. Ma in questo caso avendo installato con make-install, senza quindi nemmeno checkinstall,  addio tracce di tutti i file installati. Quindi questa guida serve soprattutto a me, giusto per ricordarmi che quando faccio qualche test è sempre meglio avere una lista di quello che faccio 🙂 Per tenere traccia dei file ci sono due metodi:

Primo metodo:

# make uninstall

ma trovare un tarball che include questo è quasi come vincere al superenalotto 🙂

Secondo metodo:

prendere nota di tutti i file installati:

# find /* > pacchetti.prima

a questo punto eseguire il make-install

quindi prendere nota di tutti i file dopo l'installazione:

# find /* > pacchetti.dopo

ottenere le differenze tra i due file usando diff:

# diff pacchetti.prima pacchetti.dopo > uninstall

iniziare la rimozione:

# for i in $(grep ">" uninstall | awk '{ print $2 }')

do

/bin/rm -fi $i;

done

a questo punto compariranno a video i file da disinstallare, e basta scrivere yes.

 

enjoy 😉

Modificare il tempo di memorizzazione della password in Sudo

 

Questo è un piccolo trucchetto che serve a modificare il tempo di memorizzazione della password di Sudo. Di default la password viene memorizzata per 15 minuti, ma se volessimo modificare questo tempo dobbiamo rivolgerci a visudo.

 

$ sudo visudo

oppure:

# nano /etc/sudoers

e modificare la stringa:

Defaults        env_reset

con questa:

Defaults        env_reset , timestamp_timeout =X

chiaramente al posto della X mettere il tempo scelto.

Cracking facile facile di una rete wifi con Wifite

 

 

Wifite è un ottimo strumento per il cracking di reti wifi, in grado di semplificare e velocizzare di molto i parametri da lanciare ad airmon-ng airodump-ng aireplay-ng aircrack-ng. In questo post non mi soffermerò sugli aspetti tecnici e su spiegazioni varie di termini come: chiave wep,wpa,wpa2,ivs,handshake,bruteforce ecc ecc, di spiegazioni e guide sul web se ne trovano in abbondanza. Mi voglio invece soffermare sulla semplicità di utilizzo di Wifite e su quello che è in grado di fare. I punti di forza riguardano la possibilità di cracking di diverse reti in contemporanea, la gestione del monitor mode in maniera automatica,la possibilità di usare un attacco con dizionario, la gestione automatica di tutti i passaggi, dal fake mac address al cracking finale della rete, l'interfaccia grafica, e diverse altre opzioni di configurazione. Detto ciò non mi rimane che ricordare, semmai ce ne fosse bisogno, che il cracking senza il consenso del proprietario della rete è illegale,illegale,illegale.

Testato su Debian Squeeze.

Requisiti:

# apt-get install xterm python-tk macchanger pyrit libssl-dev

più la versione di Aircrack-ng 1.1, e siccome nella  maggior parte dei casi nei repo si trova la versione 1.,0, non ci resta che installarla da sorgenti:

$ wget https://download.aircrack-ng.org/aircrack-ng-1.1.tar.gz

$ tar -zxvf aircrack-ng-1.1.tar.gz

$ cd aircrack-ng-1.1

$ make

$ sudo make install

Scaricare Wifite:

$ wget -O wifite.py

$ chmod +x wifite.py

# ./wifite.py

Una volta avviato lo script non ci resta che spuntare le opzioni ed attendere la fine del lavoro, di seguito due immagini di Wifite al lavoro, con relativo cracking di una chiave wep.

nell'immagine sopra si leggono le opzioni scelte, e si è in attesa dello sniffing di eventuali reti.

 

qui sopra invece si vede la riuscita del cracking, sotto il colore rosso c'è il nome della rete attaccata, sotto il giallo invece si nasconde la password trovata. Da notare che la password è stata trovata con circa 15000 ivs. In conclusione questo script secondo me è ottimo, e ti fa risparmiare tempo e terminali aperti.

Update:

Su ubuntu 10.10 per compilare ed installare pyrit:

sudo apt-get install libssl-dev

wget -O wifite.py

tar xvzf pyrit-0.3.0.tar.gz

cd pyrit-0.3.0

python setup.py build

sudo python setup.py install

enjoi 🙂

Cryptare con Cryptkeeper Applet per Encfs

 

 

Due anni fa avevo fatto una guida su Encfs, e sul suo utilizzo, per la creazione di una cartella cryptata dove nascondere dati sensibili, foto e cellulari di amanti, il tutto per avere una vita più tranquilla e per pene. Chiaramente quella guida è ancora valida, ma con Cryptkeeper un applet Encfs per l'area di notifica di Gnome, tutto è reso ancora più semplice.

Requisiti:

# apt-get install encfs fuse-utils cryptkeeper

dopo l'installazione troviamo cryptkeeper nel menu Strumenti di Sistema, per non avere l'errore seguente:

aggiungiamo il nostro nome utente al gruppo fuse:

# adduser nome_utente fuse

verifichiamo:

# grep "fuse" "/etc/group"

dopo aver riavviato siamo pronti a lanciare Cryptkeeper, che troveremo sotto forma di chiave nel pannello di Gnome. Non serve nessuna spiegazione sul suo utilizzo, poichè il tutto è facilmente configurabile.

Conoscere quante volte si è usato un comando

Per conoscere quali sono i comandi usati più frequentemente ed in quale numero, bisogna andare a spulciare in bash_history, ma se vogliamo velocizzare il tutto basta questo comando:

$ history | awk '{a[$2]++ } END{for(i in a){print a[i] " " i}}'|sort -rn|head

nel mio caso il risultato è questo:

edmond@debianbox:~$ history | awk '{a[$2]++ } END{for(i in a){print a[i] " " i}}'|sort -rn|head
58 mencoder
56 ffmpeg
49 cd
43 swfc
43 sudo
41 su
30 swfextract
26 cat
24 ls
10 phoronix-test-suite
 

in bash_history si trovano numerose  informazioni su quello che si è fatto, e per chi volesse disabilitare lo storico per una maggiore sicurezza:

$ rm -f ~/.bash_history

$ nano ~/.bashrc

ed inserire in fondo queste righe:

export HISTFILESIZE=4
unset HISTFILE
export HISTSIZE=2
export HISTCONTROL=ignoredups

Conoscere chi usa la memoria con lo script ps_mem.py

 

 

 

 

 

 

Questo script in pyton, ps_mem.py, può risultare molto utile ogni qual volta si ha bisogno di sapere quanta memoria ogni singolo programma occupa. Per chi volesse provarlo:

$ wget https://www.pixelbeat.org/scripts/ps_mem.py

# mv ps_mem.py /usr/local/sbin/

# chmod 755 /usr/local/sbin/ps_mem.py

lo lanciamo con:

# ps_mem.py

il risultato è una lista minuziosa.

root@debianbox:/home/edmond# ps_mem.py
 Private  +   Shared  =  RAM used    Program

112.0 KiB +  30.5 KiB = 142.5 KiB    portmap
128.0 KiB +  22.5 KiB = 150.5 KiB    gnome-pty-helper
140.0 KiB +  12.0 KiB = 152.0 KiB    sh
144.0 KiB +  22.0 KiB = 166.0 KiB    atd
144.0 KiB +  23.0 KiB = 167.0 KiB    acpid
164.0 KiB +  19.5 KiB = 183.5 KiB    init
160.0 KiB +  33.5 KiB = 193.5 KiB    hald-addon-rfkill-killswitch
164.0 KiB +  33.5 KiB = 197.5 KiB    hald-addon-leds
164.0 KiB +  34.5 KiB = 198.5 KiB    hald-addon-input
168.0 KiB +  35.5 KiB = 203.5 KiB    hald-addon-acpi
192.0 KiB +  53.5 KiB = 245.5 KiB    rpc.statd
256.0 KiB +  14.0 KiB = 270.0 KiB    ssh-agent
220.0 KiB +  50.5 KiB = 270.5 KiB    cron
240.0 KiB +  44.5 KiB = 284.5 KiB    hald-addon-usb-csr
268.0 KiB +  30.5 KiB = 298.5 KiB    hald-runner
272.0 KiB +  29.5 KiB = 301.5 KiB    dbus-launch
332.0 KiB +  14.0 KiB = 346.0 KiB    hddtemp
332.0 KiB +  48.5 KiB = 380.5 KiB    kerneloops
364.0 KiB +  48.0 KiB = 412.0 KiB    usbmuxd
336.0 KiB + 103.0 KiB = 439.0 KiB    gvfsd-burn
352.0 KiB + 119.5 KiB = 471.5 KiB    su
448.0 KiB +  43.0 KiB = 491.0 KiB    exim4
444.0 KiB +  65.5 KiB = 509.5 KiB    gvfsd-metadata
516.0 KiB +  17.0 KiB = 533.0 KiB    dhclient
460.0 KiB +  89.0 KiB = 549.0 KiB    gvfs-gphoto2-volume-monitor
468.0 KiB + 108.0 KiB = 576.0 KiB    getty (6)
480.0 KiB + 105.5 KiB = 585.5 KiB    gdm3
472.0 KiB + 126.5 KiB = 598.5 KiB    bluetoothd
464.0 KiB + 156.0 KiB = 620.0 KiB    gvfs-afc-volume-monitor
664.0 KiB +  71.5 KiB = 735.5 KiB    modem-manager
504.0 KiB + 252.0 KiB = 756.0 KiB    avahi-daemon (2)
592.0 KiB + 186.0 KiB = 778.0 KiB    gdm-session-worker
676.0 KiB + 236.0 KiB = 912.0 KiB    wpa_supplicant
792.0 KiB + 156.5 KiB = 948.5 KiB    bonobo-activation-server
820.0 KiB + 169.0 KiB = 989.0 KiB    gvfs-gdu-volume-monitor
968.0 KiB +  52.5 KiB =   1.0 MiB    rsyslogd
868.0 KiB + 206.0 KiB =   1.0 MiB    gdm-simple-slave
352.0 KiB + 741.0 KiB =   1.1 MiB    udevd (3)
904.0 KiB + 225.0 KiB =   1.1 MiB    hald-addon-storage (6)
  1.0 MiB +  94.0 KiB =   1.1 MiB    gvfsd
980.0 KiB + 176.5 KiB =   1.1 MiB    console-kit-daemon
728.0 KiB + 436.5 KiB =   1.1 MiB    upowerd
  1.1 MiB + 105.0 KiB =   1.2 MiB    gnome-keyring-daemon
  1.0 MiB + 203.0 KiB =   1.2 MiB    gvfsd-trash
  1.0 MiB + 162.5 KiB =   1.2 MiB    polkitd
944.0 KiB + 303.5 KiB =   1.2 MiB    udisks-daemon (2)
904.0 KiB + 439.5 KiB =   1.3 MiB    gvfsd-afc
  1.0 MiB + 322.0 KiB =   1.3 MiB    kerneloops-applet
  1.2 MiB + 281.5 KiB =   1.5 MiB    NetworkManager
  1.5 MiB + 210.0 KiB =   1.7 MiB    cupsd
  1.3 MiB + 457.5 KiB =   1.8 MiB    gdu-notification-daemon
  1.4 MiB + 368.0 KiB =   1.8 MiB    seahorse-agent
  1.5 MiB + 324.0 KiB =   1.8 MiB    dbus-daemon (2)
  1.5 MiB + 425.5 KiB =   1.9 MiB    gnome-screensaver
  1.8 MiB + 748.0 KiB =   2.6 MiB    multiload-applet-2
  1.9 MiB + 804.5 KiB =   2.7 MiB    trashapplet
  1.9 MiB + 796.5 KiB =   2.7 MiB    polkit-gnome-authentication-agent-1
  2.3 MiB + 721.0 KiB =   3.0 MiB    nm-applet
  2.2 MiB + 866.0 KiB =   3.0 MiB    update-notifier
  2.3 MiB + 803.5 KiB =   3.0 MiB    gtk-window-decorator
  2.3 MiB + 806.0 KiB =   3.1 MiB    x-session-manag
  3.1 MiB +  65.5 KiB =   3.2 MiB    hald
  3.3 MiB +  96.0 KiB =   3.4 MiB    gconfd-2
  3.0 MiB + 722.0 KiB =   3.7 MiB    bash (2)
  3.3 MiB + 805.0 KiB =   4.1 MiB    gnome-terminal
  3.5 MiB + 936.5 KiB =   4.4 MiB    gnome-settings-daemon
  4.4 MiB +   1.1 MiB =   5.5 MiB    mixer_applet2
 11.9 MiB + 847.0 KiB =  12.7 MiB    coherence
 17.3 MiB +   2.1 MiB =  19.4 MiB    rhythmbox
 17.4 MiB +   2.5 MiB =  19.9 MiB    gnome-panel
 34.2 MiB +   5.5 MiB =  39.7 MiB    nautilus
 47.1 MiB +   2.5 MiB =  49.6 MiB    compiz
 46.3 MiB +   4.8 MiB =  51.0 MiB    Xorg
244.8 MiB +   2.6 MiB = 247.4 MiB    firefox-bin

———————————
                        524.4 MiB
=================================

 Private  +   Shared  =  RAM used    Program

Debian GNU/kFreeBSD read-only file system error

 

Reinstallando Debian GNU/kFreeBSD mi sono ritrovato con alcuni problemi che prima non ho mai avuto, primo su tutti l'impossibilità di scrivere la partizione ufs da Debian. Ho ricompilato il kernel in Debian Lenny, Squeeze, e Sid ma la partizione contenente Debian GNU/kFreeBSD era sempre in solo lettura. Arrivato a questo punto l'unica certezza che avevo è che  ho, e che il problema risiede in qualche errore nell'installazione di Debian GNU/kFreeBSD e nel filesystem. Raccontata così sembra una cosa stupida, banale, ma quando non capisci dov'è il problema e fai tantissimi tentativi di reinstallazione,  alla fine non hai più idee, però a volte capita che ti si accende una lampadina e fai un tentativo che all'apparenza ti sembra inutile. Il comando che ho sempre dato e che inspiegabilmente non mi funziona più è:

# mount -t ufs -o rw,ufstype=ufs2,nodev,nosuid /dev/sdaX /mnt

quello che funziona adesso è:

# mount -t ufs -o remount,rw,ufstype=ufs2,nodev,nosuid /dev/sdaX /mnt

bisogna anche prestare molta attenzione alla masterizzazione del cd in quanto molte volte ci sono degli errori, che compromettono il buon esito dell'installazione, e con il tempo che ci vuole ed i problemi che si incontrano non è proprio il caso.

ps: ed i problemi continuano 😉

update: confermo che il problema della non scrittura sul filesystem ufs dipende da un qualcosa andato male in fase d'installazione…….cosa… ancora non lo so!

update: il problema riguarda il filesystem che è corrotto.

Ccrypt solo 2 comandi per cifrare/decifrare

 

 

Questo è un semplice metodo per cifrare/decifrare un file in 2 veloci e semplici comandi. Diverse volte o parlato di metodi differenti per cifrare un file, una cartella o un cd, quindi Ccrypt è un ulteriore metodo da integrare.

# apt-get install ccrypt

cifrare:

$ ccrypt nome_file

verrà chiesto di inserire una password, ed il file cifrato avrà l'estensione .cpt

decifrare:

$ ccrypt -d nome_file