Newsgroup: it.comp.sicurezza.varie
Titolo: Lollissimo :)

>> 
www.x-privat.org
 <<<   Restyling di 
www.x-planet.org
 in corso..
** Free nntp server at 
www.x-privat.org
 **

 come qualcuno ha già fatto notare su iccl notare la prima riga :)
Siamo in buone ... anzi -ottime- mani :-) !!
E per fortuna che trattano di infortuni sul
lavoro .. i tizi che hanno sviluppato il sito
potrebbero presto avere qualche tipo di
infortunio (tipo colpo di cric in testa)
... credo ... :-)

 ... credo ... :-)
non c'č piů religione :)


 pass ma di fatto mi viene da ridere al solo pensiero..
In ogni caso la passwd e' piu' che appropriata.
C:\>iao Angelo
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 ora capisci anche i problemi di noi artigiani? :)
Beh .. se consideri che in origine il termine "hacker"
si riferiva al "mastro d'ascia" (quello che costruiva
i velieri) ossia un'artigiano con i controc***ioni penso
di capire *perfettamente* i problemi degli artigiani ;-)
Detto questo ... mi viene il dubbio che un buco cosě
eclatante possa essere stato lasciato "volutamente"
sul sito ad uso "carta moschicida" ... della serie... poi
vediamo chi dobbiamo cucinare oggi ... ovvio che se
usi una bella "catena bounce" del tipo africa, australia
sudamerica, giappone, russia, cina ... sito potresti far
venire qualche problema di gastrite al furbo di turno :-)
Ciaoooo
PS> Io *non* ho suggerito nulla !!


Ditemi che non e' vero...vi prego ;_;
--------------------------------
Inviato via 
http://usenet.libero.it

 Ditemi che non e' vero...vi prego ;_;
però quota :)


 di capire *perfettamente* i problemi degli artigiani ;-)
Dimenticavo ... prova a cliccare sul link "area riservata"
poi immetti come user/pass "' OR 1=1 --" (senza ") e vai
con il click su ok ;-)

 
HTTP 404 - File not found
Internet Information Services
Adieu,
-- 
Lestat de Lioncourt  -- a.k.a --  Ciro Mattia Gonano
 Undergraduate student in Computer Science at University of Bologna
 IHGGer #1049   <=>  ICQ#: 52631406   <=>   URL: 
http://www.CS.UniBO.It/~gonano
 Debian admin at 
Students.CS.UniBO.It
 <=> look at headers for my JabberID & GPG

 Internet Information Services
... non credo :-P ...
il link (nel caso in cui avessi "cannato" la pagina) č
http://www.workcongress6.org/italian/gestioneworkcongress/index.asp
basta immettere in userid (ed in password)
' OR 1=1 --
ocio a scriverlo ok .. poi clicchi su "Enter" ...
altro che file not found }:-]

 
ACK
Beh... alla faccia della sicurezza...
(poi un giorno mi spieghi come hai recuperato la tupla)


 Adieu,
Byez


-- 
Is reading in the bathroom considered Multi-Tasking?
News 2000 [v 2.06] - 
http://www.akapulce.net/socket2000


naaa...... questa poi.. ma possibile che non si accorgano di nulla? 
mah..
-- 
www.x-planet.org
 - Community Web -


 come qualcuno ha già fatto notare su iccl notare la prima riga :)
Beh, sono userid e password del db... probabilmente inutili per me e te,
però il lol è d'obbligo.

 e te, però il lol è d'obbligo
sicuramente, però fa sorridere non trovi?
-- 
www.x-planet.org
 - Community Web -


 sicuramente, però fa sorridere non trovi?
Senza dubbio.

  Heh ... bisognerebbe mandare una mail a quei tizi !
MMMM.... Nessuno ha guardato con lynx la parte finale della pagina?
   qwerty   123 prova 123 prova 123 prrrova   123 prova 123 prova
LOL!!!!
-- 
Non inviate E-mails, l'indirizzo e` fasullo!
Non ho e-mail pubblica! - Risposte solo sul N.G.

 
Dipende da cosa può fare e quanto ci sente chi ascolta sulla porta 
1433.
-- 
Valter Minute
vmi...@inwind.it
 (the reply address of this message is invalid)

 ci sente chi ascolta sulla porta 1433.
Azz stai dicendo ?? Apri il sito, clicca sul link
"area riservata", immetti nei box userid e pass
esattamente questa stringa
' OR 1=1 --
clicca il bottone di accesso .. sei dentro come
admin; ora .. quello sopra è un SQL injection
tra i più banali... peggio sarebbe inserire una
stringa del tipo
' OR 1=1 ; exec master..xp_cmdshell 'net send * BABBEI' --
ovvio che la net send è innocua ... ma lascio il
resto alla tua immaginazione ... altro che 1433 !!

 admin; ora .. quello sopra è un SQL injection
che non ha nulla a che fare con la  user e la pass di cui sopra.
-- 
HappyCactus - Linux User #209744 - 
http://pngstego.sourceforge.net
 
 
www.google.com
 - 
groups.google.com
/* Ci sono 10 categorie di persone al mondo: quelle che capiscono */
/* il sistema binario e quelle che non lo capiscono.              */

 che non ha nulla a che fare con la  user e la pass di cui sopra.
Concordo .. la mia era solo una nota per dire che spesso
la gente mette in piedi un firewall e solo per quello pensa
che tutto sia sicuro ed inattaccabile, poi inizia ad aprire
porte e crea dei buchi di sicurezza immani !

 porte e crea dei buchi di sicurezza immani !
Pare tra l'altro che questi SQL (o piu' genericamente "code") injection
siano molto di moda, ultimamente, compresi la sottospecie dei XSS...
Forse perche' sempre piu' peracottari si spacciano per programmatori?
Happy "Dente Avvelenato" Cactus


 
Hai ragione, non avevo considerato la possibilità di inserire le exec 
nella query che può essere passata dentro il campo password. 
Però accedere direttamente a SQL server utilizzando la connessione ti 
permetterebbe di eseguire comandi più complessi (schedulazioni e 
simili) senza la limitazione della stringa (che ha una lunghezza 
limitata) e, soprattutto, ti permetterebbe di leggere i dati dal server 
(cosa che non puoi fare con la stringa, a meno che non siano così 
gentili da ritornarti il risultato della select utilizzata per leggere 
i dati dell'utente). 


 dell'utente
Ci vogliono 10 secondi per ottenere il nome e la
struttura della tabella ... solo che non me ne frega
nulla di farlo (e cmq non lo *voglio* fare)

 nulla di farlo (e cmq non lo *voglio* fare)
Ma qualcuno ci ha pensato a telefonare?

 
Il problema non è tanto il nome e/o la struttura della tabella, il 
problema è che in quel database (o in un database a cui è possibile 
collegarsi passando da quello "bacato") potrebbero essere contenuti 
dei dati riservati e/o delicati. 
E i dati non puoi farteli tornare direttamente da quella pagina (o da 
una pagina con gli stessi problemi, credo che sia utile tenere la 
discussione su un piano più generale) o, meglio, non mi viene in 
mente un metodo semplice farseli tornare usando solo la stringa che 
riesci a "iniettare" attraverso i campi del form di login senza 
passare per sistemi esterni (tipo sp che inviano e-mail o simili), ma 
magari sto "cappellando" come prima e c'è una soluzione banale che mi 
sfugge.
Non stò dicendo che si tratta di una vulnerabilità da poco, 
rispondevo anzi a Vincent che diceva che con quelle password "ci si 
faceva poco". Tra l'altro la possibilità di eseguire la stringa SQL 
potrebbe comunque essere sfruttata in combinazione con buffer 
overflow o altri problemi di SQL nel parsing delle query.
P.S. ovviamente nemmeno io ho intenzione di fare danni su quel server 
o su qualsiasi altro server non sotto la mia responsabilità (e credo 
che qualche anno di messaggi su usenet lo dimostri). Credo però che 
questa interessante discussione possa essere utile per chiunque si 
trovi ad amministrare/realizzare applicazioni che si interfacciano a 
un database (non necessariamente SLQ server), soprattutto se queste 
applicazioni sono accessibili via rete.


 overflow o altri problemi di SQL nel parsing delle query.
Appunto .. come dicevo, a parte la "scarsa professionalità" di chi ha
creato il sito, il vero problema è la mancanza di conoscenze relative
alle problematiche della sicurezza, sono troppi quelli che mettono su
un firewall, un'antivirus, poi pubblicano un sito o un server email e si
credono a posto ... come scrivevo tempo addietro probabilmente noi
stiamo vivendo l'epoca del "wild west" di internet e forse in futuro ci
saraà più "civiltà" ma per il momento ...
Ciao !
-- 
* ObiWan
DNS "fail-safe" for Windows 2000 and 9X clients.
http://ntcanuck.com
408 XP/2000 tweaks and tips
http://ntcanuck.com/tq/Tip_Quarry.htm

 
Su questo concordo al 100% con te. Purtroppo un sistema è sicuro 
quanto il meno sicuro dei suoi componenti e in questo caso non c'è 
firewall che tenga... (anche se un firewall configurato male o 
assente potrebbe rendere la falla ancora più semplice da exploitare).


 quanto il meno sicuro dei suoi componenti e in questo caso non c'è
Esatto, un sistema (sia esso un server o un'intera LAN) è tanto sicuro
quanto sono sicuri tutti i suoi componenti, questo è uno dei motivi per
cui "ultimamente" (non troppo ultimamente) conviene installare sulle
LAN i cosiddetti "perimeter firewall" ossia dei "personal firewall" che
vengono installati sui client ma le cui regole vengono gestite in modo
centralizzato dall'admin ... e questo evita che un qualsiasi utente di
una LAN collegando un modem ad internet mandi all'aria tutta la
sicurezza della rete ...
Ciao


> problema è che l'input va *sempre* testato !!
su questo sono d'accordo, ma non penso che esistano delle paroline magiche
che
possano automaticamente aprire tutti i DBMS; nel caso specifico penso che il
problema sia generato dal fatto che la gestione della tabella è affidata a
un pacchetto preconfezionato, ma non penso che "' OR 1=1 -- " valga
incondizionatamente per tutti.

> Forse perche' sempre piu' peracottari si spacciano per programmatori?
Concordo pienamente.
Ma esiste, anche nel mondo della programmazione, la selezione naturale :))

che possano automaticamente aprire tutti i DBMS
Certo che no. Ogni DBMS ha la sua.
Nel momento in cui si fa qualcosa come
SQL = "SELECT count(*) FROM users WHERE username='" +
Request.QueryString("USER") + "' AND password=CRYPT('" +
Request.QueryString("PASS") + "';"
si e' vulnerabili al caso che l'utente invii roba come, appunto,
	' OR true OR ''='
facendo diventare la richiesta
	WHERE username='' OR true OR ''='' AND ...
che e' sempre vera.
Nel caso sventurato che il DBMS accetti query multiple, utenti come
	SELECT * FROM creditcardz
o
	DELETE * FROM ordini
possono insegnare rapidamente al webmaster che e' bene limitare il
novero dei nomi ammissibili a colpi di regexp.
Leonardo 
-- 
"Se e' vero che Linux in se' e' gratis, non lo sono le indispensabili
interfacce grafiche (X, KDE ecc.) che consentono alle persone normali
di utilizzarlo."                    -- Jason Matusow, Microsoft Corp.

 Ma esiste, anche nel mondo della programmazione, la selezione naturale :))
Si .. quella fatta  a colpi di cric :-)

 Nel caso sventurato che il DBMS accetti query multiple,
allora io posso stare tranquillo  :))
Ne sai qualcuna per MySql ?
(la testo subito  :)) sul mio sito ovviamente )
PS. Ho telefonato al responsabile del sito in questione e l'ho avvisato.


O, molto piu' banalmente, fare una replace (o str_replace o come vi pare) di
"'" con "''", o una addslashes in altre circostanze.
Se un utente si chiama Giorgio D'Angelo, non e' che lo fermo perche' ha un
cognome che non mi piace...
Ma se anche uno si chiama Alberto D'Or True Or'Bene La Si Entra, non e' che
gli garantisco l'accesso solo preche' ha il cognome da nobile :P
Ciaotutti,
* -- Presidente del club dei Lurking Oarsmen

 (la testo subito  :)) sul mio sito ovviamente )
Se non ricordo male la stringa
' OR 1=1 --
che funzia per SQL server in MySQL
dovrebbe diventare più o meno ...
' OR 1=1 #
in ogni caso -qualsiasi- DB che supporti
commenti all'interno della stringa SQL ha
questo tipo di vulnerabilità se l'input delle
query non viene controllato correttamente
in questo caso qualsiasi box di login, di
ricerca o altro potrebbe dare la possibilità
di "bucare" il sito o in ogni caso di provocare
danni ...
Ciao

 > (la testo subito  :)) sul mio sito ovviamente )
Dimenticavo ...
http://www.phpinsider.com/php/code/SafeSQL/
Ri-Ciao

 perche' ha un cognome che non mi piace...
Ok ma "di norma" per il logon è bene non permettere spazi ed
ammettere solo caratteri alfanumerici (A-Z, 0-9) detto questo, il
problema *non* è relativo al solo "logon"; -qualsiasi- stringa
che venga immessa e passata ad una query può causare un
tale problema (es. input per ricerca o altro) tanto per fare un
esempio, supponi di avere un box di input che ti richiede un
nome (o quello che vuoi) da ricercare, a questo punto se chi
ha scritto il codice "dietro" alla pagina non ha effettuato una
validazione dell'input, potresti tranquillamente utilizzare una
qualsiasi stringa SQL "iniettata" per .. fare "danni"
Vedi ...
http://www.phpinsider.com/php/code/SafeSQL/
Ciao

 problema *non* è relativo al solo "logon"
Appunto per quello preferisco la soluzione di "validazione forzata"
con replace/str_replace/adsslashes, a quella di verifica dell'input
tramite regexquellochetipare...
Una volta che tu mi passi una stringa, e io mi accerto per bene che
questa *rimanga* una stringa quale che sia il suo contenuto, allora
posso anche fregarmene di cosa l'utente infila nei dati, perche mal
che vada gli verranno tornati 0 record :)
Ciaotutti,
*

 sito in questione e l'ho avvisato.
Uff ... speriamo che si sbrighino .. e che in
futuro evitino certe cose .. fosse stato un
sito messo su da un hobbista l'avrei anche
potuto capire ma ... azz ... credo che chi ha
sviluppato quel sito ci abbia preso dei bei
soldini x cui ...

 danni ...
 . be, nel caso specifico, peraltro, penso cha abbiano
avuto anche la sfiga che il primo record della tabella
era proprio quello dell'admin .... :))
della serie la sfortuna č cieca ma la sfiga ci vede benissimo :))
Comunque, per i login, a parte i regexp, penso che una soluzione
potrebbe essere quella del controllo incrociato, e cioč controllare,
dopo avere pescato i dati dalla tabella, che lo user name pescato dalla
tabella sia
uguale allo user name inserito; normalmente ciň sembrerebbe una ca%%ata
ma alla luce dei fatti . . . potrebbe essere una soluzione efficace e
abbastanza indolore.
Per tutti gli altri casi . . . ci sto pensando.
spero domani di postare qualcosa . .
ciao.

     qwerty   123 prova 123 prova 123 prrrova   123 prova 123 prova 
   Rettifico: Rivisitato ora, ed e` in costruzione  (stanno  inserendo 
un testo sensato (anche se in inglese), *ORA* !     ;-))))


 Per tutti gli altri casi . . . ci sto pensando.
Veramente basterebbe verificare se ci sono apici singoli nella 
stringa e considerarla non valida senza nemmeno passarla al DB o, se 
č possibile avere login con quel carattere, raddoppiarli.


 
Verissimo. Però a quel punto devi avere passato il login.
Tra l'altro problemi simili ci possono essere con del codice 
javascript o HTML inserito nei dati (se inserisco codice javascript 
che rischia di essere copiato pari pari nelle pagine visualizzate ad 
altri utenti potrei utilizzarlo per fare operazioni di redirect o 
altro). 
In definitiva è sempre utile effettuare sui dati (sia in fase di 
input che in fase di visualizzazione) tutte le operazioni di 
conversione per essere sicuri che siano effettivamente interpretati 
come testo "innocuo" dal db o dal browser, raddoppiando i "'" nel 
caso di SQL e inserendo tutti gli "escape" relativi ai caratteri di 
controllo in HTML (&lt; invece che < etc...).


 conversione per essere sicuri che siano effettivamente interpretati 
Quello che i testi sacri della programmazione sicura (che nessun
programmatore[1] legge, ma solo i cattivissimi hackerz) chiamano "input
validation".
[1] programmatore: categoria di lavoratore dall'incerta formazione
professionale, mai pagato meno del doppio del mio stipendio <SGRUNT>




Purtroppo, la realta' delle cose smentisce quest'affermazione.


 magari non ci avrei pensato su neanche 1/2 secondo
E se invece fosse stato un sito civetta?
... vediamo... danneggiamento di sistemi informatici, interruzione di
una indagine di polizia sotto copertura... Parsifal, uscirebbe mai per
il 2050?


 il 2050?
Hehe ... stai scherzando vero ;-) ... pensi che un thread del
genere sarebbe esistito se veramente "qualcuno" avesse
voluto fare "del male" a quel sito ? Ognuno ha i suoi metodi
e in ogni caso ... *non* ho detto che avrei danneggiato o in
qualche modo modificato il sito ... sarebbe bastato inviare
un paio di mail "giuste" con tanto di dettagli ;-)

 professionale, mai pagato meno del doppio del mio stipendio <SGRUNT>
Nono, credimi: i programmatori bravi sono pagati meno dei bravi sistemisti.
Sono quelli che non sanno fare una cippa che sono pagati il doppio.
Ciaotutti,
* -- programmatore e sistemista

 Sono quelli che non sanno fare una cippa che sono pagati il doppio.
Appunto :-) ... di solito quelli che sembrano molto professionali non
capiscono
una mazza e prendono un secchio di soldi, quelli che sembrano dei profughi
invece ... ne sanno un secchio ma prendono solo mazzate :-)

 > E se invece fosse stato un sito civetta?



Toh:
http://www.confartigianato.it/minisiti/categorie/autoriparazione/carrozzieri.jsp
Nota anche le altre, di righe ;-)

 > > E se invece fosse stato un sito civetta?
Hai notato il "magari" ?

 Nota anche le altre, di righe ;-)
Ekkekkaxx ... che il sito sia stato sviluppato sempre dagli stessi ??



si.


 Ekkekkaxx ... che il sito sia stato sviluppato sempre dagli stessi ??
No, questo non si lascia scardinare dal signor D'Angelo...
Ciaotutti,
*


http://www.securfaq.usenet.eu.org/
tanto per restare in tema... ho tirato fuori il Presepe.

 č possibile avere login con quel carattere, raddoppiarli.
o trasformarli in innocui ` (ALT+96)
-- 
Esc key to reboot Universe, or any other key to continue...
News 2000 [v 2.06] - 
http://www.akapulce.net/socket2000

gli garantisco l'accesso solo preche' ha il cognome da nobile :P
ROFLASTC!!!
Leonardo
-- 
Questo messaggio e' NAGWARE. Per disattivare frecciatine, giochi
di parole, volgarita' gratuite ed inviti a rileggersi i messaggi
gia' passati e/o consultare 
http://groups.google.com
, effettuare
un versamento di 25 euro come tariffa di registrazione helpdesk.