Vaste hardcode security

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

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 »

PHP developer (Symfony, Doctrine)

Functie Als PHP developer wordt er een hoge mate van zelfstandigheid verwacht, maar ook dat je goed opereert in een team waar kennis wordt gedeeld en dingen als codereviews erg veel voorkomen. Kwaliteit staat voorop, mede hierom werken ze bijvoorbeeld zonder echte deadlines in hun sprints. De SaaS-applicatie wordt volledig ontwikkeld in PHP en Symfony. De module bestaat uit een stuk informatie verrijking en intelligentie wat resulteert in een medische check. De logica wordt daarom in de code geïntrigeerd. Je bent onder andere bezig met complexe databases waar meer dan 80.000 medicijnen op verschillende niveaus in staan, die maandelijks worden

Bekijk vacature »

Senior Java developer

Dit ga je doen Jouw taken als Senior Java Developer zijn: Het maken van strategische keuzes omtrent de nieuwbouw van applicaties; Het maken van technische ontwerpen; Hands-on mee ontwikkelen met het team (met o.a. Java FX, JDBC, SQL, REST, Jax-RS, JSON, Maven, JUnit en Spring (boot)); Reviewen van code en feedback geven op collega developers; Analyseren en oplossen van bugs/incidenten door het onderlinge verband te kunnen leggen van verschillende losstaande systemen. Hier ga je werken Het bedrijf waar je als Senior Java Developer komt te werken staat internationaal bekend om het testen van bodemstructuren door middel van echotechnieken en beeldherkenning.

Bekijk vacature »

Software Developer C# - Deventer

Software Developer C# – Deventer Bijdragen aan de toekomst van het onderwijs! Ben jij op zoek naar een dynamische omgeving waar vol enthousiasme wordt gewerkt aan software voor interactieve dashboard- en analysetoepassingen ter verbetering van het onderwijs? Dan zijn wij het bedrijf voor jou! TIG is een bedrijf met een informele en ondernemende werksfeer, waarbij goede ideeën snel leiden tot concrete acties. Wij zijn een software ontwikkelorganisatie en focussen ons op het ontwikkelen en implementeren van oplossingen voor het leveren van managementinformatie, datavisualisatie en analyses voor het onderwijs. Met onze dashboard- en analyseoplossingen zetten scholen gegevens om naar betekenisvolle informatie.

Bekijk vacature »

Fullstack developer - medior

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en zou jij graag bij een platte maar informele organisatie willen werken? Voor een mooi softwarebedrijf in omgeving Dordrecht zijn wij op zoek naar versterking voor op de afdeling Software Development! Als Fullstack developer wordt je bij dit bedrijf onderdeel van de volledige ontwikkeling van requirement tot oplevering! Werkzaamheden Jouw focus ligt op de front end en alles wat daarbij komt kijken. Je gaat ontwerpen, ontwikkelen, testen en valideren. Je zult voornamelijk werken met React.js en Typescript. Maar ook Javascript, HTML en CSS komen aanbod. Daarnaast zal je ook regelmatig met

Bekijk vacature »

.NET developer

Functie Als ervaren .NET ontwikkelaar start jij in één van onze vier scrumteams. Met 30 ontwikkelaars werk jij aan de doorontwikkeling van ons core product. Ook werkt jouw team aan maatwerkoplossingen op aanvraag van de klant en op projectbasis. Wij vinden het erg belangrijk dat onze ontwikkelaars met plezier naar werk gaan. Een deel hiervan ligt uiteraard bij jezelf, als jij ontwikkelen niet leuk vindt, ben jij bij ons echt aan het verkeerde adres. Jouw team bestaat namelijk uit een groep gepassioneerde vakidioten die dit werk doen omdat dit eerst een hobby was! Daarnaast wordt er intern rekening gehouden met

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#.NET ontwikkelaar

Functie omschrijving Voor een softwarebedrijf in de omgeving van Veghel zijn we op zoek naar een C# developer. Word jij blij van ontwikkelen in C# en .NET? Lees dan snel verder! Jouw werkzaamheden zullen er als volgt uit gaan zien: Op basis van de wensen van de klant ga je samen met je collega's ga je op zoek naar de juiste oplossingen en je gaat dit uitwerken tot een mooi eindproduct. Je bouwt webshops, webapplicaties en websites, dit doe je door middel van ASP.NET, MVC Framework en C#. Je zorgt voor de optimalisering van bestaande software en de automatisering van

Bekijk vacature »

Lead Webdeveloper

Als Lead webdeveloper bij KUBUS ben je verantwoordelijk voor het implementatie design van requirements en de software architectuur van de webapplicatie en services van BIMcollab. In je rol als lead developer zoek je als vanzelf op een creatieve manier naar het optimum tussen benodigde implementatie-tijd, de performance van de applicatie en een snelle go-to-market van features, aansluitend bij onze geautomatiseerde test- en release train. Hierbij bewaak je in samenwerking met de andere senior ontwikkelaars in je team de architectuur van de applicatie en adviseer je de product owner over noodzakelijke refactoring om de onderhoudbaarheid van het platform te verbeteren. Ons

Bekijk vacature »

Java developer (remote)

Functie Wat ga je doen als Java Developer? Jij als Java ontwikkelaar komt te werken in 1 van onze SCRUM teams. Momenteel werken er zo’n 30 ontwikkelaars binnen onze organisatie waarbij jij de brug slaat tussen het bouwen van verschillende functionaliteiten binnen onze applicaties en deze vervolgens te integreren in onze centrale hub. Je start je dag om 9 uur met een stand up en dan pak je jouw taken op voor de dag. Hieronder een aantal taken die jij zal uitvoeren: – Het bedenken en uitbouwen van features binnen de verschillende applicaties – Onderhouden van CI/CD pipelines – Bezighouden

Bekijk vacature »

Software Programmeur PHP - JAVA

Functie Wil jij bij een platte en informele organisatie werken? Lees dan snel verder! Voor een opdrachtgever in omgeving Rotterdam dat zich gespecialiseerd heeft in het realiseren van veilige netwerkverbindingen zijn wij op zoek naar een leuke software developer ter versterking van het huidige team. Hoe kan jouw dag er straks uitzien? Je gaat software en webapplicaties ontwikkelen met behulp van de talen PHP, JAVA en Node.js. Je gaat klanten ondersteunen op het gebied van geleverde software en webapplicaties. Je gaat technische klussen uitvoeren op locatie bij klanten. Je onderhoudt contact met de projectleider om er zeker van te zijn

Bekijk vacature »

Full-stack Developer

As a Full-stack developer at KUBUS, you will develop the (web)applications and services of BIMcollab. You will work on both the front- and back-end. As a software company, KUBUS is in a unique position. We build our own products that are used by tens of thousands of users worldwide. Our company is just the right size: big enough to make a real impact in the market, but small enough that as an individual developer you can have an impact and really make a difference. Our development team consists of over 40 developers, testers, scrum masters and product owners, divided over

Bekijk vacature »

PHP Developer - medior functie

Functieomschrijving Ben jij innovatief en wil jij je kennis graag delen met jouw nieuwe collega's? Lees dan snel verder! Voor een leuke opdrachtgever in de omgeving van Roosendaal zoeken wij een Symfony developer. Of je nou junior, medior of senior bent, je krijgt hier alle vrijheid en verantwoordelijkheid om jouw eigen loopbaan te ontwikkelen. Je gaat je hier bezig houden met en inspelen op de actualiteiten van jouw vakgebied. Techstack: Symfony, PHP, mySQL. Kennis van Svelte is helemaal mooi meegenomen. Bedrijfsprofiel Al sinds '99 is dit webbureau actief. De kernwaarden binnen het bedrijf zijn integer, dienstbaar en deskundig. Je komt

Bekijk vacature »

Senior developer (PHP en VB.NET)

Functie De development afdeling bestaat uit 2 teams. Het productteam (10 developers) is verantwoordelijk voor verschillende applicaties met als doel om zoveel mogelijk te automatiseren en uit te werken tot standaard software. Met diverse Solutions Architecten en ervaren developers denken ze voortdurend mee met hun klanten en bouwen ze de basis van het uiteindelijke maatwerk dat wordt geleverd. Hiernaast hebben ze een maatwerk/projectteam. Dit team bestaat momenteel uit 8 developers (junior tot senior) en is verantwoordelijk voor het maatwerk in hun klantprojecten. Momenteel zijn ze op zoek naar een senior developer die aan de slag gaat in het productteam. Hierin

Bekijk vacature »

PHP Developer (junior functie)

Functie omschrijving Wij zijn op zoek naar een PHP Developer! Ben jij een starter en wil je werken bij een jong en leuk bedrijf? Lees dan verder! Wij zijn op zoek naar een PHP Developer binnen een junior functie. Binnen dit bedrijf gaat het om persoonlijke aandacht en ontwikkeling! Je komt te werken voor een leuk communicatiebureau die alles op het gebied van online en offline communicatie doet. Dit doen zij voor verschillende branches, waardoor je aan diverse soorten projecten mag werken, dit maakt deze baan erg leuk! Daarbij werk je aan een door hun zelf ontwikkeld framework welke goed

Bekijk vacature »
Arno van Zanten

Arno van Zanten

08/06/2022 16:48:09
Quote Anchor link
Ik wil graag een paar mensen beschermen, zodat deze nooit en te nimmer uit de dbase verwijderd kunnen worden, ook niet door hun zelf
Ik wil dat als een soort hardcode wegzetten in een script, op moment heb ik het opgelost met een stukje code zoals dit.

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
<?php

if($_GET['Name'] == 'persoon1') {
 echo you cannot delete this acount
}else{
 <
a href='index.php?menu=profile&action=delete&id=".$_GET['ID']."'>Delete</a>
if($_GET['Name'] == 'persoon2') {
 echo you cannot delete this acount
}else{
 <
a href='index.php?menu=profile&action=delete&id=".$_GET['ID']."'>Delete</a>
if($_GET['Name'] == 'persoon3') {
 echo you cannot delete this acount
}else{
 <
a href='index.php?menu=profile&action=delete&id=".$_GET['ID']."'>Delete</a>
}


?>


Ik weet dat dit opslachtig is, dus ik zoek hier een oplossing voor.
Hoe kan ik dit in een kosrter script zetten als hardcode?
Heb het geprobeerd met variabelen en merge_arry, maar dat werkte niet.
Hoe kan ik dit oplossen volgens jullie?
Wat je wilt niet dat er namen in een script naar boven komen.
 
PHP hulp

PHP hulp

24/04/2024 13:06:50
 
- Ariën  -
Beheerder

- Ariën -

08/06/2022 17:00:01
Quote Anchor link
Of maak in de database gewoon een veld waarin staat: 'secured', en als die op 1 staat, dan mag je die personen niet verwijderen. Hardcoded dingen gaan hacken is bijna nooit de oplossing.

Anders had je ook in_array() kunnen gebruiken en alle userID's in een array kunnen gieten.

Maar goed: een databaseveld is veel handiger.
Gewijzigd op 08/06/2022 17:02:06 door - Ariën -
 
Arno van Zanten

Arno van Zanten

08/06/2022 17:14:56
Quote Anchor link
is ook een idee, maar ook dbases kunnen ook gehackt worden,
ik had ook arry gebruikt en die met array_merg gedaan, maar dat deed niks.
Maar ik kan die optie van jou altijd nog gebruiken, maar zie zoiets liever als een stukje hardcode.
zodat niemand de namen kan acterhalen etc...
 
Adoptive Solution

Adoptive Solution

08/06/2022 17:24:25
Quote Anchor link
In een ver verleden deed ik dit.
Met een vlag aangeven of de gebruiker uit de database of uit een array gehaald moet worden.
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
31
32
<?php
function pc_validate( $user, $password, $db_true )
{

    if( $db_true )
    {

        // use next 2 lines to connect to database
        include ('connect-with-login.php');
        //echo '<p>Resultaat = ' . $resultaat . '</p>';
        //exit();

        return $resultaat;
    }

    else
    {
        // use next lines to use the $users array
        // md5 passwords are the same as usernames

        $users = [
        'david' => '172522ec1028ab781d9dfd17eaca4427',
        'adam'  => '1d7c2923c1684726dc23d2901c4d8157',
        'test'  => '098f6bcd4621d373cade4e832627b4f6',
        ];


        if ( isset( $users[$user] ) && ( $users[$user] == md5($password) ) )
        {

            return TRUE;
        }

        else
        {
            return FALSE;
        }
    }
}

?>


En als je niet wilt dat de database gehackt wordt, zorg er dan voor dat ze er niet bijkunnen.
 
- Ariën  -
Beheerder

- Ariën -

08/06/2022 17:25:53
Quote Anchor link
Arno van Zanten op 08/06/2022 17:14:56:
is ook een idee, maar ook dbases kunnen ook gehackt worden

FTP ook!
En anders misschien via een SQL-exploit.
Quote:
ik had ook arry gebruikt en die met array_merg gedaan, maar dat deed niks.
Maar ik kan die optie van jou altijd nog gebruiken, maar zie zoiets liever als een stukje hardcode.
zodat niemand de namen kan acterhalen etc...

Een site wil je altijd flexibel houden. Daar hoort geen hardcoded hack in.
Achterhalen kunnen ze altijd als het in de database staat, en als ze op een manier een toegang vinden.
Gewijzigd op 08/06/2022 17:27:18 door - Ariën -
 
Ward van der Put
Moderator

Ward van der Put

08/06/2022 17:26:15
Quote Anchor link
Met in_array() zoals Ariën ook aangeeft:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
if (
-
   isset($_GET['Name'])
    &&
in_array($_GET['Name'], ['persoon1', 'persoon2', 'persoon3'])
) {

    // Herrie in de zaak: we gaan personen ontvrienden.
} else {
    // Geen toegang tot deze accounts.
}
?>
 
Jan R

Jan R

09/06/2022 08:44:26
Quote Anchor link
Je vermeld "niet door hun zelf"
Misschien een persoonlijk idee maar ik sta nooit toe dat een gebruiker zichzelf wist.
gewoon in het delete commando "where id<>' . $_SESSION['id'] of een equivalent toevoegen

Ik laat ook nooit toe dat een laatste beheerder verwijderd wordt.

En JaJa ik weet via de database kan natuurlijk alles :)
 
Ozzie PHP

Ozzie PHP

09/06/2022 12:15:18
Quote Anchor link
Arno van Zanten op 08/06/2022 16:48:09:

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
<?php

if($_GET['Name'] == 'persoon1') {
 echo you cannot delete this acount
}else{
 <
a href='index.php?menu=profile&action=delete&id=".$_GET['ID']."'>Delete</a>
if($_GET['Name'] == 'persoon2') {
 echo you cannot delete this acount
}else{
 <
a href='index.php?menu=profile&action=delete&id=".$_GET['ID']."'>Delete</a>
if($_GET['Name'] == 'persoon3') {
 echo you cannot delete this acount
}else{
 <
a href='index.php?menu=profile&action=delete&id=".$_GET['ID']."'>Delete</a>
}


?>


Je verwijdert iemand op basis van ID, maar je voert een controle uit op basis van naam ... hmmm
 
Ivo P

Ivo P

09/06/2022 12:18:41
Quote Anchor link
En je delete ook niet met
DELETE FROM user WHERE id = 123;

maar door

UPDATE user SET deleted = 1 WHERE id = 123;

Op deze manier is een delete-actie eenvoudig terug te draaien. En je hebt geen problemen met andere tabellen waarin de posts, bestellingen, profielen, vrienden etc staan. Die dan ofwel verweest raken (als je de foreign keys niet goed hebt ingericht) ofwel je delete query blokkeren.
(of je verwijdert alle afhankelijke data on-cascade, met als gevolg dat bijvoorbeeld je forum gesloopt wordt omdat topics de helft van de reacties missen.)
Gewijzigd op 09/06/2022 12:18:56 door Ivo P
 
Arno van Zanten

Arno van Zanten

09/06/2022 15:46:55
Quote Anchor link
Ivo P op 09/06/2022 12:18:41:
En je delete ook niet met
DELETE FROM user WHERE id = 123;

maar door

UPDATE user SET deleted = 1 WHERE id = 123;

Op deze manier is een delete-actie eenvoudig terug te draaien. En je hebt geen problemen met andere tabellen waarin de posts, bestellingen, profielen, vrienden etc staan. Die dan ofwel verweest raken (als je de foreign keys niet goed hebt ingericht) ofwel je delete query blokkeren.
(of je verwijdert alle afhankelijke data on-cascade, met als gevolg dat bijvoorbeeld je forum gesloopt wordt omdat topics de helft van de reacties missen.)


is niet voor een forum ;)
Gaat om een bedrijfs platform
 
Ozzie PHP

Ozzie PHP

09/06/2022 16:34:28
Quote Anchor link
>> is niet voor een forum ;)
>> Gaat om een bedrijfs platform

En je punt is?

Echt met alle respect, je hebt nog niet heel veel ervaring met programmeren. Dat blijkt duidelijk uit je vragen en de code die je tot nu toe laat zien. Maar je bent ondertussen wel een 'bedrijfsplatform' aan het programmeren? Neem je misschien niet een heel klein beetje te veel hooi op je vork?
 
- Ariën  -
Beheerder

- Ariën -

09/06/2022 17:09:11
Quote Anchor link
Wat Ozzie zeg, daar ga ik ook in mee. Een goede verwerking is van groot belang voor een bedrijf. Als je de opbouw en werking van een database niet beheerst, dan is het aftellen voordat er een grote f*ckup plaatsvindt die desastreus kan zijn voor binnen een bedrijf.

Ik denk dat je dit niet graag wilt horen, maar mijn dringende advies is om als beginner eerst gewoon kleine hobby-projectjes te maken. Het begint bij een simpele "Hello World", daarna wat simpele afhandeling van GET/POST, vervolgens wat uitgebreide if-else-elseif structuren en dan iets van een simpel gastenboekje, of kleinschalig forumpje. Als je zoiets kan bouwen, én weet hoe je goede databasestructuren kan maken, dan kan je verder kijken naar uitgebreide dingen.

Ik krijg nu sterk de indruk dat je van de hak op de tak gaat. Eerst een query die niet werkt, en dan later de basis van if-else die je niet goed beheerst. En laat staan dat dat je nog niet weet hoe je moet debuggen waardoor we flink moeten doorvragen en er ellenlange topics ontstaan. En gezien je nog geen beveiliging tegen SQL-injection, en controle op queries inbouwt, is de kans groot dat je data in bepaalde gevallen niet goed in je database komt te staan wat je duur kan komen te staan. Ook zou je minimaal gebruik moeten maken van transacties met ROLLBACk en COMMIT in MySQL bij het uitvoeren van queries in belangrijke situaties.

Als ik je posthistorie op PHPhulp al bekijk dan durf ik durf te wedden dat je echt nog wel een flink aantal maanden verwijderd bent om te beginnen aan een belangrijk bedrijfsplatform.

Mijn advies:
- Of je besteed het uit
- Of je stelt het uit
- Of je zoekt iets in de vorm van een klant-en-klaar opensource of een gelicenseerd product.
Gewijzigd op 09/06/2022 18:28:05 door - Ariën -
 



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.