BOT IRC: INTRODUZIONE
Il bot è una sorta
di protezione per il
canale; cioè, se ne
avete creato uno e
non volete trovarvi
una sera a non
essere Op perché
qualcuno è entrato
prima di voi
prendendoselo, non
dovete far altro che
piazzare nel canale
un BOT. In pratica
il bot è un
operatore fisso nel
canale che ha
registrato nella sua
"memoria" il vostro
nick e/o quello dei
vostri amici in modo
che, quando entrate
nel canale, l'op
viene dato solo a
voi!! ; In linea di
massima questo è
tutto quello che
dovete sapere; voi
direte "basta??" Beh
se avete una mezza
idea di creare un
canale e siete
abbastanza esperti
di IRC andate avanti
a leggere. Shell
please
Innanzi tutto è
necessario avere un
account internet, la
login e la password.
Non è possibile
ottenere un bot per
se stessi usando
l'account con cui ci
si collega a
internet. Come
ottenere allora la
shell? (in queste
righe semplificando
e sbagliando
considero shell =
account ). Questo è
il punto più dolente
di tutta la
situazione e per
molti è un grosso
problema. Si può
avere hackerandola…….!?.
LA CONOSCENZA
DI ALCUNI COMANDI
LINUX E UNIX
cp
percorso_file_origine
percorso_destinazione
----- sposta un file
rm -rf nomedirectory
----- elimina una
directory anche se
piena e non di
ultimo ramo
mv nome_vecchio
nome_nuovo ------
rinomina un file
ls -al ----- simile
al dir del dos
(visualizza anche i
files nascosti )
pico (vi ) nomefile
----- stessa
funzione dell' edit
del dos
ps x ( ps -aux, ps
-u nomeuser) | more
----- visualizza il
numero di processi
in corso
cd ----- cambia
directory (per
salire cd .. con lo
spazio tra cd e i
due punti )
mkdir nome_directory
------ crea una
directory
E se abbiamo la
shell?
Supposto che
l'account lo abbiate
trovato e abbiate
imparato questi
comandi è ora di
iniziare veramente
a lavorare.
Innanzitutto andate
nella nostra sezione
download e
scaricatevi l'ultima
versione di eggdrop
che come ben sapete
è il migliore ( e
più semplice) client
bot x IRC. Una volta
scaricato armatevi
di pazienza e
apritevi una
sessione TELNET
sulla vostra shell.
Per i neofiti TELNET
è un client terminal
residente in
qualsiasi versione
recente di Windows
(telnet.exe). Una
volta lanciato è
necessario clikkare
su CONNETTI e poi
ACCESSO REMOTO, si
aprirà quindi una
maschera in cui
dovrete immettere
l'indirizzo (ip) del
server dove avete
l'account, la porta
( lasciate telnet )
, ed infine
l'emulazione
terminale ( lasciate
vt100 ). Una volta
loggati nel sistema
dovrete innanzi
tutto cercare di
cancellare le vostre
tracce e soprattutto
il processo del bot.
Per tutto questo vi
rimando ad uno
studio dell' ottimo
manuale IHS in
italiano che potrete
trovare nella
sezione hacking!?.
Per shell illegali
vi consiglio l'uso
per telnet di
net-term e per ftp
Cuteftp che
supportano tutti e
due l'uso di sock.
seguenti programmi
li potete scaricare
nella nostra sezione
download generale.
Supposto quindi che
tutto ciò sia stato
fatto , PENA
L'ESSERE SCOPERTI
DALL'AMMINISTRATORE
DEL SISTEMA, andiamo
a uplodare l 'eggrop
via FTP meglio in
una directory poco
visibile come ad
esempio .term oppure
.bin . Una volta
finito l' upload
passiamo al telnet,
ci logghiamo e
andiamo nella
directory in cui
abbiamo messo il
file.
Ora digitate quanto
segue ( supponendo
che il file sia
eggdrop1_x.tar.gz )
:
gzip -d (gunzip è
anche meglio)
eggdrop1_x.tar.gz
(scompatta l'eggdrop
in formato tar)
tar xvf
eggdrop1_x.tar
(installa le
componenti dell'eggdrop)
rm eggdrop1_x.tar
(cancella il formato
tar)
cd eggdrop1_x (entra
nella directory
dell'eggdrop)
Ok, come visto
abbiamo scompattato
il prg e siamo
andati sulla dir da
lui creata
(consiglio
….cambiate sia il
nome della dir che
il nome del file
eggdrop in qualcosa
di meno sospettoso
) . Ora bisogna
compilarlo, per
compilarlo digitate
quanto segue:
./configure
(configura l'eggdrop)
e poi :
./make eggdrop
(compila l'eggdrop
come eseguibile, può
richiedere anche +
di 5 minuti)
Se sta lavorando è
tutto ok, altrimenti
non è ok!! ; In quel
caso cancellate
tutto quello che
avete messo,andate
nella nostra sezione
download e
scaricatevi il file
già compilato
specifico per il
sistema in cui avete
la shell. Uplodatela
nel server ,scompattatela.
Se avete fatto tutto
potrete riniziare a
leggere da subito.
Se poi la shell è
illegale e avete
qualche timore di
essere scoperti vi
consiglio di usare i
programmi appositi
nella sezione linux
Supponendo poi di
aver già preparato
il file di
configurazione del
bot (vedere
l'apposita sezione)
uploadatelo nella
directory dell'eggdrop,
e nella stessa
directory create la
directory tmp
A questo punto se la
shell è legale non
vi resta che
eseguire i seguenti
comandi:
eggdrop -m
filediconf
Ora il vostro bot è
stato lanciato in
background e in poco
tempo dovrebbe
essere in IRC. Vi
ricordo che a ogni
processo verrà
assegnato un numero
(pid), se non sapete
bene usare unix vi
consiglio di
segnarverlo.
Comunque sia per
vedere i propri
processi e relativo
pid basta eseguire
ps x, oppure ps -u
nomeutente o ps -aux;
quindi se per caso
avete voglia di
killare il vostro
bot usate il
seguente comando
kill -9 numeropid.
Ora potete recarvi
in irc e fare : /msg
Vostrobot hello che
vi identifica come
proprietari del bot.
A questo punto per i
comandi e robe varie
mi spediamo alla
sezione apposita.
Se la shell fosse
illegale vi
consigliamo di
rinominare un po’
tutti i file, qui di
sotto vi
consigliamo come
procedere:
Se la directory
fosse .term/eggdrop1.1.5
da .term/ fate mv
eggdrop1.1.5 .bin
(rinomina la dir in
modo da essere
invisibile), ora cd
.bin entra nell'eggdrop,
ora rinominiamo l'eggdrop
mv eggdrop "inetd "
e il file di conf mv
filediconf.conf " ".
Ok ora potrete
eseguire l'eggdrop
con "inetd "-m " ".
A questo punto se
fate ps x risulterà
qualcosa di simile:
user 143 0.0 0.0 84
0 ? SW Jan 10 0:01 (inetd
-m).
Se siete abbastanza
fortunati nessuno
dovrà farci caso;
altri nomi per
rinominare l'eggdrop
icq,icq98,findhost.
Buona Eggdroppata!!!!
BOT COME
CONFIGURARLO?
In questa sezione
parleremo di come
configurare un bot
**** Vi ricordo che
il tutto va
costruito su un
semplice file txt
che poi rinominerete
come qualsiasi
nome.conf
Tanto per
cominciare....
#!/il/percorso/di/eggdrop
In questo file di
config poi e devi
editare
tutto.Consideriamo
il nome del bot :
"LamestBot" e il
canale #lamest.
Parte generale
# dati che vengono
visualizzati a un
/whois sul bot
set nick "Lamestbot"
set altnick
"Llamabot" ; (se il
nick è già in uso)
set username
"lamest" (l'id del
bot)
set realname "/msg
LamestBot hello"
(puoi mettere quello
che ti pare)
set my-hostname
"host_della_shell"
set my-ip
"ip_della_shell"
(l'ip lo puoi vedere
facendo /dns host da
mIRC)
# chi è
l'amministratore
(capo)?
set admin "Lamer
<email:
lamer@lame.connected.com>"
# risultato di un
CTCP VERSION
(cambialo x ottenere
una identificazione
più difficile)
set ctcp-version
"ircII 2.6 SunOS
4.1.3 :ircii 2.6:
almost there..."
# risultato di un
CTCP FINGER
(cambialo x ottenere
una identificazione
più difficile)
set ctcp-finger
"Lamestbot
(root@home), idle 0
seconds"
# risultato di un
CTCP USERINFO
(cambialo x ottenere
una identificazione
più difficile)
set ctcp-userinfo
"<None Supplied>"
# [0/1] lasciare che
gli utenti diventino
users semplicemente
usando
/msg nomebot hello
?
set learn-users 1
#Molti cercano di
registrarsi al bot
usando il comando
hello,per evitare
questo è possibile
cambiare il nome
#che fa svolgere
questa funzione
togliendo le # dalle
seguenti righe e
sostituendo a
parola la nostra
parola
#unbind msg - hello
*hello
#bind msg - parola
*hello
#La lista dei server
a cui potrà
connettersi il bot (
i nostri consigliati
)
set servers
{irc.stealth.net:6667-irc.webbernet.net:6667-chat.bt.net:6667-irc.cifnet.com:6667-irc.twiny.net:6667}
# se tutti i server
della lista sono
down fare in modo
che continui a
tentare di
connettersi ?
set never-give-up 0
#quanti secondi deve
aspettare dopo
essersi connesso x
fare qualsiasi altra
azione ?
set server-timeout
15
#se il nick è già in
uso tentare di
ripristinare quello
originale ?
set keep-nick 1
Protezione Canale
#fanne uno di questi
per ogni canale in
cui vuoi tenere il
bot
channel add #lamest
{
chanmode "+nt-likm"
idle-kick 0
need-op { putserv
"PRIVMSG #lamest :op
me please!" }
need-invite {
putserv "PRIVMSG
#lamest :let me in!"
}
}
# channelmodes
# idle-kick
# kikkare i membri
del canale dopo
quanti secondi ???
# (impostalo a 0 se
non lo vuoi
****CONSIGLIATO****)
# need-op
# usato x fare in
modo che due o piu'
bot si oppino
automaticamente con
un comando
che solo loro
#conoscono (oppure
una tcl) se il
-autoop è attivato
# need-invite
# usato x fare in
modo che due o piu'
bot vengano invitati
a vicenda se il
canale è
settato +i
#assicurati che su
tutti i tuoi bot
queste opzioni siano
uguali e che le tcl
o i messaggi
siano
#perfettamente
identici
# queste opzioni
dovranno essere
procedute da + se
attivate, da - se
disattivate
# +autoop
# per toglierla :
# -autoop
# elimina tutti i
ban settati quando
il bot joina nel
canale
channel set #lamest
-clearbans
# kikka coloro che
tolgono un ban
impostato e lo
riattiva
channel set #lamest
+enforcebans
# attiva il ban
solamente quando
entra l'interessato
dello stesso
channel set #lamest
+dynamicbans
# permette che i ban
vengano fatti anche
al di fuori della
console in parity
line
channel set #lamest
+userbans
# oppare
automaticamente i
channel operator ?
channel set #lamest
+autoop
# permettere che
vengano oppati solo
gli users con la
flag +o ?
channel set #lamest
-bitch
# manda una linea di
info di ogni uno che
joina nel canale?
channel set #lamest
+greet
# proteggere gli
users +o rioppandoli
se deoppati
channel set #lamest
+protectops
# mandare in parity
line un messaggio di
informazione del
canale ogni 5
minuti?
channel set #lamest
+statuslog
# deoopare tutti
quelli che ottengono
l'op dopo aver
splittato il server
irc?
channel set #lamest
+stopnethack
# punire coloro che
hanno tentato di
hackerare il bot
(gli users +f sono
eclusi)?
channel set #lamest
+revenge
# un piccolo esempio
:
channel add
#botcentral {
chanmode "+mntisl 1"
idle-kick 1
}
channel set
#botcentral +bitch
+clearbans
+enforcebans -greet
+revenge
File Log
#si possono avere 5
diversi file log.
Per default alla
mezzanotte di ogni
giorno
#il vecchio file log
vine rinominato in
nomefilelog.yesterday
e quello precedente
questo viene
#eliminato
# le categorie dei
files log sono :
# m msgs/ctcps al
bot
# k kicks, bans,
mode changes nel
canale
# j joins, parts,
netsplits nel canale
# p vengono loggati
i p users
# s
connects/disconnects/notices
al server
# b informazione del
linkaggio dei bot e
la condivisione
degli users
# c i comandi usati
dagli users
# x comandi del xdcc
send
# r qualsiasi cosa
mandata al bot dal
server
# o altre info
(Moooolto
importante)
# tutti i log files
tranne i "k", "j", e
"p" valgono solo per
un canale,
#se li vuoi avevere
su tutti metti come
canale "*"
# in 'eggdrop.log'
logga i msgs,
commands, and errori
da qualsiasi canale:
logfile mkco *
"eggdrop.log"
# in 'lame.log'
logga i joins,
parts, and mode
changes dal canale
#lame
logfile jk #lame
"lame.log"
# [0/1] vuoi l'ra di
ogni cosa loggata
nel log file ?
set log-time 1
# [0/1] vuoi avere
tutti i log files da
quando hai fatto
partire il bot?
set keep-all-logs 0
# specifica quando
(a che ora) vengono
ripristinati i files
log) [lascialo cosi'
che è meglio :) ]
set
switch-logfiles-at
300
# rappresenta gli
eventi che il master
vede in parity line
col bot
#per il significato
di ogni uno dai uno
sguardo sopra!
set console
"mkcobxs"
Files e Directory
# il nome e dove
viene salvato il
file degli users
set userfile
"LamestBot.user"
#il nome e dove
viene salvato il
file delle note
set notefile
"LamestBot.notes"
#la directory in cui
si trovano i files
help
set helpdir "help/"
#la directory in cui
si trovano i files
di testo miscellanei
set textdir "text/"
#la dir in cui si
trovano i files
temporanei
set tempdir "/tmp"
#il nome del file
che viene
visualizzato al
joinare in parity
line N.B.
---> puoi editarlo
quando vuoi
#usando pico motd
set motd "motd"
File System
# se non vuoi o non
prevedi che il bot
venga utilizzato
anche per il
trasferimento
#dei file ometti le
linee seguenti
# la directory base
(root) da cui poi
poter salire per
trovare tutti gli
altri files
#da notare pero' che
non puoi sendare per
esempio un file che
si trova piu'
indietro del path!!
set dcc-path
"/home/mydir/dcc"
# la dir in cui
verranno effettuati
gli uploads
set dcc-incoming
"/home/mydir/dcc/incoming"
# [0/1] se questo è
attivato gli uploads
verranno fatti nella
dir in cui si trova
lo userset
upload-to-cd 0
# se vuoi che il
filedb-path (un file
di schema dei files
del dcc) venga tutto
raccolto
#in una unica dir e
non ce ne sia uno
per ogni dir
attivalo, altrimenti
lascialo a 0
set filedb-path ""
# setta il numero
degli users che
possono usufruire
del dcc transfer
contemporaneamente
set dcc-users 20
# setta il numero
massimo di download
simultanei per ogni
users
set dcc-limit 3
# setta il blocco
nel send dei files
…va bene 1024
set dcc-block 1024
#setta la dimensione
massima di un
singolo dile che
puo' essere sendato
#dal bot
(1024=1Mbite)
set dcc-maxsize 1024
# [0/1] richiede se
sia necessario che
gli users +o abbiano
bisogno del flag +x
#per accedere alla
area dcc send
set require-x 0
# [0/1] copiare i
files prima di
sendarli nella
directori
temporanea??
#necessario x alcuni
server
set copy-to-tmp 1
Botnet
# a qule porta
telnet del server in
cui c'è il bot devo
collegarmi
#per poter entrare
in parity line con
il bot?
#(al posto della
porta telnet per
mettermi in contatto
uso quella sotto
settata)
set telnet 3333
# [0/1] permettere
solo ai bot di
collegarsi mediante
telenet?
set telnet-bots-only
0
# [0/1] condividere
il file degli users?
set share-users 0
# [0/1] permettere
di farsi
sovrascrivere il
file degli users da
parte di altri bot?
set passive 0
# [0/1] gli users
con la flag +o
devono avere anche
la +p flag per
andare in dcc
parityline?
set require-p 0
# [0/1] permettere a
chiunque voglia di
joinare in telnet e
mediante il comando
"new"
#diventare un nuovo
user ?
set open-telnets 0
(CONSIGLIO vivamente
1!!!!!)
# quanto tempo il
bot aspetta per ogni
connessione prima
che la consideri
caduta?
set connect-timeout
15
Altre info da
settare
# incommentabile
(trooopppo facile :)
)
set init-server {
putserv "MODE
$botnick +i-ws" }
# quanti messaggi in
quanti secondi sono
permessi da parte di
uno stesso
individuo?
set flood-msg 5:60
#quanti messaggi
pubblici in quanti
secondi sono
permessi da parte di
uno stesso
individuo?
set flood-chan 10:60
# quanti joins o
cambiamenti di nick
nel canale sono
permessi in quanti
secondi?
set flood-join 5:60
# quanti ctcp in
quanti secondi?
set flood-ctcp 3:60
# quanti minuti
durano i ban
temporanei???
set ban-time 60
# quanto durano gli
ignore temporanei???
set ignore-time 10
# quanti miuti dopo
l' ora devono essere
settati tutti i log
files?
set save-users-at 00
# mandare un
messaggio a tutti
gli users quando
viene registrato un
nuovo user?
set notify-newusers
"HQ"
set notify-users-at
00
#E per finire!!!, il
set owner specifa
l'owner permanente e
cioè colui che non
può essere mai
deflaggato
set owner Vulcan
set default-flags
"px"
set whois-fields
"url birthday"
set modes-per-line 6
set max-queue-msg
300
set wait-split 300
set wait-info 180
set xfer-timeout 300
set note-life 60
# il percorso e il
nome degli script
che vengono loadati
!!
source
scripts/toolkit.tcl
source
scripts/toolbox.tcl
source
scripts/action.fix.tcl
Ok ora avete il
vostro file di
configurazione base.
Se volete invece far
sembrare il bot un
po più umano leggete
quanto segue.
Alcuni esempi
/on public "* merda*
" / Uhmm si si
sentivo una strana
puzza ...
Questo comando fa
dire al vostro bot
che sentiva la puzza
... ogni volta
che qualcuno scrive
nel canale la parola
"merda" :)
/on public "*
stronzo* " / Fottiti
$0 !
Wow il vostro
bambino ha imparato
a vivere in questa
societa'!
Infatti se qualcuno
dice stronzo, lui
risponde con un bel
fottiti; notate
$0 che rappresenta
la variabile in
questo caso il nick
di quello che ha
detto stronzo...
/on msg "ciao" /msg
$0 Ciao :)
Questo comando
rimanda un saluto al
tipo che vi fa una
query alla vostra
creaturina dicendo
ciao.
Vediamo ora un
comando un po' piu'
complesso ....
/on msg "aiuto"
/exec -msg $0 cat
help.txt
Questo comando
risponde alla
persona che fa
richiesta di aiuto
mostrando il file
help.txt
Insegnamo ora al
nostro bimbo che
persone deve
frequentare e quelle
chedeve evitare
nella sua lunga
vita:
/on join Vulcan
/mode $C +o Vulcan;
Ciao padrone!
Con questo comando
il bimbo ha capito
che quando mi vede
deve opparmi
( $C e' la variabile
che rappresenta il
nome del canale) e
deve pure salutarmi
dignitosamente :)
/on mode "* * *-O
Vulcan" / Mai
deoppare il mio
padrone;/mode $C +o
Vulcan
Adesso il bimbetto
ha capito che se
qualcuno mi deoppa
deve sgridarlo e
riopparmi :)
Questi comandi di op
possono andare bene
fino ad un certo
punto, se ci sono in
giro dei fake ed
entrano nel canale,
il bot darebbe l'op
anche a loro, ma noi
non vogliamo che
questo accada
quindi:
/on join * /who $0
(fa un whois su ogni
tipo che partecipa
al canale)
/on who "* * *
Vulcan *tin.it *"
/mode $C +o $1
(mi da' l'op solo se
ho come ident Vulcan
e come ip per es.
ppp1.tin.it)
Vediamo ora come
calciare un rompi
palle:
/on join Ventur
/kick $C Ventur
O facendo un po' i
raffinati:
/on who "* * *
Ventur *pollo.com *"
/kick $C $1
Vabbe' preferisco la
prima perche se lo
sbirulino cambia ip
me lo ritrovo sul
canale ...Comunque
ricordatevi che se
usate il cmd /on who
.... naturalmente
prima da qualche
parte del vostro
listato ci deve
essere il comando:
/on join * /who $0
Supponiamo che
questo fottuto
Ventur si faccia
ancora vivo sul
canale,prenda l'op e
ci kikki: il nostro
bimbo deve essere
pronto! Ok avete
imparato i
fondamenti di come
si crea un bambino
quasi umano, in
realta' esistono
molti altri modi per
crearli per esempio
con il tcl .... ma
questo e' il piu'
semplice ed efficace
:)
BNC IRC PROXY
Installare e usare
il BNC in 2 secondi.
Il Bnc (buonce) e'
molto utile per
proteggere il
proprio Ip dai molti
pericoli che si
corrono usando Irc,
quindi da tutti gli
attacchi dos, e
tutti quei rischi
che si corrono dando
le porpie coordinate.Il
BNC irc proxy come
programma e' molto
utile, una volta che
l'avrete istallato
sul server della
shell, farete
rimbalzare la vostra
connessione sulla
macchina dove c'e'
il Bnc, per poi
collegarsi ad IRC
con l'ip della
macchina stessa.
Facciamo un'esempio
pratico: Abbiamo una
shell:
www.shell.com/mio-account
IP: 12.23.23.23,
usando il bnc su
quella macchina il
nostro ip risultera'
12.23.23.23, e se
abbiamo i vhost
disponibili anche
www.di.notte.mangio.il.sugo.edu
Il nostro scopo e'
quello di settare il
bnc sulla nostra
shell per poi
connetterci ad IRC.
vediamo come fare:
1- Uploadiamo nella
shell il file bnc.2.4.8.tar.gz
2- Scompattiamo
l'archivio (come si
fa per l'eggdrop)
3- Entriamo nell dir
che si e' creata e
scriviamo ./configure
4- Scriviamo poi ./bncsetup
, che ci aiutera' a
compilare il file
conf passo passo
5- Scriviamo ./bnc
bnc.conf per
lanciare il
processo.
6- Ora apriamo il
nostro client Irc e
scriviamo:
/server <ip o vhost>:porta
poi ci verra'
chiesta la pass e il
server irc, eseguite
i comandi nella
sitassi che vi viene
mostrata dopo il
primo comando. Fatto
questo avete finito.
|