Eindelijk een veilig mailscript?
Rene
23/02/2006 14:11:00Ik ben bezig met een basicscript dat bestand is tegen mailinjection. Het script is bijna klaar, maar twee kleine problemen:
- De injectie kan echter ook d.m.v. het veld 'onderwerp' gedaan worden. Blijkbaar wordt dat veld ook gebruikt, want kort na je testmailtjes zijn er nog een aantal spam-mailtjes verstuurd.
Iemand een idee over hoe dat te voorkomen zou zijn en hoe het script er dan uit zo komen te zien? ,'-f'.$returnadres) was ik nog vergeten.
Dan zou het script volgens mij in orde moeten zijn, iemand nog veiligheidsgaten?
- De injectie kan echter ook d.m.v. het veld 'onderwerp' gedaan worden. Blijkbaar wordt dat veld ook gebruikt, want kort na je testmailtjes zijn er nog een aantal spam-mailtjes verstuurd.
Iemand een idee over hoe dat te voorkomen zou zijn en hoe het script er dan uit zo komen te zien? ,'-f'.$returnadres) was ik nog vergeten.
Dan zou het script volgens mij in orde moeten zijn, iemand nog veiligheidsgaten?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
// Vul hier uw eigen e-mail adres in.
$ontvanger = "[email protected]";
// Deze code haalt de informatie uit het formulier.
$naam = $_POST['naam'];
if (preg_match(' /[\r\n,;\'"]/ ', $_POST['email'])) {
exit('Invalid email address');
} else {
//code to send the mail
$email = $_POST['email'];
}
$onderwerp = $_POST['onderwerp'];
$bericht = $_POST['bericht'];
// Dit is voor het e-mail programma dat je kunt zie van wie de mail afkomstig is en dat
// je kunt re- playen op de mail.
$verzender = "From: " . $naam . " <" . $email . ">";
// Dit stukje code verzend het script
mail($ontvanger, $onderwerp, $bericht, $verzender);
// Vul je de link in.
$link = "index.html";
?>
// Vul hier uw eigen e-mail adres in.
$ontvanger = "[email protected]";
// Deze code haalt de informatie uit het formulier.
$naam = $_POST['naam'];
if (preg_match(' /[\r\n,;\'"]/ ', $_POST['email'])) {
exit('Invalid email address');
} else {
//code to send the mail
$email = $_POST['email'];
}
$onderwerp = $_POST['onderwerp'];
$bericht = $_POST['bericht'];
// Dit is voor het e-mail programma dat je kunt zie van wie de mail afkomstig is en dat
// je kunt re- playen op de mail.
$verzender = "From: " . $naam . " <" . $email . ">";
// Dit stukje code verzend het script
mail($ontvanger, $onderwerp, $bericht, $verzender);
// Vul je de link in.
$link = "index.html";
?>
Er zijn nog geen reacties op dit bericht.