Newsgroup: it.lavoro.professioni.webmaster
Titolo: lettera aperta x Vittorio, sedicente webmaster

caro Vittorio,
o tu che pochi giorni fa hai postato un link ad un sito il cui nome
assomiglia d ilnome di un noto portale italiano con alcune lettere
scambiate,  ti scrivo qua perchè non conosco la tua email privata.
volevo dirti che su quella pagina c'è un link alla tua 
rubrica personale alla quale si accede mediante password.
Però c'è un però e sarebbe bene tu levassi immediatamente quella
rubrica di li perchè non è ben protetta come pensi, fatto grave in
considerazione del contenuto che ho potuto verificare.
Fammi avere un tuo indirizzo email a cui io possa darti più
spiegazioni, caro il mio webmaster.


Ma "caro" lo hai detto prima, casomai.... "saluti" :-)
Cooper.
-- 
BlueWare WebAgency
 [web] 
http://www.blueware.it
 
http://www.italchat.it
 [icq] 146781935

 Ma "caro" lo hai detto prima, casomai.... "saluti" :-)
ROTFL
-- 
Josh
www.pixael.com
icq: 59204079



caro cooper,
mi pare che tanto per cambiare
non hai capito un tubo.

 non hai capito un tubo.
Magari impariamo a quotare.
--
[Non siamo materia che aspetta, ma schemi che si perpetuano.]
Rhadamanth.net (
http://www.rhadamanth.net
)
CMS it-alt.* (
http://www.x-privat.org/it-alt/
)
Savona Web (
http://www.savonaweb.net
)

 ha scritto nel messaggio
news:nftp20t2dno5q758r...@4ax.com...

lollissimo ^_^
D.

Hehehe ma questa gente non ha ancora capito che deve proteggere gli
apiciii!?!

 apiciii!?!
Che cosa vuol dire? C'č qualche operazione da fare per proteggere i propri
DB? Avevo sentito in passato che gli apici potevano dare qualche problema,
ma non ho mai capito quale...
Grazie!
Luca

 ma non ho mai capito quale...
azz, male! :)
Il problema č conosciuto come SQL Injection, qui avevo scritto qualcosa
tempo fa
http://www.redangel.it/articoli/articolo.asp?cat=10&art=4
ciao
-- 
Fabio Angela (aka Red Angel)
http://www.redangel.it
 - il portale sulla programmazione
cerchi consigli per un hosting? 
http://hosting.redangel.it

ciao
io i stupisco solo del fatto che poi si spacciano per webmaster
professionali e si lamentano se gli offrono 900 euri al mese

 D.
invece di ridere, impara a quotare per cortesia (e 2)
sempre più "mah.."
-- 
Stefano Zamboni  - 
zam...@freemail.it
Legge di Rudin:
In casi di crisi che obbligano la gente a scegliere tra varie linee di
condotta, la maggioranza sceglierà la peggiore possibile.


E' sufficiente una verifica lato javascript alla casella di input affinchè
contenga solo gli intervalli A..Z, a..z, 0..9 e il problema è risolto :-)
Tutto quel casino non si pone nemmeno :-)


 Cooper.
Ehm... e se disabilito js?
Paolo

 ha scritto nel messaggio
news:4ckp201hcui1h6v9n...@4ax.com...

... oh madonna santa... non ci volevo credere... tutto ci sta lassotto...
tutto...
Mauro

 ha scritto nel messaggio
news:f_aXb.233038$VW.93...@news3.tin.it...

Lato server? attraverso un controllo sul metodo GET/POST? :-)



Io non avrò capito un tubo, ma te hai detto tanto e nulla di concreto per
aiutarlo... se fosse davvero in buona fede avresti fornito maggiori dettagli
e via dicendo.
Cordialmente, Cooper.



Ok, temevo intendessi lato client
Paolo

>E' sufficiente una verifica lato javascript alla casella di input affinchè
Lato client? Mamma mia che pena... Spero tu non faccia il
programmatore. Saresti la manna degli hacker.

 ha scritto nel
messaggio news:g5kq20l1kopn3bm8f...@4ax.com...

Hai letto il post successivo? temo di no :) In ogni caso il rifermimento a
js era puramente esemplificativo :)
E' il principio quello che conta, l'esempio js può essere un punto di
partenza per capire come sviluppare il resto... insomma una risposta sullo
stile didattico :)


 Tutto quel casino non si pone nemmeno :-)
no in quanto potrei saltare il browser e quindi il tuo controllo js
semplicemente inviando la richiesta tramite telnet, inoltre come la metti
con chi ha disattivato js??
-- 
ITHost (your host company)
Technical Manager
C. Paparelli (MCSE,MCSD,MCDBA)
http://www.ithost.ch

 con chi ha disattivato js??
mi rispondo da solo :-P visto che ho letto dopo i post, ma perchè dovresti
fare un js lato server??? di fatto ti basta aggiungere il controllo nella
pagina prima della verifica anche uno stupido replace in asp basta ed avanza



Uhm, io non ho parlato di js lato server :) semplicemente dissi un controllo
sul metodo GET/POST lato server....


 spiegazioni, caro il mio webmaster.
Al tuo posto avrei lasciato cadere la cosa (a me capita almeno due/tre 
volte al mese di imbattermi in queste situazioni, c'e' anche una TV 
privata della zona che sta "aperta" in questo modo).
Tienti per te quello che hai scoperto, e' la miglior cosa da fare.
O magari se proprio  ti sentivi di correggerlo era meglio se facevi un 
po' di social engineering o di ricerce usando i dati che hai avuto a 
disposizione e ti mettevi direttamente in contatto con il proprietario 
del sito.
Il danno maggiore, se non te ne sei reso conto, non l'hai fatto al tizio 
che ha lasciato aperta la rubrica, bensì a tutte le persone che ci 
stanno dentro, e che potrebbero a buona ragione denunciarti insieme alla 
formichina ed al gestore del sito.
Medita.
-- 
Ciao, Riccardo
------------------------------------------------------------------------
http://www.jsdir.com
  ---- Bring Your Site To Life!!!!
http://www.wmtools.it
 ---- WebMasterTools - Servizi per il tuo sito
http://www.dev2dev.it
 ---- La rete ha connesso nuove particelle - D2D006
------------------------------------------------------------------------
Per rispondere: togli i PUNTO .


Esatto, hai centrato perfettamente la mia questione, io speravo ci arrivasse
da solo...


 Cooper.
aspe allora avevo ragione come S_p_ike e Calorifero Termoionico (mii un nick
più lungo non c'era? :-D) in questo post ti riferifi a un controllo lato
client
Cooper: "E' sufficiente una verifica lato javascript alla casella di input
affinchè contenga solo gli intervalli A..Z, a..z, 0..9 e il problema è
risolto :-)"
Senza polemica è troppo presto (non sono neanche le 11:00 AM) ma allora quel
post era ed è errato :-P



Ok, ma dalla risposta successiva specificai che era solo a titolo
esemplificativo per rendere l'idea.
Insomma un primo approccio, il principio dopotutto è sempre quello, e cioè
di assicurarsi che alla query passi la stringa corretta contenente SOLO
l'intervallo di caratteri: A..Z, a..z, 0..9 senza nessun altro.... e il
problema non si poneva ^_^.


stile didattico :)
E la marmotta piegava la confezione di carta stagnola intorno alla
cioccolata, certo certo.



ti dirò fossi uno dei suoi clienti denuncerei prima lui visto che
magari
s'è fatto pure pagare per spargere ai quattro venti i miei dati
personali....
meditate webmasters meditate...

 
Lo sai che hai commesso un reato vero?
Cla!
-- 
www.spaghettibrain.com
 - PHPNUke Italian Mirror
www.spaghettilearning.com
 - Piattaforma open Source per l'E-Learning
!!>> Il mondo non è ancora pronto per il Funky <<!!


A Cla, dovrai aspettarti una risposta del tipo: "ma come io aiuto la
gente... e commetto un reato? Ma nun di cazzate :) " :DDD
Poi, lui se non ha capito la mia ironia... figuriamoci se gli parli di reati
:)


Cooper.
cari miei webmaster, 
qua qualcuno arriva 
vi fa notare che spesso pretendete cifre assurde 
e poi non vi rendete conto dei buchi che lasciate nei sistemi e voi
cosa fate?
vi metede ar urlare all'assassino e all0assassinio....
secondo me fareste bene ad iniziare a studiare un po' di più...
come avete tuti la certificazione Cisco e miscrostosoft?
ah ok allora siete abilitati a fare tutto quello che volete...
al di là di questo spiegatemi che reato avrei commesso?
un tizio chede una password ed un username su di una pagina, io le
metto, la pagina le accetta....non ho sniffato alcun pacchetto per
averle...
io non so chi di voi è il proprietario del sito in oggetto
volevo solo cercare di contattarlo e suggerirgli di correggere la cosa
tutto il resto lo avete fatto voi...
faccio notare che non ho pubblicato il nome del sito e sul sito stesso
non ci sono elementi utili a contattarlo
date retta a me prima di urlare all'assasino solo perchè vi si fanno
notare certe cose imparate come si fa un'autenticazione.

 tutto il resto lo avete fatto voi...
La seconda denuncia che avrei presentato è per diffamazione visto che lo 
hai sputtanato ai quattro venti ...
Adesso puoi tornare al lavoro



Io ti consiglio di essere piu prudente la prossima volta.... che cosi fai
solo danni :) e poi te la prendi nel culo.
Cooper


Cla!
Saluti,
Chicco L.,
troll ufficiale di it.lavoro.professioni.webmaster

 notare certe cose imparate come si fa un'autenticazione.
come giustamente ti hanno fatto notare altri con vari esempi al quale ne
aggiungo un altro "se ti fermi all'edicola lasciando la macchina accesa
penso che questo non autorizzi un passante a saltargli su e a farsi il giro
della città" oppure correggimi


 troll ufficiale di it.lavoro.professioni.webmaster
Non hai ancora la certificazione.
-- 
Spirito Libero
Siamo tutti un po' abusivi a questo mondo...
(Non mettere il sale se vuoi rispondermi!)


non vorrei darti na grossa delusione ma siamo in italia...
Chicco L.,
troll ufficiale i.l.p.w.

 troll ufficiale i.l.p.w.
ti aspettavo al varco :-)
http://www.legge-e-giustizia.it/2000%20FAT%20DIR/dicembre/03.htm



http://www.legge-e-giustizia.it/2000%20FAT%20DIR/dicembre/03.htm
capperi corro a costituirmi.
Chicco L.,
troll ufficiale i.l.p.w.
p.s. ma secondo te quale webdisigngner mi denuncerebe?
poi cosa dice ai suoi clienti, sapete avevo fatto una cappellata
grossa come una casa e CHIUNQUE poteva accedere ai vostri siti....
date reta a me gente prima, mamoolto prima, dei tribunali pensate a
fare un buon lavoro,

 Cooper.
Non rende l'idea perchè c'è un errore di fondo nel tuo ragionamento: il
problema non è tanto se uno per sbaglio inserisce un carattere come l'apice
in se, quanto il fatto che persone poco corrette possono fare reali casini
se non si gestiscono i caratteri speciali (possono anche cancellarti il DB,
ti pare bello?) e che se vogliono fregarti se ne fregano del tuo controllo
JS e poi l'apice si gestisce SEMPRE, non solo quando si fanno procedure di
login, quindi ci sono molti casi in cui non puoi escludere a priori
l'utilizzo degli apici (cavolo, se devo inserire un post in un forum non mi
fai scrivere le parole con l'apostrofo o caratteri particolari?) quindi la
soluzione non è, se ho male al piede, tagliarmi la gamba, quanto curare il
piede, nella fattispecie il replace è una soluzione banale, ma è uno dei
vari approcci possibili, se cerchi in rete il problema dell'SQL Injection
vedrai che ci sono molti problemi legati ad esso e molte soluzioni.
ciao
-- 
Fabio Angela (aka Red Angel)
http://www.redangel.it
 - il portale sulla programmazione
cerchi consigli per un hosting? 
http://hosting.redangel.it

Dimenticavo, uno degli aspetti piů sottovalutati per quanto riguarda il
problema dell'SQL Injection č il fatto di non fare un controllo sui tipi di
dato prima di inserirli in una query... e credo che molti di quelli che
correggono il problema dell'apice non tengono perň conto del problema appena
descritto.
Se ad esempio costruisci una query che ha dei valori numerici, devi
controllare che il valore che si sta per inserire sia effettivamente
numerico, altrimenti se usi MS SQL per esempio, io ti metto i caratteri di
commento --  insieme ad altre tecniche e ti combino lo stesso dei bei
casini.


 casini.
ed è per questo che si utilizzano le stored procedure :-)


 fare un buon lavoro,
e su questo non si discute infatti spero tanto che venga colmata questa
lacuna rendendo maggiormente responsabili gli sviluppatori, sistemisti,
amministratori, ecc. di eventuali problemi di sicurezza
Personalmente sono sempre stato favorevole ad un albo per informatici in
questo modo verrebbe normalizzata un po' la situazione attuale


 ed è per questo che si utilizzano le stored procedure :-)
trasformando la frase in
ed è  *anche* per questo che si utilizzano *se possibile* le stored
procedure
siamo d'accordo al 100% :-P


ed è per questo che si utilizzano le stored procedure :-)
tutte teorie interessanti però
prima di tutto tenete conto ceh con i metodi post e get del http 
lla pssword e qualsiasi altra informazione scambiata fra cleint e
server viaggia in chiaro.
chiunque mediante sniffing può appropriarsene...

 wrote in message
news:d3fs201vmv65iu5sa...@4ax.com...

Ma questo problema che tiri fuori non riguarda però l'SQL Injection (che è
un problema principalmente per l'integrazione dei dati, anche se spesso ha
come primo effetto quello di causare falle nelle procedure di login) quanto
un problema di protocollo, e c'è poco da fare a livello di programmazione,
per questo ci sono protocolli sicuri tipo https.
Poi vabbè, se si ha una "talpa in casa" è un altro discorso, ma qui si va
già a parlare di "spionaggio" :-)
Un programmatore deve sempre fare tutto ciò che è in suo potere per rendere
un suo applicativo il più sicuro possibile, ovviamente però ha dei limiti
tecnici che non può superare.


 siamo d'accordo al 100% :-P
ok siamo daccordo, ma mi spieghi dove non è possibile usare le sp??


 chiunque mediante sniffing può appropriarsene...
mmh mai sentito parlare di ssl?



Io non sono daccordo... nei fatti un user e pass non ha bisogno di scrivere
intere frasi o usare caratteri particolari, per cui dal momento che è piu
importante la sicurezza al resto, tutti quei caratteri che possono
compromettere il corretto funzionamento del sistema vanno scartati e
mantenuti solo quelli di cui al 100% si sa che non possono recare problemi.
Io a titolo di esempio ho preso le lettere maiuscole e minuscole e i numeri.
Che di per se, soddisfano appieno i requisiti per scrivere password e user
sicuri... infondo... 25 sono le maiuscole, 25 le minuscole... e 10 i numeri
per un totale di 60 cararatteri... le combinazioni di questi? etc etc...
direi che sono un buon intervallo :)



Scusa eh... ma qui a logica andiamo male... se il campo è numerico... e ti
assicuri che solo il range dei caratteri ammessi in input è 0..9.... che ti
serve andare a controllare se ci sono altre lettere dal momento che è già
certo?
Te semplicemente verifichi che l'input contenga i caratteri che hai
autorizzato... le loro disposizioni etc saranno sempre e comq corrette
indipendentemente dall'input, perchè ci saranno sempre e solo quei caratteri
che hai autorizzato e non altri.


 che hai autorizzato e non altri.
e se io non volessi utilizzare quel interfaccia utente???
Ma volessi inviare i dati direttamente tramite un POST o un GET??
Inoltre sei sicuro di quello che dici??? Prova ad inserire il numero 12 in
un campo definito come bit
Pertanto i controlli vanno fatti ad ogni livello, ad esempio in una
struttura 3-tiers vanno fatti i seguenti controlli:
form html -> validazione input con javascript
pagina server side -> validazione input e non sarebbe male validare anche le
dimensioni (ad esempio controllare se è numerico e se è un valore bit oppure
no, oppure troncare le stringhe superiori alle dimensioni del campo)
database -> stored procedure
Un sistema simile ti permette una maggiore scalabilità in quanto oggi hai un
form html come interfaccia utente ma nessuno ti vieta di sviluppare un gui e
utilizzare gli altri livelli per un applicativo desktop based


 direi che sono un buon intervallo :)
mmh si vede che non utilizzi ancora win2003 + .net + autenticazione windows
altrimenti avresti letto questo
http://www.microsoft.com/technet/treeview/default.asp?url=/technet/prodtechnol/windowsserver2003/proddocs/deployguide/dsscc_aut_xbby.asp



Scusa se sono un po' duro.... ma... se hai:
X = CONTENUTO
Y = QUERY (X)
te il controllo lo fai su X prima di passare il contenuto di X a QUERY. Ora
tutto quello che ci sta a monte non ti interessa.
Ciò che effettivamente ti interessa è che il valore di X contenga caratteri
validi. Appurato che contenga caratteri validi X è corretto e quindi QUERY
(X) produrrà il risultato voluto.
Certo, se ci sono delle restrizioni QUERY (X)  (non su X) il discorso cambia
e in quel caso occorre controllare anche il dominio di variabilità
dell'intervallo ammesso.
Ma nel caso specifico si parla di un sistema di identificazione mediante
USER e PASS quindi il tipo STRING è quello piu corretto e nell'ambito di
questa stringa valutare che tutti i caratteri passati su X (di tipo string)
siano contenuti in un intervallo ammesso è condizione necessaria e
sufficiente per assicurarsi la correttezza formale dell'identificazione.
Qualora questo non fosse cosi, ti inviterei gentilmente (rimanendo nel caso
dell'identificazione) a farmi un controesempio in cui si mostra una
eventuale falla in questo sistema.
La condizione che impongo io è che USER e PASS siano di tipo STRING e che
contengano solo gli intervalli: A..Z, a..z, 0..9 di caratteri, e che
l'inserimento di altri caratteri provochi la restituzione di un messaggio di
errore e il conseguente re-inserimento dei dati.
Dimostra quindi una falla sulla base di questa condizione.


 Dimostra quindi una falla sulla base di questa condizione.
primo piantala di usare access che ti fa male :-D i db non hanno valori di
tipo string nemmeno access ma i valori sono parecchi altri dai char ai
varchar (di default in access quelli che tu chiami string) ai ntext, ecc. ed
inoltre non c'è solo access :-P
Per la falla te l'ho inviata in privato :-)


 questo modo verrebbe normalizzata un po' la situazione attuale
[...]
Anche io... se venisse istituito veramente per il bene della categoria, e
non per creare le solite lobby. Forse è meglio che non ci sia ;-)
-- 
Marco Ermini
http://macchi.markoer.org
 - ICQ 50825709 - GPG KEY 0x64ABF7C6 - L.U. #180221
Perche' perdere tempo ad imparare quando l'ignoranza e' istantanea? (Hobbes)

 non per creare le solite lobby. Forse č meglio che non ci sia ;-)
effettivamente c'č questo rischio anche le le lobby esistono anche senza
albo :-)


 albo :-)
Beh... la natura umana non si smentisce mai ;-)


 ok siamo daccordo, ma mi spieghi dove non è possibile usare le sp??
beh, non tutti i (r)dbms le supportano, purtroppo :/



Letto, e in effetti hai ragione sotto quel punto di vista non avevo
riflettuto, ma è un problema di natura tecnica non tanto logica.... perchè
teoricamente mi aspetterei che si vada in timeout... chiedo conferma.


avrei deniunciato al volo, almeno avresti passato dei brutti cinque 
SBORONEEEEEEEEE!!! Abbassa la cresta fai ridere i polli HAHAHAHA!!!

 teoricamente mi aspetterei che si vada in timeout... chiedo conferma.
mmh dipende dalla connessione che hai a disposizione ad esempio con una
connessione con cable modem da 2000 - 400 kbps non andresti in timeout
