MySQL injection?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Software Ontwikkelaar PHP

Functie omschrijving Full Stack Software Ontwikkelaar gezocht! Voor een bedrijf in de regio van Ermelo zijn wij op zoek naar een Software Ontwikkelaar die gaat bijdragen aan het door ontwikkelen, onderhouden en optimaliseren van SaaS applicatie van dit bedrijf. Hierbij ga jij voor- en samenwerken met de klanten van de organisatie, het is hierbij dus van groot belang dat je communicatief vaardig bent en dat je beschikt over beheersing van zowel de Nederlandse als Engelse taal. Bedrijfsprofiel Waar ga je werken? Altijd al in een echt familiebedrijf willen werken? Dan is dit je kans! Het bedrijf waar je komt te

Bekijk vacature »

Front-end developer (Angular)

Functie Het team bestaat uit een architect, fullstack developers, app developers, de product owner en projectmanager. Eenieder draagt vanuit zijn discipline bij aan een complete oplossing voor de klant. Uiteraard zul je hierin nauw samenwerken met je collega’s. Jij wordt verantwoordelijk voor de front-end implementatie en fungeert als lead op dit gebied binnen het team. Je kunt helder formuleren, ideeën uitdragen en overbrengen aan je collega’s. Qua technische stack is het vooral van belang dat je ervaren bent met Angular, HTML5, CSS en TypeScript. Verder is ervaring in NgRx, Bootstrap, BEM en Cypress een pré, evenals affiniteit met UX/UI Design!

Bekijk vacature »

Back-end developer

Dit ga je doen Development d.m.v. XQuery, JSON/XML en REST API's; Ontwikkelen aan een tof en complex zorgplatform; Koppelingen maken met de NoSQL database; Testen en documenteren van de ontwikkelde functionaliteiten; Samenwerking met andere front- en back-end ontwikkelaars. Hier ga je werken Voor een vooruitstrevende organisatie binnen de zorg in Den Haag zijn wij opzoek naar een Back-end Developer die ervaring heeft met o.a.XQuery en Vue.JS of daarin graag zou willen ontwikkelen. Je zal ontwikkelen aan een tof en complex zorgplatform en koppelingen maken met de NoSQL database. Ook het testen en documenteren van de ontwikkelde functionaliteiten behoort tot jouw

Bekijk vacature »

Senior Fullstack Developer (GOLang, TypeScript)

Bedrijfsomschrijving Our client is one of the large worldwide accounting firms. Functieomschrijving We are looking for a senior (all-round) developer (Project On Demand / Tax Technology) Uses as much as possible technology in support of the development process: Git, Jenkins, Docker, npm, skaffold, helm, etc. We are looking for a real hands-on developer; ie not a team lead or other managerial-style role; Acts with integrity both internally and externally and takes personal responsibility in this respect; Curious about the developments within their field and driven to make a difference with the team; Able to empathize with colleagues and stakeholders and

Bekijk vacature »

Applicatie ontwikkelaar

Functie omschrijving Zelfstandige applicatie ontwikkelaar gezocht voor familiair bedrijf in omgeving Barendrecht! Ben jij op zoek naar een nieuwe uitdaging en zoek jij een informele werkgever waar je zelfstandig kunt werken binnen een leuk IT team, lees dan snel verder want wie weet zijn wij op zoek naar jou! Binnen deze rol houdt jij je met het volgende bezig: Onderhouden en ontwikkelen van de IT systemen; Opzetten van Azure Cloud systemen, denk aan interfaces, hardware op de Cloud, webportalen of BI functies; Werken aan scripts binnen verschillende software applicaties, denk aan ERP en CAD; Ontwikkelen en implementeren van MS PowerApps

Bekijk vacature »

Database Developer

Functieomschrijving Heb jij ongeveer 3 jaar ervaring als Database Developer met MS SQL of een vergelijkbare database? Wil jij werken voor een gewaardeerde werkgever in regio Tilburg waar jij de tijd en ruimte krijgt jezelf te ontwikkelen? Lees dan snel verder! Hoe ziet jouw takenpakket eruit? Je houdt je bezig met het creëren en bouwen van MS SQL server databases; Je gaat projecten vanaf het begin tot het eind begeleiden. Je sluit aan bij meetings met klanten om hun processen in kaart te brengen. Vervolgens voer jij het project uit en zorgt dat dit zo goed mogelijk verloopt; Je werkt

Bekijk vacature »

Dynamics Ontwikkelaar

Dit ga je doen Ontwikkelen van Dynamics 365 voor de interne uitrol; Samen met de consultants sparren met klanten over de wensen en eisen; Ontwikkelen van Dynamics 365 voor verschillende grote klanten; Technische analyse en testen; Meedenken over het gebruik en de richting van Dynamics binnen de organisatie. Hier ga je werken Onze opdrachtgever, gevestigd in regio Eindhoven, levert een compleet dienstenpakket op het gebied van IT. Zij pakken verschillende (complexe) vraagstukken van grote organisaties op. De sfeer intern is gezellig en informeel. Men houdt van hard werken maar gezelligheid door middel van een borrel of gezamenlijke lunch komt er

Bekijk vacature »

Fullstack developer (NodeJS, React, AWS)

Functie Als Fullstack developer kom je te werken in het ontwikkelteam, maar zoals gezegd komt er veel meer bij kijken dan alleen maar ontwikkelen. Je bent samen met je collega’s continu bezig om de software uit te breiden maar hiernaast doe je doorlopend onderzoek naar de inzet van bijvoorbeeld Machine Learning. Ze willen met hun software echt voorlopen op andere en toegevoegde waarde leveren voor de eindgebruiker. Mede hierom zijn ze erg benieuwd naar iemand zijn persoonlijkheid, of hij graag nieuwe dingen uitzoekt (Google!), en initiatief neemt. Maar waar staan ze nu? Na een onderzoeksfase van ruim een jaar zijn

Bekijk vacature »

Lead developer

Functie Als lead developer wordt jij verantwoordelijk voor een van onze development teams. Samen met de Software Architect bewaak jij de kwaliteit en uitvoering van onze complexe vraagstukken. Daarnaast ben jij verantwoordelijk voor het inschatten, designen en ontwikkelen van middelgrote tot grote veranderingen in de software. Ook coördineer jij het proces rondom complexe technische vraagstukken. Verder bestaat jouw takenpakket uit het volgende: – Het aansturen van jouw development team; – Het begeleiden van Junior Software Engineers; – Het maken van technische analyses m.b.t. nieuwe aanvragen en het tijdsbestek inschatten voor de uitvoering hiervan; – Het uitvoeren van de ontwikkeling van

Bekijk vacature »

Developer Low-code

Dit ga je doen Low-code ontwikkeling van software voor landelijk bekende organisaties; Opleveren van mooie eindproducten, middels de Agile methodiek; Samenwerken in een team van 10 collega's; Direct contact met de eindklant over de gewenste oplossingen. Hier ga je werken Als Developer kom je te werken in de regio van Lelystad bij een organisatie die met toonaangevende klanten uit heel Nederland samen werkt. De producten en diensten van de organisatie bereiken miljoenen Nederlanders. Hierbij komt een grote hoeveelheid informatie kijken en deze moet discreet en veilig verwerkt worden. De processen die hierbij horen worden door het IT team vormgegeven. De

Bekijk vacature »

.NET developer

Functie Als ervaren .NET ontwikkelaar start jij in één van onze vier scrumteams. Met 30 ontwikkelaars werk jij aan de doorontwikkeling van ons core product. Ook werkt jouw team aan maatwerkoplossingen op aanvraag van de klant en op projectbasis. Wij vinden het erg belangrijk dat onze ontwikkelaars met plezier naar werk gaan. Een deel hiervan ligt uiteraard bij jezelf, als jij ontwikkelen niet leuk vindt, ben jij bij ons echt aan het verkeerde adres. Jouw team bestaat namelijk uit een groep gepassioneerde vakidioten die dit werk doen omdat dit eerst een hobby was! Daarnaast wordt er intern rekening gehouden met

Bekijk vacature »

Java Front-end Developer

Dit ga je doen Ontwikkelen van nieuwe functionaliteiten in Java met tools als Springboot, MS SQL Server (T-SQL) en JavaScript; Het onderhouden van de (web-)applicaties binnen een complexe omgeving; Werken aan de migratie van een monolithisch systeem naar een architectuur gebaseerd op Kubernetes; Code reviews met collega's en actieve kennisuitdelingsessies voeren; Het uitvoeren van unit- en systeemtests Experimenteren met nieuwe tools en technieken. Hier ga je werken Binnen deze organisatie kom je te werken op de afdeling die gegevens verzamelt vanuit het hele land. Denk hierbij aan vertrouwelijke persoonsgegevens. Het team verwerkt al deze data met als doel het waarborgen

Bekijk vacature »

PHP Web Developer

Functie omschrijving Voor een klein softwarebedrijf in de omgeving Roosendaal, zijn wij op zoek naar een PHP web developer met een aantal jaar werkervaring. Wil jij graag werken aan in-house software projecten voor diverse klanten? Voel jij je prettige in een klein team developers, waar jouw inbreng enorm gewaardeerd wordt? Lees dan snel verder! Jouw werkzaamheden zien er als volgt uit: Je wordt verantwoordelijk voor de ontwikkeling van diverse applicaties. Dit kan de ene keer een online platform voor aanbiedingen zijn, en de andere keer een software pakket dat gebruikt wordt om interne processen te automatiseren. Het zijn stuk voor

Bekijk vacature »

Front-End Developer

Als Front-End Developer bij Coolblue verbeter je de gebruiksvriendelijkheid van onze webshop voor miljoenen klanten. Wat doe je als Front-End Developer bij Coolblue? Als Front-end Developer werk je aan de gebruiksvriendelijkheid van onze webshop voor miljoenen klanten. Je vindt het leuk om samen te werken met de UX designer om stories op te pakken. Je krijgt energie van het bedenken van creatieve oplossingen en presenteert dit graag binnen het team. Daarnaast ben je trots op je werk en verwelkomt alle feedback. Ook Front-end Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om te

Bekijk vacature »

Junior .NET developer

Functie Wij hebben drie scrumteams. Het eerste team focust zich op het stukje hardware wat wij in huis doen. Zij maken als team o.a. gebruik van C++. De andere twee scrumteams zijn allebei bezig met data verwerking en maken hierbij in de backend gebruik van C# .NET / .NET Core. Het verschil tussen deze teams is dat één team de data verwerking doet voor de mobiele applicatie. Zij werken hierbij dus ook met Xamarin. Het andere team focust zich op de webapplicaties en maakt hierbij ook gebruik van ASP.NET MVC. Op basis van jouw ambities en kwaliteiten kijken wij samen

Bekijk vacature »

Pagina: 1 2 volgende »

Roel

Roel

01/07/2007 10:46:00
Quote Anchor link
Hallo,

Vaak lees ik over bugs als "MySQL injection". Wat is dit nou precies en hoe ga je het tegen? En hoe beveilig je je database eigenlijk?

Gr. Roel

Edit:

Sorry voor het lastig vallen, had niet goed gezocht bij tutorials.
Gewijzigd op 01/01/1970 01:00:00 door Roel
 
PHP hulp

PHP hulp

23/11/2024 11:29:00
 
GaMer B

GaMer B

01/07/2007 10:54:00
Quote Anchor link
Niemand kan het beter uitleggen dan wikipedia: Klik

EDIT: Hier op PHPHulp.nl staan ook nog wat tutorials over SQL injectie.
Gewijzigd op 01/01/1970 01:00:00 door GaMer B
 

01/07/2007 10:55:00
Quote Anchor link
http://www.phphulp.nl/php/tutorials/10/145/246/

een tutorialtje hier op de site over injecties
 
Frank -

Frank -

01/07/2007 14:02:00
Quote Anchor link
Gebruik PDO (minimaal PHP versie 5 vereist) voor het aanroepen van jouw database. Dan heb je geen last meer van SQL-injection.

Tevens kun je dan eenvoudiger een andere database, bv. PostgreSQL of FireBird, gaan gebruiken.
 
PHP erik

PHP erik

01/07/2007 14:03:00
Quote Anchor link
Frank heeft idd gelijk.

Verder is het trouwens eigenlijk SQL-injection en niet MySQL-injection. Want je injecteert SQL-code en niet een heel database systeem.
 
Roel

Roel

01/07/2007 14:26:00
Quote Anchor link
Wat is PDO dan en hoe gebruik ik het dan? En waarom zou je er dan geen last meer van hebben?
 
GaMer B

GaMer B

01/07/2007 14:28:00
Quote Anchor link
Roel schreef op 01.07.2007 14:26:
Wat is PDO dan en hoe gebruik ik het dan? En waarom zou je er dan geen last meer van hebben?

Mr. G. Oogle zegt: Klikk0rz
 
Bo az

Bo az

01/07/2007 14:30:00
Quote Anchor link
De reden dat je dan geen last meer hebt van SQL injection zijn prepared statements, iets wat overigens net zo goed beschikbaar is in de MySQLi extensie.

Hier lees je meet over PDO::prepare.

PDO is de geen vrijwaring van SQL injection omdat je er bij PDO::query nog net zo goed last van kan hebben.
 
Roel

Roel

01/07/2007 15:28:00
Quote Anchor link
Snap niet helemaal hoe je het nou precies moet gebruiken.. maar ik deze tutorial "http://www.phphulp.nl/php/tutorials/3/244/452/" staat op de 2e pagina een voorbeeld. Dit voorbeeld heb ik even nagemaakt:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php

include("includes/connect.php");

if($_POST['submit']) {
mysql_query("INSERT INTO `[test]` (naam, pass) VALUES ('" . $_POST['naam'] . "', '" . $_POST['pass'] . "')");
}

else {
PRINT <<<FORM

<html>
<head>
<title>TEST</title>
</head>

<body>
<form action="test.php" method="POST">
Naam:         <input type="text" name="naam"><br>
Password:     <input type="password" name="pass"><br>
        <input type="submit" name="submit" value="Test">
</form>

</body>
</html>
FORM
;
}

?>


connect.php maakt gewoon verbinding met me DB, dit script werkt ook gewoon alleen als ik dan probeer om hem te 'injecten' lukt hiet niet. Ik doe precies zoals het in het voorbeeld staat. Namelijk bij Naam "Pietje Puk', 'passwoord1'), ('Sinterklaas" invullen en bij Password gewoon een woord. Als ik dit doe komt er geen injection, hij voert het gewoon letterlijk in mijn DB in terwijl ik niks beveiligt heb, hoe kan dat:S

Ook snap ik de oplossing die ze geven niet helemaal. Er staat strip_slashes maar er moeten toch juist slashes bij voor de quotes?

Wie snapt dit en kan helpen?
 
Frank -

Frank -

01/07/2007 15:36:00
Quote Anchor link
Hoe zeg je? Blokhaken [] en backtics ` in je query proppen? Waarom zou je in vredesnaam die troep er in willen zetten?

Gooi deze zooi dus weg, ga je zitten schamen, gebruik ze nooit meer en vergeet dat je ze ooit hebt gebruikt.

Verder vergeet je de functie mysql_real_escape_string() te gebruiken en heb je waarschijnlijk het geluk dat magic_quotes is aangezet. Van dat soort toevaligheden wil je echter niet afhankelijk zijn. Kortom, beveiligen die queries!
 
Roel

Roel

01/07/2007 15:42:00
Quote Anchor link
mysql_real_escape_string() ben ik niet vergeten, ik heb dit script expres onbeveiligt gemaakt om te TESTEN. Maar het raren is dus dat het al geveiligt blijkt te zijn:S Maar dat komt dus door magic_quotes? En hoe zou jij deze query beveiligen? Er staat zoveel mogelijkheden
 
Koen

Koen

01/07/2007 16:22:00
Quote Anchor link
mysql_query is ook al enigzins beveiligd. Voor zover ik weet doet die namelijk maar een query uitvoeren. Natuurlijk wel gevaarlijk als dat net een drop, delete of truncate actie is, maar dat zou je ook met rechten kunnen beveiligen / afschermen.
 
Roel

Roel

02/07/2007 16:22:00
Quote Anchor link
Hoe zouden jullie het beveiligen? Heb al zoveel dingen gelezen, stripslashes(), addslashes(), htmlspecialchars(), mysql_escape_string(), mysql_real_escape_string(). Kan iemand mij in een keer duidelijk uitleggen welke hiervan je moet gebruiken of welke hiervan vooral niet? En wat jullie zelf gebruiken, ik snap bijvoorbeeld ook niet waarom de ene zecht stripslashes() en de ander addslashes().

Alvast bedankt,
 
Bo az

Bo az

02/07/2007 16:31:00
Quote Anchor link
* stripslashes() - Deze heb je niet nodig, deze haalt alleen slashes weg.

* addslashes() - Deze voegt slashes toen, maar is niet bedoeld om SQL injection tegen te gaan.

* htmlspecialchars() - Dit doet iets heel anders (kan je namelijk gebruiken tegen xss), heeft niks met sql injection te maken, het zet tekens als < om naar hun html code en kan eventueel door ENT_QUOTES als 2e parameter mee te geven ook quotes om zetten, maar ook dit is niet bedoeld om SQL injection tegen te gaan. Met name omdat je htmlpecialchars() altijd pas moet uitvoeren als je data uit de database haalt(!) omdat je deze dan eventueel ook nog voor andere dan HTML doeleinden kan gebruiken (denk aan e-mail). Ook is htmlspecialchars niet volledig, htmlentities() is completer.

* mysql_real_escape_string() - Als je de gewone mysql_* functies gebruikt is dit dé manier om sql injection te voorkomen.

Hierbij moet ik wel vermelden dat als je PHP 5 tot je beschikking hebt het eenvoudiger is prepaired statements te gebruiken ...
Gewijzigd op 01/01/1970 01:00:00 door Bo az
 
GaMer B

GaMer B

02/07/2007 16:33:00
Quote Anchor link
Addslashes moet je in het algemeen gebruiken. Als mensen de mogelijkheid hebben om iets in te typen en wanneer dat direct naar de database gaat dan kunnen er ' of " inzitten en addslashes() escaped ze dan (maakt ze onschadelijk)
Stripslashes is het omgedraaide van addslashes() en zal dus de toegevogede \ weghalen zodat ze niet meer in de tekst verschijnen.
Htmlspecialchars() doet speciale html karakters omzetten in onschadelijke html karakters. Zo wordt bijvoorbeeld & omgezet in &amp; waardoor er dus geen javascripts o.i.d. kunnen worden uitgevoerd.
Mysql_escape_string() is ongeveer hetzelfde als addslashes(), omdat deze functie ook de ' of " doen escapen (onschadelijk maken).
mysql_real_escape_string() is hetzelfde als mysql_escape_string(), maar iets ??uitgebreider??
Quote:
mysql_real_escape_string() calls MySQL's library function mysql_real_escape_string, which prepends backslashes to the following characters: \x00, \n, \r, \, ', " and \x1a.


Ik hoop dat het een beetje duidelijk is. Een aantal functies overlappen elkaar soms een beetje.
 
Roel

Roel

02/07/2007 16:36:00
Quote Anchor link
Ja zeer duidelijk, maar welke gebruik jij bijvoorbeeld? is alleen addslashes genoeg?
 
GaMer B

GaMer B

02/07/2007 16:46:00
Quote Anchor link
Ik gebruik vooral:
mysql_real_escape_string(), omdat het gewoon goed werkt tegen Mysql injection
htmlspecialchars(), omdat het die html tags omzet naar onschadelijke html code, zodat er geen javascript (XSS) uitgevoerd kan worden.

EDIT: htmlspecialchras() dan wel bij de output van een query.
Gewijzigd op 01/01/1970 01:00:00 door GaMer B
 
Frank -

Frank -

02/07/2007 17:46:00
Quote Anchor link
GaMer13 schreef op 02.07.2007 16:46:
htmlspecialchars(), omdat het die html tags omzet naar onschadelijke html code, zodat er geen javascript (XSS) uitgevoerd kan worden.
En vervolgens kom je hopeloos in de problemen wanneer je de gegevens voor iets anders dan html nodig hebt...

htmlspecialchars() gebruik je voor output en nooit en te nimmer op input van de database. Dus bij een echo is het leuk en aardig, maar bij een insert-query bezorg je jezelf vroeg of laat een berg overbodig werk.

Niet doen dus.
 
Jan geen

Jan geen

02/07/2007 18:01:00
Quote Anchor link
en strip_tags(), wanneer gebruik je die?
 
Frank -

Frank -

02/07/2007 18:31:00
Quote Anchor link
Rik schreef op 02.07.2007 18:01:
en strip_tags(), wanneer gebruik je die?
Meestal bij het opschonen van input. Dat hoef je dan slechts 1x te doen, daarna is de data veilig te gebruiken.
 
GaMer B

GaMer B

02/07/2007 19:24:00
Quote Anchor link
pgFrank schreef op 02.07.2007 17:46:
GaMer13 schreef op 02.07.2007 16:46:
htmlspecialchars(), omdat het die html tags omzet naar onschadelijke html code, zodat er geen javascript (XSS) uitgevoerd kan worden.
htmlspecialchars() gebruik je voor output en nooit en te nimmer op input van de database. Dus bij een echo is het leuk en aardig, maar bij een insert-query bezorg je jezelf vroeg of laat een berg overbodig werk.

Niet doen dus.

Ja, daarbij doe ik dat ook. Bijvoorbeeld bij een self-made-blog of forum o.i.d. Ik zal het er even bij zetten...
 

Pagina: 1 2 volgende »



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.