Toon posts:

[php]beveiliging login db connect

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben er via iemand achter gekomen dat het mogelijk is om uit sommige sites de login gegevens te vissen van de MySQL server. In deze sites wordt gebruikt gemaakt van een template file waarin de url naar de file staat waarin connectie wordt gemaakt met de database server.

Nu schijnt het dus mogelijk te zijn om uit deze template file het pad naar de db connect file te halen, daar naartoe te bladeren (door ../../enz achter de URL te plakken), deze file aan te spreken en zo de login gegevens te verkrijgen.

Wat is hieraan te doen?

p.s. de file waarin de database connectie gemaakt wordt staat BUITEN de web directory.

  • eborn
  • Registratie: April 2000
  • Laatst online: 08-09 12:50
Als die file buiten de webdirectory staat kom je er toch echt niet bij hoor :)

Anders zou je ook kunnen doen:
http://www.tweakers.net/../../../../etc/shadow >:)

  • djc
  • Registratie: December 2001
  • Laatst online: 08-09-2025

djc

Op woensdag 03 april 2002 09:52 schreef eborn het volgende:
Als die file buiten de webdirectory staat kom je er toch echt niet bij hoor :)
Wel als ie m include in PHP vanaf dezelfde server, via het lokale filesystem.

Rustacean


  • thomaske
  • Registratie: Juni 2000
  • Laatst online: 09-09 14:51

thomaske

» » » » » »

Nja, je moet gewoon checken of er geen '..' of '/' in voorkomt, en er standaard een vast 'pad' voor plakken.

Brusselmans: "Continuïteit bestaat niet, tenzij in zinloze vorm. Iets wat continu is, is obsessief, dus ziekelijk, dus oninteressant, dus zinloos."


  • eborn
  • Registratie: April 2000
  • Laatst online: 08-09 12:50
Op woensdag 03 april 2002 09:54 schreef Manuzhai het volgende:

[..]

Wel als ie m include in PHP vanaf dezelfde server, via het lokale filesystem.
Hmm, ik had ff niet door wat ie precies bedoelde. Maar hij doelt dus op een template.php?page=index.html? En dan include die template.php de file die in $page staat?

Nou, dan is de oplossing van altijd een vast path ervoor zetten en puntjes+slashes verwijderen i.d.d. de manier :)

  • djc
  • Registratie: December 2001
  • Laatst online: 08-09-2025

djc

Op woensdag 03 april 2002 09:57 schreef eborn het volgende:
Hmm, ik had ff niet door wat ie precies bedoelde. Maar hij doelt dus op een template.php?page=index.html? En dan include die template.php de file die in $page staat?
Ik ook niet. :) Maar het zou kunnen, zeg maar.

Rustacean


  • Super_ik
  • Registratie: Maart 2001
  • Laatst online: 16:00

Super_ik

haklust!

k zet de inlog gegevens altijd in een php, en aangezien die geparts wordt als ie opgevraagt wordt via apache, valt er nix te lezen,

8<------------------------------------------------------------------------------------
Als ik zo door ga haal ik m'n dood niet. | ik hou van goeie muziek


Verwijderd

Topicstarter
Dus het probleem is dus niet dat het pad naar de file bekend is, maar dat hij in de parsetemplate file ingevoegd kan worden? Ik dacht namelijk ook dat je niet zomaarbuiten de webdir kon browsen.
Dus de padverwijzing in de files aanpassen naar een vast pad (zonder ../) te gebruiken en het zou opgelost moeten zijn?

p.s. de file waarin de database connectie gemaakt wordt schijnt idd aan geroepen te worden door het pad naar de database file achter de template file te plakkken (http://url/templatefile?var=bla;template=../../enz/connect.inc)

Verwijderd

Topicstarter
Op woensdag 03 april 2002 10:05 schreef Super_ik het volgende:
k zet de inlog gegevens altijd in een php, en aangezien die geparts wordt als ie opgevraagt wordt via apache, valt er nix te lezen,
Dat klinkt idd ook wel logisch, zou dat een goede oplossing kunnen zijn?

  • eborn
  • Registratie: April 2000
  • Laatst online: 08-09 12:50
Op woensdag 03 april 2002 10:06 schreef -Ehv_BramBo- het volgende:

[..]

Dat klinkt idd ook wel logisch, zou dat een goede oplossing kunnen zijn?
Ja, dat is dè oplossing. Zolang je PHP maar goed ingesteld staat (en je nergens een fopen() ipv een include() gebruikt) werkt dit prima.

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 09-09 20:58

Janoz

Moderator Devschuur®

!litemod

Dit lijkt me trouwens meer een teken van een erg brakke template engine.. Met deze engine kun je namelijk heel makkelijk je eigen code uitvoeren (en deze hoeft lang niet altijd op dezelfde server te staan)...

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • eborn
  • Registratie: April 2000
  • Laatst online: 08-09 12:50
Op woensdag 03 april 2002 11:16 schreef Janoz het volgende:
Dit lijkt me trouwens meer een teken van een erg brakke template engine.. Met deze engine kun je namelijk heel makkelijk je eigen code uitvoeren (en deze hoeft lang niet altijd op dezelfde server te staan)...
Volgens mij gaat een templage.php?page=template.php ook niet goed nee :)
Pagina: 1