$_SERVER['REQUEST_URI'] waarom gebruiken?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior .NET Ontwikkelaar

In het kort Als Senior .NET ontwikkelaar ga je binnen onze business unit Transport en Logistiek aan de slag met complexe maatwerk software voor bedrijf kritische systemen binnen de technische automatisering. Denk bijvoorbeeld een IoT-oplossing voor de logistieke sector waarbij we van ruim 200.000 machines de telemetrie en events verwerken. We zijn actief in de distributielogistiek, havenlogistiek (denk aan ECT) en productielogistiek. Naast C# en .NET Core maken we ook gebruik van Azure technologie. En als trotse Microsoft Gold Partner leren we graag van en met jou. Wil jij jezelf blijven ontwikkelen binnen de technische automatisering met .NET, dan gaan

Bekijk vacature »

Front-end Developer - React - Data Driven

Bedrijfsomschrijving Onze klant is een snelgroeiende organisatie die een data-driven inspectieapp op de markt hebben gebracht die nu al een aantal jaar door verschillende organisaties wereldwijd gebruikt wordt. Er zijn zo'n 6 mensen werkzaam bij dit bedrijf en ze zijn nu vooral op zoek naar een sterke front-end developer die wil gaan werken aan nieuwbouw applicaties en de uitbouw van de huidige applicaties. De reden dat ze zoeken is omdat er veel werk op komst is en ze hier de juiste capaciteit voor willen hebben. Er heerst hier een hele prettige sfeer waarin respect en eerlijke communicatie belangrijk is. Ook

Bekijk vacature »

Java Developer / Sociaal domein

Dit ga je doen Nieuwbouw en doorontwikkeling; Beheer en wanneer nodig onderhoud; Bijdrage leveren in het functioneel- en technisch ontwerptraject; Analyseren van productie verstoringen; Meedenken over vernieuwingen en verbeteringen. Hier ga je werken De organisatie waar jij komt te werken focust zich op software development met een maatschappelijk tintje. De afdeling software ontwikkeling bestaat uit vijf verschillende scrum teams, met allen hun eigen focus gebied. Zo zijn er een aantal teams die zich focussen op specifieke applicaties, maar is er ook een team gericht op projecten. Binnen de organisatie staat innovatie en kwaliteit voorop. Een aantal applicaties draait nog op

Bekijk vacature »

Mendix Developer

Voor Troostwijk Groep zoeken wij een: Mendix Developer Wij zoeken Je bent een getalenteerde en ervaren Mendix Developer en het is tijd om je horizon te verbreden. Je wilt minder coderen en meer modelleren, minder bezig zijn met allerlei technische details en randvoorwaarden en meer met functionaliteit. Daarnaast ben je trots op de innovatieve en gebruiksvriendelijke applicaties die je in de loop van de jaren hebt gebouwd. Werk je graag in een enthousiast team, wil je veel vrijheid en kun je tegelijkertijd goed met deadlines omgaan, dan ben jij absoluut degene die wij zoeken! Wat je nodig hebt is ruime

Bekijk vacature »

Ervaren Full-Stack PHP Developer

Functieomschrijving Gezocht! Ervaren PHP Developer! Voor een organisatie in de regio Harderwijk zoeken wij een ervaren PHP Developer die het IT team van dit bedrijf gaat versterken. We zijn op zoek naar een enthousiaste en breed georiënteerde IT-er die het innovatieve bedrijf nog een stap verder kan brengen. Voor deze functie zoeken wij iemand die communicatief goed is en die zelfstandig problemen op kan lossen. Je werkt samen met een externe ontwikkelpartij en kunt hun dus uitdagen op het geleverde werk. Het schrijven van concepten aan de AI en hardware kant valt onder je verantwoordelijkheden. Het bedrijf noemt zichzelf een

Bekijk vacature »

Laravel / PHP developer

Functie omschrijving Wij zijn op zoek naar een Medior PHP / Laravel Developer voor een IT-consultancy in de omgeving van Hoofddorp! Ben jij op zoek naar een leuke nieuwe uitdaging binnen een veelzijdige werkomgeving? Lees dan snel verder! Binnen dit bedrijf werk je in een ontwikkelteam, waarin je zeer betrokken bent en meedenkt over softwareoplossingen. Binnen dit Team hou je je bezig met het aanpassen, verbeteren en vernieuwen van de logistieke oplossingen. Je zult je bezig houden met de volgende werkzaamheden: Je gaat aan de hand van de wensen van klanten software ontwikkelen; Je bent bij het gehele proces betrokken;

Bekijk vacature »

Senior Software Developer C++

Vacature details Vakgebied: Software/IT Opleiding: Senior Vacature ID: 13342 Introductie Do you want to work for one of the most innovative companies located in the region of Eindhoven. Currently Due to growth we are looking for a Senior Software Developer. Our client is a high-tech company with international roots and can provide you with a challenging opportunity. Functieomschrijving Responsibilities: Design, develop, and maintain high-quality software applications in C++ Collaborate with other engineers, product managers, and stakeholders to understand requirements and develop solutions Write clean, maintainable, and efficient code Conduct thorough testing and debugging to ensure high-quality software Optimize applications for

Bekijk vacature »

Java Developer

Functieomschrijving Are you an experienced Java Developer who wants to be challenged? Then this is your job! As a Java Developer, you are co-responsible for building custom applications within our extensive IT landscape. Development takes place on both the back-end side (Spring/JEE). Together with the IT department, you are responsible for the daily adjustments and expansions of our IT systems. In addition, you will work in small scrum teams using the Agile methodologies. Besides the realization of our in-house systems, you are responsible for the roll-out of the application (version) as well as the operational support after going live. Team

Bekijk vacature »

OutSystems Developer

Dit ga je doen Het van scratch af aan ontwikkelen van applicaties met OutSystems; Het aanhaken bij diverse projecten binnen de organisatie; Schakelen met de business; Meedenken over de mogelijkheden van het platform binnen de organisatie. Hier ga je werken Deze organisatie is een toonaangevende speler in de vastgoedbranche en telt momenteel ruim 500 medewerkers. Met meer dan 150 applicaties staat er een complex applicatielandschap, bestaande uit standaard- en maatwerkapplicaties. De maatwerkapplicaties worden ontwikkeld door een inhouse development team. Het doel voor de komende periode is het verder vernieuwen en optimaliseren van het huidige applicatielandschap. Zo staat de organisatie aan

Bekijk vacature »

Front end developer

Functie Jij als front end developer gaat werken binnen de teams van onze klant, uiteraard met alle moderne technieken. Opdrachten worden echt gericht op jouw leerdoelen en jouw behoeftes. Wij hebben een omgeving gecreëerd waarin je echt jezelf kan zijn en waar echt gekeken wordt naar jouw voorkeuren. Maak je een fout? Geen probleem, leer ervan en dan ga weer door. Door de variëteit aan werk kun je in verschillende omgevingen een kijkje nemen en dus jezelf snel ontwikkelen. Eisen Je bent communicatief vaardig en houdt van een dynamische omgeving Je hebt HBO werk- en denkniveau Je hebt gedegen kennis

Bekijk vacature »

Oracle APEX Ontwikkelaar (3.500-6.000 euro)

Bedrijfsomschrijving Ben jij een getalenteerde Oracle APEX ontwikkelaar met minimaal één jaar ervaring in het ontwikkelen van Oracle APEX-applicaties? Ben je gepassioneerd over het ontwikkelen van bedrijfskritische oplossingen en wil je werken bij een toonaangevend consultancybedrijf? Dan zijn wij op zoek naar jou! Deze organisatie beschikt over zowel inhouse als externe projecten, maar bovenal over een sterk team en netwerk van opdrachten waardoor jij jezelf verder kunt ontwikkelen. Het team bestaat uit een aantal junior en medior developers, maar vooral uit senioren. De business unit managers binnen het team zijn mensen die hun vak verstaan en zelf als Oracle APEX

Bekijk vacature »

Low-code developer

Functie omschrijving Heb jij altijd al een training willen volgen in het buitenland? Voor een leuke opdrachtgever in omgeving Alphen ad Rijn zijn wij op zoek naar kandidaten die aan de slag willen als Low Code Developer! Beschik jij over HBO/WO nivo, bij voorkeur Informatica, maar een ander technische opleiding zoals bijv. wiskunde, natuurkunde is ook goed. Heb jij aantoonbare affiniteit met IT en ben jij gedreven, enthousiast, communicatief vaardig en klantgericht? Lees dan snel verder! Je wordt getraind tot een volwaardig Low Code Developer, het traject ziet er als volgt uit: Start 1e week januari, opleiding van 3 weken

Bekijk vacature »

Fullstack developer

Functieomschrijving Heb jij kort geleden jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een andere uitdaging? Voor een erkende werkgever in de omgeving van Breda zijn wij op zoek naar een Fullstack developer. Kennis of ervaring met C# & SQL is een must! Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten; Je bent verantwoordelijk voor de beheer en ontwikkeling van de software; Je draagt bij aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de C# based applicaties; Je test de software en ontwikkelt deze door; Je brengt de aanpassingssuggesties van klanten in

Bekijk vacature »

Senior Java developer

Als Senior Developer bij Sogeti ben je onderdeel van onze toonaangevende best-gecertificeerde Java community. Deze bestaat uit ruim 100 gepassioneerde professionals. In teamverband lever je mooie prestaties. Daarmee draag je aan bij de meerwaarde die wij leveren aan onze top-opdrachtgevers. Geen werkdag is hetzelfde! Je bent voortdurend bezig met het oplossen van allerlei complexe vraagstukken binnen bedrijfskritische systemen. Een voorbeeld hiervan is een cliënt-volgsysteem bij Reclassering Nederland. Andere klanten waar wij onder andere voor werken: KPN, Philips, Nationale-Nederlanden, Kamer van Koophandel, ABN AMRO, Bovemij, Aval en de Nationale Politie. Natuurlijk krijg jij de mogelijkheid je verder te certificeren in dit vakgebied. We

Bekijk vacature »

Front-End Developer

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

Ruben D

02/01/2018 21:57:24
Quote Anchor link
Hallo allemaal,

Ik wou net een form maken zoals ik al vele keren gedaan heb en ik zie dikwijls dat ($_SERVER['REQUEST_URI'] of $_SERVER['PHP_SELF'] worden gebruikt.

Nu is mijn vraag, waarom zou je dat gebruiken? Dit moet je filteren omdat je anders vatbaar bent voor een XSS aanval.

Je kan het ook leeg laten maar dan ben je kwetsbaar voor iframe aanval, en het is ook niet geldig voor html5.

Waarom dan niet gewoon de naam hardcoded erin zetten? (file.php)
 
PHP hulp

PHP hulp

28/03/2024 16:46:45
 
- Ariën  -
Beheerder

- Ariën -

02/01/2018 22:05:16
Quote Anchor link
Kwetsbaar voor een iframe aanval? Ik ben benieuwd.
Opsich kan je je daar met headers al redelijk tegen wapenen.
Je mag die action ook weghalen.
 
Thomas van den Heuvel

Thomas van den Heuvel

03/01/2018 01:06:53
Quote Anchor link
Ruben D op 02/01/2018 21:57:24:
Nu is mijn vraag, waarom zou je dat gebruiken? Dit moet je filteren omdat je anders vatbaar bent voor een XSS aanval.

Kun je dit ook uitleggen aan jezelf of aan een ander wat dit precies inhoudt? Of heb je dit ergens gehoord?

Je kunt $_SERVER parameters altijd escapen in de HTML-context met functies als htmlspecialchars().

Daarnaast zou je ook een link-functie of andere functionaliteit kunnen schrijven die interne applicatie (hyper)links genereert zodat je in het geheel niet afhankelijk bent van $_SERVER (en dit heeft ook andere voordelen, zie hieronder).

Ook zou de action niet de enige beveiliging tegen XSS moeten zijn. Het is altijd beter om op meerdere paarden te wedden als het om veiligheid gaat.

Je zou bijvoorbeeld een token kunnen opslaan in een sessie en deze meeposten met het formulier. Bij verwerking leg je deze twee weer naast elkaar. Zijn deze niet hetzelfde stuur je de gebruiker terug naar het formulier.

Ruben D op 02/01/2018 21:57:24:
Waarom dan niet gewoon de naam hardcoded erin zetten? (file.php)

Hardcoding is niet altijd aan te bevelen.

Maar het hangt er helemaal vanaf waar je het formulier voor gebruikt. Je kunt niet op voorhand een soort universele wetmatigheid opstellen. En als die er zou zijn, zou het action-veld ofwel verplicht zijn ofwel niet bestaan nietwaar? Het beste wat we kunnen doen is op grond van een concreet voorbeeld een advies geven.

Persoonlijk zou ik alles altijd zo expliciet mogelijk maken, zodat er geen ruimte voor interpretatie over blijft. Oftewel, ik zou in de action een volledige (en ge-escapete) URL opgeven die dynamisch wordt gegenereerd op grond van een of andere logica zodat, als je dit formulier (of de site) ooit verplaatst, de URL automatisch meeverandert. Op die manier heb je er verder ook geen omkijken meer naar. Dit is ook altijd compleet ondubbelzinnig.

EDIT: als dit een standalone script is (een contactformulier ofzo): doe je ding. Als dat ding helemaal op zichzelf staat en niet onderdeel is van een dynamisch gegenereerde website kun je prima de action hardcoden. Ik zou je wel als tip geven om de verschillende acties (het tonen van een formulier -al dan niet met foutmeldingen van een vorige submit-, het verwerken van een formulier, het tonen van een bedankpagina) te compartimenteren. Je wilt niet een halve HTML-pagina uitgedraaid hebben terwijl je een formulier aan het verwerken bent. Dat wordt vaak gewoon één grote onoverzichtelijke brei. Maar nogmaals, dit hangt van de toepassing af...
Gewijzigd op 03/01/2018 01:15:24 door Thomas van den Heuvel
 
Frank Nietbelangrijk

Frank Nietbelangrijk

03/01/2018 09:06:16
Quote Anchor link
>> Je kan het ook leeg laten maar dan ben je kwetsbaar voor iframe aanval, en het is ook niet geldig voor html5.

In html5 mag je het action attribuut helemaal weglaten.

Dus:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<form method="post"> <!-- HTML5 VALID -->
 
Ruben D

Ruben D

03/01/2018 16:49:33
Quote Anchor link
Ik ben bezig met een CMS, vandaar de vragen over veiligheid.
Als ik kijk naar php scripts zie ik veel gebruik de server variabel maar zelf deed ik altijd hardcoded gelijk process.php die het dan in een database zet ofzo.

Heb wat op google zitten zoeken naar kwetsbaarheden met dit variabel en toen begon ik mij dit af te vragen.
 
Thomas van den Heuvel

Thomas van den Heuvel

03/01/2018 19:08:12
Quote Anchor link
Ruben D op 03/01/2018 16:49:33:
een CMS

Maar dan heb je toch wel een functie o.i.d. voor het bouwen van hyperlinks voor (interne) navigatie? Dit lijkt mij een van de pijlers waarop een CMS gebouwd zou moeten zijn (een fatsoenlijke interne structuur).

Daarbij, de REQUEST_URI gebruik je meestal om uit te zoeken waar je je bevindt, en niet zozeer waar je naartoe gaat.

Volgens mij is de REQUEST_URI ook "rauw", dus het kan sowieso geen kwaad om hier een urldecode() overheen te gooien.

Maar nu ik er over nadenk: ik zou in eerste instantie de REQUEST_URI niet gebruiken in een form action.
 



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.