Connessione WPA2 WIFI da terminale con Wpa_Supplicant

 

Connessione WPA2 WIFI da terminale con Wpa_Supplicant

Connessione WPA2 WIFI da terminale con Wpa_Supplicant

Guida su come connettersi ad una rete wifi da terminale, nell'eventualità che la scheda usb wifi non venga mostrata nel menu di NetworkManager (device not managed) oppure se si tratta di collegarsi da un server. La mia scheda usb viene vista come wlx74da38c7a99b, ma per semplicità nella guida utilizzerò wlan1, e come sempre utilizzo Debian.

Pacchetti da installare:

sudo apt install rfkill wpasupplicant

verifica interfacce:

sudo rfkill list

nel mio caso viene mostrato:

0: hci0: Bluetooth
    Soft blocked: no
    Hard blocked: no
1: phy0: Wireless LAN
    Soft blocked: no
    Hard blocked: no

Disabilitare NetworkManager:

sudo systemctl stop NetworkManager
sudo systemctl disable NetworkManager

abilitare interfaccia:

sudo iwconfig
sudo ifconfig wlan1 up

ricerca ESSID:

sudo iwlist wlan1 scan | grep ESSID

connessione:

sudo wpa_passphrase NOME_RETE PASSWORD | sudo tee /etc/wpa_supplicant.conf

output:

network={
        ssid="NOME_RETE_WIFI"
        #psk="PASSWORD"
        psk=ddb754fd4fe6b22935cbae31e34873wreg586gscdf578hf986354jdg56bb
}

avvio:

sudo wpa_supplicant -B -c /etc/wpa_supplicant.conf -i wlan1
sudo dhclient wlan1
sudo ifconfig wlan1

output:

Connessione WPA2 WIFI da terminale con Wpa_Supplicant

Connessione WPA2 WIFI da terminale con Wpa_Supplicant

Abilitare connessione al boot:

sudo cp /lib/systemd/system/wpa_supplicant.service /etc/systemd/system/wpa_supplicant.service
sudo nano /etc/systemd/system/wpa_supplicant.service

aggiungere nome interfaccia, quindi modificare il file da così:

ExecStart=/sbin/wpa_supplicant -u -s -O /run/wpa_supplicant

a così:

ExecStart=/sbin/wpa_supplicant -u -s -c /etc/wpa_supplicant.conf -i wlan1
sudo systemctl enable wpa_supplicant.service

Abilitare dhclient al boot:

sudo nano /etc/systemd/system/dhclient.service

ed incollare dentro:

[Unit]
Description= DHCP Client
Before=network.target

[Service]
Type=simple
ExecStart=/sbin/dhclient wlan1

[Install]
WantedBy=multi-user.target
sudo systemctl enable dhclient.service

 

enjoy ๐Ÿ˜‰

 

Telegram Messenger su Debian 9 Stretch

 

Telegram Messenger su Debian 9 Stretch

Telegram Messenger su Debian 9 Stretch

Per installare Telegram Messenger su Debian 9 Stretch ci sono diversi modi, ma quello più pulito è quello di scaricare direttamente dal sito il tarball e poi:

$ tar xvf tsetup*
$ cd Telegram/
$ ./Telegram

Telegram Messenger su Debian 9 Stretch

enjoy ๐Ÿ˜‰

 

Cracking rete WIFI WPA2 con Debian Stretch e Fluxion

 

Cracking rete WIFI WPA2 con Debian Stretch e Fluxion

Cracking rete WIFI WPA2 con Debian Stretch e Fluxion

Dopo avere installato Fluxion su Debian Stretch, il passo successivo è quello di provare a craccare la password di una rete wifi con cifratura WPA2. Con Fluxion si può tentare un attacco cercando di recuperare la password contando sull'ingenuità dell'utente che si collega, certamente è molto più facile in quelle rete pubbliche/private frequentate da tante persone, poichè ci sono diverse persone che si loggano in breve tempo, ed in mezzo a loro ci sarà sempre qualcuno meno attento. Quindi in questo caso useremo Fluxion e sarà l'utente a servirci la password su un piatto d'argento senza ricorrere ad una attacco bruteforce o dizionario.

Lanciare Fluxion che in modo automatico metterà la scheda in modalità mode monitor:

$ cd fluxion
$ sudo ./fluxion.sh

scegliere la lingua:

Cracking rete WIFI WPA2 con Debian Stretch e Fluxion

premere 1 per fare uno scanning su tutti i canali:

Cracking rete WIFI WPA2 con Debian Stretch e Fluxion

apparirà la finestra Wifi Monitor, che almeno nel mio caso non rileva nessuna rete, infatti come si vede sotto ho una finestra aperta nel terminale per fare un paio di riavvi della scheda, cosicchè da potermi mostrare le reti:

$ sudo /etc/init.d/network-manager restart

Cracking WIFI WPA2 con Debian Stretch e Fluxion

Cracking WIFI WPA2 con Debian Stretch e Fluxion

dopo che Wifi Monitor ha rilevato le reti, chiudere la finestra, e le reti appariranno nel terminale Fluxion, quindi scegliere la rete da attaccare, nel mio caso ho scelto ASUS-MS che è una mia rete wifi con 8 caratteri alfa numerici con maiuscole/minuscole, con cifratura WPA2:

Cracking WIFI WPA2 con Debian Stretch e Fluxion

io ho utilizzato il menu 2 FakeAP-airbase-ng:

Cracking WIFI WPA2 con Debian Stretch e Fluxion

menu 1 Handshake:

Cracking WIFI WPA2 con Debian Stretch e Fluxion

premere invio:

Cracking WIFI WPA2 con Debian Stretch e Fluxion

menu 1 e scegliere pyrit:

Cracking WIFI WPA2 con Debian Stretch e Fluxion

menu 1 scegliere Deauth all:

Cracking WIFI WPA2 con Debian Stretch e Fluxion

si aprirà una finestra in alto a destra che dovrà mostrare necessariamente la cattura  della Handshake, in caso contrario riprovare. Successivamente premere 1 per fare un controllo Handshake

Cracking WIFI WPA2 con Debian Stretch e Fluxion

menu 1 per la creazione di un certificato SSL:

Cracking WIFI WPA2 con Debian Stretch e Fluxion

scegliere web interface:

Cracking WIFI WPA2 con Debian Stretch e Fluxion

nella nuova finestra appariranno in diverse lingue alcune pagine di login, che serviranno come login per il primo che si conneterà:

Cracking WIFI WPA2 con Debian Stretch e Fluxion

a questo punto siamo pronti a lanciare un attacco ed a metterci in modalità stealth. Come si può vedere nella finestra in alto a sinistra il server è in attesa di raccogliere le informazioni e lo stesso vale per la finestra in basso a sinistra. Nella finestra in altro a destra apparirà il client che si collegherà.

Cracking WIFI WPA2 con Debian Stretch e Fluxion

quando l'ignaro utente si collegherà ad internet si aprirà una pagina pop up ed immeterà la password che noi siamo pronti a "raccogliere":

Cracking WIFI WPA2 con Debian Stretch e Fluxion Cracking WIFI WPA2 con Debian Stretch e Fluxion Cracking WIFI WPA2 con Debian Stretch e Fluxion Cracking WIFI WPA2 con Debian Stretch e Fluxion

come si vede sotto non bisogna fare altro che andare in /root/ e leggere la password in chiaro

Cracking WIFI WPA2 con Debian Stretch e Fluxion

Cracking rete WIFI WPA2 con Debian Stretch e Fluxion

PS: Questa guida è solo a scopo informativo, ricordo che il cracking senza il consenso del proprietario della rete è illegale,illegale,illegale

enjoy ๐Ÿ˜‰

 

Teamviewer 12 64 bit su Debian Stretch

Teamviewer 12 64 bit su Debian Stretch

Teamviewer 12 64 bit su Debian Stretch

Per installare Teamviewer 12 su Debian Stretch 64 BIT, bisogna prima abilitare il supporto al Multi-Arch. e poi procedere con l'installazione:

$ wget https://download.teamviewer.com/download/teamviewer_i386.deb
# dpkg --add-architecture i386
# apt update
# dpkg -i teamviewer_i386.deb
# apt install -f

Teamviewer 12 64 bit su Debian Stretch

enjoy ๐Ÿ˜‰

Installare Fluxion su Debian Stretch

 

Installare Fluxion su Debian Stretch

Installare Fluxion su Debian Stretch

Fluxion al momento è uno dei migliori tools per il cracking wifi, con password WPA/WPA2 senza ricorrere ed  attacchi bruteforce o dizionario. Per installare Fluxion su Debian Stretch, bisogna risolvere alcune dipendenze, sopratutto quella di pyrit, non più presente nei repository Debian.

Installazione dipendenze:

$ sudo apt install -y aircrack-ng reaver rfkill macchanger isc-dhcp-server curl hostapd lighttpd nmap mdk3 php-cgi python-scapy python-pip forensics-extra unzip xterm libpcap-dev libpcap0.8-dev
$ sudo pip install psycopg2
$ sudo pip install libsass
$ sudo pip install scapy

Installazione pyrit:

git clone https://github.com/JPaulMora/Pyrit.git
cd Pyrit/
python setup.py clean
python setup.py build
sudo python setup.py install

Installazione Fluxion:

git clone https://github.com/wi-fi-analyzer/fluxion
cd fluxion/
sudo ./fluxion.sh

Installare Fluxion su Debian Stretch

Installare Fluxion su Debian Stretch

per l'utilizzo nella prossima guida metterò gli screenshots di un attacco ad una rete wifi con password wpa2. La rete sotto attacco sarà la mia.

enjoy ๐Ÿ˜‰

 

IP Statico su Raspberry pi e Raspbian Stretch

 

IP Statico su Raspberry pi e Raspbian Stretch

IP Statico su Raspberry pi e Raspbian Stretch

Guida su come settare un ip statico su Raspberry pi con OS Raspbian Stretch. I due files da modificare sono: /etc/dhcpcd.conf e /etc/network/interfaces.

sudo nano  /etc/network/interfaces

ed incollare:

auto lo
iface lo inet loopback
iface eth0 inet manual

sudo nano /etc/dhcpcd.conf

e modificare le voci sotto:

# Example static IP configuration:
interface eth0
static ip_address=192.168.1.84/24
static routers=192.168.1.1
static domain_name_servers=192.168.1.1 8.8.8.8

IP Statico su Raspberry pi e Raspbian Stretch

enjoy ๐Ÿ˜‰

 

Vodafone Station Revolution OpenVpn e Asus RT-AC68U

 

Vodafone Station Revolution OpenVpn e Asus RT-AC68U

Vodafone Station Revolution OpenVpn e Asus RT-AC68U, dal titolo sembrerebbe tutto facile ma purtroppo non è così. Passando da qualche giorno alla fibra FTTC di Vodafone, ho dovuto fare dei cambiamenti all'interno della mia rete, ma per comprendere la problematica è meglio fare un passo indietro. Il mio vecchio operatore era Infostrada che mette a disposizione dei propri clienti un modem huawei, che si configura con i parametri PPOE con username e password uguali per tutti (benvenuto-ospite). Questo modem supporta il bridge e quindi io lo usavo solo come modem, e tutto il resto lo gestiva il mio Asus RT-AC68U con molta soddisfazione. Il router Asus prima lo utilizzavo con DD-WRT, per poi passare a Asuswrt-Merlin. Dunque tornando alla vodafone station revolution, ho subito pensato di poter replicare la stessa configurazione, ma mi sbagliavo di grosso. La VSR residenziale ha tanti bug, che posso aggirare (quasi tutti)  usando il router Asus, ed alcune mancanze, prima di tutto la mancanza della modalità Bridge e PPOE (No user/password), ma questo evidentemente fa parte della loro politica e non entro nel merito. La VSR quindi accede ad internet tramite il Mac Address. Se si cerca di bypassare la VSR utilizzando un router il primo problema si presenta con l'IP pubblico mascherato da un IP locale, in virtù di una doppia wan/doppio nat, e quindi non c'è verso di far funzionare un Dynamic DNS e quindi OpenVpn. Praticamente nei contratti residenziali  non c'è modo di rendere la VSR trasparente, come facevo prima col modem huawei infostrada, quindi bisogna cercare di limitare i danni.

Vodafone Station Revolution OpenVpn e Asus RT-AC68U

Configurazione lato VSR:

  1. Gateway 192.168.1.1 (o qual si voglia)
  2. WIFI Disabilitato
  3. DNS Sicuro Disabilitato
  4. Firewall Disabilitato
  5. DMZ Abilitato verso 192.168.1.50 o altro IP
  6. DDNS Abilitato e Configurato

Configurazione lato ASUS:

WAN con IP Statico

  • 192.168.1.50
  • 255.255.255.0
  • 192.168.1.1

LAN

  • 192.168.0.1
  • 255.255.255.0

WAN – DDNS

Abilitare DDNS, scegliere Custom ed inserire Host Name. Come si può vedere, il router non riesce a raggiungere l'IP pubblico quindi presenta i seguenti errori:

The wireless router currently uses a private WAN IP address.
This router may be in the multiple-NAT environment and DDNS service cannot work in this environment.

Per risolvere il problema abbiamo bisogno di abilitare SSH in Administartion-System e Enable JFFS custom scripts and configs. Inserire un hard disk esterno con almeno una partizione formattata in ext4 e dopo essere entrati nel router via SSH, installare Entware, con il comando:

entware-setup.sh

che ci permetterà di installare ulteriori programmi che ci serviranno:

opkg list
opkg install nano

verrà creata anche una cartella scripts in /jffs/scripts dove verranno inseriti gli scripts che ci serviranno. Io ho un account con dyndns.org, quindi mi serve uno script che aggiorni sempre il mio ip e che possa comunicarlo al server bypassando la VSR. Portarsi quindi nella cartella scripts e creare lo script up.sh

Asus@RT-AC68U-A088:/jffs/scripts#nano up.sh

ed incollare dentro, adattandolo al proprio host DNS:

#!/bin/sh

while [ ! -n  "`ifconfig | grep tun11`" ]; do
    sleep 1
    done

    SERVICE="dyndns"
    USER="user_dyndns"
    PASS="password_dyndns"
    HOST="hostname_dyndns"
    IP=$(wget -qO - http://icanhazip.com)

    ez-ipupdate -S $SERVICE -u $USER:$PASS -h $HOST -a $IP

    exit 0

 

chmod 700 /jffs/scripts/up.sh

adesso serve un'altro script che ogni 2 ore controlli ed informi il router di un eventuale cambio IP.

nano services-start

ed aggiungere:

#!/bin/sh

/usr/sbin/cru a DDNS "0 0,2,4,6,8,10,12,14,16,18,20,22 * * * /jffs/scripts/up.sh

Vodafone Station Revolution OpenVpn e Asus RT-AC68U

a questo punto dovrebbe essere quasi tutto utilizzabile!

enjoy ๐Ÿ˜‰

 

Sincronizzare cartella in locale e remoto con Lsyncd su Debian Stretch

 

Sincronizzare cartella in locale e remoto con Lsyncd su Debian Stretch

Sincronizzare cartella in locale e remoto con Lsyncd su Debian Stretch

Guida su come sincronizzare automaticamente una cartella sia in locale che in remoto utilizzando lsyncd su Debian Stretch. Questo è un metodo molto utile per sincronizzare la stessa cartella su più server contemporaneamente.

Installazione:

sudo apt install lsyncd

lysncd non crea files di configurazione, ma si trovano degli esempi in:

ls /usr/share/doc/lsyncd/examples/

output:

edmond@debianbox:~$ ls /usr/share/doc/lsyncd/examples/
lalarm.lua lecho.lua lgforce.lua lpostcmd.lua lrsyncssh.lua
lbash.lua lftp.lua limagemagic.lua lrsync.lua lsayirc.lua

un esempio di file di configurazione da cui partire è quello sotto:

cat /usr/share/doc/lsyncd/examples/lrsync.lua

output:

edmond@debianbox:~$ cat /usr/share/doc/lsyncd/examples/lrsync.lua
----
-- User configuration file for lsyncd.
--
-- Simple example for default rsync.
--
settings = {
    statusFile = "/tmp/lsyncd.stat",
    statusInterval = 1,
}

sync{
    default.rsync,
    source="src",
    target="trg",
}

Sincronizzare cartella in locale

sudo mkdir dir_sorgente
sudo mkdir dir_destinazione

creare dei files di prova:

sudo touch dir_sorgente/file{1..10}
ls source_dir/

Creare dei files di log utili per capire cosa succede durante la sincronizzazione:

sudo mkdir /var/log/lsyncd 
sudo touch /var/log/lsyncd/lsyncd.{log,status}

Creazione del file di configurazione:

sudo mkdir /etc/lsyncd
sudo nano /etc/lsyncd/lsyncd.conf.lua
settings {
        logfile = "/var/log/lsyncd/lsyncd.log",
        statusFile = "/var/log/lsyncd/lsyncd.status"
}

sync {
        default.rsync,
        source = "/home/edmond/dir_sorgente",
        target = "/home/edmond/dir_destinazione",
}

modificare quanto sopra con il proprio user/path

Avviare lsyncd:

sudo systemctl enable lsyncd
sudo systemctl restart lsyncd

e controllare la directory di destinazione che dovrebbe essersi popolata con i files di esempio:

ls dir_destinazione/

output:

file1 file10 file2 file3 file4 file5 file6 file7 file8 file9

consultare il log e lo status:

tail -10 /var/log/lsyncd/lsyncd.log
more /var/log/lsyncd/lsyncd.status

Sincronizzare cartella in remoto

la prima cosa da fare è quella di avere un accesso ssh senza password:

sudo su
ssh-keygen -t rsa

premere sempre enter

copiare la chiave sul server remoto:

ssh-copy-id USER@192.168.10.100

a questo punto se tutto è andato bene si avrà l'accesso senza password:

ssh USER@192.168.10.100

creare una directory da sincronizzare sul server:

mkdir dir_remote
exit

a questo punto bisogna editare il file di configurazione con le nuove modifiche. Di default lsyncd si collega via ssh con la porta standard 22, ma per chi usa una porta diversa bisogna specificarlo nel file di configurazione:

sudo nano /etc/lsyncd/lsyncd.conf.lua

settings {
    logfile = "/var/log/lsyncd/lsyncd.log",
    statusFile = "/var/log/lsyncd/lsyncd-status.log",
    statusInterval = 1
}

sync {
    default.rsyncssh,
    source="/home/edmond/dir_sorgente",
    host="USER@192.168.10.100",
    targetdir="/path/dir_remote",
    delay = 1,
    rsync = {
        archive = true,
        compress = true,
        whole_file = false
    },
    ssh = {
        port = 2233
    }
}

accedendo al server si potrà vedere se la sincronizzazione è avvenuta con successo.

sudo systemctl restart lsyncd
ssh user@192.168.10.100
ls dir_remote/

output:

server1@raspberrypi:~ $ ls dir_remote/
test_files1 test_files2 test_files4 test_files6 test_files8
test_files10 test_files3 test_files5 test_files7 test_files9

Sincronizzare cartella in locale e remoto con Lsyncd su Debian Stretch

enjoy ๐Ÿ˜‰

 

Come visualizzare default gateway da terminale in Linux

 

Come visualizzare default gateway da terminale in Linux

Come visualizzare default gateway da terminale Linux

I classici comandi come ifconfig o ip non visualizzano il default gateway, quindi per poterlo visualizzare si possono usare i tre comandi seguenti:

# netstat -nr
# ip route show
# route -n

Come visualizzare default gateway da terminale in Linux

enjoy ๐Ÿ˜‰

 

Cambiare nome scheda di rete da enp0s25/wlp4s0 a eth0/wlan0 con Systemd

 

Su un portatile Thinkpad T540P(20BE005YGE), i nomi delle schede di rete non sono le solite a cui io sono abituato, e cioè eth0 e wlan0, ma bensì enp0s25 e wlp4s0. Utilizzando Debian 9 Stretch con Systemd, per poter cambiare i nomi bisogna creare 2 files con i nomi delle interfacce. Quello che serve è il mac address delle schede, che si ottiene con il comando ifconfig o ip link:

Cambiare nome scheda di rete da enp0s25/wlp4s0 a eth0/wlan0 con Systemd

root@DebianBox:/home/edmond# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp0s25: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT group default qlen 1000
    link/ether 54:ee:11:0d:ce:11 brd ff:ff:ff:ff:ff:ff
3: wlp4s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT group default qlen 1000
    link/ether 7c:7a:22:d9:3b:22 brd ff:ff:ff:ff:ff:ff
4: wwp0s20u10i6: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 02:15:e0:ec:01:00 brd ff:ff:ff:ff:ff:ff
root@DebianBox:/home/edmond# ifconfig
enp0s25: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 54:ee:11:0d:ce:11  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 20  memory 0xf2600000-f2620000  

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Local Loopback)
        RX packets 438  bytes 33948 (33.1 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 438  bytes 33948 (33.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlp4s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.41  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::87d4:6da9:153f:ffa4  prefixlen 64  scopeid 0x20<link>
        ether 7c:7a:22:d9:3b:22  txqueuelen 1000  (Ethernet)
        RX packets 16061  bytes 16095320 (15.3 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 12337  bytes 1597446 (1.5 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

quindi creare il file 10-eth.link:

# nano /etc/systemd/network/10-eth.link

ed inserire

[Match]
MACAddress=XX:XX:XX:XX:XX:XX

[Link]
Name=eth0

ed il file 10-wlan.link:

[Match]
MACAddress=XX:XX:XX:XX:XX:XX

[Link]
Name=wlan0

e poi reboot.

Cambiare nome scheda di rete da enp0s25/wlp4s0 a eth0/wlan0 con Systemd

enjoy ๐Ÿ˜‰