[Q&A] Beveiliging algemeen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Frontend Developer (React) voor 24-32 uur in Amste

Bedrijfsomschrijving Werken voor een financiële instelling dat volledig data gedreven werkt en hiermee uniek in hun vakgebied is. Deze organisatie werkt in een niche en dat maakt ze zich juist zo sterk momenteel. Er is veel vraag naar hun diensten en daarom groeit het dataverkeer ook hard. Om die reden zoeken ze dan ook een Frontend Developer voor op hun kantoor in Amsterdam. Je zal hier met React gaan werken. Je komt terecht in een organisatie met ongeveer 15FTE. Dit zorgt voor een persoonlijke benadering en korte lijntjes. Ze groeien momenteel nog wel steeds, maar de korte lijntjes en persoonlijke

Bekijk vacature »

PHP Dirigent gezocht voor mooie Symfony!

Bedrijfsomschrijving Ben jij toe aan de volgende stap in jouw carrière? Ben jij klaar voor verandering en om een ware transformatie te ondergaan? Want samen met deze organisatie ben jij een belangrijk onderdeel van een groei die bedrijven laat expanderen. Door de juiste strategische software keuzes wordt vandaag bepaald waar het bedrijf over vijf jaar staat. Naast dat deze organisatie zich inzet voor de groei van bedrijven staat ook de ontwikkeling van hun eigen werknemers centraal. Dit uit zich onder anderen in; Een fit en betrokken werkomgeving; Door middel van workshops, een luisterend oor en ontspannende activiteiten; Uitdagende projecten met

Bekijk vacature »

Java-softwaredeveloper

Wat je gaat doen: Dit ga je doen Daar kunnen we heel kort over zijn: software ontwikkelen met de agile-/scrumteams van toonaangevende organisaties. Zoals ministeries, gemeentes, financiële instellingen en retail- en energiebedrijven. En als het bij je past, begeleid je collega-developers in het ontwikkelproces. Doordat je tijdelijk aan een opdracht werkt, doe je in korte tijd veel mooie ervaringen op en leer je nieuwe technieken en tools kennen. Je teamleden werken bijvoorbeeld met Spring, JPA/Hibernate, AJAX, REST/JSON, GIT, AWS en TDD. Het interessante is dat jij volledig in control bent en zelf kiest welke opdrachten je oppakt. Het soort rol,

Bekijk vacature »

.NET developer

Over deze functie Als .NET developer bouw je mee aan innovatieve dienstverlening en draag jij bij aan de groei van de organisatie. Kenter groeit namelijk hard op het gebied van kwaliteit, professionaliteit en innovatie en is altijd op zoek naar verbeteringen. Zij richten zich op de ontwikkeling van moderne meetoplossingen, ook juist op korte termijn. Zo kunnen zij vooruitlopen op het gebied van IoT, realtime data en andere innovatieve oplossingen. Als .NET developer ben je van onschatbare waarde. Je werkt samen met ruim 20 IT professionals aan zowel greenfield- als legacy-projecten. Dat doe je in samenwerking met ontwikkelaars, data engineers,

Bekijk vacature »

C# developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als C# Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Natuurlijk krijg jij de mogelijkheid je te certificeren. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling. Mede hierdoor zij wij dit jaar Microsoft Partner of the Year geworden. Sogetisten staan klaar voor elkaar, hebben lol met elkaar en daarmee behalen we de mooiste resultaten! Werken bij Sogeti

Bekijk vacature »

Freelance applicatieontwikkelaar (zzp)

Belastingdienst B/cao Startdatum : 2-1-2023 Tijdelijke functie, met optie op vast Aantal uren per week : 36 Standplaats in overleg : Apeldoorn Applicatieontwikkelaar bij het Ministerie van Financiën- Belastingdienst We zoeken een consultant/developer met ervaring in de ontwikkeling van back-end systemen. Als consultant heb je kennis en ervaring met de wijze waarop Open Formulieren is opgezet. Je bent een vraagbaak voor collega’s en deelt waar nodig je kennis. Je hebt ervaring met het werken in een open source omgeving. Je bent thuis in verschillende frameworks of je kunt je die snel eigen maken. Je hebt aantoonbaar ruime kennis van en

Bekijk vacature »

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 »

C# Software Developer

Samengevat: Deze werkgever is een innovatieve technisch dienstverlener op het gebied van beveiliging en interne logistieke systemen. Ben jij geschikt als software ontwikkelaar? Heb je ervaring met javascript? Vaste baan: C# Software Developer ElektrotechnieK HBO .NET 2.800 - 4.000 Software Ontwikkelaar Wij kenmerken ons door de verscheidenheid aan producten en diensten op gebied van beveiliging. Deze werkgever is een succesvolle full service provider en ontzorgen de klant volledig door de implementatie van nieuwe technologie. Samen met klanten creëren wij beveiligings- en business oplossingen die resultaat opleveren. Wij creëren innovatieve oplossingen door te werken met de nieuwste technologieën. Uitgangspunt hierbij zijn

Bekijk vacature »

Java Software Developer

TenneT is hard groeiend om onze ambities waar te kunnen maken. Zo nemen wij een leidende rol in het aanjagen van de energietransitie. Het werven van nieuw talent speelt daarin een cruciale rol. Momenteel werken we aan een goede mix van business projecten en technische zaken. Denk daarbij aan het aanpakken congestie problemen in het (inter)nationale net en capaciteit afstemmen met buurlanden. Op technisch vlak de upgrade van Java 11 naar 17, voorbereiding om naar een container platform te migreren en het verbeteren van automatische testen. In de nabije toekomst gaan we ook kijken naar een migratie van een service

Bekijk vacature »

Java-softwaredeveloper

Wat je gaat doen: Dit ga je doen Daar kunnen we heel kort over zijn: software ontwikkelen met de agile-/scrumteams van toonaangevende organisaties. Zoals ministeries, gemeentes, financiële instellingen en retail- en energiebedrijven. En als het bij je past, begeleid je collega-developers in het ontwikkelproces. Doordat je tijdelijk aan een opdracht werkt, doe je in korte tijd veel mooie ervaringen op en leer je nieuwe technieken en tools kennen. Je teamleden werken bijvoorbeeld met Spring, JPA/Hibernate, AJAX, REST/JSON, GIT, AWS en TDD. Het interessante is dat jij volledig in control bent en zelf kiest welke opdrachten je oppakt. Het soort rol,

Bekijk vacature »

iOS developer

We are looking for a medior or senior iOS developer who is familiar with NFC Passport Reader / ReadID SDK. You will be part of a highly-skilled team in an informal working environment. You will develop the ReadID SDK for iOS, both MRZ and NFC functionalities. The SDK is used by banks and government organizations. You will code the demo apps to demonstrate ReadID to potential customers You can work from home as well as at the office. It is appreciated if you come together with the team 2 days a week. Travel allowance is available. Functie-eisen You have a

Bekijk vacature »

PHP Back-end Developer gezocht regio Utrecht

Bedrijfsomschrijving Voor dit bedrijf actief in de zorg gevestigd in Utrecht, ben ik op zoek naar een PHP Back-end Developer. Dit bedrijf met ongeveer 30 personen in dienst, streeft er naar om Nederlandse zorginstellingen en apothekers te voorzien van moderne medicatie voorschrijf- en bewaking systemen. Haar klanten zijn zeer divers, het zijn grote en kleine zorginstellingen. De afgelopen 15 jaar hebben zij succesvol bijgedragen aan de groei en modernisering in de zorg. Deze prachtige organisatie biedt je de mogelijkheid om je zelf door te ontwikkelen en je kennis en vaardigheden verder te verdiepen en te verbreden. Functieomschrijving We zoeken voor

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 »

Freelance senior ICT ontwikkelaar (zzp)

Belastingdienst B/cao Startdatum inzet: 9-1-2023 Einddatum inzet: 31-12-2023 Uren per week: 36,00 Standplaats: Apeldoorn Max tarief: € 86,00 Team LIV is op zoek naar een enthousiaste, flexibele, multitaskende en hands-on ontwikkelaar met veel ervaring in het gedeeltelijk of volledig zelfstandig bepalen van ontwikkel- en realisatie aanpak. Onze nieuwe collega moet in staat zijn te werken in een hectische omgeving waarbij er sprake is van zeer verschillen realisatietrajecten voor wat betreft(technische)diepgang, startmoment (wel/geen beschrijvingen beschikbaar) en klantcontact. De gekozen ontwikkelmethodiek dient passend te zijn voor het op te lossen vraagstuk waarbij samenwerking met de testengineer in relatie tot Systeem integratie test

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 »

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

28/01/2023 20:09:45
 
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.