domenica 10 giugno 2007

Dura lex sed lex

Pubblico qui il commento di Jena (per dare il maggior risalto possibile al suo contenuto) in cui propone una soluzione al problema tecnico della rimozione dei nick degli utenti che reclamano il diritto di revocare la propria iscrizione a Luogocomune.

Adesso "non possono più dire di non sapere" come si fa. Nel caso questa spiegazione non fosse sufficiente, ricordo anche che "La legge non ammette ignoranza" J.


Viste le palesi difficoltà di gestione che emergono, voglio essere collaborativo e suggerire un metodo semplice per risolvere l'arcano del nick:

1.Scaricare ed installare un tool grafico, tipo MySql Query Browser (è multipiattaforma e gratuito), oppure connettersi al server se si vuole lavorare da console.
2. Connettersi al DB fornendo indirizzo IP, user name e password e schema DB (cioè il nome del DB...)
3. Andare sulla tabella relativa agli iscritti e cercare l'utente da rimuovere (SELECT ID,nick FROM TABELLANICK WHERE nick = '$nomeDaTogliere';) annotando l'ID
4. Trovato il nick, da interfaccia grafica modificarlo in qualcos'altro, per esempio "RIMOSSO_10GIU07" (UPDATE TABELLANICK SET nick = 'RIMOSSO_10GIU07' WHERE id = $ID_NOTO;)

A questo punto il nick è già sparito, mentre i messaggi postati rimangono, con il mittente che è diventato "RIMOSSO_10GIU07".
Restano i riferimenti di altri utenti o cose simili.
Anche qua, nessun problema:

5. Prendiamo la tabella dei post e scriviamo (SELECT * from TABELLAPOST WHERE post LIKE '%$nomeDaTogliere%';)
6. Ottenuto l'elenco dei messaggi contenenti il nick incriminato, è facile modificarli per rimuovere ogni riferimento.

Per una persona inesperta, la procedura richiede 30 minuti circa, di cui 15/20 per scaricare ed installare l'interfaccia grafica di cui sopra :-)


Detto ciò, spero che chi di dovere prenda sufficientemente sul serio la questione e decida di dedicarvi una mezz'oretta dei prossimi 11 giorni. E una volta risolto questo "problemino" si potrebbe anche pensare (con tutta calma, si intende! :D) di rivedere anche le "Condizioni di utilizzo" di LC. E' solo una idea, nessuno ne abbia a male! Penso però che sarebbe saggio e lungimirante togliere sin da ora legittimità a qualunque futura contestazione di pratiche illegali nella gestione del sito.

11 commenti:

giuy ha detto...

Uffi...ma così la fate facile...pure la soluzione su un piatto d'argento :)

bifidus ha detto...

giuy:
Noi non siamo poi così cattivi...è che ci disegnano così :)

Anonimo ha detto...

non basta...
vi siete dimenticati delle altre tabelle che contengono i dati riservati( email e pass su tutte).
senza contare che in questo caso ci si può ANCORA loggare con l'account "rimosso" semplicemente mettendo il nuovo login name( nel nostro caso RIMOSSO_10GIU07).
modificare le tabelle a "mano" è sconsigliatissimo, è facile fare errori e creare inconsistenze nel DB.
la cosa migliore da fare è usare i tool di amministrazione che ti mette a disposizione il forum.
Una cosa che mi ha lasciato perplesso équesta:
"quando si cancella l'utente x automaticamente spariscono tutti i post fatti dall'utente x"
NON è vero, nella maggior parte dei forum è possibile scegliere se mantenere i post dell'utnte x oppure cancellare anche quelli.

chiaramente ha detto...

Anonimo, tranquillo...mi sa che leggono pure le pass. Io sono stata direttamente interessata a questo "caso". Ma mentre il moderatore da me interpellato per chiarmenti ha solo negato il fatto con un noncelato fastidio che suonava piu' come un : non rompere le palle, Mazzucco, interpellato da me per mail, mi diceva che i "suoi ragazzi" mai avrebbero fatto una cosa del genere, almeno mai, senza prima interpellarlo...non escludeva quindi a priori l'evenienza.
Alle mie insistenze , il Mazzucco mi dava l'aut aut...o la smettevo o bloccava il mio IP.
Attenzione, non sto parlando tanto per parlare...tranne i PM ai quali non posso piu' accedere dopo il ban, le mail sono state da me ben custodite nel mio archivio...sapevo che prima o poi mi sarebbero tornate utili!

Anonimo ha detto...

mmmmmm
un paio di considerazioni

per fare il moderatore su un forum non c'è assolutamente bisogno di aver accesso al DB, quindi mi sembra un po strano il fatto che riescono a "leggere le pass"

anche se hanno acesso al DB la password non è in chiaro...viene memorizzato l'md5 della password ( che è un un algoritmo one-way),se hai scelto una pass debole( una parola del vocabolario o troppo corta) è facile trovarla conoscendo l'md5 della pass

Anonimo ha detto...

si era corta, ed è nel vocabolario.
Come mi sono accorta ?
Ti racconto :
Una mattina (7.30 del mattino circa) apro il pc mi connetto ad Lc senza logarmi e mi "ritrovo" nel forum.
meraviglia! non mi ero logata che ci facevo là di mattina presto?
Alle mie richieste di spiegazioni hanno risposto che poteva essere che alla sera, non mi ero "dislogata". Impossibile dico io....sapevo di averlo fatto e poi..quella stessa mattina ho visto il mio nick fare logut ed andarsene.
Ho ripetutamente chiesto chiarimenti, ma niente !
Mazzucco per mail mi ha detto quello che ho detto prima. Cosi' mi sono logata per due giorni e due notti di seguito (forse piu') per dimostrare che se uno "entra" nel sito , esce solo se lo vuole e quando lo vuole e non che se anche esce rimane appeso per una notte intera al forum.
A questo mio comportamento ha fatto seguito la mail di Mazzucco che mi intimava di cambiare atteggiamento o mi bloccava l'IP (ho le mail, quindi posso dimostrare cio' che dico)


chiaramente

Anonimo ha detto...

bhe questo cambia tutto :P

Anonimo ha detto...

PS : quella volta non mi ha bloccato l'IP, ma deve "aver preso nota" perchè dopo poco si "è creata l'occasione buona" e l'ha bloccato! :-D ...dici..memoria di elefante ? :-D

chiaramente

Anonimo ha detto...

@Anonimo che disse

non basta...
vi siete dimenticati delle altre tabelle che contengono i dati riservati( email e pass su tutte).


Non ho installato xoops, non ne ho davvero il tempo. Però un'occhiata ai sorgenti l'ho buttata e mi pare che i dati sensibili siano contenuti solo nella tabella 'users'. Anzi, bisognerebbe parlare di campi sensibili nei record, e sono alla fine:
- nome utente (name, varchar(60))
- login (uname, varchar(25))
- email (email, varchar(60))
- password (varchar(32))
tutti NOT NULL default ''.

Il resto è relativamente inutile, a meno che non si siano inseriti ulteriori dati personali.

senza contare che in questo caso ci si può ANCORA loggare con l'account "rimosso" semplicemente mettendo il nuovo login name( nel nostro caso RIMOSSO_10GIU07).

Obiezione corretta, bisogna modificare il campo 'pass'. Cambiare un carattere a caso è più che sufficiente per garantire ragionevolmente che lì non entra più nessuno, a meno di ricerche esaustive su set di caratteri mostruosi...

In altre parole, se ti do un HASH MD5 a caso, tu trovami un modo efficiente per ottenerlo a partire da un testo...

modificare le tabelle a "mano" è sconsigliatissimo, è facile fare errori e creare inconsistenze nel DB.
la cosa migliore da fare è usare i tool di amministrazione che ti mette a disposizione il forum


La tua è una regola generale estremamente valida. Ma se il SYSADMIN (beurk! eresiaaaa! :-))) AFFERMA DI NON ESSERE IN GRADO DI FARLO, grazie al mio buon cuore generoso ed altruista lo indirizzo ad un metodo alternativo... :-)

Una cosa che mi ha lasciato perplesso équesta:
"quando si cancella l'utente x automaticamente spariscono tutti i post fatti dall'utente x"
NON è vero, nella maggior parte dei forum è possibile scegliere se mantenere i post dell'utnte x oppure cancellare anche quelli.



Era da un po' di tempo che non mi trovavo all'argomento del "te l'avevo detto, io!"

Concludo con una libera interpretazione del detto popolare "chi semina vento raccoglie tempesta": chi semina stronzate, raccoglie valanghe di m...a :-))))

Jena.

Anonimo ha detto...

"Cambiare un carattere a caso è più che sufficiente per garantire ragionevolmente che lì non entra più nessuno"

bhe magari uno no... 8 o 9 vanno bene
( cambiandone solo uno sono soltando 512 possibili md5 diversi )
bisogna stare attenti al fatto che i caratteri validi di una strnga in md5 sono i numeri da 0 a 9 e le lettere da A ad F, ora chi è pratico lo sa :P ma chi non lo è è facile che cambia la stringa non rispettando la regola e ottiene un MD5 non valido. non penso che i programmatori di xoops abbiano pensato a questa possibilità... chissà che accade nel codice :P
come dicevo meglio non modificare il DB a mano.

Anonimo ha detto...

agiungo:

ho dato un'occhiata al sorgente, se si modifica con un md5 non valido diventa impossibile loggarsi, non succede nulla di catastrofico :D
sorryyyyyy