set error handler verstuurt te veel informatie

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ventilatiesysteem Productontwikkelaar HBO WO Verwa

Samengevat: Zij bieden flexibele ventilatiematerialen, geluidsdempers, rookgasafvoer producten en industrieslangen. Ben jij een technisch productontwikkelaar? Heb jij ervaring met het ontwikkelen van nieuwe producten? Vaste baan: Technisch Productontwikkelaar HBO WO €3.000 - €4.000 Zij bieden een variëteit aan flexibele ventilatiematerialen, geluiddempers, rookgasafvoer producten, industrieslangen en ventilatieslangen voor de scheepsbouw. Met slimme en innovatieve materialen zorgen wij voor een gezonde en frisse leefomgeving. Deze werkgever is een organisatie die volop in ontwikkeling is met hardwerkende collega's. Dit geeft goede ontwikkelingsmogelijkheden. De branche van dit bedrijf is Techniek en Engineering. Functie: Voor de vacature als Technisch Productontwikkelaar Ede Gld HBO WO ga

Bekijk vacature »

Wim van de Wetering

Wim van de Wetering

08/07/2016 18:52:59
Quote Anchor link
Ik heb een error handler en dat loopt goed. Je kunt mooi en handig via email op fouten gewezen worden. Maar er is een maar....
In de email worden alle variabelen, met hun waardes op moment van error, gezet. Dat is mooi maar ook de wachtwoorden en inlog van je formulier EN de inlog van de Database. Wat kan je doen om deze gevoelige informatie niet mee te nemen in de error afhandeling?
Alvast bedankt,
Wim
 
PHP hulp

PHP hulp

03/12/2024 00:48:04
 
- Ariën  -
Beheerder

- Ariën -

08/07/2016 19:05:27
Quote Anchor link
Die variabelen unset()'en?
 
Wim van de Wetering

Wim van de Wetering

08/07/2016 20:26:54
Quote Anchor link
Dus eigenlijk aan het begin van de function alle 'gevoelige' variabelen unsetten. Is dat het plan? Anders begrijp ik het niet goed.
 
- Ariën  -
Beheerder

- Ariën -

09/07/2016 09:01:33
Quote Anchor link
Dat klopt.
 
Wim van de Wetering

Wim van de Wetering

09/07/2016 12:30:09
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
function mijn_errors($e_nummer, $e_melding, $e_bestand, $e_regel, $e_vars)
{

//hier komt dan die "unset" Maar de gewraakte variabelen komen volgens mij mee in //$e_vars. Ik behandel deze $e_vars dan als een array?
//Dus dan wordt het als voorbeeld:

unset ($e_vars['gebruiker']; $e_vars['wachtwoord']); // Ja? Nee?

// of als de inlog in een array staat

unset ($e_vars[$a_inlogdata]) // $a_inlogdata, niet tussen quotes?
 
}
 
Thomas van den Heuvel

Thomas van den Heuvel

09/07/2016 14:17:45
Quote Anchor link
Het unsetten van variabelen komt mij over als een soort van blacklist. Het nadeel van blacklists is dat je gevallen kunt vergeten (en daarmee je blacklist effectief tekortschiet in haar doel).

Daarnaast lost dit het achterliggende probleem niet op. Blijkbaar komt er (verkeerde?) informatie bij de verkeerde persoon/personen terecht. Je zult je ontwerpstrategie zo moeten aanpassen dat uitvoer van enige foutafhandeling niet bij (willekeurige) eindegebruikers terechtkomt.

Andere oplossingen, zoals het geval-per-geval afvangen van dit soort informatie, lijken mij toch doekjes voor het bloeden.
 
Wim van de Wetering

Wim van de Wetering

09/07/2016 14:58:53
Quote Anchor link
Dat laatste denk ik zelf ook.
Als je de variabelen declareert... dan zie je wel eens dat ze tussen " " aanhalingstekens staan heeft dat ook effect op mijn probleem?
Ik ga nu dit eens uitproberen maar toch graag je mening
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
//zonder variabelen te declareren dan moeten ze ook niet in het rapport komen?
$db_connectie =
mysqli_connect ("host", "user", "pass", "db")
or
die("Onze verontschuldigingen, de Kaartenbak is niet online.");
?>

Zou dit een oplossing kunnen zijn?
 
Ward van der Put
Moderator

Ward van der Put

09/07/2016 15:46:55
Quote Anchor link
Alsjeblieft niet, zeg. Fouten in de foutafhandeling moet je in de foutafhandeling zelf oplossen. Je gaat niet elders goede werkende code aanpassen omdat je foutafhandeling niet deugt.

In een custom error handler is de 5e parameter $errcontext, die met alle variabelen, helemaal niet vereist. Je kunt die er dus ergens uithalen. Dan houd je meestal al voldoende informatie over om de fout te verhelpen (zoals foutcode, foutmelding en het bestand waarin de fout optrad).

Fouten e-mailen is meer in het algemeen geen goed plan. Daar kom je van terug bij de eerste DDoS-aanval...
 
Wim van de Wetering

Wim van de Wetering

09/07/2016 17:31:23
Quote Anchor link
Dank je wel voor je reactie.
Groet,
Wim
 



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.