$_GET beveiligen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Ontwikkelaar Centrale Monitoring

Ontwikkelaar centrale Monitoring Functieomschrijving Wil jij een bijdrage leveren aan het onderhoud, opzetten en ontwikkelingen van technologieën van SSC-ICT, een van de grootste ICT-dienstverleners van en voor de Rijksoverheid? Je komt als monitorspecialist te werken bij team Operations Management Services. Dit team werkt aan het stabiliseren en waarborgen van een betrouwbare monitoromgeving voor 7 ministeries. Jij begeleidt het implementatieproces van de te monitoren technologieën, onder andere via management packs, connectoren en API's. Je hebt hiervoor veel contact met interne en externe klanten, die hun wensen op het gebied van monitoring aan jou doorgeven. Je beoordeelt deze wensen en komt met

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 »

SQL database ontwikkelaar

Functie omschrijving Ben jij niet bang voor complexe algoritmes? Schikt het schrijven van procedures in T-SQL jouw niet af en heb jij al de nodige informatie in SQL, dan is functie precies wat voor jou! Jouw werkzaamheden gaan er als volgt uit zien: Je gaat werken aan de complexere projecten waar jij van A tot Z bij betrokken bent. Je gaat zorg dragen voor het ontwerp, de ontwikkeling en het updaten van SQL databases. Dit doe je op basis van T-SQL. Jij bent van start tot finish betrokken bij de projecten die jij leidt. Je houdt contact met klanten en

Bekijk vacature »

Back End Developer

Als Back End developer bij KUBUS houd je je bezig met het ontwikkelen van de (web)applicatie en services van BIMcollab. Je hebt een focus op de back end van onze software, daarvoor werken wij hoofdzakelijk met C# en .NET. Wij hanteren een full-stack benadering, wat betekent dat je naast de back-end ook meehelpt bij andere onderdelen van de code. Als softwarebedrijf bevindt KUBUS zich in een unieke positie. We bouwen aan onze eigen producten die wereldwijd door tienduizenden gebruikers worden gebruikt. Ons bedrijf heeft precies de juiste grootte: groot genoeg om echt impact te maken in de markt, maar klein

Bekijk vacature »

SQL Database developer

Functie omschrijving Wil jij meewerken aan het creëren van slimme software om magazijnen als een geoliede machine te laten lopen? Wij zoeken een zorgvuldig persoon, iemand die niet snel de hand omdraait voor complexe algoritmes. Denk jij dat jij de SQL ontwikkelaar bent die wij zoeken? Lees snel verder en wie weet zitten we binnenkort samen aan tafel! Jouw werkzaamheden zullen er als volgt uitzien: Je houdt je bezig met het ontwerpen en ontwikkelen van MS SQL server databases, dit doe je met T-SQL als programmeer laag. Je gaat aan high-end software oplossingen werken, dit doe je voor de optimalisatie

Bekijk vacature »

Medior/senior Front-end developer

Functie Onder begeleiding van 3 accountmanagers waarvan er 1 binnen jouw expertise je aanspreekpunt zal zijn ga je aan de slag bij diverse opdrachtgevers. Hij of zij helpt je bij het vinden van een passende en uitdagende opdracht. Hierin houden ze uiteraard rekening met jouw situatie, ervaring en (technische) ambities. De opdrachten duren gemiddeld één tot 2 jaar. Hierdoor kun je je ook echt vastbijten in een project en als consultant impact maken. Naast de opdracht ben je regelmatig met je collega’s van de IT-afdeling om bijvoorbeeld onderlinge kennis te delen, of nieuwe trends te bespreken. Ook worden er regelmatig

Bekijk vacature »

Front-End React Developer

As a Front-End React Developer you improve the user-experience of our web applications for your colleagues in Coolblue. How do I become a Front-End React Developer at Coolblue? As a Front-End React Developer you are responsible for developing user interface components and implementing them using React.js concepts and workflows. You work with the UX Designer and get energy from coming up with creative solutions and present these within the team. During the day you gather and welcome feedback on your technical and soft skills. Would you like to become a Front-End React Developer at Coolblue? Read below if the job

Bekijk vacature »

Embedded Software Developer

Functie omschrijving Voor een mooi softwarebedrijf in omgeving Ridderkerk zijn wij op zoek naar een Embedded Software developer. Ben jij enthousiast en een echte team player? Lees dan snel of dit iets voor jou is! Binnen deze rol houdt jij je bezig met alle werkzaamheden die nodig zijn om een functionaliteit te bouwen. Denk aan ontwerpen, architectuur, programmeren en algoritmes. Je voert test en validatie werkzaamheden uit bij de implementatie bij de klant. Ben jij een Embedded Software Developer die affiniteit heeft met de allernieuwste technieken? Laat dan snel wat van je horen! Bedrijfsprofiel Onze opdrachtgever bestaat uit een groot

Bekijk vacature »

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 »

PHP ontwikkelaar

Functie Jij komt te werken in een development team van 9 man. Het grootste deel doet back end development en daarnaast is er 1 teamlead en 1 tester in het team. Dit Agile team is van groots belang voor de organisatie omdat zij voornamelijk alle eigen systemen in-house ontwikkelen. Naast het door ontwikkelen van het bestaande platform en de software die daarbij komt kijken, zul jij je ook bezighouden met het realiseren en opzetten van nieuwe projecten binnen het bedrijf. Je staat nauw met de klant in contact om zo hun wensen zo goed mogelijk te kunnen realiseren. Daarnaast ontwikkel

Bekijk vacature »

Programmeur / Developer

Voor een familiebedrijf in Doetinchem, actief in de machinebouw voor de food-sector, zijn wij op zoek naar een programmeur / developer. In deze functie ben je werkzaam in een team van 5 medewerkers. Je werkzaamheden bestaan onder andere uit het verhelderen van requirements vanuit de opdrachtgever, de klant en de afdeling ontwikkeling. Je verricht haalbaarheidsstudies en werkt specificaties uit die je afstemt met de opdrachtgever. Je ontwerpt design in software en stemt af met je collega's. De huidige vision-systemen zijn geschreven in C software, welke draait op een CUDA platform. Je schrijft en codeert software en zal gaan testdraaien. Tot

Bekijk vacature »

Technisch Applicatie ontwikkelaar

Functie omschrijving 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! In deze functie werk jij voornamelijk aan: Het onderhouden en ontwikkelen van de IT systemen; Het opzetten van Azure Cloud systemen, denk aan interfaces, hardware op de Cloud, webportalen of BI functies; Werk je aan scripts binnen verschillende software applicaties, denk aan ERP en CAD; Ontwikkel en implementeren je MS PowerApps en Power BI. Bedrijfsprofiel Je komt terecht bij een familiair

Bekijk vacature »

Als Front-end developer samenwerken met de beste c

Functie Momenteel zijn we voor één van de projecten bij hun key partner, een voorloper in de energiesector, op zoek naar gedreven Front-end developers. Ze nemen de lead in dit project en werken uitsluitend met vooruitstrevende technologieën. Ze verwachten dat de technologie die hier wordt ontwikkeld uiteindelijk door veel meer grote corporates, in verschillende sectoren zal worden toegepast. Dit is dan ook een heel uitdagend project om aan mee te gaan werken. Het team bestaat o.a. uit User Experience designers, Data Scientists en Software Engineers. De consultants en ontwikkelaars werken volgens de Design Thinking methode waarbij de eerste stappen van

Bekijk vacature »

PHP Developer (junior functie)

Functie omschrijving Wij zijn op zoek naar een PHP Developer! Ben jij een starter en wil je werken bij een jong en leuk bedrijf? Lees dan verder! Wij zijn op zoek naar een PHP Developer binnen een junior functie. Binnen dit bedrijf gaat het om persoonlijke aandacht en ontwikkeling! Je komt te werken voor een leuk communicatiebureau die alles op het gebied van online en offline communicatie doet. Dit doen zij voor verschillende branches, waardoor je aan diverse soorten projecten mag werken, dit maakt deze baan erg leuk! Daarbij werk je aan een door hun zelf ontwikkeld framework welke goed

Bekijk vacature »
Daan s

Daan s

17/10/2011 13:08:49
Quote Anchor link
Hi allemaal,

Ik ben momenteel met de beveiliging bezig van m'n site.
Maar ik heb even gekeken of ik mijn eigen site kon hacken, en dit was helaas mogelijk.
De pagina haalt gehele pagina's van een mysql server af, Met bijvoorbeeld deze link om op een gebruikerspagina te komen; usr/?ID=2 <Ga ik nog veranderen.
De functie GET is dus niet veilig, hij kan bijna alles van de mysql server af halen,

Dus mijn vraag was; hoe voorkom ik dit.



Maar deze code gebruik ik;

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
28
29
<?php
//

include 'config.php';
    // MYSQL CONNECTIE
mysql_connect("$host", "$mysqlusername", "$mysqlpassword") or die(mysql_error());
mysql_select_db("$DB") or die(mysql_error());


// GET DATA FROM MYSQL TABLE
  

$result = mysql_query("SELECT * FROM $IDtable where ID =".$_GET['ID']."")
or die(mysql_error());  




// Print
while($row = mysql_fetch_array( $result )) {
    // Print out the contents of each row into a table
    echo "<tr><td>";
    echo $row['Source'];
 
}


echo "</table>";

?>
Gewijzigd op 17/10/2011 13:09:33 door Daan s
 
PHP hulp

PHP hulp

04/05/2024 11:51:01
 
- SanThe -

- SanThe -

17/10/2011 13:55:39
Quote Anchor link
De GET-waarde direct in de query zetten geeft een sql-injection lek. Beveilig dit met mysql_real_escape_string().
 
Marco PHPJunky

Marco PHPJunky

17/10/2011 13:59:17
Quote Anchor link
zitten de gebruikers pagina's achter een login of achter wat anders ?
 
Daan s

Daan s

17/10/2011 14:00:01
Quote Anchor link
Ja komt er wel 8ter

Toevoeging op 17/10/2011 14:00:55:

Het wordt een gebruikers pagina, geselecteerd op id/naam,
Maar ik heb het een paar keer geprobeerd met de mysql_real_escape_string(). maar dan krijg ik een lege pagina.
 
- Ariën  -
Beheerder

- Ariën -

17/10/2011 14:30:32
Quote Anchor link
Dan doe je iets verkeerd.

Hoe implementeer je het?
 
Daan s

Daan s

17/10/2011 14:37:05
Quote Anchor link
Volgens mij had ik de code ongeveer zo;

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
28
29
30
31
32
33
<?php
//

include 'config.php';
    // MYSQL CONNECTIE
mysql_connect("$host", "$mysqlusername", "$mysqlpassword") or die(mysql_error());
mysql_select_db("$DB") or die(mysql_error());


// GET DATA FROM MYSQL TABLE
  
$secure = $_GET['ID'];
$secure = mysql_real_escape_string($secure);



$result = mysql_query("SELECT * FROM $IDtable where ID =$secure")
or die(mysql_error());  




// Print
while($row = mysql_fetch_array( $result )) {
    // Print out the contents of each row into a table
    echo "<tr><td>";
    echo $row['Source'];
 
}


echo "</table>";

?>
 
L D

L D

17/10/2011 14:57:55
Quote Anchor link
probeer altijd quotes te gebruiken tussen waardens zoals:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
"SELECT * FROM $IDtable where ID = '$secure'"
Gewijzigd op 17/10/2011 14:58:25 door L D
 
Daan s

Daan s

17/10/2011 15:11:39
Quote Anchor link
Eindelijk hij werk op deze code
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
28
29
30
31
32
33
<?php
//

include 'config.php';
    // MYSQL CONNECTIE
mysql_connect("$host", "$mysqlusername", "$mysqlpassword") or die(mysql_error());
mysql_select_db("$DB") or die(mysql_error());


// GET DATA FROM MYSQL TABLE
  
$secure = $_GET['ID'];
$secure = mysql_real_escape_string($secure);



$result = mysql_query("SELECT * FROM $IDtable where ID ='$secure'")
or die(mysql_error());  




// Print
while($row = mysql_fetch_array( $result )) {
    // Print out the contents of each row into a table
    echo "<tr><td>";
    echo $row['Source'];
 
}


echo "</table>";

?>

Tanx
 
Obelix Idefix

Obelix Idefix

17/10/2011 18:00:52
Quote Anchor link
Waarom controleer je niet of de waarde bij ID een getal is?
mysql_connect --> volgens mij kunnen al die variabelen buiten "
Waarom maak je $secure aan?
Meende gelezen te hebben dat variabelen buiten " zouden moeten.
Waar is een nette manier van foutafhandeling?
mysql_fetch_array --> doorgaans volstaat mysql_fetch_assoc.
Gebruik geen * maar benoem het veld wat je wilt opvragen.
$IDtable ; is het verstandig om een tabel aan een variabele toe te kennen?
 
Bartje Jansen

Bartje Jansen

17/10/2011 19:16:19
Quote Anchor link
Laurens dragicevic op 17/10/2011 14:57:55:
probeer altijd quotes te gebruiken tussen waardens zoals:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
"SELECT * FROM $IDtable where ID = '$secure'"

Zonder quotes zou de query nog steeds zo lek als een mandje zijn! Het is verplicht om quotes te gebruiken wanneer je met mysql_real_escape_string() de input wilt beveiligen. Deze functie pakt quotes en slashes aan, al het andere wordt niets mee gedaan.

$_GET['id'] = 1

$_GET['id'] = 1 or true

Geen enkele quote en komt keurig door mysql_real_escape_string() heen zonder enige aanpassing. Resultaat: De query vindt alle records en niet slechts één record.

Gebruik dus _ALTIJD_ quotes of gebruik prepared statements, die zijn nog het veiligst en meest gebruikt om SQL injection tegen te gaan. MySQL ondersteunt dit helaas alleen met de mysqli-functies en het kost je een hoop extra code. Met PostgreSQL gaat dit véél eenvoudiger, het is daardoor eenvoudiger om veilig met een database te werken wanneer je PostgreSQL gebruikt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
$connectie
= pg_connect('jouw connectiegegevens');
$result = pg_query_params(
  $connectie,
  'SELECT * FROM tabelnaam WHERE id = $1 AND wachtwoord = $2', // query met placeholder
  array($_GET['id'], $_POST['wachtwoord']) // alle input in één array
);
// fetchen en de rest van je code
?>
 
Daan s

Daan s

18/10/2011 16:45:02
Quote Anchor link
Maar is deze code dan wel goed beveiligd?
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
28
29
30
31
<?php
//

include 'config.php';
    // MYSQL CONNECTIE
mysql_connect("$host", "$mysqlusername", "$mysqlpassword") or die(mysql_error());
mysql_select_db("$DB") or die(mysql_error());


// GET DATA FROM MYSQL TABLE
  
$secure = $_GET['ID'];
$secure = mysql_real_escape_string($secure);



$result = mysql_query("SELECT * FROM $IDtable where ID ='$secure'")
or die(mysql_error());  




// Print
while($row = mysql_fetch_array( $result )) {
    // Print out the contents of each row into a table
    echo "<tr><td>";
    echo $row['Source'];
 
}


echo "</table>";
 
- Ariën  -
Beheerder

- Ariën -

18/10/2011 17:09:23
Quote Anchor link
- Values in je query tussen single-quotes
- Variabelen buiten quotes
 



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.