Sql injections deel 2

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Rick

rick

23/10/2007 22:06:00
Quote Anchor link
Beste php'ers

Tijdje terug ben ik bezig geweest met het tegen gaan van sql injections , hierover had ik toen een topic gestart om te vragen wat je er tegen kon doen.

Nu wil het eens testen op 1 manier als het wel beveiligd is , en op een manier als het niet beveiligd is.

Hier heb ik de sql
$q = mysql_query("SELECT * FROM users WHERE username LIKE '%$search_name%' ORDER BY username");
while($user = mysql_fetch_object($q)) {

Hoe kan ik nu bijvoorbeeld proberen om tabel users the verwijderen dan ?
( dit al via het invoeren via een <input

Maar dit schijnt ook te kunnen via de url als voorbeeld index.php?p=inbox&id=1

Hoe gaat hier in zijn werk dan ?

Voordat mensen denken dat ik het ga misbruiken hebben ze het mis , ik wil het leren om het makkelijker tegen te kunnen gaan.

Alvast bedankt voor jullie hulp

Met vriendelijke groet
Rick Feenstra
 
PHP hulp

PHP hulp

08/11/2024 08:06:29
 
- SanThe -

- SanThe -

23/10/2007 22:30:00
Quote Anchor link
Waar komt $search_name vandaan? Als je die niet controleert maar direct in je query zet dan heb je dus een lek.

Als iemand het voor elkaar krijgt om onderstaand in $search_name te krijgen dan worden alle users weggegooid.

$search_name = "zoekwoord%' ORDER BY username; DELETE FROM users WHERE 1=1; SELECT * FROM users WHERE username LIKE '%zoekwoord";
 
Rick

rick

24/10/2007 12:29:00
Quote Anchor link
Nee die is inderdaad niet gecontroleerd,
Dus als ik nu DELETE FROM users WHERE 1=1; invoer delete ik alles ?
 
Joren de Wit

Joren de Wit

24/10/2007 12:30:00
Quote Anchor link
Jep, dat is namelijk dezelfde query als DELETE FROM users, welke de hele tabel leegt.
 
Crispijn -

Crispijn -

24/10/2007 12:31:00
Quote Anchor link
Als je het niet zeker weet zou ik 't proberen als ik jou was :D ;)
 
Nicoow Unknown

Nicoow Unknown

24/10/2007 12:34:00
Quote Anchor link
natuurlijk voordat je een backup hebt gemaakt,
anders is t niet leuk natuurlijk..
 
Joren de Wit

Joren de Wit

24/10/2007 12:35:00
Quote Anchor link
nico schreef op 24.10.2007 12:34:
natuurlijk voordat je een backup hebt gemaakt,
anders is t niet leuk natuurlijk..
Tja, wie gaat er nou ook testen op test tabellen? Dat haalt de spanning er helemaal vanaf...
 
Richard

richard

24/10/2007 13:30:00
Quote Anchor link
http://www.securiteam.com/securityreviews/5DP0N1P76E.html
Hier staat wel het een en ander geschreven hoe je dingen kan uitvoeren. Mischien heb je er wat aan?

Of google anders hier eens op
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
sql injection ' or 1=1 #
Gewijzigd op 01/01/1970 01:00:00 door richard
 
Crispijn -

Crispijn -

24/10/2007 13:35:00
Quote Anchor link
Ik wil spanning, horror! Deathlines en miljoenen records weggooien!
 
Timmy

timmy

24/10/2007 13:41:00
Quote Anchor link
rick schreef op 24.10.2007 12:29:
Nee die is inderdaad niet gecontroleerd,
Dus als ik nu DELETE FROM users WHERE 1=1; invoer delete ik alles ?

ja, tenzij 1 niet gelijk is aan 1 ;)
 
Rick

rick

24/10/2007 16:44:00
Quote Anchor link
Bedankt voor de reactie's

@ Crispijn ik ben ook aan het testen op me eigen website, en ja ik heb wel een backup haha.

@ timmy Wat stel jij anders voor dan ;) ?

@ richard bedankt voor de site ,ik zal eens testen of ik me website kan '' verkloten''
 
Jacco Engel

Jacco Engel

24/10/2007 16:48:00
Quote Anchor link
timmy schreef op 24.10.2007 13:41:
rick schreef op 24.10.2007 12:29:
Nee die is inderdaad niet gecontroleerd,
Dus als ik nu DELETE FROM users WHERE 1=1; invoer delete ik alles ?

ja, tenzij 1 niet gelijk is aan 1 ;)


Niet helemaal ontopic maar een collega van mij had ooit bij een uitkomst van een formule dat 3 gelijk was aan 4 :P
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.