WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Nigeria brev&spamm boot i formulär (https://www.wn.se/forum/showthread.php?t=23387)

pokerstjärna 2007-09-05 01:27

Hej.
Jag och min kollega driver en sida jag inte vill uttala mig om vilken det är.
Men hur som helst.
Ikväll när jag loggade in på min webmail för att läsa lite så har jag fått ett brev från fly förbannade besökare&kunder och även min kollega.

Alla som har annonserat något har fått ett ett nigeriabrev :(

Jag har ingen aning om hur jag ska lösa detta för att säkerhet är inte min starka sida :( :(

Här nedan finns en kodsnutt för formuläret.

Skulle vara guld värt om någon här på wn har någon lust att hjälpa till.

Formulär
Citat:

<table cellpadding="0" cellspacing="0" style="margin-bottom : 20px">
<tr>
<td background="gfx/topichouse.jpg" width="35" height="31"></td>
<td width="5"></td>
<td><h1>Direktsvar på annons: "'.$row->ad_topic.'"</h1></td>
</tr>
</table>

<form action="receiver.php" method="post" target="recframe">
<input type="Hidden" name="action" value="Svara">
<input type="hidden" name="id" value="'.md5($row->advert_id).'">
<table>
<tr>
<td>Namn:</td>
<td><input type="Text" name="name" style="width:150px;" class="textfield" /></td>
</tr>
<tr>
<td>Telefon:</td>
<td><input type="Text" name="phone" style="width:150px;" class="textfield" /></td>
</tr>
<tr>
<td>E-post:</td>
<td><input type="Text" name="email" style="width:400px;" class="textfield" /></td>
</tr>
<tr>
<td>Rubrik:</td>
<td><input type="Text" name="subject" style="width:400px;" value=\'Ang. "'.$row->ad_topic.'"\' class="textfield" readonly /></td>
</tr>
<tr>
<td valign="top">Meddelande:</td>
<td><textarea name="msg" style="width:400px; height:150px;"></textarea></td>
</tr>
<tr>
<td></td>
<td><input type="Submit" class="button" value="Skicka" name="subbtn" /></td>
</tr>
</table>

</form>


Function
Citat:

function sendemail($to = '', $subject = '', $message = ''){

// To send HTML mail, the Content-type header must be set
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

// Additional headers
$headers .= 'To: ' .$to. "\r\n";
$headers .= 'From: DINSIDA.SE <[email protected]>' . "\r\n";
$headers .= 'Cc: [email protected]' . "\r\n";
$headers .= 'Bcc: [email protected]' . "\r\n";

// Mail it
mail($to, $subject, $message, $headers);


gsoc 2007-09-05 03:41

Lägg in en captcha:
http://www.captcha.net/

Brukar stoppa dom flesta...

Vill du göra något basic själv så visa några random bokstäver på formuläret, och be dom sedan skriva in dom där i forumuläret där du kollar om det stämmer med det han fick.

pokerstjärna 2007-09-05 08:00

Citat:

Originally posted by gsoc@Sep 5 2007, 03:41
Lägg in en captcha:
http://www.captcha.net/

Brukar stoppa dom flesta...

Vill du göra något basic själv så visa några random bokstäver på formuläret, och be dom sedan skriva in dom där i forumuläret där du kollar om det stämmer med det han fick.

Har redan blivit tipsad om det, men tack endå:)
Helst skulle jag vilja om man kan ändra på koden istället om det går?

mersault 2007-09-05 09:27

pokerstjärna>> Varför vill du inte tala om vilken sida det var? Kopierade tre i ord i texten så hade Google hittat den på någon sekund... =)

Men, i vilket fall, om du inte har så bra koll på programmering och säkerhet verkar det inte så smart att ha ett oskyddat mailformulär på din sida, jag skulle nog tagit bort den funktionen!
Att lägga in egna frågor på svenska (behöver inte ens vara slumpade) eller att åtminstonde döpa om namnen på fälten så att bottarna inte känner igen dem så enkelt (t.ex. inte kalla fältet "msg" utan t.ex. "xfwaserjkl34") kan fungera, åtminstonde ett tag. Men den enda seriösa lösningen på en sida som din tycker jag är att implementera ett riktigt captcha-system!

pokerstjärna 2007-09-05 09:47

Citat:

Originally posted by mersault@Sep 5 2007, 09:27
pokerstjärna>> Varför vill du inte tala om vilken sida det var? Kopierade tre i ord i texten så hade Google hittat den på någon sekund... =)

Men, i vilket fall, om du inte har så bra koll på programmering och säkerhet verkar det inte så smart att ha ett oskyddat mailformulär på din sida, jag skulle nog tagit bort den funktionen!
Att lägga in egna frågor på svenska (behöver inte ens vara slumpade) eller att åtminstonde döpa om namnen på fälten så att bottarna inte känner igen dem så enkelt (t.ex. inte kalla fältet "msg" utan t.ex. "xfwaserjkl34") kan fungera, åtminstonde ett tag. Men den enda seriösa lösningen på en sida som din tycker jag är att implementera ett riktigt captcha-system!

För att jag inte tycker att det spelar någon som helst roll.
okej bra.

Jag har inte 100% koll på programmeringen igentligen sköter våran kodare detta men han är i stockholm på semster nu i några dagar och därför undrar jag om någon kan hjälpa mig endast tillfälligt.

Ja men problemet är att JAG inte VET HUR MAN GÖR.
Men om det skulle finnas någon guide hade jag säkert klarat av det.

Om man ändrar kod som du säger från"msg" till "xfwaserjkl34" då ser den som får mailet inte vad som står i text.

melin 2007-09-05 10:17

nej.. ändrar man fältens namn måste det också ändras i koden som skickar mailet naturligtvis

Det är dock en tillfällig lösning.. den bästa är ändå ett extra fält där man ber besökaren svara på en fråga i stil med "Vilken bokstav kommer före D men efter B?"

pokerstjärna 2007-09-05 10:40

Citat:

Originally posted by melin@Sep 5 2007, 10:17
nej.. ändrar man fältens namn måste det också ändras i koden som skickar mailet naturligtvis

Det är dock en tillfällig lösning.. den bästa är ändå ett extra fält där man ber besökaren svara på en fråga i stil med "Vilken bokstav kommer före D men efter B?"

Du har ingen exempelkod på hur ett sådant skulle se ut? ;)
Uppskattas verkligen!

Nicklas 2007-09-05 10:43

Jag tycker att du skall lägga krutet på att fixa till bildverifiering av dina formulär.

pokerstjärna 2007-09-05 10:47

har kollat lite på länken nedan och försöker förstå något :P
http://www.white-hat-web-design.co.u...hp-captcha.php

melin 2007-09-05 10:57

exempel

Formuläret
Kod:

Skriv in bokstaven som kommer efter "C" men före "E" i fältet <input type="text" name="xyz" />
Tillägg i koden som skickar mailet (längst upp eller iaf långt upp i koden)

PHP
Kod:

if ($_POST["xyz"] != "D") {
header("Location: fel.php");
}

ASP
Kod:

if request("xyz") <> "D" then response.redirect "fel.asp"


Alla tider är GMT +2. Klockan är nu 22:33.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson