Anarchy In the System: first E-zine
Anarchy In the System Production Presenta:
#------#----------###----------#------#
| /\ | _ | /\ |
| / _\ | ____ (_) ____ | / _\ |
|/ \| _ |___ \| |/ ___| _ |/ \|
#----+------+-(_)/ __ || |\___ \(_)-+------+----#
|< < < >>>>>|
#------#---------###-----------#------#
####∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ANARCHY∞∞∞∞∞∞∞∞∞∞IN∞∞∞∞∞THE∞∞∞∞∞∞∞∞∞∞SYSTEM∞∞∞∞∞∞∞∞∞∞∞∞∞∞####
Prima E-zine ufficiale del gruppo--------------->>Numero 0
OK, eccoci qui, pronti per una lunga vita sulla rete, ed ecco a voi la nostra prima E-Zine, alla quale, speriamo vivamente, seguiranno altre pubblicazioni...
Attenzione!!!!!: Questa E-zine Ë totalmente aperiodica e quindi líuscita del prossimo numero puÚ avvenire tra un mese oppure tra un annoÖ tutto dipende da voi!! Infatti potrete aiutare la pubblicazione dei prossimi numeri dellíE-Zine, semplicemente spedendoci vostri articoli. OVVIAMENTE verranno pubblicati articoli ritenuti IDONEI alla E-zine. Ed ora gustatevi questi 16 Articoli che abbiamo creato per voi... non Ë stato facile convincere la gente a scrivere per noi, ma per essere il numero0 penso che un numero di articoli simile Ë da considerare pi˘ che sufficiente!!! D'altronde anche BFI ha cominciato cosÏ!!!!! Ed ora tutti sanno dove sono arrivati... Noi cercheremo di seguire la scia delle 3 grandi Zines italiane (Bfi, Netrunners, Newbies) e proveremo a crescere e diventare come i nostri "Cugini"...
Non mi resta altro che augurarvi una buona lettura. Un Ciao a tutti e grazie per averci aiutato.
Destroy with an anarchic mind!!!!!!!
---OlDiroN 61 (AiS KdT!)---
Manifesto del Gruppo
Siamo nella rete, hacker, squatter, punkabbestia, studenti, lavoratori e disoccupati, uniti dal desiderio di rivoluzionare il sistema. Siamo liberi, rispettiamo la libert‡ degli altri, sensibilizziamo le masse divulgando le nostre idee. Siamo una serpe in seno al sistema, siamo anarchia nel sistema, un'utopia, un sogno, adesso una realt‡!
DISCLAIMER
#Usa queste informazioni a TUO rischio e pericolo. L'Anarchy In the System Production e qualsiasi altra persona che ci abbia aiutato a scrivere questa E-Zine non si assumer‡ NESSUNA responsabilit‡ per l'uso, l'utilizzo o l'abuso di questo testo. Le seguenti informazioni sono state scritte SOLAMENTE per scopo educativo e informativo e NON possono essere usati per scopi illegali. Leggendo questo file tu accetti i seguenti termini:
Comprendo che usare le seguenti informazioni Ë un atto illegale. Capisco e accetto di essere il SOLO responsabile delle mie azioni. Se vengo messo nei guai da queste informazioni NON incolperÚ o tirerÚ nei guai coloro i quali hanno scritto questo testo o ogni altro suo collaboratore o qualsiasi altra persona mi abbia dato questo file. Io capisco che le informazioni qui contenute sono SOLO per scopo educativo. #
#########################################################
####### H H AAAAA CCCCC K KK III NN N GGGG #######
####### H H A A C K K III N N N G #######
####### HHHHH AAAAA C KK III N N N G GG #######
####### H H A A C K K III N N N G G #######
####### H H A A CCCCC K KK III N NN GGGG #######
#########################################################
#HACKING DEI COMPUTER NETBIOSSATI#
(Per gentile concessione di Kalidor e dei Newbies)
Autore: Kalidor (Kalidor@tin.it)
* Introduzione:
Il Netbios?? Che Ë?. Il Netbios Ë una cosina fatta da Microsfott Æ che serve a sfruttare le reti locali LAN IPX. Dato che il nostro caro amico Bill Ë fissato con integrare tutto con internet ha integrato pure questo Netbios, rendendolo facilmente accessibile da chiunque via rete. Ma che simpatico questo nostro caro amico Bill.
* Configurazione del pc:
Per sfruttare le risorse di questa miniera d'oro chiamata netbios bisogna configurare il proprio pc con su montato winzozz ô. Eh si mi dispiace ma il caro sistema disoperativo del vecchio Bill Ë necessario. Ora andate nelle propriet‡ della vostra connessione di accesso remoto, in tipi di server, e mettete accedi alla rete. Fatto ciÚ andate in avvio\impostazioni\pannello di controllo\rete e aggiungete i seguenti client:
Client per reti microsoft
Client per reti netware (che automaticamente aggiunger‡ il protocollo compatibile IPX/SPX, se non lo fa fatelo voi)
E il protocollo Netbios.
Fatto ciÚ andate nelle propriet‡ del client per reti microsoft e selezionate connessione rapida, dopodichÈ nelle propriet‡ del protocollo compatibile IPX/SPX mettete attiva Netbios. Fate OK e dopo aver installato i driver (per i piratoni ci vuole il cd di windows) riavviate il pc. Ora siete pronti per fare kasino!!!
* Hacking dei computer Netbiossati:
Volendo fare un po' di teoria vi dirÚ che il Netbios lavora sulla porta 139 TCP/UDP (si proprio quella del winnuke).
Prima di tutto beccate un computer col sysadmin scemo e il Netbios attivo (come farlo ve lo spiego dopo). Vi faccio un esempio pratico cosÏ anche i pi˘ grulli capiscono come funziona la cosa (senza offesa per i pi˘ grulli hihi =)).
Allora io becco l'ip della macchina (212.216.34.144) poi vado nel prompt di msdos (evvivaa niente winzozz ô per ora) e scrivo:
cd x:\windows
nbtstat -A 212.216.34.144
Vi risponder‡:
NetBIOS Remote Machine Name Table
Name Type Status
----------------------------------------------------------------------------
HALL9000 < 00> UNIQUE Registered
WORKGROUP < 00> UNIQUE Registered
HALL9000 < 03> UNIQUE Registered
HALL9000 < 20> UNIQUE Registered
WORKGROUP < 1E> UNIQUE Registered
A questo punto ci segniamo il primo nome della lista, HALL9000 (notate che nel Netbios tutto Ë scritto maiuscolo), e facciamo:
edit x:\windows\lmhosts
Nell'editor del dos scriviamo:
212.216.34.144 HALL9000 #PRE
Il tag #PRE Ë fisso e va sempre messo, gli spazi sono fatti col TAB (non usate altro). Salvate e uscite. Ora per caricare questo file scrivete:
nbtstat -R
Vi dovrebbe rispondere (se vi risponde altro o avete sbagliato a editare il file oppure avete configurato male il pc):
Successful purge and preload of the NBT Remote Cache Name Table.
Ora vediamo se ci sono risorse condivise nel pc. Fate:
net view \\HALL9000
Se non ci sono risorse condivise o non si ha il permesso di accedervi vi risponder‡ con un errore, altrimenti vi dir‡:
Risorse condivise su \\HALL9000
Condivisione Tipo Commento
________________________________________________
C Disco
D Disco
E Disco
F Disco
G Disco
HP Stampa
Esecuzione comando riuscita.
Tombola!! Ci siamo abbiamo i nomi delle sue risorse condivise. Ora basta uscire dal dos e andare in gestione risorse (si avete letto bene). Nel menu in alto andate in Strumenti\Connetti unit‡ di rete. Ora come avrete gi‡ capito si assegna una lettera al vostro "nuovo hd" che avrete (cioË l'hd dell'altro) e scrivete \\HALL9000\C per esplorare la condivisione C (che probabilmente sar‡ il C: del tipo), \\HALL9000\D per la condivisione D e cosÏ via. Avrete notato sicuramente che oltre ai vari dischi li c'Ë anche la condivisione HP di tipo "Stampa". Vuol dire semplicemente che quella condivisione Ë connessa alla stampante del tipo e potete stampare i vostri file con la sua stampante.. divertente no? =). Naturalmente sar‡ tutto abbastanza lento perchÈ avverr‡ via internet, non sar‡ come esplorare i vostri hd di certo. Bene ora che sapete come accedere agli hd passiamo a cose pi˘ importanti. Prima di tutto vi chiederete come fare a prendere e a mettere file. E' semplice, dato che l'hd in remoto Ë come se fosse il vostro, quindi basta fare copia e incolla. Come fare invece per eseguire i file? Non Ë cosÏ semplice come pensiate, cliccando sul file .exe in remoto si eseguir‡ sul VOSTRO pc (ovviamente) quindi dovete giocare d'astuzia. Se volete mettere un trojan settatelo in modo da mandarvi una email con l'ip ogni volta che il pc va online, dopodichÈ mettete questo trojan in c:\windows\menu avvio\programmi\esecuzione automatica\ oppure in c:\windows\start menu\program files\startup (non ne sono sicuro perÚ, non ho la versione inglese di windows). Poi fate in modo di riavviare il pc se Ë un server fisso, altrimenti aspettate il giorno dopo (per vedere se Ë un server guardate la lista di ID dell'nbtstat -A, se ce ne sono pi˘ di 4-5 allora probabilmente Ë server). Smurfatelo, nukkatelo, provate tutto. Consiglio di usare il BO dato che all'avvio si cancella da esecuzione automatica. Inoltre quando entrate con gestione risorse se il sysadmin Ë un po' furbo vi verr‡ chiesta una password (non preoccupatevi, ciÚ Ë molto raro). Exploits o un brute force per queste password purtroppo non ne conosco, se voi si allora mandatemi informazioni. Ultima cosa, quando i nomi degli ID o delle condivisioni contengono spazi dovete usare gli "". Ad esempio se con nbtstat -A troviamo il nome TRA LLA allora nel lmhosts dovremo scrivere:
numero_ip "TRA LLA" #PRE
E poi
net view "\\TRA LLA"
E se vediamo che ha una condivisione chiamata BLA BLA allora faremo in gestione risorse:
"\\TRA LLA\BLA BLA".
* Trovare i computer Netbiossati:
Questo Ë molto semplice, basta un programma chiamato Legion (lo trovate su http://rhino9.ml.org o al mio sito http://kalidor.tsx.org) che scanna dei range di ip. Io consiglio di provare sempre il dominio 212.216.* dato che ho scoperto che quella zona Ë strapiena di ip Netbiossati (infatti Ë la zona principale della TIN;-)).
* Ultima parola:
L'articolo Ë finito, spero sia stato esauriente, cmq se avete domande scrivetemi mailto:kalidor@tin.it.
---Kalidor---
Ovvero:î Come trovo líE-Mail per bombardare qualche povero innocente?î
Autore: PAC_MAN
Ricercare un sito Web Ë relativamente facile e quasi tutti i navigatori conoscono i vari Yahoo, Altavista, HotBoot, o gli italiani Arianna e Virgilio. Ma come fare se vogliamo inviare un messaggio di posta elettronica qualcuno?
In Internet non esiste l'equivalente di un elenco telefonico, a causa della natura stessa della Rete. Per cominciare ogni singolo dominio puÚ aggiungere autonomamente un numero teoricamente illimitato di utenti, senza necessit‡ di dovere informare il resto della Rete. Ogni dominio, inoltre, puÚ aggiungere alla propria rete un numero indefinito di sottodomini, ciascuno dei quali puÚ gestire autonomamente un suo sistema di posta elettronica. Per finire sono moltissime le persone che cambiano indirizzo
E-Mail nel tempo.
Costruire una banca dati di indirizzi di posta elettronica Ë quindi un problema molto complesso, anche se qualche tentativo riuscito Ë stato fatto.
Certamente la reperibilit‡ di un utente aumenta se egli decide attivamente di farsi trovare: se Ë il vostro caso, ricordate che tutti i motori di ricerca consentono di fornire il proprio nome, cognome e indirizzo E-Mail (e anche altri dati personali, ma tenete presente che 'tutto quello che voi dichiarate potr‡ essere usato contro di voi' da spammer, mailing-list pubblicitarie e operatori commerciali).
Bigfoot
Eí semplicissimo da usare: basta riempire il campo Search con il cognome, meglio anche con il nome, della persona cercata e premere il pulsante. Interessante la possibilit‡ di mantenere riservati (chi raggiunge la nostra ëvoceí in Bigfoot potr‡ in tal caso spedirci un messaggio attraverso un apposita interfaccia ma non gli verr‡ rivelato il nostro ëveroí indirizzo) e la possibilit‡ di attivare gratuitamente un indirizzo di posta elettronica stabile, utile se pensiamo di cambiare spesso provider o se ne utilizziamo contemporaneamente molti.
http://www.bigfoot.com
Four11
Eí lo strumento per la ricerca di indirizzi E-Mail utilizzato da Yahoo! (Opzione People Search. Permette di effettuare ricerche anche per reperire numeri telefonici, e classifica gli utenti attraverso una categorizzazione assai dettagliata, che comprende le scuole e le universit‡ frequentate, il lavoro svolto, gli interessi e gli hobby. Una caratteristica preziosa Ë la registrazione degli IP degli utenti dei principali programmi di telefonia e videotelefonia in Rete, da Microsoft NetMeeting a Intel Internet Phone, da Cu-SeeMe a Connetix Videophone : un notevole aiuto per raggiungere gli interlocutori delle nostre video/telefonate.
http://www.four11.com
http://iol.four11.com (in italiano)
Internet Address Finder
Eí una base dati che integra i risultati delle ricerche su indirizzari di organismi universitari e di ricerca e dei maggiori fornitori di connettivit‡ americani (circa 7 milioni di indirizzi memorizzati). Anche IAF Ë collegato a un servizio di assegnazione gratuita di un indirizzo e-mail.
http://iaf.iname.com
WhoWhere
Eí il motore di ricerca che ha fornito i migliori risultati nella ricerca di indirizzi italiani di ambiente universitario, mentre Ë pi˘ carente per quelli registrati presso provider privati. Anche WhoWhere dispone di un buon meccanismo per la ëcoperturaí degli indirizzi di posta elettronica, che consente a chi ha trovato il nostro nome nellíindice di mandarci un messaggio ma di non conoscere il nostro indirizzo E-Mail. Esistono versione nazionalizzate di WhoWhere in francese, spagnolo e giapponese ma non in italiano.
http://www.whowhere.com
Switchboard
Un servizio allegato ad Altavista, attualmente in forte espansione.
http://www.switchboard.com
Per quanto riguarda líItalia segnalo MAILORY di Telecom On Line. La sua base di dati Ë ancora limitata, la ricerca, volendo, viene perÚ completata attraverso altri motori di ricerca di indirizzi , riuscendo quindi a fornire buoni risultati.
http://mailory.tol.it
Un saluto ai Matrix, Coco lo stronzo, Davide, Simone, e gli altri che conosco.
Per chiarimenti pac_man@freemail.it non chiedetemi come si fa ad entrare nel computer della NASA perchÈ non lo so.
Se volete saperlo guardatevi il film Hackers che mi deve postare Body.
Ciao a tutti.
---PAC_MAN---
#MANTENERSI ANONIMI
Autore: Oldiron61 (AiS-KdT!)
In questo articolo cercherÚ di darvi alcune dritte riguardo il modo per mantenersi pi˘ anonimi possibile.
PerchÈ fare tutto ciÚ? Semplicemente perchÈ il GRANDE FRATELLO ci guarda continuamente (Grande Orwell!) e líunico modo per non cacciarsi nei guai Ë quello di evitare di lasciare tracce ovunque.
Per prima cosa analizziamo il surfing via HTTP: un valido modo per non farsi tracciare Ë quello di attaccarsi ad un proxy anonimo. Anonimyzer offre ai clienti registrati un ottimo servizio, anche se poi i webmaster hanno il tracing di tutti gli utenti, mentre ai navigatori non registrati offre un servizio di anonimizzazione (con le stesse condizioni del precedente) con un ritardo di arrivo dati di circa 2 min. Il servizio Ë raggiungibile al sito http://www.anonimyzer.org
Sicuramente la cosa migliore Ë quella di trovarsi un proxy anonimo (uno a caso: proxy.mcmail.com) settare le porte (8080) e collegarsi per fare una prova.
Il test di funzionamento di un proxy Ë semplicissimo: dopo aver configurato Exploder in maniera appropriata dirigersi con il proprio browser verso il vostro IP-Number reale. Subito dopo controllate le connessioni con Netstat o con qualcosa di simile e controllate la connessione sulla porta 80/8080. Se notate un IP diverso dal vostro,e notate quello del Proxy, il proxy ha compiuto il suo dovere.
Oppure potete collegarvi ad uno dei tanti Env-check (Due su tutti:
http://cavency.virtualave.net/cgi-bin/env.cgi e
http://cavency.virtualave.net/cgi-bin/env1.cgi ) dove troverete tutte le info necessarie per controllare se il collegamento al proxy Ë andato a buon fine.
Passiamo alle E-Mails:
un metodo molto efficace Ë quello di crearsi diversi account di posta che si forwardanoÖ Ex. Supponiamo che ho un account con freemail, creo un altro account con Lycos che forwarda a freemail, ne creo uno con usa.net che forwarda a Lycos, e poi uno con yahoo che forwarda a usa.net.
In questo modo sarete sicuri che non si arriver‡ facilmente al vostro indirizzo di posta reale, ma (se avete molto culo) la posta arriver‡ con circa 1-2 giorni di ritardo!
Icq? Vale lo stesso discorso di HTTP: cercate un proxy e sfruttatelo a dovere. Líunico neo Ë la lentezza nello scambio di dati ed il fatto che Ë un poí difficoltoso partecipare a delle ICQ-Chat oppure scambiare file tramite questo programma, per il semplice motivo che le informazioni ed i dati, prima di arrivare a voi, passano per il proxy.
Per quanto riguarda IRC non posso affermare di essere molto preparato, ma qualche cosa posso dirvela!!
Líunico consiglio che vi posso donare Ë quello di attaccarvi ad un proxy (ebbene sÏ, Ë sempre lui il nostro salvatore!) Quello che vi consiglio Ë Proxy4-All raggiungibile al sito http://proxys4all.cgi.net . Se volete saperne di pi˘ vi rimando allíarticolo ìL'Irc..........un mondo parallelo a quello del Webî di Dingo, tratto da Netrunners n∞6.
Di seguito verranno elencati i proxy ed i socks presi dalla lista di Proxy4All.
< COPIA & INCOLLA >
#Proxys per http & ftp: (Aggiornati il 4/07/1999)
http://proxy.emirates.net.ae/proxy.pac:AUTOCONFIG
nppp304.overnet.com.ar:AUTOCONFIG
proxy.ozemail.com.au:80
www2.transport.tas.gov.au:8080
tbsa.com.au:80
proxy.cybertelecom.com.br:3128
vectra.overnet.com.br:8080
www.csjlor.qc.ca:3128
httpproxy.math.uwaterloo.ca:8080
cache1.worldcom.ch:8080
sigma.unisg.ch:8080
california.videorom.ch:3128
gateway.hro.com:80
proxy.mcmail.com:8080
cf1000.east.cacheflow.com:8080
proxy.compunet.net.co:8080
andele.cs.tu-berlin.de:3128
maccaroni.unix-ag.uni-kl.de:80
ics1f.og.srv.t-online.de:3128
Brahma.CC.PurdueNC.Edu:80
linux.softec.es:8080
proxy.inet.fi:8080
proxycf1.grolier.fr:80
wall-14.dgs.ca.gov:80
gita.srce.hr:80
mail.lcnet.it:80
openview.dnet.it:8080
Cairo.osu.ac.jp:80
dns1.infocom.co.jp:8080
kusu.city.kurume.fukuoka.jp:80
cvs2.kyunghee.ac.kr:8080
biho.taegu.ac.kr:8080
data450.dm.net.lb:8080
ns1.klcc.com.my:3128
cacheflow.bright.net:80
cf.webzone.net:8080
cacheflow1.deltacom.net:8080
proxy.coqui.net:8080
proxy.nhtv.nl:80
webproxy.gelrevision.nl:8080
www.londonderry.org:80
aclin.org:8080
mail2.info.com.ph:8080
caclis01.teleweb.pt:3128
leonardo.isec.pt:3128
ns1.infonet.com.py:8080
proxy.qatar.net.qa:8080
ns.varnamo.se:8080
swallow.cat.net.th:8080
ankara3.turnet.net.tr:8080
c760-2.seed.net.tw:8080
c1.h202052106.is.net.tw:80
club.golden.com.tw:80
mailgate.ultima-bs.co.uk:8080
cache1.ondemand.co.uk:80
webcache22b.cache.pol.co.uk:8080
stpauls.pvt.k12.al.us:80
proxy.cpt.mweb.co.za:8080
cache02.global.co.za:80
proxy.cybergate.co.zw:3128
proxy.africaonline.co.zw:8080
#Proxys per Socks, Wingates e Telnet: (Aggiornati il 4/07/1999)
#Porta 23
193.13.151.71
195.226.224.136
195.226.228.53
195.226.228.80
#Porta 1080
195.226.241.194
195.246.23.33
200.231.130.210
202.208.218.5
203.116.31.153
206.58.25.46
206.74.68.76
207.15.167.177
207.216.188.21
207.44.26.82
208.222.9.10
209.160.126.201
209.20.27.130
210.161.237.19
210.162.200.83
210.163.83.178
212.30.75.8
216.77.244.92
24.3.105.29
24.3.11.131
24.3.131.46
24.3.82.41
24.48.44.57
24.64.132.67.on.wave.home.com
24.93.112.238
24.93.158.201
24.93.158.57
55-050.hy.cgocable.ca
adsl-151-198-16-75.bellatlantic.net
adsl-206-170-148-119.dsl.pacbell.net
adsl-216-100-248-127.dsl.pacbell.net
adsl-216-100-248-86.dsl.pacbell.net
adsl-77-244-92.mia.bellsouth.net
adsl1-110.mts.net
adsl1-186.mts.net
as1-8.qualitynet.net
as1-8.qualitynet.net
as3-53.qualitynet.net
as4-78.qualitynet.net
as5-19.qualitynet.net
as8-157.qualitynet.net
as8-194.qualitynet.net
cc42238-a.avnl1.nj.home.com
cc495632-a.srst1.fl.home.com
cc762726-a.wlgrv1.pa.home.com
cdr8-53.accesscable.net
cowsys03.cowansystems.com
cs9360-254.austin.rr.com
cue.dk
d185d183a.rochester.rr.com
d185d1ef9.rochester.rr.com
dns.fatwa.gov.kw
dns.meridien.com.kw
dt095n09.maine.rr.com
dt095nc9.maine.rr.com
dxt.ozemail.com.au
dynamic57.pit.adelphia.net
ewwmail.ozemail.com.au
gdsl173.sttl.uswest.net
gen2-114ip6.cadvision.com
gen2-87ip27.cadvision.com
host-209-214-34-114.mco.bellsouth.net
hse-tor-ppp21220.sympatico.ca
hssktn1-82.sk.sympatico.ca
i-tec.co.jp
interlog.interlog.fr
ip2-196.highend.com
ishibashi.ishibashi.tennouji.osaka.jp
lan-duclos4-15.cancom.net
m44155.direcpc.net
mail.sjn.nl
mdrass.moc.kw
mp-217-242-207.daxnet.no
nat198.85.mpoweredpc.net
nbtel3-78.nbtel.net
nbtel6-93.nbtel.net
ppdual.augen.med.uni-giessen.de
ppp-16-41.cyberia.net.lb
ppp-16-80.cyberia.net.lb
pppa4-resalegreenbay1-5r1066.saturn.bbn.com
pppa40-resalegreenbay1-5r1066.saturn.bbn.com
pppa5-resalelansing1-4r1106.saturn.bbn.com
ppplink-dial55.idepot.net
proxy-laregione.ibbs.net
sacnl.globalpc.net
siia.uan.mx
sim-home-5-14.urbanet.ch
stn194.hiq-ca.com
studios.alger.it
studios.alger.it
we-24-130-42-117.we.mediaone.net
wingate.rosdev.ca
wlc35.cablelan.net
< /COPIA & INCOLLA >
Ok, il mio articolo Ë concluso, spero di essere stato abbastanza esauriente, ma per eventuali omissioni errori e critiche potete spedirmi i messaggi allíindirizzo oldiron61@iname.com.
Ciao a tutti e grazie.
---OlDiroN61 (AiS-KdT!)---
#LA SECONDA ERA DI INTERNET
Autrice: (Ebbene si! CíË anche una donna nellíAiSÖ) Elsa288
Hi, tutto ciÚ che troverete in questo articolo Ë stato tratto da testi
specifici, da informazioni reperibili sul WEB, da mie personali elucubrazioni
mentali, da voci raccolte in giro ma soprattutto dall'uso intenso di
sostanze psicotrope di varia origine. Chiunque abbia a dire qualcosa, non si
trovi d'accordo o trovi delle imprecisioni mi render‡ felice in quanto:
1) la materia Ë relativamente nuova Ë non ho la presunzione di avere capito
tutti gli aspetti inerenti ad essa.
2) se sei in disaccordo vuol dire che pensi se pensi hai speranza.
Premesso ciÚ aggiungo che potete ritenermi direttamente responsabile di
tutto ciÚ che leggerete e dell'uso improprio che vorrete farne, incluse
attivit‡ sovversive, terroristiche, a scopo di lucro, per trombare un'amica
ecc. ecc. la cosa non mi preoccupa in quanto HO UN BUON AVVOCATO :-)
Di cosa ca**o parliamo:
Meglio conosciuto anche con i nomi di Ipng (next generation) & INTERNET 2
IPv6 Ë la naturale evoluzione di Ipv4, che per capirci Ë quello che mettiamo
nei tracert, whois, ping ecc. ecc. sotto forma di numeri decimali
tipo: 255.255.255.255.
La versione Ipv5 si Ë persa per strada causa vicissitudini non ben
documentate, ma a mio avviso per colpa di 2 aziende che volevano l'esclusiva
(se vi interessa ne parliamo) fatto sta che Ipv4 Ë standard dal settembre
del 1981 e che dopo solo 9 anni un genio dei computer (si fa per dire)
capisce che c'Ë un problema ovvero l'esaurimento entro breve di IP da
assegnare alle macchine. Il perchÈ Ë presto detto: nonostante la possibilit‡
di indirizzare circa 4 miliardi e mezzo di macchine con ip a 32 bit
(Ipv4) la realt‡ dei fatti si Ë rivelata molto pi˘ macabra, a causa della
natura divisa in classi degli IP, ovvero, se sei un isp e mi chiedi 1200 ip
adress io ti do un IP in classe B tu ti fai i tuoi SUBNET e ti arrangi anche
se magari pistolando con i SUBNETMASK ti saltano fuori 1800 ip (per i pi˘
tecnici chiedo venia ma vorrei velocizzare gli argomenti relativi a Ipv4)
questo ha comportato un grande spreco di IP, al punto di avere quasi esaurito
la disponibilit‡ di ip in classe A ed a essere messi male in classe B meno
male in classe C.
Altri fattori che hanno giocato e giocano a sfavore di Ipv4 sono:
l'introduzione di reti ATM (asynchronous transfer mode), il fatto che non
garantiscono un QoS (quality of service), una pessima gestione a livello di
sicurezza (ce ne siamo accorti hehehehehe), problema non secondario Ë anche
il concetto di flusso che con le nuove tecnologie tipo audio/video riveste
per il futuro un ruolo predominante e non ultimo il problema della mobilit‡ dei
pc che si presume vengano gestiti con collegamenti verso il pc dell'ufficio per
poi uscire, cosÏ facendo si potr‡ assegnare un ip dinamico con supporto per
il roaming al portatile e un ip fisso al pc dell'ufficio che supporter‡ il
tunneling necessario.
Per quanti di voi abbiano letto fin qui e si stiano rompendo le balle
(vi capisco) vi dico subito che da indiscrezioni in mio possesso il 70 % dei
router ha gi‡ implementato Ipv6 alla data 09/06/99, esiste una dorsale
sperimentale chiamata 6bone che opera anche adesso in Ipv6, per líEuropa fa
capo ad un server di nome GANDALF sul quale sono transitata (casualmente)
mentre ero in IRC, l'unico protocollo che sopravviver‡ a livello di standard
ISO/OSI nei prossimi anni sar‡ Ipv6 e la vostra vita di hackers subir‡ a
causa di ciÚ profonde modifiche entro e non oltre il 2003, quindi (consiglio)
dato che: a prescindere dal fatto che per qualche anno i 2 standard viaggeranno
in parallelo e che quindi di tempo ne abbiamo, dato che i nuovi ip
adress saranno nel seguente formato FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF
per un totale di 128 bit, dato che alcune cosette ai LAMERS tanto care
tipo backorifice, net bus, DoS vari non funzioneranno pi˘, non bisogna
dimenticare che non funzioneranno pi˘ nemmeno i port-scanner e tutte le
altre utility e che trovarsi impreparati non Ë bene, in poche parole sar‡
come passare da winzozz a linux sul vostro pc.
Se pensate che vi voglia spaventare vi sbagliate, quello che mi spaventa Ë
la seguente frase presa da un libro che tratta l'argomento, cito
testualmente" con Ipv6 non ci proponiano di aumentare il livello di
sicurezza raggiunto con Ipv4 ma se non altro di non peggiorarlo" diffidate
e meditate pi˘ avanti vedremo il perchÈ.
Riprendiamo:1996 nelle RFC(request for comment) vine presentato Ipv6 viene
stabilito che la sua lunghezza sia di 128 bit in grado di indirizzare 1500
macchine per ogni metro quadro di superfice terrestre, in realt‡ dalla
formula di Huitema ne bastavano 68 ma dovendo il nuovo IP essere mutiplo di
32 si Ë passati a 128 (spreconi) tutto ciÚ ha anche un senso in quanto,
lavorando un po' di fantasia e senza citare Hubbard, non Ë difficile
pensare di far accendere il microonde con il cellulare o riempire la vasca
da bagno con una telefonata oppure far partire la caldaia un'ora prima di
rientrare a casa; questo implica un IP per ogni elettrodomestico e 1500 IP
per ogni metro quadro mi sembra risolva il problema di saturazione degli
IP stessi.
Altro problema che Ë stato risolto Ë il concetto di QoS (quality of service)
Ipv4 infatti Ë totalmente estraneo a concetti tipo flusso, connessione e
numerazione sequenziale semplicemente fa il possibile per garantire il
successo della trasmissione se non ci riesce amen (Best effort).
Altre novit‡:
-supporto agli indirizzi multicast e anycast
-unificazione indirizzamenti itranet-internet
-semplificazione delle tabelle di routing
-anche altre ma le vedremo poi (forse)
Uno dei problemi principali che si sono dovuti affrontare nello stabilire un
nuovo protocollo, Ë sicuramente stato quello della migrazione da ipv4 a ipv6:
considerando l'impossibilit‡ di migrare tutta la rete da un protocollo a un
altro il giorno x, si Ë deciso di implementare entrambi, sui router, per il
periodo di tempo necessario alla migrazione(nessuno ne conosce la durata che
io sappia) e un bel giorno (chiamato il giorno del giudizio)verr‡ disabilitato
completamente l'ipv4 in favore di ipv6.
Come accidenti si leggono:
prima di tutto avrete notato che la notazione Ë in esa e non in dec, la
denominazione di ottetti Ë rimasta, ma mentre prima era 255 ora Ë FF per un
totale di 16(haahahgggg) ottetti, il concetto di netmask viene sostituito con
il concetto di prefisso cioË un ipv6 con prefisso 80 user‡ 80 bit per la
subnetwork e 48 per i nodi all'interno della subnet stessa, quindi se trovate
un ip tipo FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF/80 "80" Ë il prefisso.
Oltre al fatto che per separare le cifre al posto del punto ce ne hanno dati
ben 2 (erano in offerta) ci hanno regalato una bella serie di facility:
es:. FFFF:0000:0000:0000:FFFF:FFFF:FFFF:FFFF si puÚ scrivere pure.....
es:. FFFF:0:0:0:FFFF:FFFF:FFFF:FFFF
es:. FFFF::FFFF:FFFF:FFFF:FFFF
uno tipo:
es:. 0000:0000:0000:0000:0000:0000:FFFF:FFFF si puÚ scrivere pure.....
es:. ::FFFF:FFFF
da notare che raggruppare gli zeri con "::" Ë concesso una sola volta
all'interno di un ip e ciÚ si puÚ fare indipendentemente all'inizio ip
in mezzo all'ip o alla fine (ip ip urr‡).
Nel cosÏ detto periodo di migrazione (cioË oggi) gli ipv4 e gli ipv6
vivranno in simbiosi sui router, ciÚ grazie ad alcune amenit‡ tipo:
il DUAL STACK e il TUNNELING ci interessa per ora il tunneling, se trovate
un ip tipo ::212.216.120.25 a prescindere dal fatto che sia TELECAZZ, vuol
dire che siete il TUNNELING, ovvero siete in ipv6 che perÚ riesce a gestire
anche i vecchi ipv4.
Bona per ora.
Chiedo scusa per:
-le imprecisioni(sto studiando anch'io)
-i ca**eggi
-le banalit‡
-la scarsa preparazione(nessuno Ë perfetto
Ringrazio:
-le rfc
-la casa editrice mcgraw hill
-i broum broum di ricerca
-la ferrero(per aver inventato la Nutella)
-le TLC (per l'album FAN-MAIL)
-special TNX for my friend YOGHI
Questa voleva solo essere una panoramica di quanto sta succedendo, per altro
solo descrittiva e senza nessuna pretesa tecnica, se eventualmente ci fossero
sulla cosa richieste di approfondimento approfondiremo.(forse)
Ps: Se qualcuno avesse crakkato la formula chimica della NUTELLA, oltre a
rivolgermi a lui sempre e solo con l'appellativo di: SOMMO MAESTRO
sarei anche grato se, tramite Oldiron61, me lo facesse avere, dandomi
cosÏ la possibilit‡ di produrla in quantit‡ industriali(uso personale).
Bye Bye a tutti!!!
---Elsa 288---
##############################################################
####### CCCCC RRRRR AAAAA CCCCC K KK III NN N GGGG #######
####### C R R A A C K K III N N N G #######
####### C RRRRR AAAAA C KK III N N N G GG #######
####### C R R A A C K K III N N N G G #######
####### CCCCC R RR A A CCCCC K KK III N NN GGGG #######
##############################################################
#CRACKING INTRO
Autore: QueQuero
Cos'Ë il cracking?
Con questa parola intendiamo l'arte del bypassare o disattivare i sistemi di protezione all'interno dei comuni shareware.
Per intenderci faccio un piccolo esempio:
In edicola compro un cd con dei programmi, ne installo uno a caso e noto subito che in alto c'Ë scritto: "Questo programma Ë una versione shareware".
Cosa significher‡ questo oscuro messaggio? Bene ecco la risposta, il programma probabilmente avr‡ alcune funzioni disabilitate oppure ci porr‡ un limite di tempo entro il quale dovremmo pagare un contributo al produttore per riceverne una versione completa, infatti gli shareware sono nati per far provare al potenziale acquirente il nostro prodotto e, se esso vorr‡ poi utilizzarlo a tempo indeterminato dovr‡ pagare per ricevere un numero seriale che gli consentir‡ di disabilitare il limite di tempo (in genere 30, 45 o 90 giorni) oppure di abilitare tutte le funzioni che prima non erano disponibili.
Le software house per velocizzare l'utilizzo dei propri prodotti spesso consentono di registrare il programma in linea, ma vediamo come avviene questo processo, spesso si deve andare nel menu *Help* e poi *Register*, a volte il box di registrazione appare durante l'avvio del programma, a volte Ë "nascosto" come in gamehack dove si deve premere "ctrl+clic" sul logo "GameHack" per accedervi, oppure altre volte il box non esiste, infatti proprio per questo possiamo dividere i programmi shareware in due categorie ed altre varie sottocategorie, andiamo ad esaminarli: i tipi di shareware si possono dividere in registrabili e non, i registrabili possono essere *sbloccati* tramite un box nel quale va inserito un numero predefinito oppure calcolato in base al nome che inseriamo, o peggio tramite un Key file, ossia un file che la ditta spedisce all'utente e che va messo generalmente nella cartella principale del prog. (per esempio cuteftp cerca al proprio avvio un file chiamato "cuteftp.key" contenente le informazioni criptate dell'utente) quest'ultima soluzione Ë spesso la pi˘ difficile da sopraffare, ma vediamo come si comportano i prog. non registrabili, questa branca di shareware Ë nata recentemente per il solo motivo di depistare i cracker, infatti, i vari prodotti non forniscono un box di registrazione, ma consentono generalmente l'utilizzo completo del prog. per un determinato periodo di tempo oppure disabilitano alcune funzioni, a volte invece consentono di sfruttare a tempo illimitato il prog. senza disabilitare le funzioni ma riempiendolo di nag-screen (ossia noiosi messaggi che ricordano di pagare la registrazione e cazzi vari...) ce ne sarebbero altri due, nel primo *Verifica del cd-rom" l'eseguibile controlla la sua locazione che deve essere quella del cd originale, nel secondo tipo viene cercata una chiave hardware cioË viene fatto un check su una componente hardware del vostro pc, per esempio l'eseguibile controlla che il numero di serie dell'hard disk sia sempre quello ma come chiave hardware possiamo intendere anche un dispositivo che si attacca alla porta parallela, poi ne parlerÚ in un altro tutorial (e saranno dolori...), in linea di massima tutti questi metodi possono essere superati, ne esamineremo con calma la maggior parte dei casi.
Di cosa abbiamo bisogno
Per poter crackare un prog abbiamo bisogno di un Debugger, un Disassembler un un editor esadecimale e volendo un paio di prg come regmon e filemon, vediamo a cosa servono:
Il debugger Ë un po' la finestra sul programma del cracker, Ë indispensabile, il migliore Ë sicuramente Softice della Numega.
La versione che troverete sar‡ l'ultima cioË la 3.24, un prog del genere serve a vedere il codice assembler del programma, se non sapete cosa significhi questa parola dovete far assolutamente riferimento ai tutorial nella sezione questi due ultimi toolsdi windows o in alcuni file delle informazioni di vitale impola sua struttura, con questo prg possiamo *navigare* all'interno dello shareware per poterlo poi crackare.
Il disassembler che useremo si chiama W32DASM 8.93 < http://utenti.tripod.it/Que/Tools/Dsm893.zip> ed Ë un prg molto simile al debugger, solo che quest'ultimo ci disassembla (cioË lo converte in assembly) un file e ci consente di trarne varie informazioni, il metodo di crackare un prg con un disassembler viene definito *passivo* perchË non si puÚ interagire direttamente con le funzioni del prg.
L'editor esadecimale, io uso Hex Workshop 2.54 < http://utenti.tripod.it/Que/Tools/hwork254.zip>, serve per poter vedere il codice, come dice la parola stessa, esadecimale, quest'operazione viene in genere utilizzato per lo sviluppo del file crack, cioË un piccolo eseguibile che serve a modificare quanto basta il prg per renderlo libero dalla protezione.
Regmon < http://utenti.tripod.it/Que/Tools/Regmon.zip> e Filemon < http://utenti.tripod.it/Que/Tools/Filemon.zip> sono invece due utilissimi prg che rispettivamente ci consentono di vedere ciÚ che un prg qualunque legge nel registro di windows e quali file legge, scrive o cerca. Spero che vi stiate chiedendo il perchË dell'utilitytanza come ad esempio i giorni che mancano prima dell'espirazione oppure le info sulla registrazione, le informazioni del reg. ed i file sono spesso nascosti in chiss‡ quale directory e con filemon e regmon possiamo scovarli...;)assembly < http://utenti.tripod.it/Que/Assembly.html> per poter continuare; comunque il codice Ë lo scheletro del programma cioË ‡ di , ebbene eccovi la risposta, spesso uno shareware inserisce nel registro
Se volete potete scaricare i tools necessari direttamente dai link nella pagina, oppure andando nella sezione Tools < http://utenti.tripod.it/Que/Tools.html>.
Scaricate tutti questi prog ed provate ad usarli uno per uno, ricordate solo che softice Ë FONDAMENTALE mentre gli altri potrete prenderli in un secondo momento.
Un ultimo avvertimento: fare il cracker non Ë un'attivit‡ TROPPO legale quindi cercate di rimanere nell'ombra ed evitare di dire a tutti che vi chiamate Pinco Pallino, che vivete a Lilliput e che fate il cracker 24 ore al giorno, potrebbe essere molto pericoloso.
Potete crackare in casa vostra tutti i programmi che volete al solo scopo didattico, ma non potete diffondere il relativo crack, quindi a buon intenditore.....
Arrivederci al prossimo tutorial ;)
---QueQuero---
#CRACKING TUTORIAL#
Autore: S2
1. Prefazione
Per iniziare vorrei subito dire che tutto quello che segue non e'
assolutamente da prendere sul serio e non e' assolutamente da fare o provare.
Anzi, e' assolutamente illegale, e quindi, se non volete dire "ciao" a un
pulotto che suona al vostro campanello perchÈ siete diventati pirati
informatici non fatelo.
Bene bene bene... Detto questo un ciao a tutti voi che avete una gran voglia
di fottere tutti quei programmini Shareware del cazzo che dopo trenta giorni
di evaluation non funzionano piu', o quelli che danno possibilita' limitate a
meno che non inseriate la mistica password associata all'user name inserito
ecc... vi siete proprio rotti le balle... vero? Io almeno, confesso che me le
sono rotte, e quindi... aguzzo l'ingegno e inculo tutte quelle softwarehouse
che ti chiedono 20$ per il loro programma. Ma se vi devo dire la verita' non
lo faccio solo per questo, ma anche per un altro motivo: Quando riesco a
mettere insieme tutti i pezzi del puzzle, e vedo sullo schermo del mio bel pc
una finestrella che mi dice "Tnx for registering" mi sento un grande. Perche'
penso di essere uno dei pochi su questa faccia della terra a essere in grado
di farlo, e quindi mi sento un figo. Comunque, quando poi ripenso ai 20$
risparmiati sono ancora piu' felice... Quindi questo manuale non e' da vedere
come un manuale al crackaggio, ma piu' come un manuale della felicita'... che
umorista che sono... io non devo passare tutte queste ore davanti al pc...
poi mi metto a scrivere stronzate del genere... sono proprio fuso... vabbe'...
mi accendo una cicca, va'.
In ogni caso questo non e' un manuale di Assembler, quindi non aspettatevi
particolari sull'asm, quelli li trovate in inglese in giro per Internet, ma
e' una guida al crackaggio. Quello che voglio insegnare non e' come trovare le
password associate agli user name, ma semplicemente come avere l'accesso. Per
riuscire a scoprire la password, avete bisogno di conoscere un sacco di asm e
soprattutto dovete farvi un pacco cosi' di matematica... ma questo e' un altro
file... forse in futuro ve lo scrivero'... Adesso andiamo al sodo e cominciamo:
2. Breve introduzione all'Assembler
Allora. Per crackare un programma bisogna disassemblarlo, cioe' tradurre il
programma .exe o .com in una lista di istruzioni da noi comprensibili, per
poi modificarlo in modo da fargli credere di aver inserito la password
giusta, o che i 30 giorni non sono passati e cosi' via. Siccome per
disassemblare i programmi da crackare si usa il SoftIce, che disassembla i
programmi in Assembler (asm), bisogna sapere questo linguaggio. Voi direte,
"ma non possiamo tradurre il programma in italiano, cosi' lo capiscono
tutti?". E io vi rispondo, ci sto lavorando, ma quando avro' finito lo
distribuiro' in una versione Shareware incrackabile! Tje'!
Ok. Ora vi spiego un po' come funziona l'Assembler:
2.1 I registri
La CPU del computer e' divisa in diversi registri, che ora vi spiego uno per
uno cosa sono e come si chiamano, e servono per memorizzarci dei dati. I
registri in tutto sono quattro, e si chiamano
AX - Accumulatore
BX - Base register
CX - Contatore
DX - Data register
Ognuno di questi registri puo' essere suddiviso in una parte alta e una bassa.
Per esempio AX si suddivide in AL (Low) e AH (High). Nella CPU del Pentium,
che lavora a 32 bit, i registri si chiamano EAX, EBX e cosi' via. Mi spiego
meglio con questo schemino:
AL = 8 Bit (parte bassa del registro AX)
AH = 8 Bit (parte alta del registro AX)
AX = 16 Bit (formato da AL e AH messi insieme)
EAX = 32 Bit (formato da AX e altri 16 Bit che pero' non sono direttamente
accessibili dall'utente)
Ovviamente questa suddivisione vale anche per BX, CX e DX.
Poi ci sono i segment register:
CS - Vuol dire Code segment. E' l'area di memoria nella quale si trova il
programma che state modificando. L'indirizzo CS:IP e' líistruzione che
state per eseguire.
DS - Il Data segment. La parte di memoria nella quale si trovano i dati. La
CPU di solito vi accede solo in lettura.
ES - Extra segment. In questa area di memoria la CPU vi accede in scrittura.
IP - Instruction pointer. E' l'indirizzo dell'istruzione che state per
eseguire.
SS - Stack segment. Questa e' roba complicate... non vi serve per i vostri
scopi crackistici.
SI - Source Index. E' un puntatore.
DI - Destination index. Un'altro puntatore.
BP - Base pointer. Questo viene usato insieme allo SS.
SP - Stack pointer. Serve a puntare una locazione all'interno dello Stack. E'
usato insieme a SS.
Questi sono i registri della CPU, le informazioni qui riportate, non sono
complete, ma non starÚ' neanche qui' a completarle, perchÈ' per i nostri loschi
scopi non sono di importanza rilevante. Se proprio volete saperne di pi˘'
andate a leggervi una delle tante guide sull'Assembler che si trovano in giro
per Internet.
2.2 I flag
Servono ad indicare se un jump condizionale (vedi sezione istruzioni) deve
essere eseguito o no. Per esempio
CMP AL, BL ........... Confronta il registro al con bl
JZ 3F1D ................... Salta se zero a 3F1D
La prima istruzione esegue un confronto tra AL e BL. Se sono uguali il flag Z
diventa 1 (attivo), nel caso contrario invece, 0 (disattivo).
La seconda istruzione salta all'indirizzo specificato se il flag Z e' 0.
Se per esempio in AL abbiamo il numero di giorni da quando stiamo usando il
programma, e in BL, il numero di giorni che il programma deve funzionare,
modificando il flag zero possiamo far credere al programma che i giorni ancora
non sono finiti, e quindi possiamo continuare ad usare il programma. Capito?
Mettiamo il caso:
AL = 3 .................... Stiamo usando il prog. da 3 giorni
BL = 1E .................. (1E = 30 in Hex) Per quanti giorni possiamo usare
il prog.
Premesso questo, ora eseguiamo i comandi:
CMP AL, BL ........... Confronta il 3 con il 30d
JZ 3F1D .................. Se i due sono uguali (tutti e due 30, flag Z = 1)
salta a 3F1D e ci dice di registrare il programma
Tutto chiaro? Penso di si... queste sono cazzate da capire in fondo, credo.
2.3 Le istruzioni
MOV Dest. Source - Sposta un valore da Source a Dest. Per esempio MOV AL,
BL - Sposta il contenuto di BL in AL.
CMP var1, var2 - Confronta i due valori di var1 e var2. Per esempio CMP AL,
BL - Confronta il contenuto di AL con quello in BL. Semplice no? Be'...
questa istruzione funziona come una sottrazione: il valore in var2 viene
sottratto da var1. Cioe', se ho 3 in AL, e 8 in BL, il risultato sar‡'
3 - 8 = -5. Il flag Carry (C) si attiver‡' (questo flag si attiva ogni
volta che il numero e' negativo). Nel 99,9% dei casi questo comando viene
usato per confrontare la password da voi inserita e quella giusta, oppure
come nell'esempio sopra, i giorni trascorsi, e quelli trascorribili (ma
esiste questa parola?).
JMP label - Questa e' l'istruzione piu' bella. Esegue un salto all'indirizzo
specificato. Lo troverete, di solito dopo un CMP. Ci sono diverse
variazioni di questo comando, che ora vi elencherÚ', e vanno tutte a
controllare i flag Z, O, S, C e P. Nella sua forma pi˘' semplice e' JMP
label, cioË', salta a label qualsiasi siano i valori dei flag. Ponendo
il comando CMP AX, BX, abbiamo:
JNZ - Jump if not zero, AX diverso da BX
JZ - Jump if zero, AX uguale a BX
JB - Jump if below, AX < BX, C = 1
JA - Jump if above, AX > BX, C = 0
JNGE - Jump if not greater or equal, AX< =BX, S diverso da 0
JGE - Jump if greater or equal, AX=>BX, S = 0
JLE - Jump if less or equal, AX< =BX, Z=1 o S=F
Che palle! Vabbe'... cen'e' altri di 'sti' JMP, ma non credo che vi servano per
i vostri loschi scopi, quindi non preoccupatevi... anche se non li sapete non
cambia un cazzo. Comunque, se proprio vi interessano li trovate in un
qualsiasi manuale di Assembler in giro per Internet.
CALL label - Richiama una routine che si trova all'indirizzo specificato con
label. Per esempio CALL 1F3D, esegue la routine a CS:1F3D. Poi,
eseguendo la routine, quando trova un'istruzione RET torna
all'istruzione dopo CALL. Facile no? Di solito, quelle chiamate
con CALL sono delle routine che controllano il testo da voi
inserito, oppure criptano la password che avete inserito ecc.
INT n - Esegue un'interruzione. Un'interruzione e' come una routine, pero' non
e' nel programma, ma da qualche parte nel DOS, o nel BIOS, dipende dalla
n. Per esempio quei giochini vecchissimi che chiedevano il KeyDisk
inserito usavano l'int 13 per vedere se c'era il dischetto inserito o no
ecc. Comunque cazzate... in Windows gli INT non esistono quasi piu'.
That's it. Questi sono i comandi principali dell'asm. Spero che gli abbiate
capiti, perche' senza questi poi non ci capirete una minchia nel SoftIce.
Anzi... se volete approfondire, c'e' il Assembly language foundamentals
tutorial che aspetta solo di essere letto e studiato. I comandi che vi ho
dato qui sono pure pochi, ma comunque quelli piu' importanti.
3. L'uso del debugger
Ok. Aspettate un'attimo che mi accendo una cicca... fumo troppo... ma vabbo'.
Per spiegarvi come funziona il SoftIce vi traduco semplicemente le parti piu'
importanti della guida che trovate anche compattata nel file SoftIce.zip.
Cosi' risparmio la fatica di pensare ai comandi.
Allora... intanto i consiglio di mettere una robe del genere alla fine del
vostro Autoexec.bat:
choice /tn,2 Caricare softice?
if errorlevel 2 goto win
c:\softice\winice (qui' mettete la righa che vi aggiunge il SoftIce nell'installazione)
goto end
:win
choice /ts,1 Caricare windows?
if errorlevel 2 goto end
win
:end
Ed ora passiamo ai comandi principali del SoftIce:
3.1 I comandi del SoftIce
E' impossibile debuggare bene senza sapere come funzionano i BreakPoints (Bp).
Un bp e' un'istruzione per la cpu che le dice di fermare l'esecuzione del
programma dopo un accesso ad una certa locazione di memoria, oppure dopo
certi eventi del programma stesso e da' il controllo al debugger. Quando setti
un bp del SoftIce e poi torni al programma che stai usando, SoftIce compare
automaticamente quando la condizione per la quale e' settato il bp e'
verificata.
3.1.2 BreakPoint
Bc # : Clear Breakpoint--elimina un breakpoint messo in precedenza nel
Soft-Ice; devi sapere il numero del bp...
Bd # : Disable Breakpoint--disabilita il bp ma non lo cancella; devi sapere
il numero del bp...
Be # : Enable Breakpoint--abilita il bp che hai disabilitato in precedenza;
devi sapere il numero del bp...
Bl : List Breakpoints--mostra una lista di tutti i bp settati nel softice,
il loro stato (abilitato, disabilitato), e il loro numero.
Bmsg : Break on Windows Message. Sintassi: BMSG window handle L begin-message
end-message
Bpint : Break on Interrupt. Funziona solo con le interruzioni trattate da IDT
(95/NT). Sintassi: BPINT int-number
Bpio: Si ferma quando c'e' un accesso in lettura o scrittura ad una porta I/O
con un certo indirizzio. Sintassi: BPIO port [R|W|RW] [EQ|NE|GT|LT|M
value] [c=count]
Bpm: Si ferma quando c'e' un accesso alla memoria in lettura (read), scrittura
(write), o esecuzione (execution). Sintassi: BPM[B|W|DW] address
[R|W|RW|X]
Bpx : Break on execution. Sintassi: BPX address/symbol [c=count]
[EQ|NE|GT|LT|M value] [c=count]
Bpr : Break on memory range. Sintassi: BPR start-address end-address
[R|W|RW|T|TW] [expression]
Bprw : Break on program / code segment. Sintassi: BPRW module-name|selector
[R|W|RW|T|TW] [expression]
3.1.2 Steppare attraverso il programma
Debuggare in se' vuol dire eseguite una istruzione alla volta di un programma
in modo da poter vedere come cambiano la memoria, i registri, i flags e le
variabili. I principali comandi per farlo sono:
P : Esegue una istruzzione e vede le CALL come una istruzzone sola. Shortcut:
il tasto F10.
P RET : Esegue il programma finche non trova un'istruzione RET. Shortcut: il
tasto F12.
T : Esegue una istruzzione. Shortcut: il tasto F8.
3.1.3 Visualizzare informazioni sul sistema
Addr : Visualizza o cambia ad un contesto di indirizzi.
Class : Visualizza informazioni sui Windows Classes.
CPU : Visualizza i registri della CPU.
Exp : Carica/Visualizza i simboli esportati da un DLL.
GDT : Visualizza la Global Descriptor Table.
Heap : Visualizza i Global Heap di Windows.
Heap32 : Visualizza/attraversa i Global Heap di Windows.
HWND : Visualizza informazioni sui Windows Handles.
IDT : Visualizza la Interrupt Descriptor Table.
LDT : Visualizza la Local Descriptor Table.
LHeap : Visualizza i Windows Local Heap.
Map32 : Visualizza una mappa di memoria di tutti i moduli a 32bit caricati
in memoria.
MapV86 : Visualizza la mappa di memoria DOS memory della macchina virtuale
corrente.
Mod : Mostra la Windows Module List.
Page : Mostra le Page Table information.
Proc : Visualizza informazioni su un processo.
Stack : Visualizza una call stack.
Sym : Imposta o visualizza un Symbol.
Task : Mostra Windows Task List.
VCall : Mostra i nome e indirizzi di una routine VxD chiamabile con CALL.
VM : Visualizza informazioni sulle macchine virtuali.
VXD : Visualizza la mappa Windows VXD.
.VMM : Chiama il VMM Debug Informational Services menu.
.VPICD : Chiama il VPICD Debug Information Menu.
.VXDLDR : Mostra informazioni VXD.
WMSG : Visualizza i nomi e numeri dei messaggi Windows.
Inoltre, cosa molto importante, che stavo quasi per dimenticarmi, c'e' da dire
che nel SoftIce ci entrate con CTRL-D. Figo, no?
4. Iniziamo a crackare
Benebenebene... adesso che vi siete sorbiti tutte le cazzate qui sopra citate,
sapete come funziona il SoftIce e anche un po' di asm, contenti? Ok. Possiamo
iniziare con una cosa molto semplice e anche abbastanza inutile: la password
dello Screen Saver di Windows. E' l'unica cosa che penso abbiano tutti nel
loro Windows, cosi' evitate di andare a scaricare prog. che magari neanche
volete, solo per provare ad crackarlo. Ok? Sono un bravo ragazzo o no?
Iniziamo. Caricate il SoftIce, andate nel pannello di controllo, sceglietevi
uno screen saver e impostate una password... una a caso, tanto ora la rendiamo
inutile. Aspettate che lo SS (polizia militare tedesca) entri in funzione,
inserite una pw sbagliata e entrate nel Softice con CTRL-D. Ok. Ora siamo nel
Debugger. Adesso c'e' un problema... dobbiamo intercettare una funzione di
Windows. Cioe' quella che legga il testo da noi inserito nella casella di
testo della pw. Per fare questo innanzitutto dobbiamo sapere in che programma
e' la finestrella con la casella di testo interessata. Digitiamo TASK e il
SoftIce ci da una lista di programmi al momento attivi. Uno di questi e' (nel
mio caso) "oggetti volanti". Io ho scelto questo ss, ma immagino che il
vostro sia un'altro. Comunque, se non siete proprio cretini, nella lista di
prog. che vi da, troverete quello dello ss. Fatto questo, c'e' da fare una
piccola nota sul funzionamento di Windows. Qualsiasi cosa vedete sullo
schermo (un pulsante di Ok, la X nella parte destra-alta delle finestrelle di
Win, una casella di testo, ...) e' un handle di Windows. Sono chiamati cosi'.
La casella di testo nella quale noi abbiamo inserito la pw e' un handle. Nel
SoftIce e' possibile visualizzare tutti gli handle attivi al momento con il
comando HWND. Digitandolo, vedrete una lista di tutti gli hwnd attivi di
tutti i programmi. Di ogni hwnd il SoftIce da informazioni sull'numero del
hwnd, il programma nel quale si trova e il suo nome. Noi siamo a caccia di
un hwnd chiamato EDIT, visto che e' una casella di testo. Nella lista
troverete proprio l'edit che vi serve (il prog. "Oggetti Volanti" ne
visualizza uno solo).
Ora dobbiamo solo intercettare la funzione di Windows che legge il testo
contenuto in quella casella e ci ritroveremo esattamente nella routine da
fottere. Per fare questo settiamo un bp con il seguente comando: BMSG num_hwnd
WM_GETTEXT per num_hwnd, ovviamente, dovrete inserire il numero del handle che
vi da SoftIce (il primo a sinistra). WM_GETTEXT invece e' un messaggio di
Windows che legge un testo da una casella di testo.
Dopo che avete inserito il comando nella righa di comando del SoftIce, date
l'invio e tornate allo Screen Saver con CTRL-D. Cliccate su Ok per confermare
la vostra pw sbagliata e... magia! Riappare il SoftIce e vi trovate nella
routine BOZOSLIVEHERE (un piccolo scherzo della MicroSoft, credo... cretini...)
di USER. Pero', come potete vedere nella parte bassa della finestra del codice,
non siamo nel programma da noi desiderato (quello dello Screen Saver) ma in
USER, del quale non ce ne frega un cazzo, e quindi steppiamo attraverso il
codice, premendo F12, fino ad arrivare a Kernel.Alloc. Ogni volta che
arrivate a Kernel.Alloc, sappiate che dopo il prossimon F12 che premete siete
nel vostro programma. Premiamo un'altra volta l'F12 e ci troviamo nel bel
mezzo di PASSWORD!.text. Cosi' ora sappiamo anche che lo Screen Saver usa
l'estensione del Pannello di Controllo PASSWORD.CPL per gestire le password.
Iniziate gia' un po' a sentirvi dei fighi? Andiamo avanti. Guardatevi bene il
codice:
0137:7C45428F CALL [7C4582BC] ......................... La call dalla quale
siamo appena usciti
0137:7C454295 TEST EDI, EDI ................................ Controlla cosa
c'e' in EDI
0137:7C454297 JNZ 7C4542B1 ............................... Un JMP condizionale
0137:7C454299 LEA EAX, [EBP-04]
0137:7C45429C LEA ECX, [EBP-14]
0137:7C45429F PUSH EAX
0137:7C4542A0 PUSH ECX
0137:7C4542A1 CALL 7C454536 ............................... Chiama una Routine
0137:7C4542A6 TEST EAX, EAX ............................... Controlla cosa
c'e' in EAX
0137:7C4542A8 JZ 7C4542DE ..................................... Un'altro JMP
condizionale
0137:7C4542AA MOV EAX,00000001
0137:7C4542AF JMP 7C454322 .................................. Con questo JMPi
sicuramente...
Ok... Ci sono due CALL, e subito dopo le rispettive CALL, i rispettivi JMP.
A me viene da pensare (a me perche' di programmi ne ho visti tanti...) che una
controlla la lunghezza della pw e l'altra i caratteri. Ma ovviamente questo
non si puo' sapere... e' solo un'intuizione che viene dopo kili di programmi
sorbiti con il passare degli anni. Ma tanto a noi non ci frega di cosa fanno
le call. Steppando attraverso il codice vediamo che almeno uno dei due jump
ci fa saltare, quindi probabilmente, la parte del programma che ci rida'
accesso al Desktop si trova all'indirizzo 0137:7C4542AF (l'ultimo JMP).
Quindi, arrivati al primo JMP (JNZ 7C4542B1) noi non vogliamo saltare:
premiamo F10 fino a quell'istruzione e mettiamo il flag Z a 0. Andiamo avanti
con F10 fino al secondo JMP (JZ 7C4542DE) e settiamo il flag Z a 1 per non
saltare neanche questa volta. Ok. Fatto. Ora possiamo tornare al programma
premendo CTRL-D. Lo Screen Saver e' sparito e noi abbiamo riguadagnato
l'accesso all'Desktop anche se abbiamo inserito la pw sbagliata.
Dite la verita'. Vi sentite dei grandi ora o mi sbaglio?
Ora forse non avrete capito perfettamente tutto quello che c'e' scritto qui'
sopra, ma vi assicuro che se seguite i passi nell'esempio, piano piano
capirete come fare a crackare anche altri programmi. Ora vi chiederete:
"cosa sara' mai quel WM_GETTEXT???". E' un message brake di Windows. Nel senso
che c'e' una parte in Windows che usa questo simbolo per leggere il testo da
voi inserito nella casella di testo. Comunque ora ve ne do anche altri, per i
pulsanti di Ok e altre cose.
5. BreakPoints utili
Per prima cosa, per poter usare i seguenti bp (WM_GETTEXT compreso) dovete
editare il file WINICE.DAT nella directory di SoftIce e includere gli exports
di
gdi32.dll
kernel32.dll
user32.dll
questi tre per ora dovrebbero bastare, comunque sappiate che potete aggiungere
anche gli altri dll e exe che vi interessano.
I bp che seguono sono tutti da settare con Bpx nel SoftIce.
5.1 Lettura e scrittura sui file
Questi che seguono sono gli API calls di Windows piu' comuni.
Sono CALL generiche di accesso a file (di solito in binario) in lettura e
scrittura.
ReadFile
WriteFile
L'accesso ai file avviene con le seguenti routine
SetFilePointer
GetSytemDirectory
GetSytemDirectoryA
Per leggere e scrivere sui file INI le CALL da intercettare sono le seguenti:
per applicazioni a 16bit
GetPrivateProfileString
GetPrivatProfileInt
WritePrivateProfileString
WritePrivatProfileInt
per applicazioni a 32bit
GetPrivateProfileStringA
GetPrivatProfileIntA
WritePrivateProfileStringA
WritePrivatProfileIntA
5.2 Interrupt
Accesso ad un file
bpint 21 - con ah = 3d
bpint 2f - con ah = 01
5.3 Il Registry
Crea o elimina una key nel registry (quelle con A alla fine sono per applicazioni a 32 bit)
RegCreateKey
RegDeleteKey
RegCreateKeyA
RegDeleteKeyA
Leggi un valore da una Key correntemente aperta nel registry
RegQueryValue
RegQueryValueA
Apre o chiude una Key nel registry
RegCloseKey
RegOpenKey
RegCloseKeyA
RegOpenKeyA
5.4 Finestre di dialogo
Legge testo o un numero da una finestra di dialogo edit (quelle con A alla
fine sono per applicazioni a 32 bit)
GetWindowText
GetDlgItemText
GetWindowTextA
GetDlgItemTextA
GetDlgItemInt
Quando si apre una finestrella di messaggio, di solito una di quelle che dice
"registrazione non valida" o qualcosa del genere, dovete intercettare queste
CALLs
MessageBox
MessageBoxA
MessageBoxExA
MessageBeep
5.5 Data e ora
Queste sono particolarmente utili per i programmi che non funzionano piu' dopo
un paio di giorni
GetSystemTime
GetLocalTime
SytemTimeToFileTime
5.6 Creazione di una finestra
CreateWindow
CreateWindowExA
ShowWindow
bitblt (e' una roba simile a hmemcpy... sposta e muove memoria in giro)
5.7 CD-ROM
Molto utili per i check del CD-ROM.
GetDriveType (se EAX e' 5, allora e' un CD-ROM check)
GetDriveTypeA (per le app. a 32 bit)
Eseguite le CALL, in EAX c'e' un valore, ed e' da interpretare nel seguente
modo:
0 ............. Drive cannot be determinated
1 ............. root dir does not exist
2 ............. DriveRemoveable
3 ............. A fixed disk (HD)
4 ............. Remote drive (NetWork)
5 ............. Cd-Rom drive
6 ............. RamDisk
5.8 Altri BreakPoints
Questi li potete usare quando il resto non funziona... sono dei bp, che, in
generale, funzionano
BozosLiveHere (ve lo ricordate?)
HMemCpy (quello citato sopra. sposta variabili, di solito stringhe, in giro
per la memoria)
GlobalGetAtomName
5.8 I messaggi
Questi sono da settare con BMSG nel SoftIce (non con BPX).
WM_GETTEXT (un handle di testo)
WM_COMMAND (quando premi un pulsante di Ok)
Penso che sappiate come usarli questi... ve lo ho spiegato sopra... comunque
lo ripeto:
BMSG hwnd_num WM_COMMAND, per esempio. Per hwnd_num, ovviamente, dovete
inserire il numero dell'handle trovato con il comando HWND del SoftIce.
Questi sono i bp piu' utili che potete settare. Non dovete impararli a
memoria... dopo un po' li saprete per i cazzi vostri. Ma sarebbe bene che ve
li leggiate, cosi' sapete che esistono e sapete che potete usarli quando vi
servono.
6. Il patch
Cos'e' un patch? Semplicemente un programma che faccia da solo il cracking di
un prog. Nel esempio dello Screen Saver per esempio, il programma deve
cambiare in NOP (No operation) i due jump condizionali. Il risultato finale
sara':
0137:7C45428F CALL [7C4582BC] ......................... La call dalla quale
siamo appena usciti
0137:7C454295 TEST EDI, EDI ................................ Controlla cosa
c'e' in EDI
0137:7C454297 NOP .......................... Niente piu' jmp condizionale, ma
un nop (non dobbiamo saltare).
0137:7C454298 NOP ......................I NOP sono due perche' i byte che
occupa l'istruzione che c'era prima
erano il doppio di un NOP
0137:7C454299 LEA EAX, [EBP-04]
0137:7C45429C LEA ECX, [EBP-14]
0137:7C45429F PUSH EAX
0137:7C4542A0 PUSH ECX
0137:7C4542A1 CALL 7C454536 ............................... Chiama una Routine
0137:7C4542A6 TEST EAX, EAX ............................... Controlla cosa
c'e' in EAX
0137:7C4542A8 NOP ..........................................Stesso discorso
di sopra
0137:7C4542A9 NOP
0137:7C4542AA MOV EAX,00000001
0137:7C4542AF JMP 7C454322 ..................... Il jmp che ci fa saltare alla
routine di sbloccaggio
Questo e' il programma come dovrebbe essere dopo il crack, quando lo
disassemblate. Chiaro? Ora... per cambiare il jmp con un NOP, non dobbiamo
fare altro che prendere nota dei byte originai, cioe' quelli con i jmp come
erano all'inizio, poi cambiarli con i nop, e prendere nota del cambiamento
dei byte. Per vedere l'istruzione disassemblata, in SoftIce, si usa il
comando CODE ON, che vicino ad ogni istruzione, vi mostra i byte che le
rappresentano. Facile no? Ho scritto, solo per voi, un patch universale in
Basic (linguaggio del cazzo ma veloce, intuitivo, e soprattutto facile, per
voi che non ci capite una sega) che vi riporto qui sotto, cosi' lo compilate
diversamente ogni volta che crackate un programma. Per usarlo dovete
conoscere l'offset dei byte da cambiare, che potete trovare con un Hex editor,
i byte del file originale e quelli dopo il crackaggio. Ok. In oltre vi sarei
molto grato se lasciaste le righe in cui ci sono i crediti (S2)... o se
proprio non volete, almeno mettete un "tnx to S2" o qualcosa del genere...
vene sarei grati. Let's patch!
'---VARIABLE DEFINITIONS---
'---File Name of the file to crack---
FileName$ = "GOLDWAVE.EXE"
'---Number of bytes to change---
NBC = 6
'---15, 133, 156... are the original bytes of the file (in decimal!!!)---
OB$ = CHR$(15) + CHR$(133) + CHR$(156) + CHR$(0) + CHR$(0) + CHR$(0)
'---233, 157, 0... are the changed bytes of the file (in decimal!!!)---
CB$ = CHR$(233) + CHR$(157) + CHR$(0) + CHR$(0) + CHR$(0) + CHR$(144)
'---The offset where the bytes to change are---
'---you can find 'em with a Hex editor---
'---the first byte of the file is 1---
OS = 147393
'---The file size in bytes---
FS = 946176
'---CREDIZ & INFO---
CLS
PRINT "Patch for Goldwave v3.24 written by S2"
PRINT ""
PRINT "This Patch allows you to enter ANY password"
PRINT "you like, and the program will register"
PRINT "itselve."
PRINT "If the file is already patched, it will return"
PRINT "to it's original state."
PRINT "Have fun!"
PRINT ""
DO: LOOP WHILE INKEY$ = ""
'---FILE CHECK & VERSION CHECK---
PRINT "Opening file "; FileName$; "..."
PRINT ""
ON ERROR GOTO OpenFileErr
OPEN FileName$ FOR INPUT AS #1
IF NOT LOF(1) = FS THEN
PRINT "The file has not the right size."
PRINT "Check if it is the correct version."
PRINT ""
END
END IF
CLOSE #1
ON ERROR GOTO 0
'---FILE PATCH & UNPATCH---
ON ERROR GOTO PatchFileErr
OPEN FileName$ FOR BINARY ACCESS READ WRITE AS #1
PRINT "Checking file..."
PRINT ""
Data$ = STRING$(NBC, " ")
GET #1, OS, Data$
IF Data$ = CB$ THEN
PRINT "File already patched."
PRINT "Back to it's original state..."
PRINT ""
PUT #1, OS, OB$
PRINT "Now the file is unpatched!"
ELSE
PRINT "File not patched."
PRINT "Let's patch..."
PRINT ""
PUT #1, OS, CB$
PRINT "Now the file is patched!"
PRINT "Registration for FREE now!"
END IF
END
OpenFileErr:
PRINT "There was an error while opening the file."
PRINT "run-time errorcode "; ERR
PRINT ""
END
PatchFileErr:
PRINT "There was an error while patching the file."
PRINT "run-time errorcode "; ERR
PRINT ""
END
Ho scritto i commenti in inglese per mettere il programma in Internet, ma
comunque non penso che ci voglia tanto a capire come funziona.
Quando volete creare un patch per un altro file, tutto quello che dovete
modificare e' contenuto nelle variabili all'inizio del programma. Li rielenco
in italiano con alcuni commenti per farvi capire meglio:
FileName$ = "GOLDWAVE.EXE"
In questo punto, al posto di GOLDWAVE.EXE inserite il nome del file da
crackare.
NBC = 6
6 e' il numero di byte da modificare. In questo caso 6.
OB$ = CHR$(15) + CHR$(133) + CHR$(156) + CHR$(0) + CHR$(0) + CHR$(0)
Al posto di 15, 133, 156... dovete inserire i byte originali del file che
volete crackare.
Se i byte sono di piu' o di meno di 6, semplicemente aggiungete o togliete
i CHR$() che sono in meno o di troppo.
CB$ = CHR$(233) + CHR$(157) + CHR$(0) + CHR$(0) + CHR$(0) + CHR$(144)
Stesso discorso di sopra, solamente, questa volta, i byte inseriti tra le
parentesi sono quelli che volete siano scritti.
OS = 147393
L'offset dei byte da cambiare. Come trovarlo? Se come Hex editor usate
l'Hexworks, per esempio, tutto quello che dovete fare e' andare a ricercare
(nel Hexworks, ovviamente) dove si trovano i byte che volete modificare.
Trovati quelli, sulla sinistra (o sulla barra di stato) troverete scritto
l'offset dei byte. Attenzione pero'! In Hexworks, il primo byte nel file e' 0,
mentre secondo il Basic, il primo byte nel file e' 1. Quindi, all'offset che
troverete in Hexworks dovrete aggiungere 1. Abbastanza ovvio, no?
FS = 946176
E' la grandezza del file in byte. Se non sapete come trovare questa da soli
siete degli incompetenti, e aggiungerei anche imbecilli :-))))
Notate che se volete fare un patch per la password dello screen saver,
dovrete cambiare un po' il codice, perche' i byte da cambiare non sono in fila,
ma iniziano a due indirizzi diversi, quindi due offset diversi. Per cui, ci
sara' da aggiungere una variabile OS1$, per il secondo offset, OB1$, per i
byte originali nella seconda posizione e CB1$, per i byte cambiati nella
seconda posizione. E poi dovrete aggiungere il codice per il cambiamento dei
byte nella seconda posizione (al secondo offset). Chiaro no? No? Studiate il
basic, o scrivete il patch in un linguaggio che conoscete.
E questo e' quanto.
7. Conclusione
Bene raga. Ho finito. Penso che di tutta sta roba, se non sapevate veramente
un cazzo, abbiate capito molto poco, ma non vi preoccupate... se provate a
mettere in pratica ci riuscirete piano piano a crackare il vostro primo
shareware da soli... ci vuole solo un po' di esperienza... Da parte mia ho
cercato di darvi tutte le informazioni piu' utili che ho potuto trovare in
Internet, e di spiegarmi in maniera piu' o meno capibile. Spero che questo
manualetto vi serva e che vi ricordiate di S2 in futuro... Inoltre vorrei
ringraziare extasy- per avermi dato l'idea, anche se in modo implicito, di
scrivere una roba del genere... E ringraziamenti vanno anche alla fabbrichetta
di Plastica nella quale ho lavorato, per le sigarette che grazie a loro posso
permettermi.
---S2---
#UTILIZZO DI IDA Pro 3.8#
Autore: QueQuero
Salve a tutti, in questo tutorial cercherÚ di spiegarvi nel modo pi˘ chiaro possibile l'utilizzo del miglior dissassembler che che esiste, cioË: IDA Pro, il tutorial non Ë orientato ai NewBies NewBies perÚ possono provarci anche loro, questo tutorial Ë una beta version da essere ampliata, la versione nuova tra un po'di giorni buona lettura.
IDA Pro sta a significare: Intercative Disassembler Pro, infatti Ë verissimo che ida Ë interattivo, ma andiamo per gradini ed iniziamo. Scegliamo un file da disassemblare, possibilmente uno molto piccolo e magari per windows, clicchiamo su Idaw.exe, vediamo apparire la finestra del nostro amato programma, premiamo ok e scegliamo il file, a questo punto Ida aprir‡ una finestra con scritto in alto "Load File of New Format", nelle prime tre righe ci viene chiesto di scegliere il tipo di file che si vuole disassemblare, cioË se un eseguibile Windows (o che comunque usi il formato PE), un eseguibile DOS oppure un file binario, checkiamo la prima casella: Portable Esecutable, pi˘ in basso vediamo la scritta "Loading Segment", qui dovrete inserire l'entry point del programma, in genere Ë 0x1000, come di default, ma se siete incerti aprite il file col ProcDump e vedetelo, lasciamo quindi 0x1000, pi˘ in basso appare un altro campo "Loading offset", nel quale dovremmo inserire l'offset del primo byte dell'inizio del primo segmento, ma a noi non interessa infatti questa opzione va utilizzata solo se si vuole disassemblare un file binario, pi˘ in basso dobbiamo checkare altre caselle, per ora ve le enumero e poi ve le spiego:
Create segments
Load resources
Rename DLL entries
Manual load
Fill segment gaps
Make imports section
Don't align segments
Allora, Create segments Ë un'opzione utile per i file binari, infatti ci crea i vari segmenti, ma ciÚ non Ë necessario se si vuole disassemblare un eseguibile, Load resources invece carica le risorse dai file NE, neanche questa Ë necessaria se si disassembla un eseguibile con formato PE, Rename DLL entries Ë un'opzione che se non attivata permette a IDA di piazzare tra il disassemblato dei commenti ripetibili ad ogni funzione importata, Manual load non ci interessa nel caso dei file con formato PE, se perÚ il formato Ë diverso allora l'opzione puÚ essere attivata e IDA ci chieder‡ l'indirizzo per il caricamento di ogni oggetto del file, Fill segment gaps Ë lo stesso utile solo per formati diversi dal PE, se checkata IDA non fa altro che riempire tutti i "buchi" tra i vari segmenti, Make imports section Ë invece utile per i file in formato PE, se attivata dice a IDA di eliminare la sezione .idata dal file e di convertire tutte quante le definizioni in essa presenti come direttive esterne, la guida ci dice che qualche volta nella sezione .idata possiamo trovare delle informazioni aggiuntive e dobbiamo quindi disabilitare questa opzione, Don't align segments, come dice la parola stessa, se checkiamo questa opzione non permettiamo il riallineamento dei segmenti, ma non serve per i file con formato PE. A questo punto ci troviamo davanti anche due pulsanti uno con scritto "Processor Type", a differenza di ciÚ che potreste credere qui non dovrete specificare il tipo di processore che avete ma il tipo di processore per il quale Ë stato scritto il programma, di default Ë 80386 ed Ë giusto che sia cosÏ, quindi potete lasciare inalterata questa opzione, l'altro pulsante reca il testo "Analisys options", cliccate anche qui sopra e vedrete altri due pulsanti e due opzioni, esaminiamo prima queste due:
Analysis enabled: se la casella Ë checkata allora IDA analizzer‡ il programma mentre noi non stiamo agendo sul disassemblato, lasciando comunque la priorit‡ alle nostre richieste, questa opzione deve essere abilitata, se non lo fosse potremmo incorrere in problemi di varia natura.
Indicator enabled: Ë quel contatore che si trova in alto a destra e che reca le scritte:
AU:__idle__ AutoAnalysis is finished.
AU:disable AutoAnalysis is disabled.
FL:< address> execution flow is being traced
PR:< address> function is being created
AC:< address> the code analysis goes through the noted address
LL:< number> a signature file is being loaded
L1:< address> the first pass of FLIRT
L2:< address> the second pass of FLIRT
L3:< address> the third pass of FLIRT
FI:< address> the final pass of autoanalysis
??:< address> the noted address becomes unexplored
@:< number> indication of various activity
a seconda di cosasta facendo IDA...» meglio lasciarlo abilitato. Poi abbiamo i due pulsanti, clickiamo sul primo "Kernel analyser options" e vediamo apparirci davanti una morra di opzioncine eccole:
Create offsets and segments using fixup info
Mark typical code sequences as code
Delete instructions with no xrefs
Trace execution flow
Create functions if call is present
Analyse and create all xrefs
Use flirt signatures
Create function if data xref data->code32 exists
Rename jump functions as j_...
Rename empty functions as nullsub_...
Create stack variables
Trace stack pointer
Create ascii string if data xref exists
Convert 32bit instruction operand to offset
Create offset if data xref to seg32 exists
Make final analysis pass
Locate and create jump tables
Coagulate data segments in the final pass
Dhe hi hi, ora ci divertiamo, tralascerei volentieri la spiegazione di tutte queste funzioni ma, come ogni guida che si rispetti devo analizzare il programma da cima a fondo....Chiss‡ forse un giorno qualcuno domander‡ a qualcun altro "Hei dove imparo ad usare IDA?" e quel qualcun altro dir‡ "Prova sul sito di Quequero, ha scritto un'ottima guida"....Dhe hi hi lascietemi sognare ;))))))))
Riprendendo il filo del discorso ecco la spiegazione:
Create offsets and segments using fixup info: IDA per rendere pi˘ piacevole il disassemblato fa uso delle informazioni di rilocazione e converte tutti gli oggetti con le info di rilocazione in word o doubleword e se un'istruzione ha assegnate delle informazioni di rilocazione IDA converte i dati ad un offset oppure ad un segmento, per esempio poniamo di avere nel nostro codice sorgente qualcosa di questo genere:
.386
-----snip snip-----
.data
qualcosa dd 000F3785h
.code
start:
mov eax, offset qualcosa
end start
Se disassembliamo il file con W32Dasm otteniamo qualcosa come:
mov eax, 0040200
Se invece lo disassemblassimo con IDA e con l'opzione di cui sopra attivata allora otterremo qualcosa come questa:
mov eax, offset qualcosa
Capitoooooo!!!! ;)
Mark typical code sequences as code: a detta dell'autore IDA riconosce alcune sequenze tipiche di codice (esempio: push bp e mov bp, sp) e durante il caricamento se ne trova qualcuna la converte in istruzione
Delete instructions with no xrefs: permette a IDA di non definire le istruzioni non referenziate, in pratica se noi eseguiamo il comando "undefine" (che vi spiegherÚ in seguito) all'inizio di una funzione il programma canceller‡ tutte le istruzioni che hanno perso contatto con l'istruzione appena "undefinita"...vi si chiarir‡ tutto pi˘ tardi non preocccupatevi ;)
Trace execution flow: permette a IDA di convertire tutte le referenze a dei byte in istruzioni
Create functions if call is present: fa si che IDA crei una funzione se nel codice Ë presente una chiamata, in pratica se nel codice troviamo una chiamata di quesro genere:
call routine
allora IDA creer‡ una funzione all'etichetta "routine", questa opzione cerca di "staccare" le chiamate dal resto del codice per permetterci un approccio visuale, ma anche tecnico, pi˘ semplice
Analyse and create all xrefs: questa Ë l'opzione che fa la differenza tra IDA ed il W32dasm, senza di essa il nostro programma non analizzerebbe il file e non creerebbe tutte le xreferences e le altre chicche caratteristiche di IDA.
Use flirt signatures: permette l'uso della tecnologia FLIRT, non preoccupatevi non vedrete IDA e IDO fare gli sporcaccioni sul monitor ;))))))
Create function if data xref data->code32 exists: se IDA incontra un riferimento ad un dato da un SEGMENTO DATI ad un SEGMENTO CODICE a 32bit controlla la presenza di istruzioni disassemblabili utili, se trova un'istruzione la marca (manco a dirlo ;) come un'istruzione e crea lÏ una funzione
Rename jump functions as j_...: funzione di utilit‡ elevatissima, questa opzione permette ADDIRITTURA di cambiare una istruzione come:
jmp dovevuoi
in:
j_dovevuoi
vi rendete conto...Ma dico ve ne rendete conto di quanto la presenza di questa opzione possa permettere anche a mio cugino di 10 anni di diventare cracker...Mio dio che genio l'autore del programma ;))))))))))))))))) scherzi a parte lui Ë stato davvero un genio
Rename empty functions as nullsub_...: permette a IDA di rinominare le funzioni vuote, cioË quelle contenenti solo l'istruzione "ret" come nullsub_1...nullsub_2 ecc...Anche questa funzione deve essere stata pensata per decenni ;))))
Create stack variables: fa si che IDA crei automaticamente le variabili dello stack ed i parametri delle funzioni
Trace stack pointer: con questa opzione attivata IDA traccer‡ il valore dello Stack Pointer (SP)
Create ascii string if data xref exists: se IDA incontra una referenza ad un oggetto non definito allora cerca per la presenza di una stringa ASCII, se la lunghezza della stringa Ë abbastanza allora IDA crea guarda caso una stringa ASCII ;)
Convert 32bit instruction operand to offset: funzia solo su segmenti a 32bit, se un'istruzione ha un operando che puÚ essere convertito ad un'utile esepressione allora la converte in offset, il valore dell'operando deve perÚ essere pi˘ grande di 0x10000
Create offset if data xref to seg32 exists: se nel programma IDA incontra un riferimento ad un segmento a 32bit ed il file contiene un valore che puÚ essere rappresentato come un offset allora IDA lo converte.....ad un offset
Make final analysis pass: questa opzione permette a IDA di coagulare tutti i byte non esplorati convertendoli da dati ad istruzioni
Locate and create jump tables: questa opzione permette a IDA di ipotizzare la dimensione e l'indirizzo di una "jump table"
Coagulate data segments in the final pass: questa opzione torna utile solo se Ë attivata anche l'opzione "Make final analysis pass" e permette a IDA di convertire i byte insplorati ad array di dati nel segmento dati. Se disabilitiamo questa opzione IDA coaguler‡ solo il segmento codice.
Ottimo, abbiamo finito questo pulsante, lasciamo le impostazioni di default, o se volete disabilitate quella che converte i jump xxxx in j_xxxx che spesso Ë pi˘ scomoda che utile e premiamo esc per entrare nei meandri del pulsante "Processor specific analysis options", dopo il click ci si presentano solo 4 opzioni e spieghiamole come solito una ad una:
Convert immediate operand of "push" to offset
Convert db 90h after "jmp" to "nop"
Convert immediate operand of "mov reg,..." to offset
Convert immediate operand of "mov memory,..." to offset
Convert immediate operand of "push" to offset: se ida vede una sequenza tipo questa: push seg, push gino, prover‡ a convertire gino in un offset
Convert db 90h after "jmp" to "nop": se dopo un jump troviamo "db 90h" invece di lasciarlo com'Ë lo trasforma in nop (No operation)
Convert immediate operand of "mov reg,..." to offset: anche qui se ida trova qualcosa come: mov ax, 258h, mov sp, es allora convertir‡ 258h in un offset
Convert immediate operand of "mov memory,..." to offset: ancora se IDA trova istruzioni come: mov ax, 895h mov X, seg (X Ë un riferimento ad una memoria) allora converte 895h in offset
Ottimo premiamo esc due volte e diamo un'occhiata al pannello, l'unica cosa che c'Ë rimasta Ë quel campo indicato da dll directory, lÏ dobbiamo inserire la directory nella IDA andr‡ a guardare per trovare i riferimenti alle varie DLL, il problema Ë che ida non cerca le DLL bensÏ i file .ids, la directory nel mio caso Ë: c:\ida\ids\Win se usate windows altrimenti cambier‡ solo l'ultima cartella.
Siamo pronti a questo punto per iniziare il disassembling del file, sceglietene uno piccolo....molto piccolo consiglio 8-15 kb che ci vogliono pochi secondi, lo dico per coloro che IDA la stanno conoscendo solo ora, questo programma Ë molto ma molto pi˘ lento del W32dasm vi garantisco perÚ che tutto il tempo in pi˘ che perdete nel disassembling lo riguadagnate dopo, quindi premete "OK" ed aspettate....Allora, appena il segnalatore in alto a destra recher‡ la scritta "ready" vorr‡ dire che IDA avr‡ finito, a quel punto avrete davanti come prima cosa una pagina come questa:
CODE:00401000 ; File Name : C:\esempio.exe
CODE:00401000 ; Format : Portable executable (PE)
CODE:00401000 ; Section 1. (virtual address 00001000)
CODE:00401000 ; Virtual size : 00001000 ( 4096.)
CODE:00401000 ; Section size in file : 00000400 ( 1024.)
CODE:00401000 ; Offset to raw data for section: 00000600
CODE:00401000 ; Flags 60000020: Text Executable Readable
CODE:00401000 ; Alignment : 16 bytes ?
CODE:00401000 p386n
CODE:00401000 model flat
CODE:00401000 ; ----------------------------------------------------------------
CODE:00401000 ; Segment type: Pure code
CODE:00401000 CODE segment para public 'CODE' use32
CODE:00401000 assume cs:CODE
CODE:00401000 assume es:nothing, ss:nothing, ds:nothing, fs:nothing, gs:nothing
CODE:00401000 ;____________________________________________
CODE:00401000 ; S u b r o u t i n e
CODE:00401000 public start
CODE:00401000 start proc near
In questa prima parte abbiamo tutte le intestazioni iniziali del file, quelle in pratica che vedremmo se avessimo il sorgente e soprattutto IDA ci informa del tipo di file appena disassemblato nel caso non lo avessimo saputo prima. Vorrei passare perÚ ad un esempio pratico, l'autore ci dice che possiamo utilizzare IDA per tre scopi:
1) Imparare un trucco di programmazione in un programma interessante
2) Patchare il file se non si ha il sorgente
3) Ottenere un codice compilabile dal disassemblato
Noi faremo tutte e tre le cose, iniziamo.
Quello che vi propongo ora Ë il codice assembly di un programmillo che genera una messagebox a seconda del valore che assume eax, ecco il codice, capirete con il commento:
---------------------------------------------------8< -------------------------------------------------------
; Per compilare il sorgente Ë necessario possedere TASM 5.0 reperibile sul
; mio sito: http://quequero.cjb.net nella sezione tools
;
; Ecco le istruzioni di compilazione, basta scriverle in un prompt di DOS
; tasm32 /t -ml -m5 -q esempio
; tlink32 -Tpe -aa -x -c esempio ,,, import32
.386p
.model flat, stdCALL
extrn MessageBoxA:Proc ; definiamo le API necessarie
extrn ExitProcess:Proc
include windows.inc
.data
Caption db 'Esempio - - Coded by Quequero',0
Messaggio db 'Il registro EAX ha assunto un valore inferiore di 1.771.590.911',0
Random1 dd 12553 ; valori casuali utilizzati nell'algoritmo
Random2 dd 2212 ; di Lehmer
null equ 0
.code
start:
xor eax, eax ; Azzeriamo EAX
mov ecx, 01ffffffh ; Queste due righe servono a creare un timer, l'istruzione
wait: loop wait ; "loop" decrisa ogni volta ECX fino a che contiene zero, il
; loop in questione fa comparire il messagebox dopo circa
; un secondo dall'avvio del programma
casuale: mov eax, Random1 ; Algoritmo di Lehmer per la generazione di numeri
mul Random2 ; casuali (anche se dovremmo parlare di pseudo-casualit‡)
inc eax
mov Random1, eax ; Fine algoritmo
cmp Random1, 699854ffh ; Confronta Random1 con 1.771.590.911 (699854ffh)
jae casuale ; Se Random1 contiene un valore maggiore o uguale a quello ; stabilito prima ripeti l'algoritmo altrimenti continua sotto
push MB_OK OR MB_ICONQUESTION ; Genera una messagebox con un pulsante di ok,
push offset Caption ; l'icona della "i" di informazione ed il testo
push offset Messaggio ; contenuto nelle stringhe "Caption" e "Messaggio"
push null
call MessageBoxA
call ExitProcess ; Esci dal programma
end start
---------------------------------------------------8< -------------------------------------------------------
come potete vedere il programma setta un timer ad un secondo e poi da il via alla generazione di un numero pseudo-casuale tramite l'algoritmo di Lehmer, il timer all'inizio Ë dovuto al fatto che la CPU impiega un tempo infinitesimale a generare tanti numeri affinchË uno sia minore del valore da noi proposto, in questo modo ritardiamo il sorgere della messagebox.
Supponiamo di essere a conoscenza della presenza dell'algoritmo di Lehmer in questo programma, questo algoritmo ci serve assolutamente ma non sappiamo dove reperirlo, cosa facciamo allora? Ovvio! Disassembliamo il programma e cerchiamo di ritrovarcelo l‡ in mezzo, apriamo IDA e vediamo cosa ci racconta:
CODE:00401000 ; File Name : C:\tasm\prog\wind.EXE
CODE:00401000 ; Format : Portable executable (PE)
CODE:00401000 ; Section 1. (virtual address 00001000)
CODE:00401000 ; Virtual size : 00001000 ( 4096.)
CODE:00401000 ; Section size in file : 00000200 ( 512.)
CODE:00401000 ; Offset to raw data for section: 00000600
CODE:00401000 ; Flags 60000020: Text Executable Readable
CODE:00401000 ; Alignment : 16 bytes ?
CODE:00401000 p386n
CODE:00401000 model flat
CODE:00401000 ; ----------------------------------------------------------------
CODE:00401000 ; Segment type: Pure code
CODE:00401000 CODE segment para public 'CODE' use32
CODE:00401000 assume cs:CODE
CODE:00401000 assume es:nothing, ss:nothing, ds:nothing, fs:nothing, gs:nothing
CODE:00401000 ; ________________________________________________________________
CODE:00401000 ; S u b r o u t i n e
CODE:00401000 33 C0 public start
CODE:00401000 start proc near
CODE:00401000 xor eax, eax
CODE:00401002 B9 FF FF FF 01 mov ecx, 1FFFFFFh
CODE:00401007 CODE_401007: ; CODE XREF: start+7_j
CODE:00401007 E2 FE loop CODE_401007
CODE:00401009 CODE_401009: ; CODE XREF: start+24_j
CODE:00401009 A1 5E 20 40 00 mov eax, ds:DATA_40205E
CODE:0040100E F7 25 62 20 40 00 mul ds:DATA_402062
CODE:00401014 40 inc eax
CODE:00401015 A3 5E 20 40 00 mov ds:DATA_40205E, eax
CODE:0040101A 81 3D 5E 20 40 00+cmp ds:DATA_40205E, 699854FFh
CODE:00401024 73 E3 jnb short CODE_401009
CODE:00401026 6A 20 push 20h
CODE:00401028 68 00 20 40 00 push offset str->Esempio--CodedB
CODE:0040102D 68 1E 20 40 00 push offset str->IlRegistroEaxHa
CODE:00401032 6A 00 push 0
CODE:00401034 E8 05 00 00 00 call j_MessageBoxA
CODE:00401039 E8 06 00 00 00 call j_ExitProcess
CODE:00401039 start endp
CODE:0040103E ; ________________________________________________________________
CODE:0040103E ; S u b r o u t i n e
CODE:0040103E j_MessageBoxA proc near ; CODE XREF: start+34_p
CODE:0040103E FF 25 4C 30 40 00 jmp ds:MessageBoxA
CODE:0040103E j_MessageBoxA endp
CODE:00401044 ; ________________________________________________________________
CODE:00401044 ; S u b r o u t i n e
CODE:00401044 j_ExitProcess proc near ; CODE XREF: start+39_p
CODE:00401044 FF 25 54 30 40 00 jmp ds:ExitProcess
CODE:00401044 j_ExitProcess endp
CODE:0040104A 00 00 00 00 00 00+align 200h
CODE:00401200 ?? ?? ?? ?? ?? ??+db 0E00h dup(?)
CODE:00401200 ?? ?? ?? ?? ?? ??+CODE ends
DATA:00402000 ; Section 2. (virtual address 00002000)
DATA:00402000 ; Virtual size : 00001000 ( 4096.)
DATA:00402000 ; Section size in file : 00000200 ( 512.)
DATA:00402000 ; Offset to raw data for section: 00000800
DATA:00402000 ; Flags C0000040: Data Readable Writable
DATA:00402000 ; Alignment : 16 bytes ?
DATA:00402000 ; ----------------------------------------------------------------
DATA:00402000 ; Segment type: Pure data
¶DATA:00402000 DATA segment para public 'DATA' use32
¶DATA:00402000 assume cs:DATA
¶DATA:00402000 45 73 65 6D 70 69+str->Esempio--CodedB db 'Esempio - - Coded by Quequero',0
¶DATA:00402000 6F 20 2D 20 2D 20+ ; DATA XREF: start+28_o
¶DATA:0040201E 49 6C 20 72 65 67+str->IlRegistroEaxHa db 'Il registro EAX ha assunto un valore infe
¶DATA:0040201E 69 73 74 72 6F 20+ ; DATA XREF: start+2D_o
¶DATA:0040205E*09 31 00 00 DATA_40205E dd 3109h ; DATA XREF: start+9_r
¶DATA:0040205E* ; start+15_w
¶DATA:0040205E* ; start+1A_r
¶DATA:00402062 A4 08 00 00 DATA_402062 dd 8A4h ; DATA XREF: start+E_r
¶DATA:00402066 00 00 00 00 00 00+align 1000h
¶DATA:00402066 00 00 00 00 00 00+DATA ends
¶.idata:0040304C ;
¶.idata:0040304C ; Imports from USER32.dll
¶.idata:0040304C ;
¶.idata:0040304C ; Section 3. (virtual address 00003000)
¶.idata:0040304C ; Virtual size : 00001000 ( 4096.)
¶.idata:0040304C ; Section size in file : 00000200 ( 512.)
¶.idata:0040304C ; Offset to raw data for section: 00000A00
¶.idata:0040304C ; Flags C0000040: Data Readable Writable
¶.idata:0040304C ; Alignment : 16 bytes ?
¶.idata:0040304C ; --------------------------------------------------------------
¶.idata:0040304C ; Segment type: Externs
¶.idata:0040304C ; _idata
¶.idata:0040304C ?? ?? ?? ?? extrn MessageBoxA:dword ; DATA XREF: j_MessageBoxA_r
¶.idata:00403050
¶.idata:00403054 ;
¶.idata:00403054 ; Imports from KERNEL32.dll
¶.idata:00403054 ;
.idata:00403054 ?? ?? ?? ?? extrn ExitProcess:dword ; DATA XREF: j_ExitProcess_r
.idata:00403058 00 00 00 00 end start
Come potete notare il codice Ë di difficile interpretazione, non per la difficolt‡ ma per il casino di numeri, per diminuire il bordello possiamo fare una cosa cioË: sappiamo che in un programma salvo eccezione il codice che ci interessa si trova nelle sezioni CODE (nel caso sia stato compilato con un compilatore Borland) e .text (se Ë stato compilato con qualcos'altro), come potete ben vedere, di lato al virtual address c'Ë il nome della sezione ".idata.00403054" cosÏ facendo potremmo tagliar via una buona parte di codice "futile", ma perchË farlo a mano quando IDA ci mette a disposizione un'opzione molto utile? Bene usiamola, andate nel menu "View2 e cliccate su "Segments" e scegliete "CODE", doppioclickateci sopra e guradate un po' cosa abbiamo davanti?....
CODE:00401000 start proc near
CODE:00401000 xor eax, eax
CODE:00401002 mov ecx, 1FFFFFFh
CODE:00401007 CODE_401007: ; CODE XREF: start+7_j
CODE:00401007 loop CODE_401007
CODE:00401009 CODE_401009: ; CODE XREF: start+24_j
CODE:00401009 mov eax, ds:DATA_40205E
CODE:0040100E mul ds:DATA_402062
CODE:00401014 inc eax
CODE:00401015 mov ds:DATA_40205E, eax
CODE:0040101A cmp ds:DATA_40205E, 699854FFh
CODE:00401024 jnb short CODE_401009
CODE:00401026 push 20h
CODE:00401028 push offset str->Esempio--CodedB
CODE:0040102D push offset str->IlRegistroEaxHa
CODE:00401032 push 0
CODE:00401034 call j_MessageBoxA
CODE:00401039 call j_ExitProcess
CODE:00401039 start endp
Tad‡‡‡‡‡‡ i sofficiniiiii.....Ehm scusate volevo dire....Tad‡‡‡‡‡‡‡‡‡ il codiceeee!!!! Un po' cambiato ma in fondo Ë quello, allora cerchiamo di capire come funzia sto algoritmo, possiamo identificarlo subito, parte all'indirizzo 00401009 e termina tre righe sotto, comunque eccolo:
CODE:00401009 mov eax, ds:DATA_40205E
CODE:0040100E mul ds:DATA_402062
CODE:00401014 inc eax
CODE:00401015 mov ds:DATA_40205E, eax
allora, facciamo finta di non aver creato noi il programma e di aver identificato l'algoritmo andando per esclusione, ci troviamo davanti due valori che non sappiamo di che genere siano e questi sono: DATA_40205E e DATA_402062, come facciamo a sapere che valori contengono? Semplice premete in IDA "G" che significa "Go to address" e scriviamo nel box che i Ë appena apparso "DATA:40205E" e poi invio, potevamo anche cliccare su "View | Segments", andare su "DATA" e cercare l'indirizzo manualmente, ma cosÏ si fa prima, molto pi˘ seplice era doppioclickare su quel nome ;), ecco comunque ciÚ che ci appare davanti:
DATA:0040205E DATA_40205E dd 3109h ; DATA XREF: start+9_r
DATA:0040205E* ; start+15_w
DATA:0040205E* ; start+1A_r
DATA:00402062 DATA_402062 dd 8A4h ; DATA XREF: start+E_r
Dhe hi hi, guardate un po', abbiamo due valori esadecimali che se convertiti in decimali sono gli stessi di quelli che avevamo usato noi per Random1 e Random2, se siamo proprio dei beoti e non capiamo ancora l'algoritmo usiamo una delle funzione che amo di pi˘ cioË quella che ci permette di rinominare le istruzioni, clickiamo una volta su DATA_40205E e premiamo "N", scriviamo nel box "Random1", clickiamo poi su DATA_402062 e facciamo la stessa cosa solo inserendo "Random2", torniamo al pezzo di codice precedente premendo esc e guardate un po' la sorpresa:
CODE:00401009 mov eax, ds:Random1
CODE:0040100E mul ds:RANDOM2
CODE:00401014 inc eax
CODE:00401015 mov ds:Random1, eax
proviamo ora a fare una bella cosa, selezionate queste quattro righe in IDA col mouse (cliccate sulla prima riga e scendete fino alla quarta), cliccate poi sul menu "File" poi "Produce output file" e poi ancora "Produce asm file..." salvate il file con un nome qualunque ed andate ad aprirlo con il notepad, togliete tutti i "ds", ricordate anche che IDA ci ha fatto vedere che Random1 e Random2 erano delle doubleword contenenti i valori 3109h e 8a4h....ed ecco il risultato:
Random1 dd 12553 ; questo ce lo aggiungete voi, 12553 e 2212 sono i valori esadecimali
Random2 dd 2212 ; covertiti in decimali
mov eax, Random1
mul RANDOM2
inc eax
mov Random1, eax
ragazzi ecco per voi l'algoritmo che cercavamo uguale identico a quello del nostro sorgente. Abbiamo scoperto come si fa a "leggere" un disasemblato, impariamo ora come si patcha. IDA ci da la possibilit‡ di cambiare i byte di un programma e di produrre un eseguibile "patchato" ma come potete vedere essa gira in una shell DOS ed anche per questo motivo non puÚ creare eseguibili in formato non DOS, di conseguenza non possiamo patchare il programma appena visto ma dobbiamo crearne uno appositamente fatto per girare sotto DOS, ecco il codice assembly:
---------------------------------------------------8< -------------------------------------------------------
; Per compilare il sorgente Ë necessario possedere TASM 5.0 reperibile sul
; mio sito: http://quequero.cjb.net nella sezione tools
;
; Ecco le istruzioni di compilazione, basta scriverle in un prompt di DOS
; tasm esempio
; tlink esempio
.286
.model small
.stack 100h
.DATA
Stringa db 'Bravo mi hai patchato correttamente!!!',0Dh,0Ah,'$'
.CODE
start:
mov ax,@data ; Setta il segment register
mov ds, ax
mov es, ax
xor ax, ax ; Azzera AX
cmp ax, 1 ; Vedi se Ë uguale ad 1 ?!
je esatto ; » uguale? Mostra la stringa altrimenti chiudi il programma
mov ah,4ch ; Funzione 'Chiudi'
int 21h
esatto:
mov dx, offset Stringa
mov ah, 09h ; Visualizziamo la stringa
int 21h
end start
---------------------------------------------------8< -------------------------------------------------------
Questo programmillo non fa altro che azzerare Ax, controllarlo per vedere se Ë uguale a 1 e mostrare una stringa se ci Ë, il problema Ë che se azzeriamo Ax, non potr‡ mai essere uguale a 1 e quindi il programma si chiuder‡ sempre, ecco perchË abbiamo bisono di patcharlo. Apriamo IDA, selezioniamo questo file e disassembliamolo, le vie che ci si pongono sono essenzialmente due cioË: cambiare l'istruzione "cmp ax, 1" in modo da farla diventare "cmp ax, 0" oppure forzare il "he esatto" facendolo diventare "jmp esatto", noi comunque le esamineremo tutte e due. Facciamo un click sull'istruzione "cmp ax, 1", clicchiamo in alto nel menu "edit" e successivamente su "patch program" poi dobbiamo scegliere se cambiare un byte, una word oppure assemblare l'istruzione, in questo caso scegliamo "Assemble..." e scriviamo nel box "cmp ax, 0", il programma ora Ë patchato, ma vediamo anche l'altro metodo, clickiamo su "je esatto" andiamo nel menu di cui sopra, clichiamo su change byte e scriviamo......cosa scriviamo? BhË Ë semplice, dobbiamo cambiare un salto condizionato in uno incondizionato, sappiamo che tutti i jump short non condizionati hanno la forma "EB XX" quindi non dobbiamo fare altro che sostituire i byte "74 04" con "EB 04" ed il gioco Ë fatto, a questo punto andate nel menu "File" poi "Produce output file" ed infine "Produce exe file", salvatelo con un nome qualunque e cliccateci sopra, vedete la stringa? Bene allora l'avete patchato come Iddio comanda.
Non mi soffermo ulteriormente su questo punto dato che Ë molto facile patchare un programma, ma non lo farete comunque mai con IDA dal momento che di programmi per dos ce ne sono rimasti davvero pochi. Passiamo ora ad analizzare l'aspetto pi˘ importante di IDA cioË: come ricavare un sorgente compilabile dal disassemblato. Per prima cosa stavolta non vi do il codice ma il disassemblato di modo che possiate imparare a ricostruire un sorgente, il codice che ho scritto ve lo darÚ alla fine, volevo reversare un programmino di winzoz ma non ne ho trovato nessuno abbastanza piccolo per iniziare, gli unici piccoli erano poi in formato NE, comunque ecco il file smembrato ;) :
---------------------------------------------------8< -------------------------------------------------------
; File Name : C:\tasm\prog\wind.EXE
; Format : Portable executable (PE)
; Section 1. (virtual address 00001000)
; Virtual size : 00001000 ( 4096.)
; Section size in file : 00000200 ( 512.)
; Offset to raw data for section: 00000600
; Flags 60000020: Text Executable Readable
; Alignment : 16 bytes ?
p386n
model flat
; ÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕ
; Segment type: Pure code
CODE segment para public 'CODE' use32
assume cs:CODE
assume es:nothing, ss:nothing, ds:nothing, fs:nothing, gs:nothing
; €€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€
; S u b r o u t i n e
public start
start proc near ; CODE XREF: start+30_j start+45_j
push 23h
push offset str->Esempio2--Coded
push offset str->CiauzCliccaSuUn
push 0
call j_MessageBoxA
cmp eax, 6
jz short CODE_401032
cmp eax, 2
jz short CODE_401047
push 20h
push offset str->Esempio2--Coded
push offset str->HaiSceltoNo
push 0
call j_MessageBoxA
jmp short start
CODE_401032: ; CODE XREF: start+16_j
push 20h
push offset str->Esempio2--Coded
push offset str->BravoHaiSceltoO
push 0
call j_MessageBoxA
jmp short start
CODE_401047: ; CODE XREF: start+1B_j
call $+5
jmp ds:ExitProcess
start endp
; €€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€
; S u b r o u t i n e
j_MessageBoxA proc near ; CODE XREF: start+E_p start+2B_p start+40_p
jmp ds:MessageBoxA
j_MessageBoxA endp
align 200h
db 0E00h dup(?)
CODE ends
; Section 2. (virtual address 00002000)
; Virtual size : 00001000 ( 4096.)
; Section size in file : 00000200 ( 512.)
; Offset to raw data for section: 00000800
; Flags C0000040: Data Readable Writable
; Alignment : 16 bytes ?
; ÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕ
; Segment type: Pure data
DATA segment para public 'DATA' use32
assume cs:DATA
str->Esempio2--Coded db 'Esempio 2 - - Coded by Quequero',0 ; DATA XREF: start+2_o
; start+1F_o start+34_o
str->CiauzCliccaSuUn db 'Ciauz!!! Clicca su un tasto',0 ; DATA XREF: start+7_o
str->BravoHaiSceltoO db 'Bravo hai scelto SI!!!',0 ; DATA XREF: start+39_o
str->HaiSceltoAnnull db 'Hai scelto annulla!!!',0
str->HaiSceltoTermin db 'Hai scelto termina',0
str->HaiSceltoNo db 'Hai scelto NO!!!',0 ; DATA XREF: start+24_o
align 1000h
DATA ends
;
; Imports from KERNEL32.dll
;
; Section 3. (virtual address 00003000)
; Virtual size : 00001000 ( 4096.)
; Section size in file : 00000200 ( 512.)
; Offset to raw data for section: 00000A00
; Flags C0000040: Data Readable Writable
; Alignment : 16 bytes ?
; ÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕ
; Segment type: Externs
; _idata
extrn ExitProcess:dword ; DATA XREF: start+4C_r
;
; Imports from USER32.dll
;
extrn MessageBoxA:dword ; DATA XREF: j_MessageBoxA_r
end start
---------------------------------------------------8< -------------------------------------------------------
Bene bene, il codice l'ho scritto io e non Ë difficile anzi direi che la conversione Ë piuttosto immediata vi consiglio comunque di studiarvi un attimo il disassemblato qua sopra prima di procedere.....fatto? Ok vediamo un po' di rinominare qualche funzione, guardate il codice e ve lo spiego:
push 23h
push offset str->Esempio2--Coded
push offset str->CiauzCliccaSuUn
push 0
call j_MessageBoxA
Come potete ben vedere queste 5 righe non sono altro che la routine di generazione di una messagebox, la struttura Ë questa:
MessageBox(
UINT uType // stile del messagebox (bottoni e icone)
LPCTSTR lpCaption, // offset del titolo del message box
LPCTSTR lpText, // offset del testo del messagebox
HWND hWnd, // handle della finestra (NULL se Ë assente)
);
in assembly tale funzione avrebbe pi˘ o meno queste fattezze:
push MB_OK OR MB_ICONQUESTION
push offset TITOLO
push offset TESTO
push NULL ; NULL se non abbiamo una finestra genitrice
call MessageBoxA
bene bene, ma 23h cos'Ë? Allora il file windows.inc ci suggerisce tali cose:
MB_OK = 0000H
MB_OKCANCEL = 0001H
MB_ABORTRETRYIGNORE = 0002H
MB_YESNOCANCEL = 0003H
MB_YESNO = 0004H
MB_RETRYCANCEL = 0005H
MB_ICONHAND = 0010H
MB_ICONQUESTION = 0020H
MB_ICONEXCLAMATION = 0030H
MB_ICONASTERISK = 0040H
una semplice addizione ci rivela che 23h Ë uguale a 0020h+0003h cioË MB_ICONQUESTION+MB_YESNOCANCEL, ciÚ vuol dire che il programmatore (io) nella prima riga ha usato questi parametri:
push MB_YESNOCANCEL OR MB_ICONQUESTION.
adesso rinominiamo in IDA le stringhe in modo da avere qualcosa come:
push offset caption
invece di: push offset str->Esempio2...
Senza che vi dico come si fa che l'avete imparato prima, a questo punto possiamo gi‡ ricostruire tutte le routine di messagebox presenti nel codice, rinominate tutte le stringhe come "Caption", "Testo", "Testo2" ecc....Avremo in questo modo la struttura originale, ma manca una cosa, se guardate bene dopo ogni chiamata ad un messagebox c'Ë un "cmp eax, ?", cosa sar‡ mai? BhË, prendiamo la nostra API reference preferita ed andiamo a vedere.....Ci dice che l'ID del tasto premuto viene mosso in eax, ma come facciamo a sapere a cosa corrisponde il numero che sta lÏ? Semplice, sempre con la nostra API reference! Ecco la tabella:
IDOK = 1
IDCANCEL = 2
IDABORT = 3
IDRETRY = 4
IDIGNORE = 5
IDYES = 6
IDNO = 7
e cosÏ notiamo con piacere che dopo ogni chiamata il programma checka EAX per vedere quale pulsante Ë stato premuto ed aprire un altro messagebox, quindi finiamo di rinominare tutti quanti i vari jump e vediamo come Ë diventato il nostro codice...:
public start
start proc near ; CODE XREF: start+30_j start+45_j
push MB_ICONQUESTION or MB_YESNOCANCEL
push offset Caption
push offset Messaggio
push NULL
call MessageBoxA
cmp eax, 6
jz short SI_PREMUTO
cmp eax, 2
jz short ESCI
push MB_ICONQUESTION or MB_OK
push offset Caption
push offset No_Premuto
push NULL
call MessageBoxA
jmp short start
SI_PREMUTO ; CODE XREF: start+16_j
push MB_ICONQUESTION or MB_OK
push offset Caption
push offset Messaggio
push NULL
call MessageBoxA
jmp short start
ESCI: ; CODE XREF: start+1B_j
call ExitProcess
start endp
Ottimo!!! Vorrei darvi perÚ ancora dei consigli, a dire il vero non Ë facile ricordare tutti gli ID a memoria e per facilitarci il lavoro IDA ci mette a disposizione i "commenti", i commenti non sono altro che degli appunti a bordo riga che mette IDA o che mettiamo noi, ne esistono due tipi: ripetibili e non, la differenza sta nel fatto che se mettiamo su un jump un commenti ripetibile del tipo "questo fa uscire dal programma" IDA posizioner‡ la stessa frase all'arrivo di quel jump, mentre nel caso di un commento non ripetibile questo non succede, per inserire un commento ripetibile basta cliccare sulla riga che ci interessa e premere ; (si un punto e virgola) se invece ne vogliamo inserire uno non ripetibile allora dobbiano premere : (due punti) e poi scriverlo nel box, sappiamo tutto ora del programma, ci resta solo di andarci a leggere tutte le varie stringhe che si trovano nella sezione data ed unirle....fatto ecco il codice:
.386p
.model flat, stdCALL
EXTRN ExitProcess:PROC
EXTRN MessageBoxA:PROC
INCLUDE WINDOWS.INC
.DATA
null equ 0
Caption db 'Esempio 2 - - Coded by Quequero',0
Messaggio db 'Ciauz!!! Clicca su un tasto',0
Messaggio1 db 'Bravo hai scelto occhei!!!',0
Messaggio2 db 'Hai scelto annulla!!!',0
Messaggio3 db 'Hai scelto termina',0
Messaggio4 db 'Hai scelto NO!!!',0
.code
start:
push MB_YESNOCANCEL or MB_ICONQUESTION
push offset Caption
push offset Messaggio
push NULL
call MessageBoxA
cmp eax, 6 ; YES premuto?
je occhei
cmp eax, 2 ; CANCEL premuto?
je exit
push MB_OK or MB_ICONQUESTION
push offset Caption
push offset Messaggio4
push NULL
call MessageBoxA
jmp start
occhei:
push MB_OK OR MB_ICONQUESTION
push offset Caption
push offset Messaggio1
push NULL
call MessageBoxA
jmp start
exit:
call ExitProcess
end start
Lo so che la stringa "Hai premuto termina..." non viene mai usata, lei sta li solo per confondere le idee ;))))
La nostra cara IDA ha altre doti "nascoste" che vengono usate di meno e che mi accingerÚ a spiegarvi. Se andate nel menu "file"|"Load file" vedrete varie opzioni e pi˘ precisamente:
IDC file...
Additional binary file...
IDS file...
Debug information file...
FLIRT signature file...
IDC file: i file IDC sono dei file script che possono tranquillamente essere scritti a mano per creare delle proprie macro
Additional binary file: da qui carichiamo un file binario addizionale e aggiungiamo le nuove informazioni in coda alle vecchie
IDS file: questa non serve potenzialmente mai, i file .IDS sonon quelli contenenti tutte le informazioni sulle varie funzioni di winzoz ma IDA le carica da sola durante il disassembling
Debug information file: bhË se IDA trova un file DBG inerente al file che stiamo disassemblando allora si preoccupa di caricarlo, se invece non lo trova allora glielo possiamo fare caricare noi
FLIRT signature file: avete presente i file .SIG del PGP? BhË non c'entrano 'na mazza ;) da questi file IDA carica delle funzioni modello standard che l' aiuteranno a riconoscere delle funzioni standard, IDA cerca il file adatto da sola ma non sempre ci riesce, nel caso lo volessimo fare a mano troveremmo tali file nella directory SIG, per caricarne o scaricarne uno basta aprire la finestra "signature" e premere ins per inserirne uno e del per scaricarne uno.
Esploriamo adesso il menu "Produce output file...", ecco le varie opzioni:
Produce MAP file... Shift-F10
Produce ASM file... Alt-F10
Produce LST file...
Produce EXE file... Ctrl-F10
Produce DIF file...
Dump database to IDC file...
» giunto il momento di conoscere anche loro, hehehehe iniziamo.
Produce MAP file: IDA scriver‡ un file con tutte le informazioni riguardo ai segmenti ed i nomi ordinati a seconda dei loro valori
Produce ASM file: gi‡ incontrata, produce comunque un file .asm contenente il testo asm da noi selezionato, Ë molto utile quando si creano i keygenerator
Produce LST file: IDA scrive un file con il disassemblato attuale oppure con una porzione di codice da noi selezionata
Produce EXE file: come gi‡ detto ricrea l'eseguibile nel caso lo avessimo modificato (funziona solo con i file DOS)
Produce DIF file: questa funzione crea se non erro un file in pieno testo nel quale sono annotati i valori originali e quelli che sono stati cambiati, la guida dice che il file assumerebbe queste sembianze:
commento
nome_del_file
offset: vecchio_valore nuovo_valore
Dump database to IDC file: con questa opzione IDA salva il database in un file di testo.
Il menu "IDC command..." ci consente di caricare un piccolo script scritto specificatamente per IDA, la lista Ë talmente lunga che se ne avete bisogno aprite il menu e premete F1 per vedervela ;))))
Scusate ma sto iniziando a sentire i primi sintomi della fatica, sono infatti 4 ore che sto scrivendo......Senza contare quelle dei giorni precedenti ovviamente ;))
I restanti mi sebrano superflui, passiamo al successivo menu cioË "Edit", un menu maledettamente ricco di opzioni ecco cosa si presenta davanti ai nostri occhi una volta aperto:
Code
Data
ASCII
Array...
Undefine
Rename...
Operand type
Comments
Segments
Structs
Enums
Functions
Patch program
Other
C'mon babe let's go explain.......Code: opzione alquanto carina che serve a convertire in istruzioni i byte segnati da IDA cone inesplorati
Data: bell'opzione anche questa, serve a convertire i byte inesplorati in dati, ecco le conversioni che applica:
db -> dw -> dd -> float -> dq -> double -> dt -> packreal -\
^ |
\----------------< ----------------< ----------------< ---------------
In pratica converte un byte in una word, se lo riapplichiamo lo coneverte in una doublword e cosÏ di seguito, se un file non supporta quel determinato tipo di dato allora si salta al passo successivo
ASCII: questa serve a convertire i byte inesplorati in stringhe
Array: ci permette di dichiarare la grandezza di un array
Undefine: selezionate del testo, cliccate su Undefine e come per magia tutti byte selezionati verranno convertiti ad inesplorati
Rename: abbiamo gi‡ usato questa funzione ma abbiamo delle sotto-opzioni disponibili e precisamente sono:
Include in names list: IDA ha una gamma di nomi predefiniti e questi sono:
sub_ instruction, subroutine start
locret_ 'return' instruction
loc_ instruction
off_ data, contains offset value
seg_ data, contains segment address value
asc_ data, ascii string
byte_ data, byte (or array of bytes)
word_ data, 16-bit (or array of words)
dword_ data, 32-bit (or array of dwords)
qword_ data, 64-bit (or array of qwords)
flt_ floating point data, 32-bit (or array of floats)
dbl_ floating point data, 64-bit (or array of doubles)
tbyte_ floating point data, 80-bit (or array of tbytes)
stru_ structure (or array of structures)
algn_ alignment directive
unk_ unexplored byte
Attivando questa opzione IDA inserisce in nome nella lista che sta qua sopra.
Public name: possiamo dichiarare un nome pubblico, se il file supporta la direttiva "public" allora il nome sar‡ utilizzato da IDA altrimenti sar‡ mostrato solo come commento.
Autogenerated name: nome autogenerato dal programma, appari di un colore marroncino e scompare da solo se "undefiniamo" i byte di quel nome
Weak name: stessa cosa di public name, se il programma supporta la direttiva "weak" allora IDA lo user‡ altrimenti il nome sar‡ mostrato come commento
Create name anyway: se per qualche masochistico motivo volessimo creare un nome nonostante ne esista uno identico allora dovremmo checkare questa opzione per permettere alla povera IDA di aggiungere un suffisso al nome pre-esistente
Operand types: altro menu stramaledettamente carico di opzioncine, ne elencherÚ solo le pi˘ incomprensibili:
Convert to number
Convert to hex number
Convert to decimal number
Convert to binary number
Convert to octal number
Convert to character
Mark as variable
Convert to segment
Convert to offset (DS)
Convert to offset (CS)
Convert offset by any segment
Convert offset by any user-specified base
Convert to struct offset
Convert to enum
Convert to stack variable
Change sign of operand
User-defined operand
Mark as variable < "#Mark as variable">: questa opzione marka e unmarka i byte selezionati come variabili, le variabili si riconoscono perchË iniziano con un asterisco "*"
Convert to offset (DS): questo comando converte un operando di un'istruzione corrente in un offset dal segmento dati (DS) corrente
Convert offset by any segment: stessa cosa di sopra solo che converte un operando in un offset di qualunque segmento
Convert to struct offset: uesto comando converte un operando di un'istruzione corrente in un offset all'interno di una specificata struttura
Poi abbiamo la sezione "Structs" che serve a creare e modificare delle strutture.
"Enums" da qui possiamo definire un tipo di Enum ma su questo menu non posso dirvi altro, non faccio il misterioso ma semplicemente non lo so ;)
"Functions" da qui possiamo aggiungere ed editare le varie funzioni, non vi illustro il funzionamento in quanto Ë qualcosa di troppo intuitivo
"Patch program" gi‡ spiegato in precedenza
"Other" e sottomenu:
(Re)name any address...: indovinate un po'? DA qui potete nominare/rinominare/cancellare un indirizzo
Variable: uguale a "Mark as Variable"
Jump table...: se troviamo un jump indiretto da una tavola possiamo informare IDA della grandezza e dell'indirizzo di questa tavola di modo che possa continuare la sua analisi convertendo per esempio in codice tutti quegli indirizzi riferiti a quella tavola
Alignment...: questo comando consente di creare una direttiva di allineamento, questa direttiva rimpiazzer‡ il numero di byte inutili inseriti dal linker del programma per allineare il codice ed i dati in un paragrafo, possiamo provare a selezionare un'area che desideriamo convertire ed IDA prover‡ ad individuare un allineamento corretto
Manual instruction...: Questo comando ci permette di specificare la rappresentazione di un'istruzione o di un dato in un programma
Hide/show item: Questo comando ti permette di nascondere e mostrare un'istruzione o un dato
Hide/show border: Se attivata nasconde il sottile bordo creato da IDA per dividere le istruzioni dai dati
Menu "Navigate" di questo spiegherÚ solo pochissime funzioni le pi˘ utili e meno comprensibili come solito.
Empty navigation stack: vuota lo stack di navigazione che usa IDA
Jump to... | Problem...: salta alla prima funzione che IDA dichiara affetta da problemi i quali sono:
Can't find offset base
Can't find name
Can't find alternative string for an operand
Can't find comment
Can't find references
Indirect execution flow
Can't disassemble
Already data or code
Execution flows beyond limits
Too many lines
Attention! Probably erroneous situation
Decision to convert to instruction/data is made by IDA
Search for | next void: i void sono delle istruzioni alle quali dobbiamo stare attenti dal momento che IDA non Ë in grado di riconoscere se si tratta di Offser oppure di Numeri, con questo comando li andiamo ad esaminare per vedere se possiamo risolvere noi il problema
Search for | text....: cerchiamo del testo come ad esempio una stringa del tipo "sei un coglione hai sbagliato la password"
Search for | text in core....: la stessa cosa di sopra solo molto pi˘ veloce
Search for | not function: cerca i primi byte che non sembrano una funzione
Menu "View" anche di questo spiegherÚ le funzioni pi˘ importanti:
View | Functions: ci mostra tutte le funzioni chiamate dal programma
View | Enumeratios: questo comando apre la finestra "enum" dalla quale possiamo cambiare, aggiungere e modificare le enumerazioni.
Oki e questi sÚ finiti adesso manca il menu pi˘ lungo quindi se siete stanchi di leggere andate a riposarvi e continuate domani mattina.
Options:
Text representation...
Cross references...
Assembler directives...
Name representation...
Demangled names...
ASCII strings style...
ASCII strings options...
Colors...
Dump/normal view
Setup data types
Processor type...
Target assembler...
Analysis options...
Search direction
Allora allorino continuaiamo questa tediosa seduta parlando delle "opzioni" vere e proprie riguardo la configurazione del programma, salterei volentieri questo passaggio per volare felice alla conclusione ma "una forza dentro dentro che neanch'io so spiegare come" (by YaleÆ) mi trattiene su questa sedia a scrivere un inutile tutorial che molto probabilmente sar‡ letto da poche decine di persone..;(((
Bando alle ciance: Text representation...: menu a dir poco arzigogolato che ci presenta una miriade di piccole opzioncine che andremo ora ad esaminare.
Line prefixes: se la disattiviamo vedremo scomparire gli indirizzi davanti ai byte
Number of opcode bytes: gli opcode sono i codice esadecimali di ogni istruzioni, IDA di default ne rappresenta 6 e se l'istruzione ne richiede di pi˘ allora aggiunge un "+" alla fine (c'Ë caduta pure la rima ;)
Use segment names: abilita o disabilita la nomenclatura dei segmenti cosÏ se abilitato vedremo "segment:3200" invece di "3000:3200"
Segment addresses: se Ë abilitata vedremo il segmento davanti ad un indirizzo: "segment:3000" invece di un semplice "3000", questa la tengo disabilitata che fa meno bordello
Display 'void' marks: fa comparire dei segni di riconoscimento davanti ai "void"
Display empty lines: se abilitata fa comparire delle linee vuote diminuendo lo spazio utile sul monitor
Display borders between data / code: se disabilitato fa scomparire la linea separatrice tra i dati ed i segmenti
Display bad instructions < BAD> marks: tutti i processori hanno le loro belle funzioni non documentate e quando una di queste passa sotto il disasm il programma dice "e tu ki kazzo sei?", IDA Ë molto sensibile da questo punto di vista e se trova una funzione che non conosce prova ad identificarla ma se proprio non ci riesce la marchia con tanta ferocia quanto un tedesco ad un povero ebreo e con un bel tatuaggio rosso le scrive sopa < BAD>
Use tabulations in output: con questa opzione abilitata IDA disabilita il conosciutissimo tab-stop (0x09) nel suo file di output
Questi mi sembrano intuitivi:
Display comments
Display repeatable comments
Display auto comments
Instructions indention: letteralmente: spaziatura delle istruzioni, settate questo valore a 2-3
Comments indention: che sar‡ mai????? ;)))
void's low limit: vedi sotto
void's high limit: questi due valori sono molto importanti in quanto dichiarano se una istruzione Ë oppure no un "void", un oggetto Ë detto "void" se ha un valore immediato come operando o parte di un operando e questo valore immediato Ë tra quelli che definiamo noi nei box "low limit" e "high limit", Ë questa l'importanza dei due box
"Cross references" ecco le opzioni che ci mette a disposizione questo menu:
Display segments in xrefs: ecco la differenza tra abilitato e disabilitato:
; CODE REF: 3000:1025 - enabled
; CODE REF: 1025 - disabled
Display xref type mark: chiss‡ forse marka le xref
Display function offsets: bho! Ci mostrer‡ gli offset delle funzioni? ;)))
Display xref values: su questa poi non so che dirvi, forse mostra i valori dell xref ;)))
Right margin: opzione di difficilissima interpretazione puÚ darsi che si la misura del margine destro, ma chiss‡ le vie del signore sono infinite ;))))
Cross reference depth: questa invece Ë un po' pi˘ seria e per non confondervi vi riporto l'esempio dell guida, l'autore suppone di avere un array
A db 100 dup(0)
se alcune istruzioni si riferiscono all'elemento 5-th dell'array:
mov al, A+5
con TD=3 non ci verranno mostrate xrefs
con TD=10 ci verranno invece mostrate
Number of xrefs to display: la funzione Ë ovvia, alzatela perÚ di un po'
"Assembler directives...": altro piccolo menu
ASSUME directives: questa opzione attiva o disattiva la generazione di alcune direttve quali "assume" e "origin", lasciatela abilitata puÚ essere utile nel ricostruire il sorgente
.ORG directives: la stessa cosa di prima solo che Ë valida per i file .com
"Name representation...": poco da dire, qui ci viene chiesto in che modo chiamare i vari segmenti e credo che l'opzione di default sia la migliore, le altre 4 opzioni riguardanti i tipi di nomi non saranno analizzate in quanto le ho gi‡ spiegate prima
"Demangled names...": IDA puÚ rimettere a posto i nomi maciullati (hei la guida dice proprio maciullati=mangled) dai compilatori C++ ed in questo menu ci chiede come farlo, se sotto forma di commento, di nome o di macellato ;)), il setup dei nomi lunghi e corti lo lascio a voi in quanto Ë facilissimo
"ASCII strings style...": in questo menu possiamo definire lo stile delle stringhe e possiamo anche definirne una al momento che ci serve, qui non c'Ë altro da spiegare
"ASCII strings options...": ahhhhhh!!! Uno dei menu che mi fanno godere di pi˘ aahhhhhhhh, sembro Homer ;) ecco cosa possiamo fare:
Generate names: le vogliamo le stringhe ASCII? Allora abilitiamola ;)
Names prefix: cambiate questa maledetta stringa e metteteci qualco's altro
Mark as autogenerated: segna la stringa come autogenerata
Serial number: vi genera il seriale esatto per QUALUNQUE programma protetto da password, trova anche le pass per i file .zip e . rar protetti ;)))) hahahahaha
Serial width: vi chiede quanto lungo volete il seriale per il programma ;))))))))))
ASCII next line char: questa Ë grande infatti vi fa scegliere la parola che volete codificare nel serial ;)))))) porka vakka quanto sto rincoglionito ;))))
"Colors...": scegliete la palette che volete usare ma vaaaaaaaaaaaa ;)))))))
"Dump/normal view": vi fa scegliere tra la visuale come editor esadecimale e quella come disassembler
"Setup data types": vi chiede che tipo di dati volete usare nel comando MakeData
Oki i menu sono finiti, ed io spero di avervi fatto capire il funzionamento di IDA, a presto
Quequero
Home Page: < http://quequero.cjb.net>
E-mail. UIC@mail.usa.com < mailto:UIC@mail.usa.com>
P.S.
cara gente che siete arrivati fin qui, ecco il tanto agognato PS, lo userÚ solo per fare una cosa, ma prima voglio salutare tutti ma propri tutti i miei amici...via
un grande FUCK a LORENZO il mio amico IDIOTA che dice che i cracker sono dei deficienti, i reverser dei coglioni, io un malato del cavolo che ho scritto sto tutorial, ci reputa una massa di idioti, dice che l'HACK-it equivale al raduno dei deficienti perÚ poi quel porco il crack per half-life me lo chiede, il crack per il virtual cd pure, porco maledetto che altro non sei, con quell'aria di sufficienza, ti odio, tutti ti odiano tanto quanto tu odi noi, maledetto invertebrato, ragazzi la mail la sapete, vi prego mandate nella mia casella degli insulti e ve gleli farÚ leggere uno ad uno a quel bastardo grrrrrrrrrrr!!!!!!
Caro Lorenzo, tu che mi reputi un idiota sappi che questo P.S. sar‡ letto da decine di persone ed allora ci godrÚÚÚÚÚÚÚÚ chiedetemi il suo numero di telefono e ve lo darÚ arghhhhhhhhh!!!!!!!
---QueQuero---
AGGIUNTA DI OLDIRON61= Il file .html originale (Con il reale codice a colori) Ë allegato alla Zine.
#COME CRAKKARE PANDEMONIUM
Autore: Pac_Man
Ci servono:
Win32Dasm un disassemblatore
Hiew un hex editor
Il CD di Pandemonium sennÚ potremmo essere anche tKC e non riusciremmo a fare niente lo stesso.
Disclaimer:
Líautore di questo documento declina ogni responsabilit‡ dallíuso improprio dello stesso e lo considera solo a titolo informativo.
Incominciamo
Per prima cosa facciamo partire il gioco senza cd; una finestra di dialogo ci dir‡ pi˘ o meno cosÏ < < Per poter giocare deve essere presente il CD di Pandemonium nel lettore CD-ROM>>, annotiamo questo messaggio perchÈ dopo ci servir‡. Non preoccupatevi, adesso dobbiamo disassemblare il file < < PANDY3.EXE>>, e quando ha finito di disassemblare selezioniamo su < < Refs>> sulla toolbar cliccando su < < String Data References>>. E adesso cerchiamo nella lista il messaggio di errore che il gioco ci da quando si tenta di farlo partire senza Cd e ci clicchiamo due volte sopra dopo usciamo dalla finestra pop up e dovremmo vedere una cosa del genere:
* Referenced by a CALL at Address:
|:00436015
|
:00427C60 A1FCB14600 mov eax, dword ptr [0046B1FC]
:00427C65 85C0 test eax, eax
:00427C67 741C je 00427C85
:00427C69 E8324EFEFF call 0040CAA0
* Possible StringData Ref from Data Obj
:00427C6E 6810CC4600 push 0046CC10
:00427C73 E878000000 call 00427CF0
:00427C78 83C404 add esp, 00000004
:00427C7B 6A00 push 00000000
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00427C39(C)
|
:00427C7D E89E3D0300 call 0045BA20
:00427C82 83C404 add esp, 00000004
* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:00427C41(C), :00427C67(C)
|
:00427C85 C3 ret
Il processo qui sopra Ë chiamato dalla stringa 436015, allora adesso andiamo a vedere il caller. La sezione del codice , nel processo Ë per far vedere líintera routine del programma .
* Referenced by a CALL at Addresses:
|:00407084 , :004070D7 , :004071F3 , :0040727E , :004072CC
|:00407319 , :004073A5 , :00407E94 , :00407EEC , :00407F6F
|:00408AE4 , :0040F655 , :0040F82B , :0040F8D7 , :00435F31
|:0044154F , :00441567 , :0045151C
|
:00436010 83EC04 sub esp, 00000004
:00436013 53 push ebx
:00436014 56 push esi
:00436015 E8461CFFFF call 00427C60
:0043601A A164E05900 mov eax, dword ptr [0059E064]
:0043601F 85C0 test eax, eax
:00436021 741D je 00436040
* Reference To: KERNEL32.Sleep, Ord:023Ah
:00436023 8B35B8B48100 mov esi, dword ptr [0081B4B8]
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0043603E(C)
|
:00436029 6A64 push 00000064
:0043602B FFD6 call esi
:0043602D E8AE000000 call 004360E0
:00436032 E8591CFFFF call 00427C90
:00436037 A164E05900 mov eax, dword ptr [0059E064]
:0043603C 85C0 test eax, eax
:0043603E 75E9 jne 00436029
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00436021(C)
|
:00436040 8B442410 mov eax, dword ptr [esp+10]
:00436044 8A4C2418 mov cl, byte ptr [esp+18]
:00436048 A35CE05900 mov dword ptr [0059E05C], eax
:0043604D 84C9 test cl, cl
:0043604F 7424 je 00436075
:00436051 8B742414 mov esi, dword ptr [esp+14]
:00436055 56 push esi
:00436056 E8150A0000 call 00436A70
:0043605B C70564E0590000000000 mov dword ptr [0059E064], 00000000
:00436065 83C404 add esp, 00000004
:00436068 83F801 cmp eax, 00000001
:0043606B 1BC0 sbb eax, eax
:0043606D 23C6 and eax, esi
:0043606F 5E pop esi
:00436070 5B pop ebx
:00436071 83C404 add esp, 00000004
:00436074 C3 ret
Forziamo il salto condizionato allíindirizzo 00436021, e lo cambiamo il je (jump se Ë uguale) in unconditional jump (jmp).
I cambiamenti che vanno fatti sono:
Editiamo PANDY.EXE (versione standard) allí offset 189,925
=====================================================
Search for: E8 F6 3B 01 00 A1 D4 2B 59 00 85 C0 74 1D
Change to : 90 90 90 90 90 -- -- -- -- -- -- -- EB --
Editiamo PANDY3.EXE (3Dfx version) at offset 218,133
=====================================================
Search for: E8 46 1C FF FF A1 64 E0 59 00 85 C0 74 1D
Change to : 90 90 90 90 90 -- -- -- -- -- -- -- EB -
CosÏ in teoria abbiamo cracckato Pandemonium.
Scusate se ho spiegato male ma ho la febbre a 38 e non ero proprio in vena di scrivere ma per Oldiron61 faccio questo e altro.
Arrivederci e grazie.
Un saluto a Body, Suicide, The Duke , Coco Centauro, Chrome, Ax1s, Oppoci‡ e tutti gli altri.
E soprattutto líAllessandra Ë un gran tocco di figa.
Per un ITALIA migliore vota The Pac-man.
See you later baby !
---PAC_MAN---
AGGIUNTA DI OLDIRON61: Ehm! Non so perchÈ Il Pac mi adora cosÏ maÖ va bene lo stesso!
#####################################################################
####### PPPPP H H RRRRR EEEEE AAAAA K KK III NN N GGGG #######
####### P P H H R R E A A K K III N N N G #######
####### PPPPP HHHHH RRRRR EEE AAAAA KK III N N N G GG #######
####### P H H R R E A A K K III N N N G G #######
####### P H H R RR EEEEE A A K KK III N NN GGGG #######
#####################################################################
#PHREAKING INTRO#
Autore : Oldiron61 (AiS-KdT!)
Per quanto riguarda il phreaking in Italia, bisogna fare molte puntualizzazioni, visto e considerato che la maggior parte dei phreaker (o Pseudo-phreaker?) in Italia va avanti grazie a pure leggende metropolitane o poco pi˘. Diamo per scontato che ormai tutti hanno accantonato le mitiche scatoline magiche (BlueBox, ecc.) la cui conformazione puÚ essere ancora utile per scopi educativi, ormai la scena del phreaking si spostata totalmente verso due tecniche: L'uso dei greens ed il forcing.
Per quanto riguarda i greens, sono abbastanza contrario, considerando le ultime vicende penali che ci sono state verso delle persone che utilizzavano questi metodi (Circa 200 phreaker sono stati messi al gabbio per aver usato il green 167-113-113). E' un metodo troppo rischioso, il pericolo di bust Ë sempre dietro l'angolo, e sinceramente non me la sentirei di rischiare le chiappe in una maniera cosÏ pericolosa, visto che fortunatamente, ci sono altri metodi molto pi˘ sicuri.
Secondo me tutto il phreaking dovrebbe vertere soprattutto sul forcing delle cabine e/o delle centrali. Questo metodo Ë pi˘ sicuro (?) degli altri, ma per essere utilizzato, bisogna avere anche piccole nozioni di elettronica teorico/pratica. I problemi possono sorgere per ciÚ che riguarda la metodologia di "imboscamento". Per attaccare una centralina, sono necessari giorni di appostamenti e perlustrazioni, e solo dopo essersi resi conto dell' afflusso di traffico in determinate ore, si puÚ' pensare ad attaccare quel paradiso che Ë una centralina. I writers sono avvantaggiati, forse perchÈ gi‡ sono esperti in "Infrattologia" (Dico per esperienza personale, quando cominci ad avere sicurezza mentre dipingi un treno, e ti riesci a nascondere alle navette di pulotti, le tecniche dell'imboscamento non hanno pi˘ segreti!).
Ora bisogna fare delle puntualizzazioni sull'ETICA del phreaker : questa parte dellíarticolo mi Ë balzata in mente leggendo una mail nel newsgroup alt.hackers.cough.cough.cough (Ciao Ragazzi!), dove un ragazzo nuovo di questo mondo accusava gli hackers/phreakers che telefonavano a spese di altre persone e entravano in computer di poveri surfer. In conclusione voleva sapere se gli hackers/phreakers sono delle persone che vanno contro il sistema, o se sono dei tizi che vanno contro chiunque, basta che gli stessi hackers possano trarne giovamento. Dalla mia piccola esperienza, posso con il 100% di sicurezza che i VERI phreaker non si attaccano alle linee di poveri utenti telecom, ma sfruttano le linee di servizio che sono presenti sempre nelle centraline (Quelle che usano i tecnici per provare i collegamenti) o addirittura si collegano a cabine telefoniche.
Spero di ricevere un sacco di mail con commenti a questo articolo, sono ben accette anche critiche, vorrei creare un dibattito... spero in voi!
Un saluto a tutti quanti, portate aventi la scena, fottete il sistema!
---OlDiroN 61 (AiS KdT!)---
#COME TI CROSSO UNA LINEA...#
Autore : Oldiron61 (AiS-KdT!)
In questo articolo vi introdurrÚ nella parte del phreaking pi˘ in voga in questo momento: il forcing!
Prima di tutto, preparate i cavi per le connessioni e le relative attrezzature...
#1 Telefono(Quelli che si trovano al Supermarket) al quale taglierete la spina e installerete delle giunture a vite
#1 Cavo Plug-Telefonico/coccodrilli
#1 Cavo Libero/Plug-Telefonico
#2 Cavi Libero/coccodrilli
#2 Cavi Giunture/giunture
NOTA: I plug telefonici sono necessari per una connessione con il modem, oppure nel caso il telefono abbia questa predisposizione.
Onde evitare spiacevoli inconvenienti, portatevi dietro il "Kit del phreaker modello": Pinze, saldatore a gas, nastro isolante, tester, stagno, cacciaviti, e qualche cavo sparso.
#Cabine Telekom (Rotor)
Ci sono diversi modi per crossare una cabina: forzandola, sfruttandola alla fonte, utilizzando una cabina in costruzione.
1)FORCING DELLA CABINA= Nel primo caso dobbiamo aprire la cabina (sembra facile!) e cercare uno scatolato che si trova in alto a centro-sinistra del Rotor. Come aprire la cabina? Questo Ë il punto pi˘ difficile del forcing, visto e considerato che le cabine sono super-corazzate per prevenire ogi tipo di attacco.
Líunica maniera Ë quella di usare un martello, uno scalpello, un piede di porco, e cominciare ad attaccare sistematicamente ogni fessura che riuscite a vedereÖ(Lasciate perdere la fessura di inserimento monete ed il restituisci-resto, sono inutili, forzando quei punti non si arriverebbe a nulla!)
Connettiamo i cavi in questo modo:
#----------#-------------#-----------#
| Codice | Funzione | Colore |
#----------+-------------+-----------#
| S1 | Servizio1 | Giallo |
#----------+-------------+-----------#
| S2 | Servizio2 | Nero |
#----------+-------------+-----------#
| a | Voce1 | Verde |
#----------+-------------+-----------#
| b | Voce2 | Rosso |
#----------#-------------#-----------#
ATTENZIONE!: Il codice a colori potrebbe variare a seconda dei comuni (In Italia nulla Ë standard!) Io lího trovato cosÏ, voi pregate di avere la mia stessa situazione!
2)SFRUTTAMENTO DALLA FONTE= In questo caso bisogna aprire la gamba del telefono( Anche questa Ë un poí difficile da forzare, ma sicuramente pi˘ semplice di quella del Rotor), e cercare i fili che andrebbero allo scatolato descritto in precedenza. In questo caso ci viene in aiuto il cavo con i coccodrilli o con le giunture. I codici di connessione sono gli stessi del precedente.
3)CABINA IN COSTRUZIONE= Il sogno proibito di ogni phreaker....trovare una cabina in costruzione! basta che riconoscete i colori(Vedi la tabella sopra) e collegate i fili al telefono! (Questa ipotesi non si avverer‡ quasi mai, ma basta che ne trovate una e vi sfizierete per molto tempo! Richiedete al vostro comune líinserimento di una cabina telefonica nel parco giochi che avete a 50 metri da casa!)
Se disponete di connessioni tramite Plug-Telefonici Dovete seguire questo schema:
_________
| * * * * | G= Giallo
| G V R N | V= Verde
|__ __| R= Rosso
|___| N= Nero
#Centrali Telekom
Questo tipo di forcing si puÚ rivelare pi˘ semplice di quelli descritti in precedenza, ma sono necessari molti giorni di appostamenti prima di agire.
Le Centrali Telekom (Díora in poi centraline) si possono suddividere in altri 3 gruppi, diversi sia per grandezza, che per numero di linee interne.
#In ordine di grandezza#
1) Centralina situata a ridosso delle Cabine Telekom (Rotor) che, ovviamente controllano la linea della cabina stessa! (Se avete una cbina isolata non lontano da casa Ë la migliore da attaccare)
2) Centralina che si trova vicino ad edifici civili, discretamente piccole, che non raccolgono pi˘ di 15 Linee
3) Eí una centrale maestosa, alta circa due metri, che raccolgono un macello di linee, di solito situate in nodi principali delle localit‡, o comunque in posti dove occorre controllare una grande mole di linee.
Il consiglio che io vi do, quando cercherete di crossare una centralina, Ë quello di collegarvi su di una linea di servizio TELEKOM (La fonte di questa linea Ë facilmente riconoscibile, in quanto da lÏ partono tutte le altre lineeÖ), ma non collegatevi a danno di poveri cittadini (salvo che siano vostri professori e/o vi stiano tremendamente sul kazzo! ;) )
Quando vi troverete lÏ davanti potrete fare di tuttoÖ intanto scegliete la linea ìvittimaî: ovviamente avete bisogno di una linea funzionante e libera. Per controllare una linea libera bisogna usare il tester; normalmente il tester rimarr‡ stabile (Sia come Voltaggio che come Amperaggio) fino a quando non impazzir‡ per alcuni secondi: in questo caso avete acciuffato una linea di un utente che aveva fatto una telefonata oppure ne aveva ricevuta una.
Altra cosa utilissima e MOLTO conveniente Ë quella di REINDIRIZZARE le telefonate fatte dal vostro apparecchio verso uníaltra linea tramite un ponticello fatto da voi con i cavi a coccodrilli. La cosa Ë molto complicata, in quanto Ë difficilissimo ritrovare la propria linea in una centralina, ma Ë possibile e soprattutto conveniente con un poí di pazienza!!!!!
Per aprire la centralina occorre un poí di ingegnoÖnel peggiore dei casi si puÚ ritornare al metodo degli IHC con la polvere da sparo oppure con la Fiamma OssidricaÖ io forse ho avuto pi˘ culo di loro, ma sono riuscito ad aprire una centrale semplicemente eliminando i rivetti della serratura, per poi reinstallarli nuovi nella posizione originaleÖ
Per mantenere il comando della centralina 24 ore su 24 senza morire di paranoie ìPerchÈ se passa un tecnico mi sgamaî si puÚ utilizzare un ottimo metodo.
Eí molto semplice, ma occorre che la centralina non stia troppo attaccata al muro. ProverÚ a facilitarmi la spiegazione con un disegnino in ASCII (vi avverto non sono Leonardo!!!!)
#VISTA FRONTALE# #VISTA LATERALE#
__________________ _____ ___________
|Linea Telekom(a) | | \| Linea |
| ^ | | /| Telekom(a)|
| __|__ | | \| ___ |
| | | | | | /| | | |
| | | +----) | | \| | +--) |
| |__|__| | | |PORTA/| |___| | |
| | | | \| | |
| | | | /| | |
| | | | \| | |
| | | | /| | |
| | | | \| | |
| @ | | /| (--@------)
|__________________| |_____\|___________| __|__Basetta interrata
@ = Foro da creare sul retro della centralina per facilitare passaggio nascosto per i cavi, destinati alla base interrata di un cordless. Potrete sfruttare questo metodo in due varianti:
La variante telefonica (Descritta sotto, con líutilizzo di un cordless)
La variante internet (Interfaccia modem-cordless, che, salvo ripensamenti, descriverÚ nel 2∞ numero dellí E-Zine)
#IL CELLULARE GRATIS#
Materiali:
1 cordless (Anche non omologato va bene, di quelli che non costano pi˘ di 30karte)
4 Batterie 12V 40 ampere/ora (Quelle della macchina)
15mt. di cavo telefonico
Collegate il cavo ai cavi della cabina/centralina "Vittima", collegate l'altra estremit‡ al telefono, interrate cavo e base(alimentata con le 4 batterie disposte in serie) e avrete un cellulare con una autonomia di 300mt dalla base. Questo cellulare, salvo líintroduzione di una piccola manovra logistica, puÚ SOLAMENTE (dici poco! ;-)) fare telefonate, senza riceverleÖ chi non vuole togliersi questo piacere (in effetti un telefono in ricezione NON controllato fa sempre comodo! A buon intenditorÖ) Basta possedere un cellulare e fare una telefonata dal vostro cordless verso il cellulare: se avete culo il cellulare dovr‡ mostrare il numero del mittente eÖvoil‡! Ora conoscete il numero del vostro Hacked-Cordless! (Con molti cellulari purtroppo ësta faccenda non funge, peccato :-( )
L'Articolo Ë terminato, un piccolo resoconto sui tipi di forcingÖspero di avervi soddisfatto ed alla prossima!!
---OlDiroN 61 (AiS KdT!)---
##########################################################################
####### RRRRR EEEEE V V OOOOO L U U TTTTT III OOOOO NN N #######
####### R R E V V O O L U U T III O O N N N #######
####### RRRRR EEE V V O O L U U T III O O N N N #######
####### R R E V V O O L U U T III O O N N N #######
####### R RR EEEEE V OOOOO LLLLL UUUUU T III OOOOO N NN #######
##########################################################################
#ESPLOSIVI: CHE PASSIONE!#
Disclaimer: Tutte le informazioni contenute in questo articolo sono da considerare solo per scopo educativo, pertanto non ci riterremo responsabili per eventuali danni causati dall'utilizzo delle tecniche descritte nel articolo seguente.
Autore : Oldiron61 (AiS-KdT!)
Da qui seguiranno una serie di progetti, disposti in ordine di difficolt‡ di creazione, non in ordine di pericolosit‡! =)
#Acid Bomb#
Materiali:
1 Bottiglia di plastica vuota 1,5 L
20 Cl di acido muriatico
1 M≤ di Carta stagnola
Descrizione: Una bomba semplice ma abbastanza pericolosaÖ Versate líacido nella bottiglia, poi introducete dentro la bottiglia il foglio di stagnola, che in precedenza avevate ridotto a pallini; infine tappate la bottiglia con il tappo e LANCIATEEEEEEE!!!!!!!!!!!!
Líacido, in contatto con la stagnola, produrr‡ idrogeno, fino a quando la bottiglia non riuscir‡ pi˘ a contenere il gas e BOOM! Ovviamente líacido schizzer‡ ovunque e provocher‡ i suoi bei danniÖ Io non vi ho detto niente! ;)
#Molotov#
Materiali:
1 Bottiglia di vetro vuota (33/50 Cl.)
50 Cl di Liquido infiammabile
1 Straccio
Descrizione: Una delle bombe pi˘ belle e facile di costruzione. La molotov, oltre ad essere un ottimo mezzo per bloccare le strade ai pulotti, Ë anche un'icona: il simbolo della lotta.
A seconda del liquido e della quantit‡(Non esagerate!) gli effetti possono cambiare.
Per esempio, l'alcool Ë pi˘ reattivo e porta ad una esplosione, mentre la benzina serve di pi˘ per creare una barriera... se posso dire la mia consiglierei il petrolio bianco(Non si rischia di rimanere "offesi" dalla bottiglia infiammata, visto che il petrolio bianco Ë un liquido abbastanza sicuro: lo usano anche i mangiatori di fuoco!).
Per costruirla vi basta riempire la bottiglia, bagnare lo straccio, infilarlo nella bottiglia a met‡, accendere e LANCIARE!
#Standard Pipe Bomb#
Materiali:
1cilindro di PVC cavo.
100g di polvere pirica
2Dischi di sughero (Stesso diametro del tubo)
Chiodi, Bulloni ,Pallettoni, qualunque cosa metallica che non si distrugge e che puÚ fare molto male
Riempire il cilindro in questo ordine:1)tappo di sughero 2)polvere pirica 3)oggetti metallici e non 4)tappo di sughero
Descrizione: La standard pipe bomb Ë il tipo di bomba pi˘ rudimentale, ma anche una delle pi˘ potenti. Di facile costruzione, Ë stata utilizzata nel 1996 per l'attentato alle olimpiadi di Atlanta.
Esplodendo, la forza dell'esplosione fa schizzare tutti i chiodi e gli altri oggettini addosso a chi si trova vicino alla bomba, coprendo, a seconda della quantit‡ di polvere pirica, un vasto raggio.
Per quanto riguarda l'innesco, se non sapete fare un detonatore, usate una lunga miccia a combustione lenta.
#Timer Casalingo#
Materiali:
1 Sveglia micro
2 Placche ramate
4 Cavi Elettrici
Descrizione: Questa Ë una invenzione del sottoscritto: il funzionamento Ë semplicissimo!
Bisogna aggiungere sotto la lancetta delle ore una placca ramata, mentre l'altra placca verr‡ fissata al di sopra della lancetta dei minuti.(Nel caso in cui la lancetta delle ore si trovi sopra quella dei minuti...se sono al contrario bisogna invertire le placche 8-))
Da queste 2 placche bisogna far partire 2 cavi che arriveranno al dispositivo di detonazione, ed altre due che porteranno allíalimentazione.
Alimentazione---Timer------Detonatore
___ _____ ___
| | | | | |
| A |-------+ T +--------| D |
|___| |_____| |___|
E come puÚ funzionare???
Semplice!Le lancette si sovrapporranno, il circuito si chiuder‡ e...BOOM!
Note: il timer ha un'autonomia di Max. 59 Min. (Un giro di lancette).
Bene, per questa volta abbiamo finito qui: la prossima puntata parleremo soprattutto dei sistemi di detonazione.
---OlDiroN 61 (AiS-KdT!)---
#RADIO PIRATA#
Autore : Oldiron61 (AiS-KdT!)
DISLAIMER: L'utilizzo di queste informazioni Ë alquanto pericoloso per la propria sicurezza, c'Ë un forte rischio di essere intercettati tramite un radiogoniometro, quindi state MOLTO attenti a quello che fate!
LE INFORMAZIONI CONTENUTE IN QUESTO DOCUMENTO SONO STATE SCRITTE SOLO PER SCOPO EDUCATIVO
Bene Bene... cosa c'Ë di pi˘ bello (Oltre a dar fuoco ad una sede Telecom) che creare una radio pirata? Forse una canna? Forse una scopata? Mah! Lascio la risposta a voi... =) =) =) =) =)
< /FOOL>
< SERIOUS>
Ricominciamo, l'approccio non era molto serio!
Una radio pirata puÚ essere molto utile, anche se i rischi sono molto elevati, e puÚ essere utilizzata per vari scopi:
#Divulgazioni di informazioni riservate
#Notiziari REALI (Non con quelle informazioni digerite e rigirate a piacimento dai padroni)
#Trasmissione di musica decente!
La creazione di una radio pirata non Ë complicata, e necessita di un'esigua mole di attrezzature...praticamente un'attrezzatura da radioamatore un po' potenziata!
N∞1 Radiotrasmettitore VHF Band (Portata consigliata 66-174 Mhz)
N∞1 Amplificatore Lineare (Potenza minima 40 Watt)
Apparato di Alimentazione
N∞1 Antenna
N∞3/4 Filtri di rumore
Componenti Opzionali:
N∞1 Mixer
N∞1 Lettore CD/MC
Il Procedimento Ë semplicissimo: basta scegliere una frequenza libera (se non si vuole essere subito intercettati) e cominciare a trasmettere. Facile vero? Non Ë tutto oro ciÚ che luccica! (Minchia come sono colto!)
Il rischio che si corre Ë quello di essere intercettati. La G.d.F., come del resto ormai tutti i nuclei di pubblica sicurezza, possiedono degli apparecchi chiamati "Radiogoniometri". Questi aggeggi servono per intercettare le trasmissioni radio, decidono una frequenza, intercettano una trasmissione, fornendo una traiettoria (In linea retta) della fonte della trasmissione. Bastano due radiogoniometri per individuare il luogo della trasmissione con un margine di errore di 15 Mt (Il punto Ë dato dall'intersezione delle due traiettorie tracciate dai due radiogoniometri, posti in diversi luoghi).
Un modo per non essere intercettati al primo colpo, Ë quello di creare un ripetitore. IN questo modo il radiogoniometro non individuer‡ la reale fonte di trasmissione, ma l'emissione del ripetitore. E dove installare questo ripetitore? Il mio consiglio Ë quello di installarlo in un posto il pi˘ imboscato possibile, l'antenna deve essere perÚ elevata di diversi metri per avere una massima portata. Dovrete creare un ponte radio tra voi ed il ripetitore in modalit‡ DUPLEX, in modo che voi trasmetterete ad una frequenza tranquilla, (ed il ripetitore sparer‡ le vostre onde radio-anarchiche ad una frequenza prestabilita (Ex. 104.200 Mhz). In questo modo i rischi di essere intercettati non saranno annullati, ma almeno saranno affievoliti(Líunico neo Ë che la creazione di un ripetitore in duplex puÚ essere ABBASTANZA difficoltoso! Se in futuro avremo abbastanza informazioni, vi spiegheremo come costruirloÖ).
In questo numero, visto che un trasmettitore Ë gi‡ stato presentato da TecnoKnight su Vana-Imago0, analizzeremo e costruiremo un amplificatore FM che puÚ erogare una potenza max di 40W con una alimentazione in CC di 12Volts (Max.13,8Volts). Dal prossimo numero analizzeremo un trasmettitore FM, líantenna, alcuni filtri di rumore, ed infine i trucchi logistici e non per non essere colti subito.
Il progetto lího fatto in ASCII, perÚ, come ho detto prima non sono LeonardoÖ quindi se avete problemi di comprensione con questo progetto, richiedetemi il progetto originale.
------------------------TAGLIA QUI----------------------------------
Antenna 50 ohms
L4 ___ /
______ ___^^^^^^^^___@|___ \__OUT
Antenna 50 ohms |3 | ^^^^^^^^ @| \__ \
\ ___ C1 L1 | / | C3 | \
IN \___ \_____@|__ __^^^^^^^^____ __|/ TR ) ) |
/ \__ @| | ^^^^^^^^ | 2|\ ) ) L3 |
/ | | | | \1 ) ) |
| | | | | |
| | ) ) | @(_______ |
| _|_ L2 ) ) | @( C4 | |
| C2 @ @ ) ) | | | |
| | | | | | |
| | | | | | |
| | | | | | |
#-----------#--------------#----#------#--------#-------------#
| |
##### |
### |
# MASSA @ + Vcc 12V
Componenti Elettronici:
C1-C2-C3=Compensatori a Mica Compressa 3/50 pF
TR= Bassa Potenza: (Tipo ìStriplineî) B12/12 oppure 2N6081
Alta Potenza: (Tipo ìSurplusî) MSA8506 (FAIRCHILD),
3TE609 (ITT),
MM1699 (MOTOROLA),
TA7344 (RCA),
V410 (UNITED AIRCRAFT).
NB: I transistor sono stati listati in ordine crescente di postenza
#BOBINE#
##################################################################################
#BOBINA N∞ |N∞ SPIRE |DIAMETRO FILO |MATERIALE FILO |INTERSPIRA |DIAMETRO INTERNO#
##################################################################################
#----------+---------+--------------+---------------+-----------+----------------#
# L1 | 1,5 | 1 mm |RAME ARGENTATO | 2mm | 8mm #
#----------+---------+--------------+---------------+-----------+----------------#
# L3 | 11 | 1 mm |RAME ARGENTATO | 0,5mm | 8mm #
#----------+---------+--------------+---------------+-----------+----------------#
# L4 | 5 | 1 mm |RAME ARGENTATO | 1,2mm | 8mm #
#----------+---------+--------------+---------------+-----------+----------------#
##################################################################################
L2= Impedenza VK200, meglio se SHUNTATA da una resistenza anti-induttiva da 10ohms
--------------------------TAGLIA QUI----------------------------------------------
Spero di essere stato esaurienteÖse ci sono errori non dovete fare altro che segnalarmelo!
Ciao a tutti! e mi raccomando, state all'erta!
---OlDiroN 61 (AiS KdT!)---
#COLTIVAZIONE OUTDOOR DELLA CANAPA INDIANA (CANNABIS INDICA)#
Autore: Oldiron61 (AiS-KdT!) (Oldiron61@iname.com)
Ecco finalmente un argomento molto interessante, e anche molto utile: al coltivazione della Maria fuori nellíorticello del nonno, oppure nellíorto botanico della scuola!
Tutta la coltivazione si divide in vari passaggiÖÖtutti da seguire con la massima accuratezza.
Bene, cominciamo!
Disclaimer: líautore declina ogni responsabilit‡ per líuso e líabuso di queste informazioni. Il tutto Ë stato scritto per soli scopi educativi, líautore non vuole con queste informazioni convincere i lettori a commettere reati come la coltivazione ed il consumo di sostanze stupefacenti.
1)Conformazione del seme
Il seme non deve essere bianco, schiacciato oppure spezzato, deve resistere alla pressione del dito, meglio se il semino Ë striato.
2)Preparazione del terreno
Il terreno deve contenere materia organica, líacqua non deve mai ristagnare, deve quindi avere un ottimo drenaggio. Inoltre deve essere esposto molto alla luce.
3)La semina
Occorre adagiare il seme su di un manto di cotone idrofilo bagnato, e la temperatura deve essere costantemente tra i 15∞ ed i 18∞C. Dopo alcuni giorni (da 2 a 10 secondo la qualit‡ del seme) le piantine usciranno dal guscio, con lo stesso guscio ancora attaccato al fusto, quando il guscio cade si aprono i cotiledoni, dopo di loro appariranno le prime vere foglie. Ora si puÚ rinvasarle in un vasetto di terriccio.
Dare a queste piantine almeno 12-13 ore di luce al giorno, infatti, líideale Ë piantare dopo líequinozio di primavera (21 Marzo) cioË quando le giornate si allungano.
4)Il rinvaso
Va eseguito dopo 3-6 settimane di vita delle piante.
Eí uníoperazione molto delicata, bisogna farlo la sera oppure la mattina presto, per evitare inutili shock alle piantine. Bisogna scavare una buca nel terreno di dimensioni doppie il vaso, mischiare alla terra torba e terriccio. Eí utile bagnare il terriccio del vaso prima di estrarre la piantina, per evitare di rompere le piccole e fragili radici.
Nei giorni seguenti al rinvaso, devi mantenere umido il terreno del nuovo vaso per evitare che le piante si secchino.
5)Lo sviluppo della crescita
Dopo il rinvaso, le piantine cresceranno a vista díocchio: Ë importantissimo nutrirle con acqua e con dosi uguali di AZOTO (N) FOSFORO (P) e POTASSIO (K), uniti a vari micronutrimenti [MAGNESIO, ZOLFO, FERRO, BORO]
Líelemento pi˘ importante Ë líAZOTO, che si pensa possa favorire una maggiore probabilit‡ di piante femmine. Un ottimo fertilizzante naturale che vi consiglio Ë il sangue di BUE. Contiene tutti gli elementi essenziali ed Ë facile da trovare.
6)La fioritura
Dal 2∞ mese in poi, una pianta puÚ fiorire, in coincidenza con il solstizio di estate (21 Giugno), quando cioË le giornate si accorciano. Il primo segno della fioritura Ë al comparsa di fiori allo stato embrionale, ed il sesso della pianta Ë ancora irriconoscibile.
I fiori delle piante maschili si riconoscono perchÈ hanno una iniziale forma ricurva, che si riempir‡ dopo poco tempo di boccioli rotondi.
I fiori femminili si riconoscono dallíingrossamento dellíembrione, che diventer‡ una specie di calice tubolare, a punta, da cui presto spunteranno pistilli (gialli o rossi). Tra i calici si formeranno sempre pi˘ fiori, dette infiorescenze
I tempi di maturazione dipendono dalle variet‡ della canapa, per essere sicuri del sesso, bisogna aspettare la formazione dei primi fiori riconoscibili.
Ovviamente quelli che si fumano sono i fiori femminili, portatori sani di THC, mentre quelli maschili non hanno alcun effetto psicoattivo(al massimo ci potete piazzare le SOLE), quindi Ë importante separare i due sessi prima che le piante maschili contaminino quelle femminili. Prima cioË che il maschio impollini la femmina, che produrr‡ semi, perdendo la percentuale di fiori (líerba non impollinata Ë detta ìsinsemilaî cioË senza semi)
7)La raccolta
Quando la resina delle piante femmine cambia aspetto, significa che Ë tempo di tagliare.
La raccolta si puÚ fare in due modi: tagliando líintera pianta oppure tagliando un ramo per volta.
Dopo il taglio, avvolgi i rami o la pianta intera in fogli di giornale di forma conica, ed appendili a testa in gi˘ dentro un armadio, un ambiente secco e buio. Non bisogna maneggiarle troppo, una volta appese lasciale lÏ fino come minimo 20 giorni. Quando i rametti si spezzeranno sotto la pressione delle dita, líessiccazione Ë completata.
Riporre líerba in vasi di vetro.
Tutto chiaro? Se vi dovesse riuscire, mandatemi qualche grammo in attachement a oldiron61@iname.com
Ciao a tutti!
---Oldiron61 (AiS-KdT!)---
####################################################################
####### SSSSS K KK RRRRR OOOOO K KK K KK III NN N GGGG #######
####### SS K K R R O O K K K K III N N N G #######
####### SSS KK RRRRR O O KK KK III N N N G GG #######
####### SS K K R R O O K K K K III N N N G G #######
####### SSSSS K KK R RR OOOOO K KK K KK III N NN GGGG #######
####################################################################
#COME ABBONARSI ALLE PAY-TV GRATIS!#
(Testo originale scaricato dal sito del Satellite Svizzero)
---Traduzione di LINUS---
#Premessa
Se nel tuo paese puoi sottoscrivere un abbonamento alle Pay-Tv sotto citate la procedura che segue sarebbe illegale. Queste informazioni sono provvedute solo a scopo educativo e non devono essere usate per vedere Pay-Tv senza pagare.
L'autore non si assume nessuna responsabilit‡ per quanto scritto e se operi lo fai interamente a tuo rischio. C'Ë anche il piccolo ma possibile rischio che nel tentativo di riprogrammare una carta potresti danneggiarla irreparabilmente.
Uomo avvisato, mezzo salvato (thx EmmeBi).
D.1) Iniziamo bene, un'altra sigla (VFAQ), ma che vuol dire?
VFAQ Ë acronimo di Very Frequently Asked Questions. Questa raccolta non vuole essere una FAQ esaustiva sul nostro hobby preferito, ma vuole essere díaiuto ai nuovi del forum cosÏ da evitare loro di fare domande abbastanza noiose per i "vecchi".
D.2) Ma voi del furum quanto tempo passate davanti alla TV?
Solitamente pocoÖ stiamo la maggior parte del tempo a chattare o a leggere/scrivere sui forumÖ tranne quando uno si ammala, ma allora Ë un altro discorso.
D.3) Ma perchË scrivete STR**M o D* anzichË il nome per intero?
Per sfuggire ai ragnetti di Altavista o degli altri motori di ricerca. CosÏ non attiriamo nel forum tutti i navigatori occasionali.
D.4) Posso abilitare una carta dellíemittente yyyy anche alla decodifica del bouquet xxxx ?
Teoricamente Ë possibile, del resto le card supportano due prividerID. Praticamente allo stato attuale non sappiamo come fare. Quindi, per ora, la risposta Ë NO.
D.5) Posso usare il decoder di STR**M per vedere D*?
Certo che si. Puoi vedere tutti i bouquet trasmessi con codifica IR**TO, a patto di avere la smart card.
D.6) Cosa vuol dire ECM?
ECM Ë acronimo di ControMisura Elettronica. In sostanza si tratta di una contomisura che l'emittente prende per evitare che gente come te guardi a sbafo i suoi programmi. Esistono due tipi di ECM:
- nel primo l'emittente invia degli impulsi di disattivazione alle carte. Questo tipo di impulso puÚ essere filtrato con un blocker;
- nel secondo l'emittente invia dei nuovi codici, che utilizzer‡ in un secondo momento, alle carte registrate. Usando un blocker non si ricevono i nuovi codici e quindi, molto probabilmente, quando l'emittente far‡ uno switch usando tali nuovi codici si rester‡ all'oscuro.
D.7) Che cosa sono le MOSC? Degli insetti?
MOSC Ë acronimo di SmartCard Originale Modificata. In sostanza si tratta di una carta originale dell'emittente che, dopo essere scaduta o dopo essere stata disattivata, viene riprogrammata in modo che sia di nuovo possibile utilizzarla.
D.8) Dove posso trovare le carte originali (da far diventare MOSC) di STR**M e di D*?
Quelle di D* sono in vendita, occorre comprare il Welcome Kit per ricevitori con tecnologia IR**TO, e costano 61.000. Contestualmente occorrerebbe abbonarsi ad uno dei pacchetti dell'emittente. Tuttavia alcuni negozianti non obbligano a stipulare l'abbonamento dentro il loro locale commerciale, anche perchË se lo si fa da casa via telefono si ha una attivazione pi˘ veloce e si puÚ godere del diritto di recesso. Purtroppo queste carte diventano sempre pi˘ rare, sia perchË c'Ë chi ne ha fatto incetta, sia perchË i rivenditori stessi a volte se le tengono e le vendono gi‡ riprogrammate, sia anche perchË D* sa che poi vengono riprogrammate ed allora ne distribuisce sempre meno.
Per quanto riguarda STR**M, nel mese di dicembre 1998 Ë stata fatta una campagna promozionale: chi spediva un apposito coupon allegato ad una rivista del settore dichiarando di avere gi‡ un ricevitore IR**TO, riceveva a casa una carta con 6 mesi di abbonamento. Salvo questa promozione, non Ë possibile avere la card se non si sottoscrive un abbonamento.
D.9) Ma perchË ce l'avete cosÏ tanto con i commercianti che vendono card riprogrammate?
Al di l‡ dei motivi etici (costoro lucrano utilizzando il frutto della "ricerca" altrui e speculando sull'ignoranza dei clienti...) il motivo Ë molto semplice: i commercianti che vendono card gi‡ riprogrammate ne fanno incetta e contribuiscono a far scomparire dal mercato le carte originali, cioË quelle del Welcome Kit da 61.000, impedendo cosÏ a noi poveri malcapitati di divertirci a friggerle con il phoenix. Inoltre fanno esplodere il fenomeno della pirateria, rendendo pi˘ immediate le contromisure dell'emittente.
D.10) Come si attivano le MOSC?
Non lo sappiamo ancora fare. Per il momento siamo in grado solo di RIATTIVARLE! Quindi occorre che prima in qualche modo ti abboni, oppure ti procuri una carta pre-abilitata per 10 giorni, poi potrai riattivare la card rendendola di nuovo operativa. Par fare questo ti occorre una interfaccia Smart Mouse o Phoenix ed il relativo software.
D.11) Che differenza c'Ë tra un'interfaccia Smart Mouse ed una Phoenix?
La differenza Ë nella modalit‡ di gestione del segnale di RESET: in un caso il reset viene attivato mandando un segnale alto, nell'altro un segnale basso. Per le MOSC occorre una interfaccia Phoenix a 3,57 o 6mhz e reset non invertito (da soft); per le +1 +x Hornet e Dspc occorre lo Smart Mouse a 3.57 mhz e reset invertito. Le nuove generazioni di software consentono comunque di cambiare la modalit‡ di reset, per cui in certi casi si puÚ usare un Phoenix al posto di uno Smart Mouse e viceversa.
Un'altra differenza sta nell'alimentazione: lo Smart Mouse originario prendeva l'alimentazione dalla porta seriale del computer, ma pare che la tensione fornita sia troppo bassa per i nostri scopi. Il Phoenix, invece, richiede alimentazione esterna.
D.12) Ok, mi serve un Phoenix, ma chi lo vende? Lo trovo nel negozio di cose satellitari?
Non credo proprio. Hai due possibilit‡:
- scarichi uno schema costruttivo (ad esempio smause3.zip, su questo sito alla voce "digital") e te ne costruisci uno da solo;
- ne compri uno gi‡ fatto. Quello in vendita su www.hisat.com (da 39 sterline) va benissimo. Paghi con carta di credito, ti arriva dopo 3-4 giorni e non hai spese di spedizione. Altrimenti prova anche su Errore. Il segnalibro non Ë definito.
p.s.: Non prendo alcuna tangente dai siti citati per la pubblicit‡ occulta ;-)
D.13) Dove si compra l'adattatore Amphenol per smart card
Eí un poí difficile da trovareÖ prova su http://www.rs-components.it, cerca "smart card" e lo trovi subito.
Attenzione perÚ: RS vende solo a chi ha partita iva, se non la hai prova da un rivenditore di futura elettronica (Ë una rivista di progetti) e chiedi il kit FT237, contiene cio' che ti serve, prezzo 18.000 lire (tnx Antonio).
D.14) Ho acquistato da poco un programmatore Phoenix 3,5Mhz. Come faccio a cambiare l'oscillatore?
PerchË devi cambiare l'oscillatore? Non c'Ë bisogno! IRDETO98 ormai dopo gli ultimi ECM Ë obsoleto, mentre gli altri programmi (CardMaster, CardWizard e Card Devil) funzionanon tutti sia con oscillatore da 3,5 che da 6 Mhz.
D.15) Ho una card di D+ che non uso da tempo ed una con un abbonamento minimo. Che faccio, la programmo?
Si, forza!
D.16) Ora che ho tutto il necessario, mi spiegate per filo e per segno cosa devo fare, che non lího ancora capito?
Collega il programmatore e lancia Cardmaster o Cdevil. Presta attenzione che siano settate la porta COM e l'oscillazione (3.5 o 6MHz) esatta. Controlla anche che tutti gli eventuali ponticelli sul tuo programmatore siano posizionati correttamente. Cardmaster Ë molto instabile, per questo CDevil (DOS) sarebbe da preferire.
Con Cardmaster Ë preferibile lanciare prima il programma e poi inserire la carta.
Premendo "connect" si ottiene un ATR ed alcuni dettagli della carta. Scegli poi il file *.crd che intendi usare. Esegui il file. Dovrai aspettare alcuni minuti. CDevil ti avviser‡ con un simpatico beep quando ha finito, Cardmaster visualizzer‡ la scritta "Done". La tua carta Ë pronta.
D.17) Cos'Ë un BLOCKER?
E' una interfaccia (hardware o software) che si interpone tra smart card e relativo slot e che filtra alcuni comandi di scrittura sulle card. Esistono due tipi di blocker:
- il primo Ë hardware e consiste in una scheda da inserire al posto della smart card. Dentro la scheda poi andr‡ inserita la smart card reale;
- il secondo Ë di tipo software ed Ë disponibile solo per i possessori di Nokia Mediamaster, i quali possono caricare il software del dr. Overflow (DVB2000) ed attraverso un men˘ nascosto attivare detta la funzione.
D.18) Cosa vuol dire Loggare? E se mi piacesse e volessi farlo anche io?
Ricordi, il blocker Ë una interfaccia che si interpone tra smart card e relativo lettore? Con una interfaccia analoga anzichË bloccare la scrittura sulla carta, si puÚ fare una copia di tutto ciÚ che la CAM e la SC si scambiano. In questo modo si possono catturare, ad esempio, gli impulsi di attivazione o disattivazione (o anche altra roba) che l'emittente invia alle smart card.
Anche in questo caso esistono due possibilit‡:
- si puÚ fare una interfaccia hardware, come mostrato in alcuni file;
- si puÚ utilizzare una funzione del DVB del dr. Overflow.
D.19) Ma cos'Ë questo DVB2000?
Il dvb 2000 Ë un software per smanettoni, realizzato da dr. Overflow (nella vita Uli) in base alle segnalazioni dei vari utenti del Nokia MediaMaster 9200/9500. Questo software, dunque, Ë stato fatto dagli utenti del prodotto e non dai produttori, e proprio per questo Ë molto valido. Va a sostituire i vari fta2.3 o tpn3.1 etc... Solo la versione beta36 ha il menu nascosto detto "nosferatu" che permette di loggare e settato in modo diverso fa' da blocker.
D.20) Ma allora questo DVB2000 Ë una ficata! Dove lo trovo?
Le varie versioni sono disponibili in tantissimi siti del "satellite code network". CíË anche un sito ufficiale, Errore. Il segnalibro non Ë definito.. Altre interessanti informazioni, in italiano, li trovi su http://alphasat.it/Comax/ e su http://www.dominance.net/overflow/.
Attenzione: se non hai un Nokia non ti serve a niente!!!
D.21) Come attivo il menu "Nosferatu" sul 9200/9500?
Devi fare prima la seguente modifica interna al tuo ricevitore: Ë un semplice ponte tra il pin 2 (da destra) del connettore per smartcard interno del 9500 ed il pin 7 del cavo piatto a 10 pin (2 file da 5)del modem. Detto cosÏ si capisce poco, ma sul sito satpirates ci sono quattro foto che chiariscono il tutto. Per il 9200 il cavetto va saldato al pin 2 di XP02 dato che non Ë presente il connettore del modem (in verit‡ Ë lo stesso pin ma il connettore del 9500 Ë a specchio) (tnx Steve)
Se hai installato la versione Beta36 del DVB 2000 il nosferatu code dovrebbe essere: 56578888
Come fare? Dovresti premere 2 volte exit poi compare un menu per inizializzare la cam con lo sfondo nero, a quel punto digiti il codice 56578888 e ti dovrebbe comparire un menu esteso...
Per attivare il blocker una volta nel nosferatu hai due possibilit‡ (tnx Eagle):
1) Loggare solo le chiavi inviate al gruppo di carte a cui appartiene quella
inserita nella cam. Per farlo il menu Nosferatu deve essere configurato in questo modo:
1 -monitor_all_ecm
2 -normal
3 -BLK prot: OFF
5 -parental pin
6 -change Pin:
7 -find Pin
8 -Enter Pin:
9 -Log prm: ON
A -Log sec: ON
2) Loggare le chiavi di tutti i gruppi di carte. Per farlo, il menu Nosferatu deve essere configurato in questo modo:
1 -monitor_no_ecm
2 -normal
3 -BLK prot: OFF
5 -parental pin
6 -change Pin:
7 -find Pin
8 -Enter Pin:
9 -Log prm: OFF
A -Log sec: OFF
Il menu Data Download (menu 6) deve essere settato in questo modo:
1 -Log PID 0600>PC
2 -Mode: entire
3 -Status: STOPPED
4 -HEX
5 -Normal
6 -Buffer: 8
Per cominciare a loggare premere il tasto 3 e diverra':
3-Status: RUNNING
D.22) A proposito di dr. Overflow, ho sentito parlare di un tale TRON... Ë la stessa persona, c'entra qualcosa?
No, TRON era un giovane ingegnere tedesco con la passione della pirateria. Dopo la telefonia cellulare, si era lanciato nel settore dei canali televisivi satellitari, conseguendo notevoli risultati (tra cui il famoso IRDETO98). E' a lui che si deve la maggior parte dell'attuale know-how, ed in particolare di quello utilizzato per la riprogrammazione delle carte originali (vedi MOSC). PerÚ mentre nel caso del GSM dava fastidio per lo pi˘ al solo gestore telefonico, nel caso satellitare infastidiva molto chi produceva e commercializzava le carte pirata (vedi DPSC), tra cui le famose HORNET... un giorno venne cosÏ trovato impiccato ad un albero! I suoi amici dicono che da solo non l'avrebbe mai fatto, e che sicuramente Ë stata opera della mafia bulgara. Cosa sia davvero successo lo sanno in pochi, sta di fatto che sicuramente ha pagato a caro prezzo le sue convinzioni.
D.23) Posso usare il mio decoder ITALTEL per fare del logging?
Certo, basta che ti procuri o ti costruisci l'interfaccia hardware, come descritto ad esempio nel file LOGGER1.ZIP. Dovrai poi usare il programma SEASON.ZIP che contiene XS4U.
D.24) Come si fanno i CRD?
I CRD si "fanno" con NOTEPAD: basta aprire un file di testo, scriverci dentro la sequenza di numeri, e poi salvare con estensione .CRD. Il difficile Ë sapere COSA scrivere dentro il CRD, ovvero la sequenza di numeri. Per far questo generalmente si guarda cosa hanno fatto i nostri fratelli maggiori tedeschi (che ne sanno a pacchi pi˘ di noi), si guardano i log fatti da noi stessi o dai nostri amici e poi si cerca di fare un nuovo CRD con la tecnica del "taglia e incolla". Fatto il CRD, bisogna testarlo, sempre incrociando le dita. Infatti a volte le istruzioni che si mandano finiscono per danneggiare la scheda, anche in modo irreparabile.
D.25) Ho una card funzionante, come faccio a creare, partendo da questa, il CRD che riabilita anche le altre?
Non si puÚ! I CRD si creano partendo dai log, non dalle carte funzionanti.
D.26) Ho due carte, perchË una va e l'altra no?
E che ne sappiamo noi, mica siamo dei veggenti! Per darti una risposta devi dare qualche informazione in pi˘: le prime 5 o 6 cifre del numero di serie, da quanto tempo l'hai attivata, se hai un qualche abbonamento di qualche tipo, se ci hai smanettato supra inviando dei CRD di provenienza ignota... insomma, pi˘ informazioni dai pi˘ precisa sar‡ la risposta che, eventualmente, qualcuno ti dar‡!
D.27) Esiste una card che "si vede tutto"?
NO!
D.28) Ho una card che prima andava, ora non lo so, non lího ancora messa nel ricevitore ed ho paura di farloÖ posso riprogrammarla prima, posso fare qualcosa?
Mi sembra di sognareÖ Ë inutile fasciarsi la testa prima di essersela rotta!
D.29) E cosa sono le DPSC?
Anche questo Ë un acronimo, e vuol dire Digital Pirate Smart Card. Insomma, del Smart Card non originali. Le pi˘ famose sono le Hornet, che possono contenere anche tre pacchetti (ST**M, D* e S*T contemporaneamente). In genere costano tanto quanto un anno di abbonamento ai singoli pacchetti. Vuoi un esempio: http://www.geocities.com/RodeoDrive/Mall/4071/digitale.html
Attenzione: la maggior parte delle DPSC puÚ essere riprogrammata solo con phoenix a 3,5 Mhz.
D.30) Mi sono accorto ora che le HOR**T +1 dopo un anno scadono. Posso fare qualcosa?
Si, esiste un file, +1.crd, che rimuove la data di scadenza dalle Hornet+1.
D.31) Posso leggere una Smart Card e ricopiarla su un'altra? Posso duplicare le carte originali?
Purtroppo no. Una funzione di protezione fa in modo che se tenti di leggerne il contenuto, essa si cancella. Puoi, quindi, solo cercare di scriverci qualcosa.
D.32) Dove posso trovare informazioni sul SECA?
Sicuramente ti conviene fare una capatina su http://members.xoom.com/Heerlennet/ . Se hai problemi di collegamento, cíË poi in giro un file, il SECASTUFF.ZIP, che contiene líintero sito.
D.33) Come faccio a scaricare tutti i messaggi del board e leggerli on-line?
Vai su Errore. Il segnalibro non Ë definito. e poi nella sezione "off-line browser". LÏ scegliti un programma ed usalo. Io uso BlackWidow.
D.34) Ma questi di CanalPlus, perchÈ anzichÈ trasmettere dieci volte lo stesso canale in dieci bouquet diversi, non lo trasmettono una sola volta con tutte le portanti audio, unificando la gestione degli abbonamenti?
Questa Ë una domanda davvero intelligente! Bisognerebbe porla a CanalPlus!
D.35) Dopo líECM mi si Ë oscurato il calcio serie A!
Attenzione! I canali P a volte trasmettono dei film in SECA (la famosa Pay Per View). Ovviamente se hai un ricevitore IRDETO vedi lo schermo nero. Quindi molto probabilmente la tua card non Ë stata disabilitataÖ semplicemente in quel momento stanno trasmettendo un film.
D.36) Volevo sapere se Ë possibile attivare la Pay-per-View di D* con un ricevitore Irdeto
Attualmente D* non trasmette la PPV con codifica Irdeto, ma solo in Seca. Quindi non hai nulla da abilitareÖ
D.37) Posso attivare la PPV di STR**M?
Devi prima farti abilitare dalla STR**M stessa, la quale ti mander‡ la key necessaria alla decodifica, quindi potrai riprogrammare la tua card rendendola visibile senza pi˘ dover pagare. Attenzione perÚ: con periodicit‡ mensile, il decoder dovrebbe chiamare STR**M su numero verde e scaricare líelenco degli eventi acquistati. Dal momento che riprogrammi la card il decoder non chiama pi˘, e quindi Ë possibile che capiscano la faccenda!
D.38) Oddio, oddio, oddioooooooooÖ un nuovo ECM, che faccio butto la card?
Calma, calma! Non bisogna mai buttare nulla! Cosa occupa una MOSC? Puoi metterla in mezzo ad un libro e conservala per momenti pi˘ propizi... prima o poi qualcosa salter‡ fuori.
D.39) Ora che la cosa inizia a piacermi, dove posso trovare maggiori informazioni?
Prima dovresti prendere in seria considerazione líidea di fare un corso di lingue, giacchË la maggior parte delle informazioni Ë in Tedesco o in Inglese. Poi prova a guardare
Errore. Il segnalibro non Ë definito.
http://www.magma.ca/~donhewie/page2.htm
http://www.jstic.li/cypher/book/index.htm
(tnx Fomega e Pippo)
---LINUS---
#COME RIATTIVARE UNA IRDETO CARD ORIGINALE#
dal 007,4
---Traduzione di LINUS---
Non sono un esperto in queste "discipline" ma un hobbista a cui piace imparare. Ho lettole FAQs, le "read.me" ed i "post" nei vari forum e quindi ho messo a frutto le conoscenza ottenute per riattivare la mia card. La mia esperienza Ë solo con DF* e Pr******. Le procedure dovrebbero essere le stesse per gli altri paesi che usano il sistema Irdeto. Ho fatto questo perchÈ sono interessato su come funziona il sistema di decodifica.
Ho scritto questo testo perchÈ mi sembra che nessuno piu' esperto di me lo l' habbia gi‡ fatto!
Attenzione
Se puÚi acquistare un regolare abbonamento per le Tiv˘ che usano questo sistema di codifica nel tuo paese, allora le procedure qui descritte, sono illegali. Questo informazioni sono divulgate solo per scopi di ricerca scientifica e non devono essere usate per ottenere la visione di pay Tiv˘ . L'autore non accetta responsabilit‡ per questo e chi lo fa lo fa a proprio rischio. Esiste anche un piccolo rischio che la card possa essere irreparabilmente danneggiata durante il processo di "riprogrammazione". Siete stati avvertiti !
Quello che serve
Un dbox o Nokia Mediamaster con Irdeto All-Cam o C-Cam (Un Irdeto olandese cam "Blu" non funziona) programmato con DVB 98 v80ES (Freeware) o DVB2000 beta 36 (Shareware- cosÏ paga Uli!). Serve una card originale (MOSC), o vergine (non attivata ufficialmente ) o scaduta.
Se hai una card scaduta puoi voler fare il "log" di dati che scambia la card con il decoder. Questo puÚ essere fatto in due modi:
1.Interfaccia Season inserita nello slot del decoder e un programma per il "log2 come XS4U. Occorre alimentare l'interfaccia esternamente con +5 volt.
2. Collegamento seriale con un cavo"null modem" tra la RS232 del decoder e la RS232 del PC. Usareprogrammi per il "log" quali DVBLog2000 v6, DVBLog v18b4, ProLog o MasterLog beta v07.
Per scrivere nuove istruzioni sulla card serve un interfaccia Smartmouse (o equivalente) con oscillatore da 3,5 o 6 MHz ed un programma come Cardmaster (Win95/ 98) o CDevil (Dos ma lavora bene in una finestra DOS di W95) o CardWizard (Solo per Smartmouse a 6 mhz ). Con Cardmaster occorre settare la porta di comunicazione (com) e la frequenza dell'oscillatore; uscire quindi far ripartire il programma prima della connessione (connect).
Tron (riposi in pace) ha creato il programma Irdeto 98, files Pro_01.exe e Pro_02.exe che lavorano solo in DOS a 6MHz. Hanno limitate capacit‡ ma sono virtualmente a prova d'idiota.
Invece se hai un Phoenix interface (clock da 6Mhz ) il nuovo SMC (Win95/ 98) funziona con questo- e non con lo Smartmouse.
Servono anche gli ultimi batch per l'Irdeto 98 o gli ultimi files * .crd a meno che non te li voglia costruire da te. Vediamo in seguito..
La Teoria di base Come la Vedo io
Questo puÚ non essere corretto pienamente, ma Ë come l'ho capita. Apprezzerei una descrizione pi˘ informata da qualcuno che la conosca.
Perche' una card funzioni deve avere scritte tre sequenze di dati.
1. Un Date Stamp (datario). Cambia ogni giorno (ma consecutivo?) il codice della data di due byte Ë trasmesso alla card- es.. 02 31.
2.Un corretto Channel ID. Un codice di due byte come FF FC o 00 05.
3. Una Chiave corretta. Questa Ë una sequenza esadecimale di nove byte, il primo byte Ë il numero della chiave.
es.. Chiave 10 potrebbe essere 10 BC 51 7A 74 95 50 3C 69.
A ogni card Ë assegnato un Provider ID (tre bytes come 01 96 67). I primi due bytes sono il gruppo ID (ci possono essere 256 schede decimali in questo gruppo) ed il byte finale identifica quella scheda individuale.
DF1 ha provider 00 e premiËre ha provider 10. Ciascuno ha i propri providerIDs.
In un ECM (electronic control message) le tre sequenze di dati sopra descritte sono inviate a ciascun gruppo di card. Il Date Stamp e il Channel IDs Ë lo stesso per tutti gruppi ma le Chiavi sono diverso per ciascuno gruppo. CosÏ ciascuno provider ID (gruppo) deve avere la propria chiave individuale. Non puÚ cambiare il provider ID.
In una card vergine il provider ID Ë settato a 000300 (per DF1) e 000400 (per premiËre). Le chiavi per il Super-packet e Prem 1,2 e 3 sono anche gi‡ scrive nella scheda. Dal momento che queste schede non sono state attivate, ECMs con nuove chiavinon sono inviate a queste schede. Per Questo non Ë possibile ottenere Cinedom o il PPVs.
Nelle successive serie di card C8000 xxxx il provIDs iniziale Ë 000700 e 000800 e sospetto che le informazioni necessarie per i canali di base non sono gia scritte. Questo perche'i soli comandi di switch on non funzionano e occorre usare lo speciale 800xx.crd . Dopo un attivazione ufficiale il provIDs diviene FFFFFF/ FFFFFF.
Qualcuno ha pi˘ informazioni su questa serie c8000 ?
Quando una card vergine carda Ë attivata ufficialmente, un comando[ 28 0d] Ë spedito alla scheda insieme col Master Key 00 che e' una sequenza esadecimale di otto bytes e il nuovo provID di sei bytes.
Il processo di Attivazione
1. Per Schede Vergini.
Ci sono tre metodi.
a) Collegare l'interfaccia al PC (di solito com1). Far partire il Pc in modalita' DOS ed eseguire uno dei file batch dell'Irdeto 98. Preferibilmente l'ultima versione di DF1.bat o prem.bat. Questo scriver‡ i corretti Channels ID usati al momento dalla card, usando pro_01.exe per DF1 e pro_02.exe per premiËre. PuÚi o non puÚi riuscire ad aprire il Blue Channel usando on_bc.bat o bc.bat.
b) Connettere l'interfaccia ed eseguire Cardmaster o Cdevil. Assicurarsi della corretta porta [com] e della frequenza dell'oscillatore (3.5 o 6MHz) . Anche controllare il corretto settaggio dei DIP switch presenti sull' interfaccia. Cardmaster Ë molto instabile cosÏ CDevil (DOS) Ë probabilmente da preferire.
Con Cardmaster trovo meglio effettuare il "Connect" prima, poi inserire la scheda. Si dovrebbe ottenere allora un ATR e si possono leggere i dettagli della scheda. Non si prema "reset" poiche' questo di solito causa una chiusura. In un modo o in un altro il passo successivo e' la selezione del file * .crd che si desidera usare. (Card85a ha le versioni ultime). Questo sara' probabilmente all.crd o prem123.crd. Far partire il file. Occorreranno pochi minuti dal momento che vengono eseguite le potenziali 256 opzioni per ciascuno checksum] CDevils segnala esattamente quando ha finito. Cardmaster segnala con "done." La tua scheda Ë pronta:))
c) non ho provato questo metodo. Uso Cardmaster, CDevil o SMC.
1. non mettere la vergine carda nel decodificatore.
2. Eseguire killall.crd
3. Eseguire df1.crd
4. Eseguire all.crd
5. Ora si puo mettere la scheda nel dbox!
6. Se Prem3 non Ë aperta
7. Seleziona per un minimo di 10 sec Prem2, quindi 10 sec su Cine-Action e finalmente 10 sec su Stella* Kino.
8.Estrarre la scheda dal dbox e rimetterla nel programmatore.
9. Eseguire premppv.crd
La scheda Ë pronta ora e dovrebbe sopravvivere agli ECM¥s. Ne Cinedom o ppvsono stati provati.
Qualcuno puÚ confermare questo lavoro?
Qualcuno ha informazioni sull' attivazione della serie c8000 ?
2. Per card scadute preventivamente attivate
Queste schede sono migliori da quando il provIDs Ë stato attivato, perciÚ chiavi nuove devono essere inviate per tutti o la maggior parte dei canali. I canali di base possono essere aperti come sopra, ma per il Cinedoms, Prem [ppv] e film a luce rossa occorre fare un log degli aggiornamenti delle key per il proprio provider group. Trovo il metodo "seriale" il pi˘ semplice ma necessita fare una modifica al dbox che consiste nel saldare un filo per collegare un pin del lettore della card al connettore xp02. Questo Ë molto semplice e ci sono fotografie ed istruzioni gi‡ disponibili in rete..
C'Ë un buon read.me col programma di log MasterLog beta v07 a cura di "Seven of nine." Descrive due metodi di numero dilogging seriale. Dovrai provare quale metodo di logging seriale usare con quale programma di log. MasterLog permette entrambi..
PuÚ usare anche la interfaccia Season e il programma XS4U.
Invece di loggare ora si possono ottenere ottenere le chiavi per Cinedom e PremPPV dal programma KeyCalc v5. Questo, Ë un database fatto da qualcuno con un lungo log con MasterLog o qualcosa di simile. Se sei fortunato puoi trovare le chiavi aggiornate di cui hai bisogno. Si dice che ci possono essere errori nel file * .crd generato, cosÏ fate attenzione.
a) logging seriale in Blocker Mode
In Blocker-Mode si possono loggare solo le Chiavi che sono spedite al proprio card-group. Se si Ë fortunati la scheda puÚ essere in un gruppo quale contiene un "Dealer-Card" . CosÏ tutte le chiavi necessarie possono essere loggate! Comunque, c'Ë un gran numero di card che non possono ottenere tutte le Chiavi perchÈ non sono spedite da DF1/ premiËre!
Con la Sua scheda nel dbox accendere per dire Stella* Kino. Il menu Nosferatu necessita di essere configurato cosÏ:
1. [monitor_all_ecm]
2. normal (con nosferatu il blocker Ë attivo)
3. BLK prot: off
5.
6.
7.
8.
9.- Log prm: on (per loggare DF1- provider-00)
A.- Log sec: on (per loggare premiËre- provider-10)
Se non conosce come entrare nel menu Nosferatu occorre fare qualche ricerca. I dettagli sono postati in diversi siti in rete.
b) Serial Logging in modalita " Data Download/ PID-Mode
In questa maniera si possono loggare le chiavi per tutti i Card-Group non solo il proprio.
Il menu Nosferatu necessita di essere configurato cosÏ:
1.- monitor_no_ecm
2.- normal
3.- BLK prot: off
5.
6.
7.
8.
9.-Log prm: Off
A.-Log sec: Off
Il menu Data Download (menu, 6) deve essere settato a:
1- Log PID 1000> PC
2- Mode : entire
3- Status: Stopped (Premere 3 per cominciare il trasferimento dei dati)
4- HEX
5- Normal
6- Buffer: 2
Collegare un cavo null modem e iniziare il log. Proseguire il log per un'ora o pi˘ finchÈ non si ottengono le chiavi volute e con un po di fortuna anche per Cinedom (Chiave 0A) e Prem [ppv] (Chiave 10). Avr‡i bisogno di anche del Channel IDs e del Date Stamp. Trovo dvb2000 v6 un buon programma, quando Ë finito il log generer‡ automaticamente l'adatto file * .crd che ti serve come su descritto.
Se non puÚi costruire il tuo proprio file * .crd allora devi mettere il dati che hai raccolto in un *.crd che gi‡ Ë stato scritto, sostituendo i dati esistenti con i nuovi.
Allora per Cinedom devi fare:
date00.crd (o 00date31.crd- sembra lavorare ma non so perchË- puÚ qualcuno spiega lo scopo del 31?)
Ti sara' richiesta l'introduzione della data (due byte in esadecimale).
Successivamente eseguire
keyon00.crd- dovrai inserire i nove byte della chiave (0A) che hai giusto loggato.
Se la lunghezza della sequenza Ë rigettata (da Cardmaster) prova a confermarla di nuovo ma terminala con una punto e virgola (;)prima di battere l' Enter Finalmente si esegue
idon00.crd per ciascuno channel ID che hai loggato. Inserisci i due byte esadecimali quando ti e' richiesto.
Ripeti questi tre passaggi di nuovo usando date10.crd, keyon10.crd ed idon10.crd per il Prem [ppvs].
Quando il date stamp o le chiavi cambiano perder‡i questi canali. PerciÚ deve usare un blocker software- Nosferatu menu (2. Nosferatu 3.BLK prot: on) o un blocker hardware.
C'e qualcuno abile da ottenere il dump del codice del 16f84 PIC e me lo fa avere?
La scheda ora e' pronta:))
Avvertimento
Attenzione che nuovo software e* .crd sono rilasciati di ogni giorno. Tu li provi a tuo rischio e pericolo. Ci sono alcuni bastardi che si divertono a inviare "Kill files"- non usare upd180199.crd per esempio. Cambia il ProvIDs e Country Code e cosi rovina la scheda.
Reaktiv ([di_pro]) puÚ o non puÚ fissarlo. Lavora in DOS 6.xx su [com] 2 solo.
Anche alcune versioni di MOSC.exe contengono un virus ( versione20kb , 16kb Ë OK). Di nuovo, questo puÚ essere una "bufala" come era il programma Blocker recentemente rilasciato.
300-400Key.crd Ë detto essere un file crd per il reset.
Resetcard.crd Ë solo per schede greche che non funzionano. Non usi su una scheda che funziona.
Collegamenti
[http]:// [www.thoic.com]/ [satpirates]/ 1.html Anche ha un Foro SatPirat
[http]:// [dbox.virtualave.net]/ [home.html] Anche ha un Foro Kermit
[http]:// [satswiss.com]/ Anche ha un Foro SatSwiss
[http]:// [members.xoom.com]/ irdeto99/ Al Bundy
Se avete trovato questa descrizione utile mi piacerebbe che mostraste il vostro apprezzamento attraverso qualsiasi donazione di card Irdeto (vergini o scadute o anche morte!) per sperimentazione future.
Per favore riportatemi qualsiasi errore o omissioni.
---LINUS---
##########################################################################
####### PPPPP H H III L OOOOO SSSSS OOOOO PPPPP H H YY Y #######
####### P P H H III L O O SS O O P P H H YY Y #######
####### PPPPP HHHHH III L O O SSS O O PPPPP HHHHH YYYY #######
####### P H H III L O O SS O O P H H Y #######
####### P H H III LLLLL OOOOO SSSSS OOOOO P H H YYYYY #######
##########################################################################
#ANARCHIA NELLA RETE#
Autore: Redrebel
#All'interno del movimento anarchico vi e' chi e' refrattario alla tecnologia, in nome di un bucolico "ritorno alla natura", e chi invece, senza essere troppo schizzinoso, vede la tecnologia per quello che, in fondo, essa e': un mezzo come un altro per ottenere risultati pratici. Fra costoro l'informatica prima e la telematica poi non potevano non diventare oggetto di attenzione e di interesse. Per diffondere il pensiero libertario e mantenere i contatti fra gruppi, associazioni e individualit‡', sono sorte cosi' le prime BBS (Bulletin Board System) di stampo libertario e in seguito, con l'accesso del grande pubblico anche a Internet, nel contesto del movimento anarchico si e' diffuso l'uso delle risorse della Rete. Per paradossale che possa apparire a prima vista, resta il fatto che attualmente anche gli anarchici si servono di uno strumento ideato dal Dipartimento della Difesa statunitense. Proprio la sua struttura completamente decentrata, e dunque priva di qualsiasi possibilit‡' di controllo gerarchico, rende Internet un mezzo di comunicazione in qualche maniera "anarchico". Infatti chiunque, con poca spesa, puÚ' grazie alla Rete diffondere e distribuire con facilita' ogni genere di informazioni senza dover rendere conto a uníautorit‡ superiore. Eventuali restrizioni dovute alle leggi nazionali possono venire superate semplicemente facendo ospitare la documentazione da computer che materialmente si trovano all'estero ma che grazie a Internet sono raggiungibili senza difficolt‡' e a costi irrisori da ogni angolo del mondo. Nel movimento anarchico hanno cominciato a svilupparsi liste di discussione distribuite tramite la posta elettronica, nelle quali si possono incontrare tanto il confronto su questioni di carattere prettamente teorico, che spesso degenera in vere e proprie "risse telematiche", quanto informazioni "di servizio" su incontri, riunioni, convegni, e manifestazioni. Con caratteristiche diverse dalle liste solo per gli aspetti tecnici, e spesso a esse direttamente collegate, sono i newsgroup esplicitamente dedicati all'anarchismo o comunque inseriti nell'ambito della sinistra libertaria. Il World Wide Web, di gran lunga la risorsa di Internet pi˘' nota e diffusa, e' una sorta di enorme ipertesto multimediale, ossia una raccolta di documenti all'interno dei quali particolari collegamenti consentono all'utente di costruirsi un proprio percorso di lettura non lineare, attraverso testi, immagini, filmati, suoni e, negli ultimi tempi, anche simulazioni in una forma primitiva di realt‡' virtuale. La possibilit‡' di pubblicare attraverso il Web a costi irrisori non e' stata trascurata dagli anarchici, che hanno rapidamente iniziato a creare propri siti, in cui vengono ospitati documenti dei generi pi˘' vari: opere classiche e biografie degli autori pi˘' noti, riviste dedicate alla elabo-razione teorica o all'informazione sullíattualit‡', presentazioni di gruppi e associazioni, dibattiti, dichiarazioni di intenti, manifesti programmatici, perfino veri e propri "corsi" di introduzione al pensiero libertario. Com'e' facilmente intuibile, l'accesso a tutto questo materiale e' sempre completamente gratuito, e gli utenti devono sostenere solo i costi della connessione tramite una telefonata locale. Internet puÚ essere non solo un mezzo di comunicazione e propaganda per il movimento anarchico e pi˘' in generale per la sinistra libertaria, ma anche uno strumento di concreta azione politica. In questo senso un'operazione interessante e' stata il NetStrike, o Sciopero della Rete, messo in atto alla fine del 1995 da Strano Network. Considerando che l'accesso a un computer a disposizione del pubblico e' perfettamente legale, e che nondimeno un elevato numero di richieste contemporanee puÚ' rendere impossibile ogni connessione, e' stato diffuso in Rete l'invito a compiere un'azione di disturbo per protestare contro la ripresa dei test nucleari francesi nell'Oceano Pacifico, che si e' concretizzata nella richiesta in massa dell'accesso ai principali computer del governo francese in un momento predeterminato. L'operazione ha avuto successo: i computer sono stati irraggiungibili per pi˘' di un'ora. Inoltre, sebbene non abbia effettivamente provocato gravi danni, il Net Strike si e' comunque rivelato uno strumento di pressione interessante. Sempre nell'ambito delle azioni compiute per mezzo della Rete possono ricadere tutte le violazioni esplicite di particolari leggi sulla distribuzione dell'informazione, dalla diffusione di materiale censurato all'esportazione di software per la crittografia dagli Stati Uniti, fino alle violazioni esplicite del Copyright. Un discorso a parte meritano infine le azioni di hackeraggio, ossia la penetrazione illegale nei sistemi informativi di enti governativi, multinazionali e aziende, che spesso vengono compiute, senza alcun approfondimento delle ragioni ideologiche che le giustificano ,da giovani che si autodefiniscono "anarchici", con l'intento di dare prova della propria abilita', di provocare danni per una forma di "teppismo telematico", o di ricavarne guadagni illeciti.
---RedRebel---
#I PROGETTI DEL GRUPPO
Bene beneÖ questa si puÚ considerare come la ìtraccia finaleî di questa E-Zine, una vetrina sulla quale verranno esposti tutti i progetti futuri dellíAiS.
1)La prima cosa Ë líintroduzione di una mailing-list, ottimo metodo per far conoscere agli iscritti tutti gli aggiornamenti e le attivit‡ del gruppo.
2)Creazione di un Canale IRC: altra proposta molto interessante, Ë necessaria perÚ una discreta mole di impegno da parte di chi porter‡ avanti di questa iniziativa.
3)Creazione di un Newsgroup: Ottimo canale di comunicazione per rispondere a curiosit‡, domande ed altro.
4)Progetto ìRadio Kaotikaî :Progetto di una realizzazione di una radio-pirata, le cui registrazioni (in formato .mp3 o addirittura i RealAudio) verranno messe online per tutti gli interessatiÖNotiziari, musica, RubricheÖ
5)KdT! Ovvero ìKaothik Drawiní Task: Progetto gi‡ avviato, una crew di writing allíinterno dellíAiS le cui opere verranno esposte in una pagina del sito.
Se anche voi, leggendo questo file, avrete delle ìfolgorazioniî oppure delle idee di progetti fattibili, non dovete fare altro che segnalarcelo!
---AiSquAd---
Ok, la nostra E-Zine finisce qui. Speriamo vivamente che questo file via sia piaciuto e confidiamo nel continuare queste pubblicazioni grazie all'arrivo di nuovi membri del gruppo. Per collaborazioni, suggerimenti, critiche, la nostra casella E-Mail (aisprod@freemail.it) Ë aperta a voi!!!!!
Anarchy In the System ProductionÆ 1999
http://aisprod.tsx.org
mailto:aisprod@freemail.it