[PHP/AJAX/MySQL] Mogelijk beveiligingslek

Pagina: 1
Acties:

  • Rekcor
  • Registratie: Februari 2005
  • Laatst online: 08-10-2025
Voor een webapplicatie ben ik een generiek systeem aan het bouwen, waarbij gegevens in een MySQL-database te beheren zijn. Het is een combinatie van AJAX, PHP en MySQL.

Omdat het systeem generiek is, moet ik bepaalde dingen van de MySQL-database in een array Javascript hebben, te weten de tabel- en kolomnamen (anders weet AJAX/PHP niet naar welke MySQL-tabel de formulierwaarden moeten worden doorgegeven).

Mijn vraag: levert het 'openbaar maken' in Javascript van de tabel- en kolomnamen van de MySQL-database security issues op?

Uiteraard wordt alle input gefilterd op XSS / SQL-injecties. Bovendien draait het systeem - in eerste instantie in ieder geval - op een intranet.

P.S. Mmmz, titel is niet meer te wijzigen (zo lijkt het wel een heel belangrijk topic :P)

[ Voor 6% gewijzigd door Rekcor op 23-09-2006 18:31 . Reden: Titel verkeerd ]


  • CrashOne
  • Registratie: Juli 2000
  • Niet online

CrashOne

oOoOoOoOoOoOoOoOoOo

Rekcor schreef op zaterdag 23 september 2006 @ 18:30:
[..]

Uiteraard wordt alle input gefilterd op XSS / SQL-injecties. Bovendien draait het systeem - in eerste instantie in ieder geval - op een intranet.
Dan is er toch geen probleem?

Huur mij in als freelance SEO consultant!


  • Rekcor
  • Registratie: Februari 2005
  • Laatst online: 08-10-2025
Dan is er toch geen probleem?
Ja dat weet ik dus niet... Ik zou ook niet weten wat je met die info moet, maar er zullen vast heeel slimme crackers zijn die er wel iets vervelends mee kunnen.

Het idee lijkt me gewoon een beetje eng: info over de database online...

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

djc

Lijkt me geen enkel probleem. Je kan je paranoiditeit ook overdrijven. :P

Rustacean


  • JHS
  • Registratie: Augustus 2003
  • Laatst online: 04-01 15:49

JHS

Splitting the thaum.

De tabel- en kolomnamen zijn door naamgevingsconventies vaak toch al af te leiden, dus je geeft hier maar een klein laagje van bescherming op :) . Daarnaast is het zo dat 'security through obscurity' ook alleen maar schijnveiligheid is.

Mocht het zo zijn dat er een geslaagde SQL-injection poging kan plaatsvinden maak je het met de tabelnamen op zich wel makkelijker. Maar om nu al je tabelnamen te coderen is ook weer zo iets... :P .

DM!


  • Rekcor
  • Registratie: Februari 2005
  • Laatst online: 08-10-2025
JHS schreef op zaterdag 23 september 2006 @ 18:43:
De tabel- en kolomnamen zijn door naamgevingsconventies vaak toch al af te leiden, dus je geeft hier maar een klein laagje van bescherming op :) . Daarnaast is het zo dat 'security through obscurity' ook alleen maar schijnveiligheid is.

Mocht het zo zijn dat er een geslaagde SQL-injection poging kan plaatsvinden maak je het met de tabelnamen op zich wel makkelijker. Maar om nu al je tabelnamen te coderen is ook weer zo iets... :P .
Oke. Ja ik was wat gaan Googlen op 'web application security' en wat je dan allemaal tegenkomt. Je zou geen website meer durven publiceren.

Bedankt! _/-\o_

  • dusty
  • Registratie: Mei 2000
  • Laatst online: 25-11-2025

dusty

Celebrate Life!

topic move: PRG -> SEA

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR


  • GlowMouse
  • Registratie: November 2002
  • Niet online
Rekcor schreef op zaterdag 23 september 2006 @ 18:30:
Uiteraard wordt alle input gefilterd op XSS / SQL-injecties
Ik zou de input iets beter checken, door ook te kijken of de tabel- en kolomnaam inderdaad door die gebruiker ingevoerd kunnen worden. Je voorkomt dan ongeldige queries, en in het geval dat er verschillende gebruikers zijn die elk andere tabellen aan mogen passen ook een beveiligingsrisico.

  • Keiichi
  • Registratie: Juni 2005
  • Laatst online: 10-02 13:38
Manuzhai schreef op zaterdag 23 september 2006 @ 18:43:
Lijkt me geen enkel probleem. Je kan je paranoiditeit ook overdrijven. :P
Ik denk niet dat TS zo paranoide is.
Ik programmeer nu al diverse talen voor wat jaartjes en zeker bij code voor applicaties die voor de buitenwereld gericht zijn, vraag ik me meerdere malen af of alles wat ik gedaan heb ook daadwerkelijk afdoende is om een hack te voorkomen.

En lek ontstaat vaak zonder dat je het zelf weet zelfs als je je code zeer kritisch bekeken hebt.

Solar @ Dongen: http://solar.searchy.net/ - Penpal International: http://ppi.searchy.net/


  • soulrider
  • Registratie: April 2005
  • Laatst online: 27-11-2017
kan er misschien ook niet gewerkt worden met iets soortgelijks als trigges en stored procedure's ?

javascript mbv een naam en variabelen php aangeven welke sql hij uitgevoerd wilt hebben en met welke variabelen, maar die query met tabel-info enkel in de php laten zitten ?

effe zoeken op stored procedure's - maar ipv in de db is dan de php tussenlaag diegene die daar voor zorgt... - kan die ook extra controle doen op de variabelen die worden doorgegeven

(zit ook met het paranoide in mijne kop en hou de database liefst zoveel mogelijk uit het oog en gedachte van bezoekers met ev. foute gedachten - hoe minder ze weten van de achtergrond hoe beter, of hoe lastiger iets te verkloten)

[ Voor 28% gewijzigd door soulrider op 26-09-2006 21:56 ]

Pagina: 1