Ik sta op het punt om een nieuw project online te zetten, maar wil het eerst goed (laten) testen voor eventuele exploit(s).
Hoe doen jullie dit normaal? Huren jullie iemand in?
Likes: 0
Ik sta op het punt om een nieuw project online te zetten, maar wil het eerst goed (laten) testen voor eventuele exploit(s).
Hoe doen jullie dit normaal? Huren jullie iemand in?
zo ! dus het is al klaar en je denk nu pas over de veiligheid? Is daar niets over afgesproken vantevoren? Heb je al inzage in de code gehad?
Klarned Managed hosting Hosting, optimalisatie & debugging door WP Core developers![]()
ah op die manier! Je zou daar inderdaad iemand voor kunnen inhuren, dat gaat meestal op uurtarief of fixed price voor een aantal bekende exploits.
Ik neem aan dat je alle userinput al niet vertrouwd en dus ook niet zomaar iets queried zonder het veilig maken van de query?
Klarned Managed hosting Hosting, optimalisatie & debugging door WP Core developers![]()
Mocht je vaker zelf met PHP aan de gang gaan, zou ik me dat toch eigen maken als ik jou was. Op internet is veel te vinden over de meest voorkomende valkuilen.
Query veilig maken voor SQL injectie kan je gebruik maken van db_escape. Die zorgt ervoor dat in de query de nummers geen quotes krijgen, de strings wel (en escaped deze), lege variabelen worden NULL zonder quotes.
Edit: geeft je geen garantie! controleer/beperk altijd je variabelen!PHP Code:function db_escape($values, $quotes = true) {
if (is_array($values)) {
foreach ($values as $key => $value) {
$values[$key] = db_escape($value, $quotes);
}
}
else if ($values === null OR empty($values)) {
$values = 'NULL';
}
else if (is_bool($values)) {
$values = $values ? 1 : 0;
}
else if (!is_numeric($values)) {
$values = mysql_real_escape_string($values);
if ($quotes AND $values != "NULL") {
$values = "'" . $values . "'";
}
}
return $values;
}
Laatst gewijzigd door RBeun; 08/09/10 om 15:06. Reden: zie edit
Hallo Acceler,
Bedankt voor de inpit. Ik maak al gebruik van zo een soort functie, en voorzover ik het kan zien is alles goed dicht getimmert.
Zal deze week maar weer eens al de code doorlopen en nog eens kijken of ik een potentieel probleem kan vinden.
Vergeet de "hufter-test" niet! Succes en laat het weten als je handige tegenmaatregelen hebt![]()
Ligt er ook an of je iemand zoekt die de problemen blootlegt, of dat die ze ook oplost.
Vraag een free scan aan op www.secpoint.com
Getallen ook gewoon tussen quotes staan daar geeft mysql niks om
SELECT * FROM table WHERE ID > "10"
Je zou dus ook alles kunnen quoten (en escapen)
Vergeet ook niet errors uit te zetten word ook nog wel eens vergeten, dan zie je gelijk de locaties van bestanden en de hele sql, hoe meer je weet van een script hoe makkelijker het te hacken is
Kijk eens naar unittesten mbv phpunit.
Makkelijk een Enquete of HR/Klantenonderzoek opstellen? https://sur-v.com
Naast giromaat zie ik geen een nuttige reactie en die van chielsen slaat helemaal de plank mis.
Misschien heb je hier wat aan -> http://www.owasp.org/index.php/Categ..._SQLiX_Project of -> http://sqlmap.sourceforge.net/