/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Problemer med SPAM og mail().
Fra : Erik Hansen


Dato : 12-06-06 13:50

Hejsa.

På min hjemmeside har jeg en form som kan kan bruges når man vil
oprettes som bruger. Denne form skriver man sin mail adresse i, som
jeg så derefter bruger når der sendes en mail.
Nu viser det sig at denne funktion kan misbruges at spammer, så mit
spørgsmål er hvad har jeg af løsningsmuligheder.

Jeg laver ikke noget tjek på e-mail adressen udover at jeg tjekker at
der er et @ i adressen.


--
....::Hilsen Erik


 
 
David Trasbo (12-06-2006)
Kommentar
Fra : David Trasbo


Dato : 12-06-06 15:04


Erik Hansen skrev:

> På min hjemmeside har jeg en form som kan kan bruges når man vil
> oprettes som bruger. Denne form skriver man sin mail adresse i, som
> jeg så derefter bruger når der sendes en mail.

Dvs., at denne mailadresse bliver sendt til dig?

> Nu viser det sig at denne funktion kan misbruges at spammer, så mit
> spørgsmål er hvad har jeg af løsningsmuligheder.

Hvordan kan funktionen misbruges?


--
David Trasbo.
Vær en god Usenet-bruger. http://usenet.dk/netikette.
Læs om Opera. http://my.opera.com/datra.



Erik Hansen (12-06-2006)
Kommentar
Fra : Erik Hansen


Dato : 12-06-06 16:01

On Mon, 12 Jun 2006 16:04:03 +0200, "David Trasbo" <datra@mail.dk>
wrote:

>Dvs., at denne mailadresse bliver sendt til dig?

Nej, den sendes til den adresse som der skrive, det er alså modtager
adressen der skrives.
>

>Hvordan kan funktionen misbruges?

Jeg ved ikke hvordan den er blevet misbrugt, jeg har bare fået at vide
fra min udbyder at de har haft lukket mit site pga. der var blevet
sendt SPAM fra min hjemmeside.

--
....::Hilsen Erik

JD (12-06-2006)
Kommentar
Fra : JD


Dato : 12-06-06 16:22

>>Hvordan kan funktionen misbruges?
>
> Jeg ved ikke hvordan den er blevet misbrugt, jeg har bare fået at vide
> fra min udbyder at de har haft lukket mit site pga. der var blevet
> sendt SPAM fra min hjemmeside.

Hvordan så din kode ud som sender en email til brugeren?

Det kunne være en form-exploit, hvor man kan poste/get'e direkte til din
webside.



Erik Hansen (12-06-2006)
Kommentar
Fra : Erik Hansen


Dato : 12-06-06 17:44

On Mon, 12 Jun 2006 17:22:12 +0200, "JD" <jonh@doe.xyz> wrote:

>Hvordan så din kode ud som sender en email til brugeren?

Jeg har fjernet lidt overflødigt kod, men dette er hvad der
grundlæggende sker.


if ($Email && strstr($Email,"@")) {
SendMail($Email,"",$Subject,$Body,"");
}

Jeg har så en funktion som hedder SendMail, som er vist herunder

function SendMail($To,$From,$Subject,$Body,$Headers) {
if (empty($From)) {
$From = "site.dk <email@site.dk>";
$Body = $Body .
"\n".
"This is an automatically generated e-mail, no one will
answer replies to this e-mail.\n";
}
mail($To, $Subject, $Body, "From: $From\n".$Headers);
}


--
....::Hilsen Erik


JD (12-06-2006)
Kommentar
Fra : JD


Dato : 12-06-06 19:30

>>Hvordan så din kode ud som sender en email til brugeren?
>
> if ($Email && strstr($Email,"@")) {
> SendMail($Email,"",$Subject,$Body,"");
> }

Hvis du så også har noget a'la dette

$Email = $_REQUEST["Email"];
$Subject = $_REQUEST["Subject"];
$Body = $_REQUEST["Body"];

... vil alle og en hver kunne sende post fra dit system.
Hvis ikke du har, så bed da om at se noget dokumentation fra dem der har
lukket din side. Hvis ikke du ved hvad problemet er, kan det jo være svært
at rette.

En ting du dog kan kigge på mht. at validere email adresser er "checkdnsrr"
(hvis du køre !Windows)
http://dk.php.net/manual/en/function.checkdnsrr.php



Henrik Hansen (12-06-2006)
Kommentar
Fra : Henrik Hansen


Dato : 12-06-06 14:47

Erik Hansen <no_spam__@mail.dk> writes:

> Hejsa.
>
> På min hjemmeside har jeg en form som kan kan bruges når man vil
> oprettes som bruger. Denne form skriver man sin mail adresse i, som
> jeg så derefter bruger når der sendes en mail.
> Nu viser det sig at denne funktion kan misbruges at spammer, så mit
> spørgsmål er hvad har jeg af løsningsmuligheder.
>
> Jeg laver ikke noget tjek på e-mail adressen udover at jeg tjekker at
> der er et @ i adressen.

Noget mange bruger er de såkaldte CAPTCHA billeder, som kan være en
række bogstaver, som skal udfyldes korrekt før formen bliver submittet
korrekt. Ud fra min erfaring er det også yderst effektivt..

Du kan se mere på http://en.wikipedia.org/wiki/Captcha, som også giver
links til en række php klasser der kan lave dem. Jeg har brugt denne
her (http://www.ejeliot.com/pages/2) før, og den virker ret godt.

--
Henrik Hansen

Jesper H (12-06-2006)
Kommentar
Fra : Jesper H


Dato : 12-06-06 22:24


Erik Hansen skrev:

> Hejsa.
>
> På min hjemmeside har jeg en form som kan kan bruges når man vil
> oprettes som bruger. Denne form skriver man sin mail adresse i, som
> jeg så derefter bruger når der sendes en mail.
> Nu viser det sig at denne funktion kan misbruges at spammer, så mit
> spørgsmål er hvad har jeg af løsningsmuligheder.
>
> Jeg laver ikke noget tjek på e-mail adressen udover at jeg tjekker at
> der er et @ i adressen.
>
>
> --
> ...::Hilsen Erik

Hej Erik

Jeg er ikke helt sikker på hvordan dit system bliver misbrugt. Men jeg
tror du måske kan få noget ud af at læse følgende:
http://www.securephpwiki.com/index.php/Email_Injection?seenIEPage=1

Det er en lidt lang side, men den er værd at kigge på

--
mvh Jesper, http://fdf.dk/landsdel1/


Dan Storm (13-06-2006)
Kommentar
Fra : Dan Storm


Dato : 13-06-06 08:30

Erik Hansen skrev:
> Hejsa.
>
> På min hjemmeside har jeg en form som kan kan bruges når man vil
> oprettes som bruger. Denne form skriver man sin mail adresse i, som
> jeg så derefter bruger når der sendes en mail.
> Nu viser det sig at denne funktion kan misbruges at spammer, så mit
> spørgsmål er hvad har jeg af løsningsmuligheder.
>
> Jeg laver ikke noget tjek på e-mail adressen udover at jeg tjekker at
> der er et @ i adressen.
Det kaldes email injection. Du bør kigge på <url:
http://www.securephpwiki.com/index.php/Email_Injection>

Den side forklarer dit problem og kommer med løsningsmodeller.

Efter et hurtigt kig på din kode, så kan jeg også se at den nærmest
skriger efter at blive misbrugt.

Først og fremmest bør du have noget validering på din bruger, så du ved
det ikke blot er en crawler der 'opretter' brugere for at sende
spammails ud.

Der kan du med fordel kigge på <url:
http://err0r.dk/download.php?details=6> som er en meget simpel og nem
'validering af menneskelig input'.

--
Dan Storm - storm at err0r dot dk / http://err0r.dk

Tro ikke brugerne vil gøre noget for at undgå dit killfilter
- Så vigtig er du heller ikke!

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste