WN

WN (https://www.wn.se/forum/index.php)
-   Feedback (https://www.wn.se/forum/forumdisplay.php?f=20)
-   -   feedback på jobbsite (https://www.wn.se/forum/showthread.php?t=18081)

micho 2006-12-14 21:10

Citat:

Originally posted by bivald@Dec 14 2006, 21:36
Vanan trogen brukar jag kolla efter sårbarheter (och även ta betalt för detta, men vi är alla vänner här) och ett snabbt test visar att du är sårbar för en rad XSS-attacker där användaren kan använda javascript lite hur han eller hon vill, t.ex. skicka vidare användaren, lägga in nya annonser, ändra layouten på din sida.

Verkar gälla i princip alla variabler på alla sidor vilket är rätt allvarligt. Du bör köra all info genom htmlentities() innan så slipper du problemet. Se http://www.hittajobb.se/index.php?a=adinfo&id=20 för ett exempel.

Jo jag såg din annons :P hur kunde man missa den. Hur gör man det du beskriver? Det är inte jag själv som programmerat sidan men om du har något enkelt exempel på hur man gör det där så är den informationen väldigt välkommen!

Tack för tipset om html, det finns väl nån kod för att lägga in icke html kod som visas om användaren inte kan visa html. typ <nohtml> eller va de va?

Sen har ja tänkt på det där med att lägga in en länk direkt så annonsen verifieras direkt man klickar på den, har bara inte kunskapen än att fixa det. Om det inte är som ja tror att man använder samma adress som sidan när man trycker på Verifiera knappen.

micho 2006-12-14 21:15

Angående det att sidan tar bort all information när man missar att fylla i något fält vet jag om sedan tidigare. Vet dock inte hur jag ska ändra i koden så att detta inte händer. Ska kolla på det!

Avstånden för rubrikerna på jobblistorna har jag också märkt att dom ligger fel. Det konstiga här är att "Lediga Jobb" rubriken (t.ex) har samma avstånd inskrivet som php funktionen har för att loopa ut själva jobb titlarna. Så de är nåt annat som är fel just nu. Har egentligen inte lust att ändra avstånden manuellt istället för att hitta själva grundfelet som jag hoppas göra snart.

Nån som har en aning om vad som kan göra att samma angivna pixel avståndsvärde blir olika på lediga jobb och själva jobben? (eller t.ex Region och Västmanland)

bivald 2006-12-14 21:27

Citat:

Originally posted by micho@Dec 14 2006, 22:10
Tack för tipset om html, det finns väl nån kod för att lägga in icke html kod som visas om användaren inte kan visa html. typ nohtml eller va de va?
Du syftar nog på <pre> men den skulle inte hjälpa i detta fall. Använd istället http://se.php.net/manual/en/function.htmlentities.php i PHP. Ett enkelt kodexempel:

Istället för:
Citat:

echo $data['region'];
vilken antagligen är liknande den ni använder idag så använd:
Citat:

echo htmlentities($data['region']);

micho 2006-12-15 01:54

Det väldigt irriterande momentet att sidan tar bort all inskriven information vid annonsering om man missar ett av fälten eller skriver felaktig epost adress gå iofs klara sig ifrån genom att helt enkelt trycka på tillbaka knappen en gång. Men det är ju bättre att fixa felet och undrar om bivald eller någon annan ser felet i den här kodningen som gör att det blir så.

if (isset($_POST['skicka'])) {
if (empty($_POST['ansokan_epost'])) {
echo '<font color="red">Ansökan skickas till:</font>';
$badsub = TRUE;
} else {
echo 'Ansökan skickas till:';
}
} else {
echo 'Ansökan skickas till:';
}

echo '</td>
<td>
<input type="text" name="ansokan_epost" maxlength="200" size="20" />
</td>
</tr>
<tr>
<td width="200">';



EDIT: Låt mig gissa, den laddar om alla textrutor och all text om de är nåt som är fel. Hur går jag runt det här felet då?

bivald 2006-12-15 02:09

Det är naturligt att texten försvinner då servern som bekant skickar ut en ny sida. Det du måste göra är att i denna sida inkludera tidigare värden, ett exempel kan vara:

// Om användaren gjort något fel, skriv ut hans tidigare värden.
if($basdub == true && isset($_POST['ansokan_epost']) && !empty($_POST['ansokan_epost'])
echo ' <input type="text" name="ansokan_epost" value="'.htmlentities($_POST['ansokan_epost']).'" maxlength="200" size="20" />';
else echo ' <input type="text" name="ansokan_epost" maxlength="200" size="20" /> ';

micho 2006-12-15 16:29

Tack ännu en gång bivald! :lol: Såg du att jag har lagt in htmlentities? Bara ett problem med det. Jag vill ju tillåta <UL> listor BOLD ITALIC UNDERLINE osv i annonstexten så företagarna kan göra snyggare annonser.

Till er andra så önskar jag mer feedback på just utseendet på sidan. Själv tycker ja att det är nåt som saknas för att ja känner att sidan är ganska så tom. Det behövs lite mer färger eller nåt för att de inte ska se så template-aktigt ut.

Om nån grafisk designer har tråkigt så kan han ju alltid ladda ner bg-bilderna och göra ett alternativt utseende på hela sidan. Nåt som ser fräsht ut. Mer färger kanske. Rutor med rundade kanter?! :D

bivald 2006-12-15 21:51

Hej,
Använd dig av någon form av whitelist, regex lösning för att sortera ut dem godkännda. Finns flertalet sett man kan lösa det på.

Mvh/ Niklas

micho 2006-12-16 23:00

Det där förstod jag inget av.

bivald 2006-12-17 12:35

Ber om ursäkt, hade bråttom så jag hade inte tid att utveckla det. Ofta då man försöker skydda sig använder man en form av blacklist där man säger vilka fraser som man inte tillåter. Det är en dålig metod för att man missar ofta någon, nya saker upptäcks allteftersom etc. Istället kan man använda en whitelist där man enbart säger vad man vill tillåta.

Se A List Apart här och här alternativt google på XSS

kers 2006-12-17 17:26

KSES rekommenderas varmt!

http://sourceforge.net/projects/kses


Alla tider är GMT +2. Klockan är nu 11:34.

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