is site kwetsbaar als prepared statements alleen voor userdingen gebruikt wordt?

Status
Niet open voor verdere reacties.

fsasfsas

Gebruiker
Lid geworden
11 sep 2006
Berichten
429
Dag

Ik ben een website aan het maken die veel gebruik maakt van een database (MySQL). Voor alle database handelingen waar gebruikersinput mee gemoeid is gebruik ik prepared statements. Maar ... voor sommige dingen die ik uit de database trek die niet met gebruikersinput te maken hebben, heb ik dat nog niet gedaan. Sommige stukken code had ik al geschreven voordat het concept van prepared statements me duidelijk was....

De website is nog niet online maar er zit wel wat tijdsdruk achter. Dat is de achtergrond van mijn vraag want het is sowieso de bedoeling alles om te zetten naar prepared statements.

Kan ik in principe toch online gaan? Of is het te kwetsbaar en dien ik het overal naar prepared statements om te zetten VOORdat ik online ga?

Uit de vraag is vast al af te lezen dat ik het liefst snel online ga om daarna die omzetting te doen maar ik wil niet dat de boel zo lek is als een mandje.

groetjes, Anjo
 
Dag

Alle input gerelateerde SQL dingen zijn sowieso al beveiligd met prepared statements.
Maar er zijn stukjes code waarbij ik info uit de database haal waarbij geen userinput bij komt kijken. Als ik bv de content van een bepaalde pagina uit de database haal, doe ik dat nog niet met prepared statements. Er is dan nergens een user_input. Welke info uit de database gehaald moet worden staat in een php variabele en die staat voor dat stukje code gewoon vast. Wordt nergens ingelezen. Dan is dat stukje toch niet kwetsbaar?
hier is een voorbeeld:

PHP:
$qry = "SELECT " . $items_str . " FROM content WHERE menu_item = \"" . $menu_item . "\" AND page = \"" . $page . "\"";

geen enkele van de genoemde php variabelen ($items_str, $menu_item, $page) hebben iets met user input te maken maar worden gewoon van tevoren ergens vastgelegd binnen php. Dan is het toch niet kwetsbaar?

Voor de goede orde: de informatie die hiermee boven de tafel wordt gehaald is ook niet ergens door users in te geven of te wijzigen. Deze informatie is door mijzelf "hard" in de database gezet. Zonder enige code.
Hier is, lijkt me, geen sprake van eerste orde injectie en ook niet van tweede orde?

groetjes, Anjo
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan