PSOTNIC - BOTNET
* Premessa: si trovano molte guide sul web per
l'installazione. Non ricopio tutti i vari links.
Cercare 'comandi psotnic'.
Conviene costruire tutta la struttura della botnet con hub - slave - leaf al di fuori di IRC poi
con calma decidere su quali server irc far salire gli slave e leaf
tenendo conto dei MOTD per evitare una k-line usando troppe connessioni.
In linea generale sono accettate 2 connessioni per server di ciascun user (shell). Alcuni permettono 10 connessioni per classe di vhost (un medesimo ip-vps) anche se si 'irca' in ipv6.
Personalmente uso la versione gay-psotnic-0.1 governabile con Mirc script e i comandi bisogna darli a mano.
Ci sono altre versioni usabili con il famoso Eazy
Psotnic per windows.
Con gay-psotnic-0.1
funziona male, sconsiglio l'applicazione.
=======================================================================
Installazione Psotnic
Nella shell linux
incollare i seguenti comandi:
wget
http://psotnic.googlecode.com/files/gay-psotnic-0.1.tar.gz
tar xvzf gay-psotnic-0.1.tar.gz
rm gay-psotnic-0.1.tar.gz
cd gay-psotnic-0.1
./configure --prefix
$HOME/psotnic
make
make modules
make install
cd $HOME
rm -fr gay-psotnic-0.1
cd psotnic
rm -fr cfg-examples
ls
cd $HOME/psotnic ; ./psotnic -n
(./psotnic
-n serve
per avviare lo psotnic in modalita'
configurazione)
Dopo
che lo psotnic e' avviato
procedere a configurarlo:
CONFIGURAZIONE DI UN HUB
l'hub sara' il capo che terra'
uniti i prossimi psotnic:
slave - leaf
schiavo - foglia
Per comodita'
usare un notepad per modificare i dati e incollarli nella shell
======================================================================
P A R A M E T R I D A
C A M B I A R E
MioPsot Nickname del bot
MioPsot Handle
Questo e'
il mio nome! realname
MioPsot^ Nick alternativo
65432 porta di ascolto
pass-a-mia-scelta
password
di owner
quella che dovranno
usare gli altri psotnic
lumaca Nome user owner
lumacapass Passw dell'user-owner
=====================================================================
] Copiare fino in fondo con i parametri gia' cambiati !!! [
MioPsot
MioPsot
Questo e' il mio nome!
MioPsot^
0.0.0.0 ip
0.0.0.0
0
0.0.0.0
65432
all
N
pass-a-mia-scelta
N
N
N
N
MioPsot.cfg
Y
lumaca
lumacapass
e incollare nella shell tutte le righe da MioPsot a
.. sotto lumacapass
La shell rispondera'
alle richieste cosė:
(moneta)~/psotnic:$ cd
$HOME/psotnic ; ./psotnic -n
gay-psotnic,
version 0.1-pre (23-09-10)-ipv6 (rev: 205, build: Data/Ora)
Copyright (C) 2003-2007 Grzegorz
Rusin <grusin@gmail.com>
Copyright (C) 2009 psotnic.com development team
[*] Bot now runs in config creation mode
[*] The options are explained at
http://psotnic.wiki.sourceforge.net/Config+File
[*] Mandatory options for all bot
types:
[?] nick? (1 to 15 chars): MioPsot
[?] nick? (1 to 15 chars):
[?] username? (1 to 12 chars) [moneta]:
^C
(moneta)~/psotnic:$ cd
$HOME/psotnic ; ./psotnic -n
gay-psotnic,
version 0.1-pre (23-09-10)-ipv6 (rev: 205, build: Data/ora)
Copyright (C) 2003-2007 Grzegorz
Rusin <grusin@gmail.com>
Copyright (C) 2009 psotnic.com development team
[*] Bot now runs in config creation mode
[*] The options are explained at
http://psotnic.wiki.sourceforge.net/Config+File
[*] Mandatory options for all bot
types:
[?] nick? (1 to 15 chars): MioPsot
[?] username? (1 to 12 chars)
[moneta]: MioPsot
[?] realname?
(1 to 255 chars) [Psotnic C++ Edition]: Questo e' il mio Psot
[?] alternative nick? (1 to
15 chars): MioPsot^
[?] Which IPv4 or IPv6 address should be used to
connect to IRC (default: determined by OS): 0.0.0.0
[?] Which IPv4 address should be used to connect to
other bots?: 0.0.0.0
[*] What type of bot do you
want?:
[>]
[0] Main
[>]
1 Slave
[>]
2 Leaf
[?] Your choice: 0
[*] Configuration for bot
type: MAIN
[*] What ports should the bot
listen on?:
[?] IP
address (can be prefixed by "ssl:"): 0.0.0.0
[?] Port number
(1 to 65535): 65432
[?] usage ("all", "users", "bots")
(0 to 15 chars): all
[?] Do you want to add more ports? (Y or N) [N]: n
[?] ownerpass?:
pass-a-mia-scelta
[?] Do you want to add more ownerpasses?
(Y or N) [N]: n
[?] Do you want to add some servers? (Y or N) [Y]:
n
[?] Do you want to add some modules? (Y or N) [N]: n
[?] Do you want to switch to expert mode and set
further variables? (Y or N) [N]: n
[?] Where should the config
file be saved? [MioPsot.cfg]:
[*] config file has been
saved
[?] Do you want to create the userlist? (Y or N) [Y]: y
[?]
username? (0 to 2147483647 chars): lumaca
[?]
password? (0 to 2147483647 chars): lumacapass
[*] userlist
saved as MioPsot.ul
(moneta)~/psotnic:$
Fine configurazione HUB
N.B. una volta terminata la configurazione
e avviato lo psotnic
i dati sono criptati.
L'unica maniera per modificarli e'
attraverso la partyline;
conviene predisporre prima il file
di configurazione in chiaro in maniera di ricordarsi quali
sono state le varie impostazioni. In
particolare indirizzi IP,
numero di porte, owner
pass, user, user pass.
Se qualcosa va storto si ricompila.
N.B. Le righe in blu sono richieste solo dallo
psotnic HUB
Avvio:
./psotnic
MioPsot.cfg
(moneta)~/psotnic:$
./psotnic MioPsot.cfg
gay-psotnic, version
0.1-pre (23-09-10)-ipv6 (rev: 205, build: Data/Ora)
Copyright (C) 2003-2007 Grzegorz Rusin <grusin@gmail.com>
Copyright
(C) 2009 psotnic.com development team
[*] Loading config from '/home/moneta/psotnic/MioPsot.cfg'
[*] Acting
as MAIN
[+] Config loaded
[*] Opening
listening socket at 0.0.0.0:65432
[+] Socket
awaits incomming connections
[*] Loading userlist from MioPsot.ul
[+] Userlist loaded (ts: 1334157700, sn: 1)
(moneta)~/psotnic:$
[+] Going into background [pid:
31725]
L'HUB e' avviato!!!
Aprire
Mirc copiare e incollare:
/server -m ip-della shell porta ownerpass:username:pass-username
Esempio:
/server -m 82.125.83.48 65432 pass-a-mia-scelta:lumaca:lumacapass
] il -m si riferisce a
una connessione in multiserver [
Lumaca
entra in partyline
.bots controlla il nome dei botoli
.bc MioPsot cfg si guarda come e' configurato
IL MENU' HELP AIUTA IN QUALSIASI SITUAZIONE:
.help
ecc...
E'
consigliabile di
non far entrare l'HUB in Irc.
Si
tiene come 'ghost' e lo si rendera'
molto piu' difficile
dossare o infastidire.
[non e' tassativo, si puo' ircare]
===============================================================
Ora
si prepara un altro psotnic stavolta uno slave
nella stessa shell:
(Se si cambia shell, si dovra' ripetere tutta
l'installazione)
Lo
psotnic e' gia' installato, basta fare semplicemente:
cd $HOME/psotnic
; ./psotnic -n
avviando un altro psotnic
Configurazione:
Slavpsot
Slavpsot
Il mio nome e' SLAVE!
Slavpsot^
0.0.0.0
0.0.0.0
1
0.0.0.0
65431
all
N
ipv4:82.125.83.48
65432
pass-a-mia-scelta
Slavpsot
N
N
N
Slavpsot.cfg
Avvio
psotnic:
cd
$HOME/psotnic ; ./psotnic Slavpsot.cfg
la porta 65432 č la porta di ascolto con l'hub
La shell rispondera'
alle richieste cosė:
(moneta)~:$ cd $HOME/psotnic ;
./psotnic -n
gay-psotnic, version 0.1-pre
(23-09-10)-ipv6 (rev: 205, build: Data/Ora)
Copyright
(C) 2003-2007 Grzegorz Rusin
<grusin@gmail.com>
Copyright
(C) 2009 psotnic.com development team
[*] Bot now runs in config creation
mode
[*] The
options are explained at http://psotnic.wiki.sourceforge.net/Config+File
[*]
Mandatory options for all bot types:
[?] nick? (1 to 15 chars): Slavpsot
[?] username? (1 to 12 chars) [moneta]: Slavpsot
[?] realname? (1 to 255 chars) [Psotnic C++ Edition]: Il mio nome e' SLAVE!
[?] alternative nick? (1 to 15 chars): Slavpsot^
[?] Which
IPv4 or IPv6 address should be used to connect to IRC (default: determined by
OS): 0.0.0.0
[?] Which
IPv4 address should be used to connect to other bots?:
0.0.0.0
[*] What
type of bot do you want?:
[>] [0]
Main
[>] 1
Slave
[>] 2
Leaf
[?] Your
choice: 1
[*]
Configuration for bot type: SLAVE
[*] What
ports should the bot listen on?:
[?] IP address (can be prefixed by "ssl:"):
0.0.0.0
[?] Port number (1 to 65535): 65431
[?] usage
("all", "users", "bots") (0 to 15 chars): all
[?] Do you
want to add more ports? (Y or N) [N]: n
[*] Please
enter the connection options for connecting to the main bot.:
[?] Host address (can be prefixed by "ssl:", "ipv4:", "ipv6:"):
ipv4:82.125.83.48
[?]
Port (1 to 65535): 65432
[?]
Password: pass-a-mia-scelta
[?] Handle (0 to 15 chars): Slavpsot
[?] Do you
want to add some servers? (Y or N) [Y]: n
[?] Do you
want to add some modules? (Y or N) [N]: n
[?] Do you
want to switch to expert mode and set further variables? (Y or N) [N] : n
[?] Where
should the config file be saved? [Slavpsot.cfg]:
Slavpsot.cfg
[*] config file has been saved
(moneta)~/psotnic:$
cd
$HOME/psotnic ; ./psotnic Slavpsot.cfg
gay-psotnic, version 0.1-pre
(23-09-10)-ipv6 (rev: 205, build: Data/Ora)
Copyright
(C) 2003-2007 Grzegorz Rusin
<grusin@gmail.com>
Copyright
(C) 2009 psotnic.com development team
[*] Loading config from '/home/moneta/psotnic/Slavpsot.cfg'
[*] Acting
as SLAVE
[+] Config loaded
[*] Opening
listening socket at 0.0.0.0:65431
[+] Socket
awaits incomming connections
[*] Loading userlist from Slavpsot.ul
[*] Userlist not found (new slave?)
(moneta)~/psotnic:$
[+] Going into background [pid:
32016]
(moneta)~/psotnic:$
Lo slave e' avviato!
Con
Mirc entrare
in partyline per linkarlo
/server -m 82.125.83.48 65432 pass-a-mia-scelta:lumaca:lumacapass
.+bot Slavpsot 82.125.83.48
.chattr
Slavpsot +s +s = slave
.chpass Slavpsot pass-a-mia-scelta
Con
il .bottree si controlla come e' costruita la botnet:
Miopsot e' HUB e ha 1 slave
Chiedera' di addare il vhost a se' stesso:
.+host Slavpsot
*!moneta@2a01:270:2050:1345::104
Controllare
come e' configurato:
.bc Slavpsot cfg
Il
bot e' vivo e lo si fara' connettere su un server di IRCnet:
(o un'altra rete preferita)
.bc Slavpsot cfg server
irc6.ipv6.uni-erlangen.de (per aggiungere un server)
.bc Slavpsot cfg -server
irc6.ipv6.uni-erlangen.de (per togliere un server)
.bc Slavpsot cfg vhost 2a01:270:2050:1345::104 (per aggiungere vhost)
.bc Slavpsot cfg vhost
0.0.0.0
(per
toglierlo - lo si azzera)
Slavpsot entra nella stanza #pippo:
.+chan #pippo
E'
dentro alla stanza:
===============================================================
Nella
shell:
Controllo
dei processi vivi
ps x
MioPsot e Slavpsot sono avviati
===============================================================
Ora
si prepara una leaf (foglia) dello slave
Per
praticita' si e usato la
stessa shell ma non andrebbe fatto:
su Irc sono accettati al massimo 2
processi in background per shell.
Usando
un'altra shell si dovra'
installare lo psotnic - come spiegato
nelle istruzioni in alto -
AVVIARE
CON:
cd
$HOME/psotnic ; ./psotnic
-n
Lo
configuro:
Leafpsot
Leafpsot
Il mio nome e' FOGLIA!
Leafpsot^
0.0.0.0
0.0.0.0
2
82.125.83.48
65431
all
pass-a-mia-scelta
Leafpsot
N
N
N
N
Leafpsot.cfg
Lo
avvio:
cd
$HOME/psotnic ; ./psotnic Leafpsot.cfg
La porta 65431 e' la porta di
ascolto con lo slave
La shell rispondera'
alle richieste cosė:
(moneta)~/psotnic:$
cd
$HOME/psotnic ; ./psotnic -n
gay-psotnic, version 0.1-pre
(23-09-10)-ipv6 (rev: 205, build: Data/Ora)
Copyright (C)
2003-2007 Grzegorz Rusin
<grusin@gmail.com>
Copyright (C)
2009 psotnic.com development team
[*] Bot now runs in config creation
mode
[*] The
options are explained at http://psotnic.wiki.sourceforge.net/Config+File
[*] Mandatory
options for all bot types:
[?] nick? (1 to 15 chars): Leafpsot
[?] username? (1 to 12 chars) [moneta]: Leafpsot
[?] realname? (1 to 255 chars) [Psotnic C++ Edition]: Il mio nome e' FOGLIA!
[?] alternative nick? (1 to 15 chars): Leafpsot^
[?] Which
IPv4 or IPv6 address should be used to connect to IRC (default: determined by OS):
0.0.0.0
[?] Which
IPv4 address should be used to connect to other bots?:
0.0.0.0
[*] What type
of bot do you want?:
[>] [0]
Main
[>] 1
Slave
[>] 2
Leaf
[?] Your
choice: 2
[*]
Configuration for bot type: LEAF
[*]
Connection options to connect to hub?:
[?] Host address (can be prefixed by "ssl:", "ipv4:", "ipv6:"):
82.125.83.48
[?]
Port (1 to 65535): 65431
[?]
Password: pass-a-mia-scelta
[?] Handle (0 to 15 chars): Leafpsot
[?] Do you
want to add alternative hubs? (Y or N) [N]: n
[?] Do you
want to add some servers? (Y or N) [Y]: n
[?] Do you
want to add some modules? (Y or N) [N]: n
[?] Do you
want to switch to expert mode and set further variables? (Y or N) [N]: n
[?] Where
should the config file be saved? [Leafpsot.cfg]: Leafpsot.cfg
[*] config file has been saved
(moneta)~/psotnic:$
cd
$HOME/psotnic ; ./psotnic Leafpsot.cfg
gay-psotnic, version 0.1-pre
(23-09-10)-ipv6 (rev: 205, build: Data/ora)
Copyright (C)
2003-2007 Grzegorz Rusin
<grusin@gmail.com>
Copyright (C)
2009 psotnic.com development team
[*] Loading config from '/home/moneta/psotnic/Leafpsot.cfg'
[*] Acting as
LEAF
[+] Config loaded
(moneta)~/psotnic:$
[+] Going into background [pid:
32198]
un controllo ai processi avviati:
ps x
Con
Mirc entrare in partyline
e linkarlo:
/server -m 82.125.83.48 65432 pass-a-mia-scelta:lumaca:lumacapass
.+bot Leafpsot
82.125.83.48
.chattr Leafpsot +l +l/+elle = leaf
.chpass Leafpsot pass-a-mia-scelta
controllo quali bots sono linkati:
.bots
Controllo
come sono linkati
.bottree
l'Hub ha 1 slave; lo slave ha 1 leaf
(il capo ha uno schiavo, lo schiavo ha uno schiavetto)
Connessione
su IRCnet:
Immettere
il vhost:
.bc nome-leaf vhost
.bc
Leafpsot vhost
2a01.270:2050:1345::1
Immettere
il Server:
.bc
nome-leaf cfg server
nome-server numero-porta
.bc Leafpsot cfg server eu.irc6.net
6667 (per aggiungerlo)
.bc Leafpsot cfg -server eu.irc6.net 6667 (per
toglierlo)
E'
entrato su #pippo:
Joino la botnet nella stanza #moneta:
.+chan #moneta
.mjoin #moneta massjoin = tutti assieme
La
Botnet entra nel canale #moneta, contemporaneamente:
L'uscita
dal canale:
.mpart #moneta
e
nel canale:
Per
far uscire un solo psotnic da un canale:
.rpart Slavpsot #pippo
E
nella stanza sara':
Per
farlo rientrare:
.rjoin Slavpsot #pippo
Per
cancellare il canale e tutte le sue impostazioni
.-chan #moneta
perdendo tutti i settaggi
del canale
.........................................................................
Il
comando:
.set
ecc...
mostra come sono i settaggi dei bots
.........................................................
Il
comando:
.chset #pippo (#il-tuo-canale-preferito)
Esempio:
.chset #pippo guardian-bots
Si
cambia il guardian-bots, invece di due se ne metteranno
3
da guardia:
.chanset #pippo guardian-bots 3
I
canali si settano a seconda delle preferenze
non e' tassativo quello che e' scritto.
Per 'addare' degli utenti sul
canale #pippo ci servono le
LE FLAGS
N.B. x,s,n,p devono esser settate
globali
.+user handle
.chattr handle
+flags #chan
.chpass amici qualchepassword
.+host amici *!*@vhost
.match amici |>
cerca l'handle amici
.match * cerca
tutti gli 'add'
.+user amici
.chattr amici +fo #pippo
.chpass amici qualchepassword
(password
di propria invenzione)
.+host amici *!*@host-116*telecomitalia.it
.match amici
Si
possono aggiungere tutti gli host possibili sotto la
handle amici.
Avranno
l'Op solo con password (E' sufficiente con Mirc
Querare uno psotnic e scrivere op qualchepassword)
Per
togliere un host:
.-host amici *!*@host-116*telecomitalia.it
----------------------------------------------------------
Solo
a chi merita piena fiducia si daranno flags globali:
.+user superamico
.chattr superamico +snmforiecp
.chpass superamico
superlativo
.+host superamico *!*super@pippo.amico.mio.it
.match superamico
Dare flags con prudenza
A
ogni cambiamento si consiglia di salvare il lavoro:
.bc HUB cfg-save esempio:
.bc MioPsot cfg-save
Per
salvare gli user della stanza:
.save #pippo
Se
qualcuno entra negli 'idiots' per aver commesso un'offesa
Esempio:
@Lumaca ha dato l'op a kattivissimo;
non essendo un 'addato'
sono stati kickati insieme. Lumaca e' entrato direttamente
negli 'idiots' chiamata anche shit
list.
nella partyline succede questo:
Per
sapere chi e' entrato nella lista 'idiots' in d
.idiots
Idiots e' la flag 'd' si dovra'
toglierlo da 'd'
.-idiot *!ident@vhost
.-idiot *!Lumaca@2a01:270:2050:1345::104
Passo
successivo, rimuovere l'host da 'offences'
.offences
.clearoffences
CARICAMENTO MODULI
Nell'esempio
c'e' il vctrl.so (Voice Like Op)
Scegliere
lo Psotnic che usera' il
modulo voice like op
.bc
nick cfg load /home/nomeshell/psotnic/modules/vctrl.so
.bc
Slavpsot cfg load /home/moneta/psotnic/modules/vctrl.so
Nell'FTP i moduli:
settare il voicecontrol nel canale #pippo
.bc Slavpsot vchanset #pippo
il
voicecontrol e' ON
Per
togliere la possibilita' all'utente 'voice' di cambiare il topic:
.bc
Slavpsot vchanset #pippo topic-command OFF
Risultato:
"Welcome to the control, you can use: !voice
!devoice !kick !ban !unban"
Per
rimettere come prima scrivere ON
.bc
Slavpsot vchanset #pippo topic-command ON
PER RIMUOVERE IL MODULO
.bc Slavpsot vchanset #pippo
dara' la chiave md5
'd4052d4091a5b582f3928d690c571b47'
Tutto in una riga:
.bc
Slavpsot cfg -load /home/moneta/psotnic/modules/vctrl.so d4052d4091a5b582f3928d690c571b47
Rimosso
modulo
Doppio salvataggio
.save
.bc Slavpsot cfg-save
IL BAN
I comandi
stick e ban sono uguali:
.+ban #chan
% *!ident@vhost ragione
del ban (% sono i secondi)
.+ban #pippo
%120 *!*@dynamic* tu non entri, vai in ban
Ban per 120 secondi
Per
un ban perenne:
.+stick #pippo *!*@dynamic*
tu non entri, vai in ban
risultato:
bannato nella stanza #pippo:
controllo i bans
.bans #pippo
Togliere
il ban dal canale #pippo
.-ban #pippo *!*@dynamic*
SI PUO' USARE ANCHE IL
COMANDO:
.+stick #chan %secondi nick!idento@vhost motivo
.+stick #pippo %60 *!* @dynamic* sei
bannato
............................................................
Per
evitare il kick da parte dello Psotnic
quando si banna in canale
.chset #pippo strict-bans OFF
CAMBIO DI NICK AL BOT
.bc Leafpsot cfg nick
MiaFoglia
.bc Leafpsot cfg-save
.bc Leafpsot restart
Connesso!
Su
IRCnet:
per sicurezza salvo la configurazione:
.bc
Leafpsot cfg-save
======================================================
DISINSTALLARE
PSOTNIC
======================================================
ps x
i processi sono tutti avviati
=========================================
Disconnettere e rimuovere tutto:
=========================================
ps x
kill -9 numeroPID MioPsot
kill -9 numeroPID Slavpsot
kill -9 numeroPID Leafpsot
ls
rm -fr psotnic
ls
==============================================
_/_/_/ _/_/_/
_/_/_/ _/_/_/_/ _/ _/
_/ _/_/_/
_/
_/ _/ _/ _/
_/ _/_/ _/
_/ _/
_/_/_/
_/_/_/ _/ _/
_/ _/ _/
_/ _/ _/
_/
_/ _/ _/ _/
_/ _/_/ _/ _/
_/ _/_/_/
_/_/_/ _/ _/
_/ _/ _/_/_/