Newsgroup: it.comp.www.asp
Titolo: ASP: problema nel "nascondere" un DB all'esterno

Ciao a tutti,
stavo facendo delle prove sul mio computer (w95 e PWS) prima di mettere i
file su un server e m'e' venuta in mente una cosa molto importante.
Ho una serie di asp che accedono ad un database, e' tutto impostato secondo
questo criterio:
c:\webshare\wwwroot\mieiasp\*.asp
c:\webshare\wwwroot\miodb\*.mdb
dai file asp accedo al db in questa maniera:
dim Conn
set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "driver={Microsoft Access Driver
(*.mdb)};dbq="&Server.MapPath("/db/dbmwizard.mdb")
e tutto funziona alla perfezione.
MA.
In questa maniera credevo di rendere inaccessibile il database se non
tramite gli asp. Detto in parole povere credevo di negare ad eventuali
"intrusi" la possibilita' di scaricarsi completamente il database con
programmi di download siti (Teleport, etc).
Questo non era affatto vero perche' se uno prova a scaricarmi tutta la
wwwroot il database viene scaricato insieme agli altri file come se niente
fosse (ovvio!).
Allora ho provato a mettere il db in una cartella esterna al wwwroot:
c:\webshare\miodb\*.mdb (anzi preferirei metterlo sul disco D, se fosse
possibile)
solo che non riesco piu' a richiamare il db in nessun modo... perche'
"/db/dbmwizard.mdb" ovviamente non funziona piu' ed ho provato di tutto: dal
percorso fisico alle barre rovesciate, ai puntini, etc...
Come faccio a richiamarlo? Qual e' il percorso adesso (riferito a
c:\webshare\miodb\*.mdb)? E se volessi metterlo sul disco D?
Grazie a tutti per le informazioni
--
Da' mArLeNeK (ICQ #7653970)
Unofficial Marlene Kuntz's Home Page 
http://www.marlenekuntz.com

 c:\webshare\miodb\*.mdb)? E se volessi metterlo sul disco D?
Prova ad abbandonare la DSN connection-less che usi, definita cosi' perche'
non necessita la configurazione di un DSN di sitema (eseguibile
dall'apposito ODBC32 nel controll pannell).
--
Ciao, Fabio Zed Zamparelli

c:\webshare\miodb\*.mdb)? E se volessi metterlo sul disco D?
Conn.Open "driver={Microsoft Access Driver
(*.mdb)};dbq=D:\db\dbmwizard.mdb"
il MapPath non č obbligatorio... serve solo se non conosci il percorso
fisico di un file, ma se lo stai mettendo su d: probavilmente conosci
il percorso fisico di questo file e il MapPath non ti serve
    ci@o
ŻŻŻŻŻŻŻŻŻŻŻŻŻ
 [Federiko]

Ma in oni caso non riescono a scaricare la pagina asp come
codice(Correggetemi se sbaglio) il server se la compila sempre.. non ci sono
programmi no??

 fosse (ovvio!).
Scusate ma anche io pensavo fosse "protetto" il db access....invece scopro
questa terribile cosa..
Da quanto ho capito quindi l'unico modo per evitare cio' è utilizzare un
DSN?
Io ho il mio sito su di un servizio hosting gratuito con supporto asp e di
conseguenza posso usare solo la connessione dsn-less.
Aiuto....
Ciao

 wrote in message
8c5msu$hnp$1...@nslave1.tin.it...

Certo, a meno che non si generino errori che mettono in chiaro qualche
nomefile.inc che invece, qualora richiesto al server, non produce
interpretazione da parte del server, ma una semplice risposta in plain text
(e quindi la possibilita' di scaricarsi l'intero codice contenuto nel
nomefile.inc).
Lui penso intendesse la possibilita' di downloadare il nomedb.mdb qualora
contenuto in una directory virtuale accessibile via HTTP (dunque
raggiungibile con un 
http://www.cavolimiei.com/nomedirvirtuale/nomedn.mdb
 ).
Se pero' si configura il server in modo da impedire il directory browsing,
mi risulta oscuro come un Teleport possa copiarsi anche un file incluso in
una directory virtuale (escludendo discorsi di RemoteScripting di cui non mi
azzardo ancora a parlare) di cui non puo' conoscere l'esistenza. Certo se in
quelche modo (vedi file.inc contenenti le righe di accesso al db) si viene a
conoscenza del nome allora la cosa diventa semplice. L'unica alternativa e'
inserire il .mdb in una dir fisica non accessibile via http (non
corrispondente ad alcun virtual path).
Pero' a questo punto si impone un taglia incolla di un presunto BUG che sta
circolando ultimamente nelle mailing list di security:
*******************
Imagine the URL of a typical ASP site:
http://www.yoursite.com/yourfile.asp
Now try this variation:
http://www.yoursite.com/null.htw?CiWebHitsFile=/yourfile.asp%20&CiRestrictio
n=none&CiHiliteType=Full
If you see your source code, you have the webhits.dll bug!
Microsoft's Fix is at:
http://www.microsoft.com/technet/security/bulletin/ms00-006.asp
*******************
Non ho ancora approfondito la cosa, ma le fonti sembrano attendibili. Meglio
prenderlo sul serio.


 il MapPath non è obbligatorio... serve solo se non conosci il percorso

 prenderlo sul serio.
è una cosa vecchia di parecchio tempo...  :-)
--
CIAO!.db
Daniele "The Night Surfer" Bochicchio <webmaster(at)ASPItalia.com>
Moderatore di it.comp.www.asp - 
http://www.ASPItalia.com/newsgroup/icwa.asp
Leggi subito i nostri ultimi articoli:
- 'Costruire un Form con ASP e Flash 4'
http://www.ASPItalia.com/articoli/articoli.asp?data=20000320
- 'Sistemi di pagamento per l'e-commerce'
http://www.ASPItalia.com/articoli/articoli.asp?data=20000316
Uno script al giorno? Solo su 
http://www.aspitalia.com/liste/usag/

 programmi no??
Se mandi in errore uno script il messaggio di errore (se non e' disabilitato
sul server) ti da molte informazioni.
Saluti.
Stefano.

Tuttora io sto lavorando su un sito e i database sono nella directory
principale dove li dovrei mettere???
uso una dns-less.
certo se digito il percorso via http riesco a scaricarlo ma su quelli
importanti cč la password (non penso facile da trovare no?? a meno che
esistano programmi di hack) cmq come dovrei fare per renderli meno
accessibili??

raga un cosa che forse può servirvi...
io non faccio file.inc li faccio comunque .asp in modo che uno nn riesce a
scaricarseli...
cmq come fai a togliere il messaggio di errore???
--
MaxTemplar[DT]
wra...@iol.it
http://web.tiscalinet.it/darktemplar
Visitate anche:
www.stileitalia.it

 cmq come fai a togliere il messaggio di errore???
on error resume next.
