$_SERVER['REQUEST_URI'] waarom gebruiken?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Backend Developer PHP Laravel SaaS

Dit ga je doen Het ontwikkelen van nieuwe features die bijdragen aan de groei van de klanten van de organisatie; Je denkt mee over nieuwe innovaties, features en verbeteringen in de applicatiearchitectuur; Je draagt bij aan de continue ontwikkeling van jouw team doordat je elke dag streeft naar het verbeteren van jouw eigen prestaties; Je neemt actief deel aan Scrum meetings en de Backend Guild. Hier ga je werken Voor een snel groeiend bedrijf, in de regio Nieuw Vennep, zijn wij opzoek naar een ervaren Backend Developer. De organisatie is actief in de e-commercebranche en ontzorgt haar klanten middels een

Bekijk vacature »

PHP Developer

Dit ga je doen Ontwikkelen, implementeren en testen van PHP-oplossingen en Apps voor klanten en bedrijfsprocessen; Opstellen van requirements en uitwerken van de oplossingen; Testen van software en borgen van een soepele overdracht, inclusief documentatie; Proactief adviseren vanuit eigen expertisegebied over ontwikkelingen en verbeterpunten in technische toepassingen en processen binnen de organisatie. Hier ga je werken De organisatie is een ambitieuze en vooruitstrevende speler in de markt in de regio Rotterdam. Ze zijn de snelst groeiende in hun branche. Met een excellent aanbod en service willen zij de beste keuze zijn voor hun bestaande en nieuwe klanten. Dit alles doen

Bekijk vacature »

Fullstack JavaScript developer (ReactJS, NodeJS, T

Functie Het team bestaat momenteel uit ruim 15 collega’s, waarvan ruim de helft in het ontwikkelteam werkzaam is. Er zijn gave plannen om het platform ook te gaan toepassen op bijv. vliegvelden, maar ook internationale groei zit in het verschiet en daarom zijn ze op zoek naar versterking. Als Fullstack JavaScript developer werk je nauw samen met 9 fullstack (Python en .NET) developers. Binnen het team ga jij je toespitsen op het creeren van de optimale toegankelijkheid en user experience. Om dit voor elkaar te krijgen zul je ontwerpen, programmeren, testen en implementeren. Het hele proces dus! Maar ook bijvoorbeeld

Bekijk vacature »

C++ Ontwikkelaar

Functieomschrijving Ben jij als software ontwikkelaar toe aan een nieuwe uitdaging? Dan zoeken wij jou! Voor het maken van de procesbesturingssoftware gebruiken onze projectteams een in C++ en C# geschreven tool. Dit is een gedistribueerd object framework wat alle kernfuncties biedt voor een procesautomatisering. Verder zullen jouw werkzaamheden o.a. bestaan uit: Ontwerpen, programmeren en testen van product aanpassingen; Analyseren van vragen en wensen van gebruikers en deze vertalen naar een functioneel ontwerp; Inzichtelijk maken van voortgang omtrent softwarewerkzaamheden, o.a. door middel van SCRUM; Continu toetsen van het effect van nieuwe releases op andere tools en processen; Implementeren van nieuwe product

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 »

Back-end .NET Developer

Functie omschrijving C# / .NET Developer gezocht voor een dynamische organisatie in de regio Houten! Voor een leuke organisatie in de regio Houten zijn wij op zoek naar een Back-end developer die klaar is voor een nieuwe uitdaging. In deze functie werk jij aan verschillende projecten en ga je vaak bij klanten op bezoek. Binnen deze functie kun je een grote mate van uitdaging, diversiteit en verantwoordelijkheid treffen. Bedrijfsprofiel Waar ga je werken? Het bedrijf waar je gaat werken is gespecialiseerd in het ontwerpen en implementeren van procesautomatisering en procesinformatisering. Zij doen dit onder andere voor de (petro)chemie, pharma, infra,

Bekijk vacature »

Java Front-end Developer

Dit ga je doen Ontwikkelen van nieuwe functionaliteiten in Java met tools als Springboot, MS SQL Server (T-SQL) en JavaScript; Het onderhouden van de (web-)applicaties binnen een complexe omgeving; Werken aan de migratie van een monolithisch systeem naar een architectuur gebaseerd op Kubernetes; Code reviews met collega's en actieve kennisuitdelingsessies voeren; Het uitvoeren van unit- en systeemtests Experimenteren met nieuwe tools en technieken. Hier ga je werken Binnen deze organisatie kom je te werken op de afdeling die gegevens verzamelt vanuit het hele land. Denk hierbij aan vertrouwelijke persoonsgegevens. Het team verwerkt al deze data met als doel het waarborgen

Bekijk vacature »

Java Developer

Dit ga je doen Als Java Developer ben je verantwoordelijk voor: Het ontwikkelen van nieuwe en bestaande webservices; Het uitbreiden van functionaliteiten binnen de producten- en dienstenportefeuille; Het werken aan gegevensuitwisseling met bijvoorbeeld SOAP; Testen van frameworks met gebruik van UNIT en Selenium. Hier ga je werken De organisatie waar je komt te werken is een semi-overheidsinstelling, gesitueerd in Utrecht en zorgt voor een goede samenwerking tussen verschillende overheidsinstanties. Het is een familiaire club die gaat voor kwaliteit en langdurige relaties. Zo zorgen zij ervoor dat er op grote schaal vertrouwelijke informatie tussen verschillende overheidsinstellingen wordt uitgewisseld. Hun werk zorgt

Bekijk vacature »

Medior/Senior Front-end Developers gezocht (Utrech

Functie Het team bestaat uit 10+ gespecialiseerde (veel senior) front-end ontwikkelaars en ontwerpers die werken aan projecten voor klanten van verschillende groottes (kan twee jaar bezig zijn met 1 klant). Je helpt klanten met ingewikkelde front-end vraagstukken, hierbij kun je denken aan: UX/UI design, CI/CD, architectuur en integratie met back-end systemen. De werkzaamheden verricht je op locatie bij de klant, dit is vaak in de Randstad. De organisatiestructuur is plat en er heerst een informele sfeer, zo kun je met vragen dus terecht bij de directie. Er wordt veel nadruk gelegd op het bevorderen van persoonlijke ontwikkeling door middel van

Bekijk vacature »

Software Developer

Longship.io gaat de wereld veroveren met baanbrekende software en legendarische... pizza-avonden! Lees hier de vacature van IT Operations Manager! Bij Longship werken we met een team van 5 mensen aan software voor laadpaal operators. Longship is ontstaan in 2020 met als doel om de elektrische mobiliteitstransitie aan te jagen. We zijn nu al een wereldwijde speler doordat we continu voorop lopen in innovatie. Ons platform helpt het versneld elektrificeren van wagenparken, internationaal! Wij zijn een startup met grote ambities die we willen bereiken met een relatief klein en efficiënt team. Je krijg de kans om ontzettend veel te leren van

Bekijk vacature »

Junior Software Developer (HBO / WO)

Functie omschrijving Wij zijn op zoek naar een Junior Software Developer! Sta jij aan het begin van je carrière en heb je net je HBO of WO-diploma in de richting van ICT of Techniek mogen ontvangen? En heb jij grote affiniteit met software development? Dan hebben wij bij Jelling IT Professionals de perfecte opdrachtgever in de omgeving van Utrecht, die jou tot een volwaardig Fullstack Software Developer gaat opleiden. Binnen deze grote organisatie krijg je ruime en professionele trainingen die jouw in korte tijd vakbekwaam maken. Niet alleen het aan technisch aspect, maar ook zeker jouw persoonlijke ontwikkeling wordt veel

Bekijk vacature »

C# Ontwikkelaar

In het kort Als C# .NET Core ontwikkelaar ga je binnen onze business unit Transport en Logistiek aan de slag 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 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 we deze uitdaging

Bekijk vacature »

Ambitieuze medior developer

Wat je gaat doen: Heb jij al een paar jaar ervaring als developer maar wil jij naar the next level? In ons NextLevelDev Programma helpen wij jou om de volgende stap te zetten: een mooi programma aan trainingen op het gebied van Java, hippe frameworks, Agile/Scrum, OCP-certificering en optioneel: andere JVM-talen als Kotlin en Scala; Cloud (AWS, Azure, GCP) Soc 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

Bekijk vacature »

Full stack Javascript ontwikkelaar

Functie Benieuwd hoe jouw dag eruit ziet? Je komt binnen rond een uur of 10 en dat start je met de morning call. Dit doen we vanaf het hoofdkantoor of op het lab, ligt eraan welk project je mee bezig bent. Na de call en het verdelen van de tickets ga je met je team aan de slag. Rond een uur of 12 is er een goede lunch en ga je smiddags weer lekker door met je werk. De ene keer maak jij een game voor een groot merk om de interactie tussen product en eindgebruiker te vergroten. De andere

Bekijk vacature »

Ervaren Full stack developer

Functie omschrijving Ben jij op zoek naar een uitdagende in-house functie bij een bedrijf met enorme groeipotentie? Ben jij op zoek naar een nieuwe uitdaging vol afwisseling en gezelligheid? Dan ben je bij dit bedrijf aan het juiste adres! Wij zijn in omgeving Breda op zoek naar een ervaren full stack developer. Je gaat werken voor een zeer gewilde werkgever met goede arbeidsvoorwaarden. Je krijgt een plekje in het jonge IT team, work hard, play hard is hier duidelijk het motto! Jouw werkzaamheden zien er als volgt uit: Jij bent verantwoordelijk voor het ontwerpen en bouwen van webapplicaties. Je bent

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

20/01/2025 17:36:27
 
- 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.