[Q&A] Beveiliging algemeen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior Backend developer - Automotive

We are looking for a highly motivated and experienced Backend developer. Required Qualifications: ● 6+ years experience with a server-side programming technology ● Experience with SQL Databases ● Experience with Go(lang) ● Experience with GCP ● Hands-on test-driven development (TDD), data analytics, and SQL experience ● Experience in producing REST and RPC based services ● Experience building secure and highly-available distributed systems/microservices ● Experience with Git-based versioning and Git workflows ● Knowledge of Redis, Docker, Setting up CI/CD pipelines and Unix command line ● Knowledge of Jira and Scrum techniques ● Excellent communication skills ● Must be a self-starter with

Bekijk vacature »

Fullstack Developer GUI Linux / UI/UX Design

Bij welk bedrijf je gaat werken: Wij zijn de leider in intelligente signaleringssoftware voor o.a. 2G/3G, 4G/LTE, 5G netwerken. Ben jij een fullstack developer? Heb je ervaring met o.a. HTML en CSS, UI/UX design, JavaScript, Typescript, React, Go en PHP? Vaste baan: Fullstack Developer GUI Linux HTML CSS 3.000 - 4.500 Fullstack Developer Wij ontwikkelen intelligente software voor 4G / 5G, WiFi en andere complexe netwerken. Het gaat om software producten voor routing, security en interworking. Toe aan een mooie, nieuwe uitdaging? Bij ons kom je terecht in een prettige, dynamische werkomgeving, waarbij je samenwerkt met uitstekende vakspecialisten op gebied

Bekijk vacature »

Microsoft Business Intelligence ontwikkelaar

Bedrijfsomschrijving Mijn opdrachtgever is gevestigd in Best en een bekende speler binnen haar vakgebied. De ICT afdeling is momenteel 22 FTE groot en de afdeling management informatie is momenteel 4 FTE groot. Binnen de organisatie heerst er een prettige werksfeer. Functieomschrijving Ter uitbreiding van het huidige team (momenteel 4 FTE), is mijn klant op zoek naar een Microsoft Business Intelligence ontwikkelaar. Binnen deze functie ben je verantwoordelijk voor de doorontwikkeling van het Microsoft datawarehouse. Kort samengevat zul je betrokken zijn bij; -Het ontwikkelen en onderhouden van ETL processen middels SSIS -Het modelleren van datamarts -Het dimensionaal modelleren met SSAS -Ontwikkelen

Bekijk vacature »

JavaScript Developer

Als Front-End Developer bij Coolblue verbeter je de gebruiksvriendelijkheid van onze webshop voor miljoenen klanten. Wat doe je als JavaScript 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 »

Full Stack Java Developer Graduate Program - Exper

Via Experis Academy krijg je een unieke kans om de in de branche gewilde expertise op te doen die jou tot een gewilde Full Stack Java Developer met een frontend-specialisatie maken. Het programma duurt 21 maanden en eindigt met een vaste baan bij een van onze vele, boeiende klanten, of je blijft bij ons (Experis) werken. Ons programma tot Java Developer Experis Academy start met een op maat gemaakte cursus die drie maanden duurt. Gedurende deze maanden komen theorie, praktijk en Java-certificeringen aan bod. Hierbij is het onderwijsprogramma gebaseerd op de principes als versnelde training en flipped classroom. De volgende

Bekijk vacature »

Senior Developer Mendix (NL)

Senior Developer Mendix (NL) Den Haag HBO/WO IT Professional "Wij zetten Mendix in voor onze kritieke processen om de favoriete bezorger van Nederland te zijn. We zoeken een Mendix Developer die met ons verder bouwt aan de 'digital core' van PostNL" Wat ga je doen? PostNL is a logistical tech company. Als Mendix Developer  kom je te werken in een organisatie waarbij data, technologie en een engineering culture een sleutelrol spelen. PostNL wil 'digital at the core' zijn en daarom staan we aan de voorgrond van het ontwikkelen van onze eigen logistieke software.    In de functie van Mendix Developer

Bekijk vacature »

Systeembeheerder

Ben jij iemand die uitgedaagd wil worden? Een Systeembeheerder die het beheren van diverse IT omgevingen leuk vindt , graag in een team werkt en wil je jezelf wil blijven ontwikkelen? Kortom, ben jij die initiatiefrijke en kundige systeembeheerder en wil je doen waar je goed in bent? Kom dat dan bij ons doen! Wat ga je doen? Als Systeembeheer fungeer je als intermediair tussen de business en de techniek. Samen met het team Systeembeheer sta je in voor de bouw, het beheer, onderhoud en de uitbouw van de volledige ICT-infrastructuur. Met de overgang van on-premise naar een 'hybrid cloud'

Bekijk vacature »

Azure developer / Big Data @ Amersfoort

2021-07-19 iSense Azure developer / Big Data Ben jij een Azure Developer en wil jij je inzetten bij een internationale organisatie die zich met de meest innovatieve technologieën bezighoudt om mensen met elkaar te verbinden? Wil jij mee ontwikkelen op top niveau aan features die gebruikers en/of machines in staat stelt om stromen en processen te beïnvloeden? Lees snel verder! ISHU49233 Organisatie Als Azure Developer ga je in een team van experts aan de nieuwste digitale technologieën werken om klanten over de hele wereld te ondersteunen met het ontwerpen van slimme processen voor havens, steden, luchthavens en gebouwen! Door middel

Bekijk vacature »

PHP Developer

As a PHP Developer at Coolblue, you ensure that our webshops work as optimal as possible. How do I become a PHP Developer at Coolblue? As a PHP Developer you work together with other development teams to make our webshop work as optimal as possible and to make our customers happy. Although you are a PHP Developer, you are not averse to a little C# or JavaScript. Would you also like to become a PHP Developer at Coolblue? Read below if the job suits you. You enjoy doing this Writing PHP code. Working with the Customer Journey Specialist to make

Bekijk vacature »

Senior C# Developer

You'll build modern applications for Coolblue back’s office. We have a lot of friends, and they crave well-structured data and user-friendly, task-focused applications. How do I become a Senior C# Developer at Coolblue? You regularly participate in brainstorm sessions about user experience, data, and task flow with the UX Designer, Product Owner, and Data Scientists in your team. Besides that you will create disconnected, highly congruent, and testable code that can easily be maintained and is future-proof. Want to become Senior C# Developer at Coolblue? Read below if the job suits you You enjoy doing this Working with various types

Bekijk vacature »

Programmeur - Software Engineer Senior en Medior U

Jouw profiel Ben jij een programmeur en geïnteresseerd in de medische wereld? Zoek jij de ultieme uitdaging en werk je graag aan complexe oplossingen voor het simuleren echte operaties? Wil je overleggen met chirurgen of op de OK meekijken om hun straks de beste oplossing te kunnen bieden? Solliciteer dan zo snel mogelijk op deze functie. Ons profiel Als ontwikkelaar en leverancier van medische trainingssimulatiehardware en -software bedienen wij een groot aantal nationale en internationale ziekenhuizen. Binnen Nederland zijn wij marktleider in skills-based trainingssoftware met als doel medisch specialisten beter te laten opereren. De werkomgeving Je komt te werken op

Bekijk vacature »

Starters functie Fullstack Java Developer @ Randst

2021-06-10 iSense Starters functie Fullstack Java Developer Ben je onlangs afgestudeerd van een IT-opleiding of heb je nog maar weinig ervaring opgedaan? En wil je toch graag aan de slag als Java Fullstack Developer? Lees dan snel verder, want op 9 augustus 2021 starten wij weer met een graduate programma waarin jij jezelf kunt ontwikkelen tot een volwaardige Fullstack Java Developer! ISLE50164 Nieuw Locatie Regio Randstad Wat kan jij van ons verwachten? • Een goed salaris gedurende het gehele programma; dus ook tijdens je cursusperiode! • De mogelijkheid om belangrijke certificeringen te behalen op het gebied van JAVA • Loopbaancoaching

Bekijk vacature »

.Net Developer IoT / Software

Voor wie je gaat werken: Wij zijn gespecialiseerd in het op afstand bewaken en besturen van machines en processen. Ben jij een ervaren .Net developer? Heb jij ervaring met het verbeteren en implementeren van .NET applicaties? Vaste baan: .Net Developer IoT Software 3.000 - 4.200 .Net Developer Wij zijn een snel groeiende onderneming gespecialiseerd in het op afstand bewaken en besturen van machines en processen, IoT (Internet of Things). Wij zijn een veelzijdige organisatie. Je werkt voor onze eigen IT organisatie. We werken met moderne technologie en staan open voor innovatie. Wil jij bij de top specialisten horen? Ben jij

Bekijk vacature »

Java Developer Noord-Nederland

Heb jij een passie voor technologie en ben jij altijd al als eerste op de hoogte van ontwikkelingen en innovaties? Weet jij hoe je de verbinding moet maken tussen business en techniek? Dan ben je welkom bij ons! Wat ga je doen? Als Java developer bij CGI ga je deel uitmaken van de grootste en meest actieve Java community van Nederland. Je levert een bijdrage aan de technische realisatie van complexe systemen voor onze klanten. Hierbij maak je in eenvoudige taal aan de klant duidelijk welke softwareoplossingen op zijn of haar organisatie van toepassing kunnen zijn. Je weet voor onze

Bekijk vacature »

PHP Developer @ Bergen op Zoom

2021-06-24 iSense PHP Developer PHP Developer ISBO50267 Nieuw Organisation For our client in the South of the Netherlands we are looking for a PHP developer with several years of experience. The organization is the largest web shop in the Benelux in their industry, and aims to become the largest in Europe in the future. An ambitious goal that motivates the employees of the organization on a daily basis to get the best out of it. With hundreds of thousands of packages sent annually and millions of unique visitors per year, the company is the market leader in the Benelux. The

Bekijk vacature »

Pagina: 1 2 3 volgende »

Chris -

Chris -

05/08/2013 17:51:35
Quote Anchor link
SQL Injecties is de nummer één oorzaak van een gehackte website. Toch zijn er nog veel mensen die er nog nooit van hebben gehoord, of er te weinig van af weten.

Buiten SQL Injecties zijn er natuurlijk nog veel meer dingen met betrekking tot beveiliging. Om die reden is het topic veranderd van SQL Injecties, naar beveiliging algemeen. Alle beveiliging-gerelateerde vragen kunnen hier worden gesteld.

Om het een beetje overzichtelijk te houden, wil ik het volgende voorstellen. Wanneer je een vraag hebt, stel je deze als volgt: (de quote moet je dus even zien als een losse reactie, maar laat het iets beter zien!)

Willekeurig - op 05/08/2013 17:45:00:
Vraag: Ik heb de volgende query. Is deze voldoende beveiligd?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
include('configuration.php'); // Vanuit hier wordt de SQL-verbinding opgezet

$veld_3 = !empty($_GET['veld_3']) ? mysql_real_escape_string($_GET['veld_3']) : 1;
$resource = mysql_query("SELECT id, veld_1, veld_2 FROM willekeurige_tabel WHERE veld_3 = " . $veld_3);
?>


Een antwoord zou dan zijn:
Quote:
Willekeurig - op 05/08/2013 17:45:00:
Vraag: Ik heb de volgende query. Is deze voldoende beveiligd?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
include('configuration.php'); // Vanuit hier wordt de SQL-verbinding opgezet

$veld_3 = !empty($_GET['veld_3']) ? mysql_real_escape_string($_GET['veld_3']) : 1;
$resource = mysql_query("SELECT id, veld_1, veld_2 FROM willekeurige_tabel WHERE veld_3 = " . $veld_3);
?>

Antwoord: Je gaat er op dit moment van uit dat veld_3 een integer is, aangezien je geen quotes gebruik. Controleer daarom met ctype_digit of de variabele een integer is:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
if (!empty($_GET['veld_3']) && ctype_digit($_GET['veld_3'])) {
    $veld_3 = $_GET['veld_3'];
}

else {
    $veld_3 = 1;
}

?>

Zolang je dit controleer, hoef je de variabele niet te escapen.


Om gelijk wat interessant leesvoer aan te bieden, lees het volgende topic op StackOverflow maar eens: SQL-injection that gets around mysql_real_escape_string?
Gewijzigd op 06/08/2013 14:00:51 door Chris -
 
PHP hulp

PHP hulp

25/09/2021 08:26:49
 
Landleven Tips

Landleven Tips

05/08/2013 18:38:53
Quote Anchor link
Hallo,

Volgens jouw bericht, en de genoemde link hoef ik dus geen mysqli_real_escape_string() te gebruiken, als ik er ctype_digit() over de input field zet. Dit deel begrijp ik nog niet helemaal, of begrijp ik het verkeerd?
 
Dennis WhoCares

Dennis WhoCares

05/08/2013 18:47:32
Quote Anchor link
ctype_digit($getal) geeft een waarde terug. true / false
Hiermee controlleer je dus of $getal een getal is. Zo ja, dan kun je query uitvoeren.
Als dat het enige user input is van je query, hoef je inderdaad geen mysqli_real_escape_string() te gebruiken.
 
Landleven Tips

Landleven Tips

05/08/2013 18:58:08
Quote Anchor link
Hallo Dennis,

Bedankt voor je snelle antwoord, hoe zit het dan met tekst. Is daarvoor mysqli_real_escape string() ook veilig genoeg, of kan je daarbij ook ctype_alnum() gebruiken zonder mysqli_real_escape_string() zoals getoont in de onderstaande code:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
if (!empty($_GET['veld_3']) && ctype_alnum($_GET['veld_3'])) {
    $veld_3 = $_GET['veld_3'];
}

else {
    $veld_3 = 'Geen geldige waarde!';
}


?>


Laten we hierbij dan zeggen dat veld_3 de teskt [Hallo 'OR 1=1 " mensen] is.
Gewijzigd op 05/08/2013 18:59:22 door Landleven Tips
 
Dennis WhoCares

Dennis WhoCares

05/08/2013 19:02:19
Quote Anchor link
Dat klopt, want ctype_alnum($var) geeft true of false terug, op basis van het feit of de $var alleen maar uit letters en/of cijfers bestaat.

Ook in dit geval als er geen speciale tekens mogelijk zijn voor user input, is ook hier mysqli_real_escape_string() niet nodig
 
Landleven Tips

Landleven Tips

05/08/2013 19:06:31
Quote Anchor link
Dus samengevat, als ik ctype_alnum($var) gebruik, of ctype_digit of een andere ctype_* hoeft er dus geen mysqli_real_escpae_string($var) erbij. Eigelijk wordt hierbij dus mysqli_real_escpae_string($var) overbodig.
 
Dennis WhoCares

Dennis WhoCares

05/08/2013 19:10:32
Quote Anchor link
Nee, dat is niet waar.
Het ligt maar net aan de doelstelling van je script.
Als voorbeeld, een shoutbox, chatbox, gastenboek w.e
Soms is het dus wel handig / leuk / vriendelijk dat mensen ook , . ( ) enz. kunnen gebruiken.
Daarbij is het zeer zeker noodzakelijk dat je mysqli_real_escape_string($var) gebruik.
De overige functies waar het zojuist om ging, gebruik je om je input te controlleren.
Als een soort foutafhandeling, voordat je de query uitvoerd.
 
Chris -

Chris -

05/08/2013 19:12:29
Quote Anchor link
Let er wel even op dat als je bijvoorbeeld 's-Gravenhage doet, deze dan niet door die validaties heen gaat..

Toevoeging op 05/08/2013 19:13:37:

Het moet een toevoeging zijn (valideren van de input, zoals je dat altijd hoort te doen), geen volledige afhankelijk. Met ID's die vaak numeriek zijn kan het een stuk makkelijker. Gebruik verder altijd de laatste versies van MySQL en schrijf je queries gewoon goed. En het liefste PDO, maar dan wel op de manier die op SO is uitgelegd :)
 
Landleven Tips

Landleven Tips

05/08/2013 19:17:22
Quote Anchor link
Hallo alle,

Het gaat hierbij bijvoorbeeld om een input field waar de gebruiker een gebruikersnaam in kunnen voeren, hierbij wil ik geen ' () - enz in hebben. Daarvoor dus ctype_alnum() voldoende moeten zijn volgens Dennis WhoCares.
 
Dennis WhoCares

Dennis WhoCares

05/08/2013 19:22:49
Quote Anchor link
Dat klopt:
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
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST')  {
 $error = array();
 if(!ctype_alnum($_POST['login_username'])) {
   $error[] = '<li>U heeft een ongeldige gebruikersnaam ingevoerd!</li>';
 }

 if(empty($error)) {
  echo 'SQL query uitvoeren voor gebruikersnaam ' . $_POST['login_username'];
 }
else {
  echo 'Foutmelding: <ul>' . implode($error) . '</ul>';
 }
}
else {
 echo 'Login form...';
}

?>

Maar dan is het nog niet waar dat de gehele functie mysqli_real_escape_string() te verwaarlozen is.
Zoals ik al aangaf en Chris- dus ook. Het is geheel afhankelijk van de doelstelling van de user input.
Gewijzigd op 05/08/2013 19:28:19 door Dennis WhoCares
 
Landleven Tips

Landleven Tips

05/08/2013 19:25:25
Quote Anchor link
Oke, bedankt voor de uitleg nu snap ik het.
 
Francoi gckx

Francoi gckx

05/08/2013 20:58:40
Quote Anchor link
Is het beter om vóór prepared PDO statements ook met mysqli_real_escape string te beveiligen of onnodig?
 
Chris -

Chris -

05/08/2013 21:01:02
Quote Anchor link
Juist niet!! Anders heeft het geen nut..
 
Francoi gckx

Francoi gckx

05/08/2013 21:11:55
Quote Anchor link
Dus gewoon alleen prepared statements?

Kan je ook een ander topics maken voor andere beveiligingpreventies zoals XSS
 
Chris -

Chris -

05/08/2013 21:12:56
Quote Anchor link
Voor XSS is het nog simpeler ;-) htmlentities over de variabele zetten op het moment dat je de variable in je document echo't!
 
Francoi gckx

Francoi gckx

05/08/2013 21:17:27
Quote Anchor link
En CSRF?
 
Chris -

Chris -

05/08/2013 22:04:24
Quote Anchor link
Da's inderdaad wel een heel ander topic! Heb ik ook iets meer tijd voor nodig...
 
Francoi gckx

Francoi gckx

05/08/2013 22:20:52
Quote Anchor link
Alvast Bedankt zou echt handig zijn!
 
Chris PHP

Chris PHP

06/08/2013 08:02:36
Quote Anchor link
Chris - op 05/08/2013 17:51:35:
SQL Injecties is de nummer één oorzaak van een gehackte website.


Niet mee eens, er wordt vaker code geinjecteerd in pagina's en advertenties dan dat er daadwerkelijk SQL injecties plaatsvinden. Anno 2013 weten mensen inmiddels dat je queries moet beveiligen, alle 'PHP and MySQL' boeken leggen ook uit dat je dit moet doen en hoe.
 
Chris -

Chris -

06/08/2013 08:58:53
Quote Anchor link
Chris, laat maar zien waar je dat vandaan haalt. Mijn ervaring (en ik heb redelijk wat ervaring) plus de statistieken vertellen nog steeds: SQL injecties staat op 1.
 
Chris PHP

Chris PHP

06/08/2013 09:10:20
Quote Anchor link
@Chris,

Hier een lijst die ik gevonden heb met de top 20 hacking methodes. SQL injection staat op 19.

Quote:
1.Bypassing Flash’s local-with-filesystem Sandbox
2.Abusing HTTP Status Codes to Expose Private Information
3.SpyTunes: Find out what iTunes music someone else has
4.CSRF: Flash + 307 redirect = Game Over
5.Close encounters of the third kind (client-side JavaScript vulnerabilities)
6.Tracking users that block cookies with a HTTP redirect
7.The Failure of Noise-Based Non-Continuous Audio Captchas
8.Kindle Touch (5.0) Jailbreak/Root and SSH
9.NULLs in entities in Firefox
10.Timing Attacks on CSS Shaders
11.CSRF with JSON – leveraging XHR and CORS
12.Double eval() for DOM based XSS
13.Hidden XSS Attacking the Desktop & Mobile Platforms
14.Rapid history extraction through non-destructive cache timing (v8)
15.Lotus Notes Formula Injection
16.Stripping Referrer for fun and profit
17.How to upload arbitrary file contents cross-domain (2)
18.Exploiting the unexploitable XSS with clickjacking
19.How to get SQL query contents from SQL injection flaw
20.XSS-Track as a HTML5 WebSockets traffic sniffer


Waar is jou lijst?
 

Pagina: 1 2 3 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.