Mysql Injectie Bescherming

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Full stack developer

Functie Binnen een ontzettend stimulerende werkomgeving kom jij te werken in een software team van 14 developers. Met ontzettend stimulerend bedoel ik een modern pand, wat voorzien is van alle nodige soft- en hardware, zodat jij jouw werk goed kan uitvoeren. Daarnaast zitten ze in een bos, waardoor je in een groene omgeving rustig kunt werken. Het team bestaat uit front end, back end en full stack developers. Jij krijgt dus de keuze hier waar jij jezelf het liefst op zou richten, maar de voorkeur gaat uit naar back end. Er wordt hier Scrum (agile) gewerkt in multidisciplinaire teams met

Bekijk vacature »

Ervaren C#.NET programmeur

Functieomschrijving Voor een moderne werkgever in regio Prinsenbeek zijn wij op zoek naar een ervaren C#.NET programmeur die graag de uitdaging aangaat. Je houdt je bezig met het ontwikkelen van maatwerk webapplicaties voor diverse klanten, waarbij complexe processen optimaal worden ondersteund. Verder ziet jouw takenpakket er als volgt uit: Ontwikkelen en onderhouden van C#.NET-applicaties; Schrijven van hoogwaardige, herbruikbare codes; Schrijven van technische documentatie en gebruikershandleidingen; Bijdragen aan het ontwerp en de architectuur van softwaretoepassingen; Troubleshooten en oplossen van bugs in softwaretoepassingen; Werken met databases en dataopslagoplossingen; Implementeren van beveiligingsoplossingen en het waarborgen van de beveiliging van applicaties en gegevens. Bedrijfsprofiel

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 »

Als Front-end developer werken aan apps voor het o

Functie Als Front-end developer werk je intensief samen met 1 van de UX-designers en denk je mee over de gebruiksvriendelijkheid en design van onze web- en mobile apps. Je bent betrokken bij sessies met gebruikers om designs te valideren en usability van de app-in-wording te testen. Vervolgens gebruik je dit om samen met je team waarin ook back-end (.NET) developers zitten, te zorgen voor de realisatie van de best mogelijke apps voor studenten en docenten. Eisen • Je hebt een hands-on development en coding mind-set en werkt graag aan een high quality code base welke je consequent onderhouden kan worden

Bekijk vacature »

PHP Programmeur

Functieomschrijving Vanuit het hoofdkantoor in omgeving Breda, ontwikkel je als PHP programmeur niet alleen webapplicaties, maar ben je verder ook gefocust op het constant inspelen op nieuwe innovaties m.b.t software ontwikkeling. Naast het ontwikkelen van webapplicaties, bouwt deze toffe werkgever ook webshops en websites voor hun opdrachtgevers. Wat ga je doen? Het testen van ontwikkelde applicaties om te zorgen dat ze goed functioneren en voldoen aan de eisen van de klanten; Het ontwerpen en implementeren van webapplicaties met het Symfony framework; Het schrijven van een schone en efficiënte code volgens het Symfony framework; Onderhouden en updaten van bestaande applicaties die

Bekijk vacature »

Developer Full Stack

Functie omschrijving Full Stack Developer gezocht! Wij zijn op zoek naar een Full Stack Developer voor een bedrijf in de regio Nijkerk. Je maakt in deze functie onderdeel uit van een groeiend team met een goede ambitie waarbij eenheid, betrokken en overtreffen de belangrijkste kernwaardes zijn. Het bedrijf werkt volgens de AGILE/SCRUM methode, wat je o.a. terug vindt in de tweewekelijkse sprints, retrospectives en een daily standup. Je takenpakket bestaat uit: Bijdragen aan het door ontwikkelen, onderhouden en optimaliseren van een Saas applicatie; Bijdragen aan de innovatie van het bedrijf en hun klanten; Het ontwikkelen op de laatste technologie van

Bekijk vacature »

.NET developer

Functie Als .NET ontwikkelaar ga jij aan de slag bij een van onze klanten actief in de High Tech Industrie. Onze klanten zijn voornamelijk gelokaliseerd in de omgeving van Eindhoven. Wij zijn erg selectief als het gaat om de projecten die wij accepteren en richten ons dan ook alleen op innovatieve en complexe projecten. Omdat onze klanten voornamelijk gespecialiseerd zijn in de machinebouw, werk jij ook vaak dicht tegen de machines aan. Ons team bestaat momenteel uit Embedded engineers, IOT developers en Cloud engineers. Wij werken voornamelijk aan Microsoft projecten waar er gebruik wordt gemaakt van WPF, UWP, .NET Core

Bekijk vacature »

Java Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Eindhoven Vacature ID: 12946 Introductie We are looking for a Java Developer! Our client is one of the most innovation companies located within the Netherlands. We provide high quality software in a high-tech and challenging market. Functieomschrijving The department is specialized in creating and developing high quality software for manufacturing automation in a high tech environment. We strive to provide our clients with high quality software and deliver state of the art solutions in a variety of ways. Creating software infrastructure using Java SE / EE Create applications to fine tune manufacturing processes

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Senior Front-End Developer

As a Senior Front-end Developer you maintain the balance between creativity and functionality for our webshop, and you coach your fellow developers. How do I become a Senior Front-End Developer at Coolblue? As a Front-end Developer you work on the user-friendliness of our webshop for millions of customers. You enjoy working with the UX Designer to pick up stories. You get energy from coming up with creative solutions and are happy to present this within the team. You are also proud of your work and welcome all feedback. Would you also like to become a Senior Front-End Developer at Coolblue?

Bekijk vacature »

Software Developer Java

Java/Kotlin Developer Ben jij een ervaren Java/Kotlin developer met een passie voor het automatiseren van bedrijfsprocessen? Wil je graag deelnemen aan uitdagende projecten bij aansprekende klanten? En ben je op zoek naar een professioneel, ambitieus en dynamisch bedrijf om je carrière verder te ontwikkelen? Kom dan ons team bij Ritense in Amsterdam versterken! Zo ziet de functie eruit: Als Java/Kotlin developer bij Ritense ben je verantwoordelijk voor de ontwikkeling en implementatie van applicaties die bedrijfsprocessen automatiseren, zodat onze klanten slimmer, efficiënter en klantgerichter kunnen werken. Als developer ben je in de lead en zorg je voor de correcte oplevering van

Bekijk vacature »

Software Programmeur PHP - JAVA

Functie Voor een opdrachtgever in omgeving Zoetermeer zijn wij op zoek naar een ontwikkelaar ter versterking van het huidige developers team. Heb jij altijd al willen werken voor een bedrijf, dat veilige netwerkverbindingen levert, door middel van veilige oplossingen, die door middel van de nieuwste technologieën ontwikkelt zijn? Stop dan nu met zoeken! Hoe kan jouw dag er straks uitzien? Je gaat software en webapplicaties ontwikkelen met behulp van de talen C / C++ / PHP. Je gaat technische klussen uitvoeren op locatie bij klanten. Je onderhoudt contact met de projectleider om er zeker van te zijn dat een projecten

Bekijk vacature »

Magento developer

Functie E-commerce is een ‘’snelle’’ wereld. Om hierin continu voorop te blijven omarmen ze in een vroeg stadium nieuwe technieken. Een webshop is nooit af en kan altijd beter, sneller en efficiënter. Tegelijkertijd hebben ze vanaf hun oprichting altijd vastgehouden aan kwaliteit boven snelheid, en dit loont. Als back-end developer fungeer je als het verlengstuk van hun klanten. Technisch complexe zaken pak je met liefde op, en hierin werk je samen met o.a. front-end developers en designers. Klanten verwacht hierin kwaliteit van het hoogste niveau en een proactieve, meedenkende rol bij het maken van zowel technische als strategische keuzes. Ga

Bekijk vacature »

Als Lead PHP developer bijdragen aan het onderwijs

Functie Als Lead PHP developer zet je samen met het team en de andere lead developers de technische lijnen uit als het gaat om het ontwikkelen van de applicaties en bepaal je samen met de PO waar elke sprint aan gewerkt zal worden. Je kunt op basis van een user story een goede aanpak formuleren en een planning opstellen, en andere hierin meenemen. Wanneer je team code schrijft verwacht je degelijke oplossingen, bij voorkeur gebruik makend van Domain Driven Design. Je ziet toegevoegde waarde in het beoordelen van het werk van collega’s om zo samen te streven naar hoge kwaliteit

Bekijk vacature »

Lead Front-end developer

Functie Hun huidige applicatie worden ontwikkeld in o.a. React, Redux, TypeScript. Ze werken graag met de nieuwste technieken en tooling en zoeken ook developers die hier proactief op zoek naar gaan. Als senior/lead developer ben je een kartrekker in het team. Naast het meedenken over bijvoorbeeld de architectuur of toepassing van nieuwe technieken krijg je ook veel tijd om de meer junior (front-end) developers te begeleiden. Zo kun je bijvoorbeeld 1 dag in de week met 2 collega’s bezig zijn om samen met hen te kijken naar hun ontwikkeling, doelstellingen en uiteraard de gewenste begeleiding hierin. Hiernaast sta je als

Bekijk vacature »

Pagina: 1 2 volgende »

Sander de Vos

Sander de Vos

25/05/2010 19:46:28
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
$gebruikersnaam = mysql_real_escape_string(stripslashes($_POST['user']));
$wachtwoord = mysql_real_escape_string(stripslashes(md5($_POST['password'])));


Doe ik dit op deze manier goed? Of gaat dit fouten opleveren?
Gewijzigd op 25/05/2010 19:47:34 door Sander de Vos
 
PHP hulp

PHP hulp

25/04/2024 12:34:00
 
Martijn B

Martijn B

25/05/2010 19:48:23
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
...
$wachtwoord = md5($_POST['password']);
...

?>


Het resultaat van md5() is altijd veilig om in een query te stoppen.

stripslashes() is alleen nodig als de PHP instelling "Magic Quotes" aan staat op de server. Maar stripslashes() heb je niet nodig om de waarde veilig te maken om in een query te stoppen dat doet mysql_real_escape_string().
Gewijzigd op 25/05/2010 19:50:48 door Martijn B
 

25/05/2010 19:49:35
Quote Anchor link
Je moet magic quotes uitzetten (want die verneuken je data), dan hoef je ook geen stripslashes. Ook zou ik het niet zo doen, want mysql_real_escape_string voegt dingen als \r enzo toe (geloof ik).
 
Sander de Vos

Sander de Vos

25/05/2010 19:49:49
Quote Anchor link
Ja, dat weet ik.
Maar doe ik de "mysql_real_escape_string" en "stripslashes" op deze manier goed?

Edit:
Van "\r" heb ik nog niks gemerkt/gehoord.
Heb net het wachtwoord en de gebruikersnaam even ge-echo-ed maar ik zag geen \r.
Gewijzigd op 25/05/2010 19:53:04 door Sander de Vos
 

25/05/2010 19:52:08
Quote Anchor link
Nee, je moet dus alleen mysql_real_escape string gebruik, en geen stripslashes, al helemaal niet als magic quotes uit staat. En die horen uit te staan.
 
Sander de Vos

Sander de Vos

25/05/2010 19:53:34
Quote Anchor link
Ok ;)
Bedankt voor de snelle reacties!
Gewijzigd op 25/05/2010 20:22:28 door Sander de Vos
 
Marcel K

Marcel K

25/05/2010 19:57:28
Quote Anchor link
Als ik het goed heb is er maar 1 plekje waar je mysql_real_escape_string moet zetten, en dat is in de query wanneer je de data naar de database naar de database wegschrijft.

Heb ik vele malen gelezen in berichten van "specialisten"

Correct me if I am wrong.
 
Chris -

Chris -

25/05/2010 19:58:56
Quote Anchor link
Klopt. En Sander, je kan voor het wachtwoord de escape weghalen, MD5 is altijd "veilig" om in een database te zetten.
 

25/05/2010 19:59:02
Quote Anchor link
Ja, je doet pas mysql_real_escape_string (of type casten naar int bijv.) als je het in de query stopt.
 
Sander de Vos

Sander de Vos

25/05/2010 20:21:44
Quote Anchor link
Ok, opnieuw aangepast.

De nieuwe code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$gebruikersnaam
= mysql_real_escape_string($_POST['user']);
$wachtwoord = md5($_POST['password']);
?>
 
Marcel K

Marcel K

25/05/2010 21:30:32
Quote Anchor link
niet goed, mysql_real_escape_string pas in de query:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
$gebruikersnaam
= $_POST['user'];
$wachtwoord = md5($_POST['password']);
// check daarna je input nog even of hij bijvoorbeeld niet leeg is met trim..

Selecteren gaat dan:
$sql = "SELECT * FROM users
    WHERE user='"
.mysql_real_escape_string($gebruikersnaam)."'
        AND passwoordje='"
.mysql_real_escape_string($wachtwoord)."'
    "
;
?>
 

25/05/2010 22:06:07
Quote Anchor link
Marcel:
niet goed, mysql_real_escape_string pas in de query:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
$gebruikersnaam
= $_POST['user'];
$wachtwoord = md5($_POST['password']);
// check daarna je input nog even of hij bijvoorbeeld niet leeg is met trim..

Selecteren gaat dan:
$sql = "SELECT * FROM users
    WHERE user='"
.mysql_real_escape_string($gebruikersnaam)."'
        AND passwoordje='"
.mysql_real_escape_string($wachtwoord)."'
    "
;
?>


Hij is beter bezig dan jou, je kan het beste gewoon $_POST blijven gebruiken tot dat je die variabele hebt opgeschoond. Zie ook dit topic.
 
Marcel K

Marcel K

25/05/2010 22:09:45
Quote Anchor link
Yes !
de oude Karl is er weer.
Gaat weer gezellig worden hierzo.

Ik zet hierboven toch ookL na de //
Eerst de invoer checken op bijv. leeg ofzo, uiteraard kan je daar nog meer kontroles toevoegen.
Het ging erom waar je die mysql_real_escape_string moest zetten.
Gewijzigd op 25/05/2010 22:12:32 door Marcel K
 

25/05/2010 22:11:45
Quote Anchor link
Marcel:
Yes !
de oude Karl is er weer.
Gaat weer gezelli worden hierzo.


Als je wat tegen me hebt kan je wat mij betreft ergens een topic aanmaken, of tegen iemand via pm's gaan blaten. Maar dit soort posts in iemand anders zijn topic, totaal off topic is toch helemaal onzinnig?
 
Marcel K

Marcel K

25/05/2010 22:14:06
Quote Anchor link
zie hierboven, had te vroeg op knoppie gedrukt.
Verder ga ik er niet op door.
 
Joren de Wit

Joren de Wit

25/05/2010 22:17:47
Quote Anchor link
Marcel:
Het ging erom waar je die mysql_real_escape_string moest zetten.

Het is een kwestie van smaak waar je mysql_real_escape_string() toepast, maar het is zeker niet verplicht om dat pas in de query te doen. Sterker nog, bij uitgebreide queries wil je dit waarschijnlijk niet in je query doen, maar daarvoor.

Karl maakt hier een goed punt. Werk gewoon door met de $_POST variabele totdat je hem beveiligd hebt voor invoer in de database. Dan pas krijgt de variabele een andere naam zodat jij in je scripts te allen tijde weet dat die variabele veilig is. Van een $_POST variabele weet je namelijk zeker dat hij niet veilig is.
 

25/05/2010 22:21:21
Quote Anchor link
Marcel:
Ik zet hierboven toch ookL na de //
Eerst de invoer checken op bijv. leeg ofzo, uiteraard kan je daar nog meer kontroles toevoegen.
Het ging erom waar je die mysql_real_escape_string moest zetten.



Waarom zou je dat later doen als je het in één keer hoort te doen.
Echt niet logisch:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php // Kleurtjes
$blaat = $_POST['blaat']; // Later gaan we controleren hoor!
// En nu gaan we honderden andere dingen doen
// een functie bouwen
// effe een regex doen
// Goh, laten we eens wat met een database doen
// Moeten we nog controleren?
// Nah, zullen we vast wel hierboven gedaan hebben

mysql_query("SELECT * FROM blabla WHERE blaat='" . $blaat . "'");
?>


edit kut ubb parser
Gewijzigd op 25/05/2010 22:21:48 door
 
Sander de Vos

Sander de Vos

25/05/2010 23:00:10
Quote Anchor link
Dus als ik alles goed heb begrepen, is de onderstaande code gewoon goed/veilig (genoeg).

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
<?php
// Login
if (isset($_POST['password'])) {
    $gebruikersnaam = mysql_real_escape_string($_POST['user']);
    $wachtwoord = md5($_POST['password']);
    
    $query = mysql_query("SELECT * FROM gebruikers WHERE gebruikersnaam = '$gebruikersnaam' AND wachtwoord = '$wachtwoord'");
    $count = mysql_num_rows($query);

    if ($count == "1"){
        setcookie("vCMS", "b3eb46540540e19a7322838729ed212e", time()+3600);
    }
}

?>
 
Joren de Wit

Joren de Wit

25/05/2010 23:04:44
Quote Anchor link
Haal variabelen en integers nog even buiten quotes, dan is het nog iets netter.

edit: tevens zou je eerst nog kunnen controleren of de betreffende $_POST variabelen wel gevuld zijn. Zo niet, dan zou je in een eerder stadium een foutmelding kunnen geven.
Gewijzigd op 25/05/2010 23:05:36 door Joren de Wit
 
Sander de Vos

Sander de Vos

25/05/2010 23:08:28
Quote Anchor link
Snap je reactie, maar zo heb ik het nou eenmaal 'geleerd'.

Ze krijgen bij het login form zelf al meldingen of er iets fout is gegaan.
Ook heb ik een demo account zonder wachtwoord, waarbij er ook gewoon een MD5 hoort.
Dus als ik een melding weergeef dat hij leeg is, werkt het demo account niet meer.
 
Joren de Wit

Joren de Wit

25/05/2010 23:12:29
Quote Anchor link
Sander:
Snap je reactie, maar zo heb ik het nou eenmaal 'geleerd'.

Maar dat is natuurlijk geen reden om een methode te blijven gebruiken terwijl er nadelen zitten aan de manier die jij geleerd hebt...

Wat betreft de andere redenen die je geeft, dat is duidelijk. Dan maak je dus een bewuste keuze en dat is prima.
 

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.