|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Dec 2002
Città: Italia
Messaggi: 12363
|
Modificare una generica query aggiungendo o rimuovendo informazioni
Ho la necessità per ricerca, di implementare un qualche genere di strato INVISIBILE che intercetti le query sql rivolte ad un database (dbms) e che, a seconda di alcuni parametri interni, aggiunga o rimuova informazioni dalla query originale e alla risposta che il server fornisce alla query.
Esempio banale: query che chiede lo stipendio dell'utente pippo. Il layer intercetta la risposta del dbms e, se a richiedere le informazioni è stato l'utente pluto, deve far ritornare uno stipendio composto di soli 00000. Ovviamente se potevo mettere il controllo direttamente lato server non esisteva neanche il problema Qualche suggerimento su come implementare il tutto, esiste qualcosa di già pronto, magari opensource? Vorrei evitare di scrivere tutto il layer tra utente e dbms a mano.. Grazie mille a chiunque volesse aiutarmi.
__________________
Vendo Canon 80D + Sigma 17-70mm f/2.8-4 DC OS HSM Macro C Ultima modifica di Taz83 : 25-01-2013 alle 08:36. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
|
intendi che vuoi intercettare i pacchetti diretti verso un dbms e quindi modificare il loro contenuto ?
Ultima modifica di misterx : 25-01-2013 alle 06:56. |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Dec 2002
Città: Italia
Messaggi: 12363
|
ciao, se intercettando i pacchetti da e per il dbms posso estrapolare la query SQL e la riposta e modificarli allora si.
__________________
Vendo Canon 80D + Sigma 17-70mm f/2.8-4 DC OS HSM Macro C |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
|
non ho capito se puoi mettere le mani sul server e quindi ne sei l'amministratore oppure se devi simulare un attacco
|
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Dec 2002
Città: Italia
Messaggi: 12363
|
Quote:
ho proprio bisogno di lasciare il server e rispettivo database/dbms cosi come sono, senza modifiche e sviluppare uno strato esterno tra utente e server che intercetti query e risposte e se necessario le modifichi in modo trasparente.
__________________
Vendo Canon 80D + Sigma 17-70mm f/2.8-4 DC OS HSM Macro C |
|
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
|
Quote:
|
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Dec 2002
Città: Italia
Messaggi: 12363
|
sniffare diciamo che richiama un'azione illegale.. qui il software da sviluppare è legale ma deve essere invisibile ad utente e server..
__________________
Vendo Canon 80D + Sigma 17-70mm f/2.8-4 DC OS HSM Macro C |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: May 2007
Città: Milano
Messaggi: 7103
|
Modificare pacchetti tcp e legalità sono soggetti che non vanno sempre a braccietto
Inviato dal mio HUAWEI U8825-1 con Tapatalk 2
__________________
Apple Watch Ultra + iPhone 15 Pro Max + Rog Ally + Legion Go |
|
|
|
|
|
#9 | |
|
Senior Member
Iscritto dal: Dec 2002
Città: Italia
Messaggi: 12363
|
Quote:
lo strato potrebbe intercettare direttamente la query sul pc dell'utente ad alto livello.
__________________
Vendo Canon 80D + Sigma 17-70mm f/2.8-4 DC OS HSM Macro C |
|
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
|
è passato un pò di tempo da quando ho avuto una necessità simile, ma credo che tu debba indagare come del resto avevo fatto io sugli hook di windows. Vado a memoria, devi usare funzioni del tipo GetMessage() et simila e poi comportanti di conseguenza. Poi devi implementare una tua libreria di collegamento.
Mi ricordo che non era troppo banale come genere di programmazione. Ultima modifica di misterx : 25-01-2013 alle 08:53. |
|
|
|
|
|
#11 | |
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Non bastano i tradizionali hook. Per intercettare sul client le comunicazioni bisogna andare ad eseguire l'hook su api di sistema di send e receive su socket e modificarne il contenuto che queste ricevono o ritornano. Il problema è che ogni DBMS ha il proprio protocollo di comunicazione generalmente binario (es SqlServer usa TDS) e, non ne conosco i dettagli, probabilmente bisognerà avere una libreria per rigenerare un pacchetto valido, perchè non è sicuramente sufficiente andare a modificare il contenuto ci saranno anche CRC o altro per controllare che il pacchetto sia valido. Infine l'output anche lì bisogna spulciare il protocollo di comunicazione e andare a cambiare dei dati ma rigenerando un pacchetto valido. Mi sembra una operazione troppo complessa da realizzare, tale da rendere l'hook delle api di windows la parte più facile... |
|
|
|
|
|
|
#12 | |
|
Senior Member
Iscritto dal: Dec 2002
Città: Italia
Messaggi: 12363
|
Quote:
dannata tesi phd...
__________________
Vendo Canon 80D + Sigma 17-70mm f/2.8-4 DC OS HSM Macro C |
|
|
|
|
|
|
#13 | |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
|
Quote:
Comporta la conoscenza di windows a basso livello. Io mi ero fermato ad intercettare qualche messaggio. Peccato che all'uni insegnino Minix in luogo di Windows Lascio un link per chi lo desidera in modo che si sappia su cosa va a sbattere: http://pasotech.altervista.org/delphi/articolo60.htm |
|
|
|
|
|
|
#14 | |
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Tra l'altro poi c'è sempre il rischio di essere sgamati da un antivirus Il progetto che avevo realizzato qualche anno fa, ancora non viene beccato da nessun antivirus di quelli installati dai clienti |
|
|
|
|
|
|
#15 | |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
|
Quote:
Questo 3D mi ha fatto comprendere che di questo argomento non mi ricordo più un tubo e ne avevo discusso proprio qui nel 2002 Per chi si vuole divertire http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx |
|
|
|
|
|
|
#16 |
|
Senior Member
Iscritto dal: Dec 2002
Città: Italia
Messaggi: 12363
|
ok grazie veramente a tutti...
mi rassegno e cerco altri modi..
__________________
Vendo Canon 80D + Sigma 17-70mm f/2.8-4 DC OS HSM Macro C |
|
|
|
|
|
#17 |
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
|
|
|
|
|
|
#18 | |
|
Senior Member
Iscritto dal: Dec 2002
Città: Italia
Messaggi: 12363
|
Quote:
grazie veramente.
__________________
Vendo Canon 80D + Sigma 17-70mm f/2.8-4 DC OS HSM Macro C |
|
|
|
|
|
|
#19 |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
|
|
|
|
|
|
|
#20 | |
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Non capisco ad esempio perchè non potresti scrivere un layer costituito da Webservice con cui il software si interfaccia per accedere al db, a quel punto sul Webservice applichi tutte le logiche del caso. Generalmente si fa così, evitando l'accesso diretto ai client verso il db. Tra l'altro è anche meglio dal punto di vista della sicurezza perchè hai un unico punto di accesso al Db (la macchina dove c'è il Ws). |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:06.




















