Brute force beveiliging $_POST

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Full Stack .NET Developer C# ASP.NET

Samengevat: Deze werkgever is gespecialiseerd in het op afstand bewaken en besturen van machines en processen. Ben jij een ervaren Full Stack .NET Developer? Heb je ervaring met C# en ASP.NET? Vaste baan: .Net Developer C# ASP.NET HBO €3.300 - €4.500 Deze werkgever is een snel groeiende onderneming gespecialiseerd in het op afstand bewaken en besturen van machines en processen, IoT (Internet of Things). Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. Wil jij bij de top specialisten horen? Ben jij op zoek naar een

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 »

PHP developer - Digital Agency

Functie Het team telt momenteel 20 collega’s, bestaande uit developers (front- en backend) en het operations team, waaronder ook het management en twee scrum masters vallen. Ze zijn op zoek naar een PHP developer die in staat is zelfstandig te werken. Je komt te werken in één van de drie scrumteams en gaat aan de slag met een project voor de klant. Het fijne hieraan is dat je wel afwisseling hebt qua werk, maar tegelijkertijd doorlopend werkt voor bestaande klanten. Hierdoor krijg je ook de kans om echt de diepte in te gaan en innovatieve technische oplossingen neer te zetten.

Bekijk vacature »

Frontend Developer - Leeuwarden

Als Frontend Developer bouw jij mee aan het onderwijs van de toekomst! In een scrum team werken met jonge en enthousiaste collega’s, moderne technieken, ruimte voor eigen ontwikkeling en op een proactieve wijze kunnen meewerken aan innovatie binnen het onderwijs. Magister is het state-of-the-art softwarepakket dat scholen in het voortgezet onderwijs op alle fronten ontzorgt. Van leerlingenadministratie tot het ondersteunen van individuele leerlijnen, van toegang tot digitaal lesmateriaal tot het plannen van het lesrooster. In de Magister app bedient Magister ruim 2,5 miljoen gebruikers waarvan, dagelijks meer dan 600.000 unieke. Hiermee is Magister de absolute marktleider in onderwijsland. Wat vragen

Bekijk vacature »

.NET Developer Senior

Dit ga je doen Het ontwikkelen van backend applicaties in C#; Het maken van vele koppelingen met andere ERP-applicaties zoals JD Edwards en SAP; Je bent (mede) verantwoordelijk voor het opstellen van technisch ontwerpen voor de te ontwikkelen software oplossingen; Je bent gemiddeld 90% van je tijd inhouse oplossingen aan het ontwikkelen en testen. De overige 10% van je tijd ben je bij klanten op locatie om oplossingen te implementeren, klanten te begeleiden en de software verder te innoveren; Naast het zelfstandig ontwikkelen van software oplossingen ben je ook bezig met het waarborgen van je contacten bij de klant, het

Bekijk vacature »

SAP HANA Cloud Application Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Veldhoven Vacature ID: 12662 Introductie HANA Cloud Application Developer at a High Tech company. The company is the world's leading provider of lithography systems for the semiconductor industry, manufacturing complex machines that are critical to the production of integrated circuits or chips. Our purpose is “unlocking the potential of people and society by pushing technology to new limits”. We do this guided by the principles “Challenge”, “Collaborate” and “Care”. This role is situated in the Big Data Analytics (BDA) Domain. The teams have mixture of young talent and senior specialists and have a

Bekijk vacature »

Front-end React developer

Functie Het frontend team bestaat momenteel uit 4 dedicated front-enders en is hard aan het groeien! Ook werken er diverse designers waar je veel mee schakelt. Samen leveren jullie een essentiële bijdrage aan de applicaties die ze voor hun klanten realiseren, jij bent hierin de schakel tussen de eindgebruiker en de slimme backend. Je werkt in het frontend team samen met de backend teams en product owners om te zorgen dat onze applicaties een fijne gebruikerservaring opleveren. Ze werken o.a. met: React, Atomic design, Styled components, JavaScript / TypeScript, NPM, Webpack Blade templates, HTML, SCSS, Git flow. Eisen • HBO

Bekijk vacature »

Junior .NET Software Developer

Dit ga je doen Software development met behulp van C# .NET en / of PHP, je mag zelf kiezen waar jij je in wil specialiseren Meedenken over het nieuwe pakket, waar moet het aan voldoen? Unit-, integratie- en diverse andere tests schrijven en uitvoeren Nauw samenwerken met je IT collega's zoals Testers, Developers, DevOps Specialisten en Architecten Jezelf ontwikkelen met behulp van trainingen en cursussen Hier ga je werken Onze klant, een grote speler in de medische sector, is op zoek naar een enthousiaste junior (of meer ervaren) Software Developer die klaar is voor een nieuwe stap in zijn of

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 »

Applicatie ontwikkelaar

Functie omschrijving Zelfstandige applicatie ontwikkelaar gezocht voor familiair bedrijf in omgeving Capelle ad Ijssel 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! Een deel van jouw werkzaamheden: Onderhouden en ontwikkelen van de IT systemen; Opzetten van Azure Cloud systemen, denk aan interfaces, hardware op de Cloud, webportalen of BI functies; Werken aan scripts binnen verschillende software applicaties, denk aan ERP en CAD; Ontwikkelen en implementeren van MS PowerApps en Power BI.

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 »

Mendix Developer

Functie Wat ga je doen als Mendix Developer? We leven in een wereld die snel ontwikkelt en veranderd, ook nemen bedrijfsbelangen toe en blijken risico’s moeilijker in te schatten, daarom wij op zoek naar Junior, Medior en Senior Developers die bedrijven kunnen helpen met hun screeningproces en zorgen dat deze efficiënt en 100 procent AVG compliant is. Het concept achter Mendix is duidelijk. De klant heeft een vraag/probleem. Dit kunnen we door middel van slimme software oplossen. In plaats van te werken met de nieuwste technieken en tools, wordt er gekozen voor het implementeren en maken van software dat op

Bekijk vacature »

Java Developer

Dit ga je doen Ontwerpen en bouwen van nieuwe functionaliteiten binnen de complexe omgeving; Proactief de processen kwalitatief en efficient inrichten; Opzetten van Unit Tests; Code Reviews; Regie nemen voor innovatieve projecten; Landschap beheren en de bijbehorende ketens hierbij in het oog houden. Hier ga je werken De organisatie is actief binnen de financiele branche en heeft een IT afdeling van circa 450 man. De organisatie voorziet de maatschappij binnen de financiele dienstverlening en is gedurende de jaren een onmisbare schakel geworden. Het is een high profile organisatie waar ze veel te maken hebben met veranderingen voortkomend uit maatschappelijke ontwikkelingen,

Bekijk vacature »

Full Stack .NET Developer

Dit ga je doen Als developer nieuwe gave features ontwikkelen; Werken met technieken als C#, Angular 12 en Javascript,; Maken van technische keuzes en beslissingen over de architectuur; Junior collega's coachen; Initiatief nemen voor nieuwe technische mogelijkheden; Je bent een belangrijke schakel - en vindt het leuk - om te schakelen met de business. Hier ga je werken In een team van 7 professionals ben je als Full Stack .NET Developer verantwoordelijk voor het ontwikkelen van applicaties voor het grootste inhouse product: een applicatie voor alles omtrent hypotheken. De programmeertaal die je hierbij beheerst is C#. Wil je van meerwaarde

Bekijk vacature »

Junior .NET Developer

Dit ga je doen Als junior .NET Developer lever je met jouw oplossingen direct een bijdrage aan de bedrijfsprocessen van de klanten. Werkzaamheden waar jij je zoal mee bezig houdt zijn; Het ontwikkelen, onderhouden en optimaliseren van de draaiende platforms van de klanten; Softwareontwikkeling middels C#, .NET; Klantcontact om de wensen te bespreken en uit te werken; Optimaliseren van de (huidige) bedrijfsprocessen; De IT-afdeling bestaat uit 30 personen verdeeld over 3 teams. Het team waar je in terecht komt bestaat uit ongeveer tien man. Het is een team wat bestaat uit betrokken collega’s, waar iedereen bereidt is om elkaar te

Bekijk vacature »
Hans De Ridder

Hans De Ridder

09/08/2017 14:17:44
Quote Anchor link
Ik heb een scriptje gevonden voor beveiliging van de $_POST.
Maar ik kom er niet uit hoe ik de waardes van de inputs weer terug krijg.
De afzonderlijke $_POST worden daarna gecontroleerd.
Ik gebruik overigens geen normale database.
Iemand die me een zetje kan geven in de goede richting?
Ik heb nu oa:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
$username    = $_POST['username'];
$email_address    = $_POST['email_address'];

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
function beveilig($sInput) {
        $sOutput = '';
        if(!get_magic_quotes_gpc() == 0) {
                $sOutput = $sInput;              
        } else {
                if(function_exists('mysql_real_escape_string')) {
                        $sOutput = mysql_real_escape_string($sInput);    
                } else {
                        $sOutput = addslashes($sInput);        
                }
        }
        $sOutput = htmlentities($sOutput, ENT_QUOTES);
        return $sOutput;
}
function beveilig_array($aInput) {
        if(!is_array($aInput)) {
                return false;
        }
        $aOutput = array();
        foreach($aInput as $iKey => $sValue) {
                if(is_array($sValue)) {
                        $aOutput[beveilig($iKey)] = beveilig_array($sValue);            
                } else {
                        $aOutput[beveilig($iKey)] = beveilig($sValue);
                }
         }
        return $aOutput;
}

$_POST = beveilig_array($_POST);
 
PHP hulp

PHP hulp

19/04/2024 19:07:35
 
Ben van Velzen

Ben van Velzen

09/08/2017 14:25:55
Quote Anchor link
Niet lullig bedoeld, maar gebruik dit script absoluut niet. Het misvormt je data, en gebruikt ook nog eens database escaping functies waar ze niet voor bedoeld zijn.

htmlentities of htmlspecialchars gebruik je *bij weergave*, anders niet. Escaping gebruik je *in je query*, of waar je elders escaping nodig hebt. Hier gebruik je de escaping functie voor dat specifieke doel, anders niet.
Gewijzigd op 09/08/2017 14:29:06 door Ben van Velzen
 
Ozzie PHP

Ozzie PHP

09/08/2017 14:43:37
Quote Anchor link
Titel is * Brute force beveiliging $_POST *

Wat heeft dit met brute force beveiliging te maken?
 
Hans De Ridder

Hans De Ridder

09/08/2017 14:44:34
Quote Anchor link
Een goed bedoeld advies is nooit 'lullig' Ben.
Bedankt voor je reactie.
De afzonderlijke ingangen worden ook gecontroleerd.
Maar wil graag een specifieke brute-force beveiliging.
Is het dan (zonder traditionele database) voldoende om te werken met
$regexp, preg_match, enz?


Toevoeging op 09/08/2017 14:47:10:

Kwam van deze site Ozzie.
Maar als er andere oplossingen zijn dan hoor ik het graag...
http://www.sitemasters.be/tutorials/1/1/557/PHP/Beveiliging_in_scripts
 
Ozzie PHP

Ozzie PHP

09/08/2017 14:53:15
Quote Anchor link
Oké, maar dat heeft dus niks met brute force te maken. Dat staat ook niet zo op die site.
 
Ben van Velzen

Ben van Velzen

09/08/2017 15:03:15
Quote Anchor link
Escaping pas je toe waar je het nodig hebt, zoals ik al heb aangegeven. Als je geen data onschadelijk hoeft te maken ga je ook niet escapen. Daarom zijn magic quotes ook uit PHP gehaald, ze leverden alleen problemen op.
 
Hans De Ridder

Hans De Ridder

09/08/2017 15:03:27
Quote Anchor link
Voor brute force beveiliging beter kijken naar aantal inlogpogingen gedurende bepaalde periode?
 
- Ariën  -
Beheerder

- Ariën -

09/08/2017 15:04:21
Quote Anchor link
Je denkt aan regexp, preg_match o.a.
Maar dan vraag ik me af of je wel weet wat dit inhoudt, en wat brute-force inhoudt.
 
Hans De Ridder

Hans De Ridder

09/08/2017 15:09:09
Quote Anchor link
Die termen ken ik wel Arien.
Ben alleen niet zo bekend met Brute force.
En omdat er nogal wat ingevoerd kan worden door leden, wil ik me ook daar wat in verdiepen.
Maar uit de scripts die ik daarover gevonden heb gaat het dan vooral op beperking van het aantal
inlogpogingen gedurende bepaalde tijd. En verder de controle op gegevens.
 
- Ariën  -
Beheerder

- Ariën -

09/08/2017 15:56:16
Quote Anchor link
Bij een foute inlogpoging op een account houd je in een aparte tabel bij hoeveel pogingen er zijn gedaan vanaf een bepaald ip-adres, en daarbij ook waneer die poging was.

Dan is het eenvoudig rekenen of deze binnen een bepaalde tijd valt, en zo ja: BLOKKADE.
 
Hans De Ridder

Hans De Ridder

09/08/2017 16:03:34
Quote Anchor link
Bedankt voor je reactie Arien.
Ik zal het eens uitwerken.
Werkt bij mij beetje anders, omdat ik niet met gewone database werk.
Maar snap de gedachte erachter.

Overigens nog geen opmerking hoe je de gegevens bij het gegeven script terug kunt lezen.
Misschien voor deze toepassing niet zo ideaal.
Maar wellicht voor andere zaken...
 
- Ariën  -
Beheerder

- Ariën -

09/08/2017 16:26:53
Quote Anchor link
Welk script bedoel je eigenlijk?
 
Hans De Ridder

Hans De Ridder

09/08/2017 16:28:39
Quote Anchor link
Van de start topic..
 
- Ariën  -
Beheerder

- Ariën -

09/08/2017 16:42:35
Quote Anchor link
Die beveilig() functie is in deze tijd volledig onnodig:
- mysql_real_escape_string is al verouderd
- addslashes doet het juist verkeerd
- en een controle op get_magic_quotes_gpc is niet meer nodig, omdat deze (kansloze) functie er al sinds PHP 5.4 uit is gesloopt.


Gebruik gewoon netjes: mysqli_real_escape_string() in je queries, waar je aanpasbare variabelen in verwerkt.
Denk aan $_GET, $_POST, $_COOKIE en $_ENV.

Of verdiep je in Prepared Statements in MySQLi of PDO. Dan hoef je het zelf niet meer te escapen, en doet de classe het zelf.
 
Hans De Ridder

Hans De Ridder

09/08/2017 16:45:28
Quote Anchor link
oke, duidelijk Arien..
Bedankt voor de reacties.
Kan weer even verder.
 
Thomas van den Heuvel

Thomas van den Heuvel

09/08/2017 17:17:52
Quote Anchor link
- Ariën - op 09/08/2017 16:42:35:
Of verdiep je in Prepared Statements in MySQLi of PDO. Dan hoef je het zelf niet meer te escapen, en doet de classe het zelf.

Tenzij je dit principe verkeerd toepast (rechtstreeks concateneren van $_GET en $_POST in SQL), wat nogal eens gebeurt.

Het moment dat je stopt met nadenken over de veiligheid van code is meestal het moment dat je code vatbaar wordt voor misbruik. Simpelweg omdat je gebruik maakt van prepared statements maakt je code niet ineens per definitie immuun voor SQL-injectie of wat dan ook...

Brute force ga je tegen door:
- CSRF-tokens
- stop het hele ding achter een login?

Daarnaast helpt het ook om orde te scheppen in je code door het scheiden van de stappen van formuliergebruik: het weergeven, posten, en een eventuele bedankpagina na afloop - stop deze alle in code die apart behandeld wordt (hetzij methoden, hetzij aparte PHP-bestanden). Maak gebruik van de POST/redirect/GET aanpak.

PS: over sitemasters: lees ook ff alle reacties. Daar kun je doorgaans ongeveer bepalen hoe oud (en dus meestal ook hoe relevant) een tutorial (nog) is en of de voorgestelde methodiek ook echt hout snijdt (wat hier absoluut niet het geval is).
Gewijzigd op 09/08/2017 17:20:22 door Thomas van den Heuvel
 



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.