- Magga: PLEX: multimédia az egész lakásban
- MaxxDamage: Vizes Laptop Hűtés? Lehetséges? Igen!
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- eBay-es kütyük kis pénzért
- Brogyi: CTEK akkumulátor töltő és másolatai
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- GoodSpeed: Sapphire Radeon RX 9070 XT Pulse - út a harmadik AMD korszakig.
- GoodSpeed: Aquaphor Modern víztisztító
- sziku69: Szólánc.
Új hozzászólás Aktív témák
-
Taci
addikt
Eljutottam oda, hogy az XSS elleni védelemmel is foglalkozni tudjak. Mivel egyelőre csak 1 user inputos rész van a weblapon, ez pedig a kereső, a kliens oldali része miatt a Javascript-topikba írtam.
Viszont aztán beugrott, hogy mivel RSS-csatornák tartalmával dolgozom, kvázi azok is külső források, amikből származó tartalmat ugyanúgy fenntartásokkal kell kezelnem. Hiszen ha a külső forrást támadják, és mondjuk átírják kártékony kóddal az RSS tartalmát, akkor ha ellenőrzés nélkül tárolom és használom az onnan származó adatokat, akkor azzal én is "fertőződöm".
Ennek szeretnék így hát elébe menni.
Ezeket az adatot szúrom be (jelen pillanatban ellenőrzés nélkül) a HTML kódba, ami ezekből a külső RSS forrásokból származik:
- cikkhez tartozó link
- képhez tartozó link
- cikk címe, leírásaItt ugye pl. az <img> tagnél lehet máris probléma, amit egyből reprodukálni is tudtam, mert ha az
<img src="
után egy eltérített "link" kerül be (pl.:http://url.to.file.which/not.exist" onerror="alert('Hacked!')"
), akkor máris bajban vagyok.
És ez ugyanúgy igaz lehet millió másik tagre, képnél, szövegnél, az összes ponton, ahova csak beszúrom ezeket a tartalmakat a HTML kódban.Van esetleg bevált megoldásotok ennek a problémának a kezelésére?
Így első keresésre ezt találtam: Sanitize filtersOlyasmi (talán-)megoldást tudok saját kútfőből, hogy csinálok egy funkciót, ahol az érintett adatokat átszűröm, és kiszedem belőle az összes lehetséges HTML tag-et és event-et. Ez egy hosszú lista lesz, viszont mivel egyik adatban (cikkhez tartozó link, képhez tartozó link, cikk címe, cikk leírása) sem szerepelhet ilyen (illetve leírásban már találtam, de az már ki van szedve), ezért ez talán egy jó módszer lehet.
Aztán olyanra is gondoltam, hogy ha az előbbi ("Hacked") példát nézem, hogy ott (<img src-nál) arra játszanak, hogy maguk rakják a záró idézőjelet (" vagy ' is lehet, gondolom), és utána a saját kódjukat hívják valamilyen event mögé pakolva. Így ha találok egy (elvileg csak) linkben " vagy ' karaktert, akkor azzal kezdődően levágom, és kész.
De ezek ilyen első gondolatos megoldási kísérletek. Ha van esetleg bevált megoldás rá, akkor nem pazarolnám erre az időt.
Köszönöm.
Új hozzászólás Aktív témák
- Bundle topik
- Posta, csomagküldés
- Mibe tegyem a megtakarításaimat?
- Magga: PLEX: multimédia az egész lakásban
- Kertészet, mezőgazdaság topik
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Amlogic S905, S912 processzoros készülékek
- Azonnali fotós kérdések órája
- Mégis mi értelme az Xbox PC-nek, ha limitálja a hardverválasztékot?
- AMD Navi Radeon™ RX 9xxx sorozat
- További aktív témák...
- HIBÁTLAN iPhone 13 Pro 128GB Silver -1 ÉV GARANCIA - Kártyafüggetlen, MS3385, 94% Akkumulátor
- GYÖNYÖRŰ iPhone 13 Pro 256GB Silver -1 ÉV GARANCIA - Kártyafüggetlen, MS3384, 95% Akkumulátor
- HIBÁTLAN iPhone 13 Pro 256GB Silver -1 ÉV GARANCIA - Kártyafüggetlen, MS3382, 95% Akkumulátor
- HIBÁTLAN iPhone 13 Pro 256GB Silver -1 ÉV GARANCIA - Kártyafüggetlen, MS3381, 96% Akkumulátor
- Thinkpad T14 Gen3 14" FHD+ IPS i5-1235U 16GB 256GB NVMeIR kam gar
- LG 27MR400 - 27" IPS LED - 1920x1080 FHD - 100hz 5ms - AMD FreeSync - Villódzásmentes
- Lenovo ThinkPad P1 G7
- Telefon felvásárlás!! Samsung Galaxy Note 10+/Samsung Galaxy Note 20/Samsung Galaxy Note 20 Ultra
- GYÖNYÖRŰ iPhone 13 mini 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3318
- BESZÁMÍTÁS! ASUS B550 Vision D B550 chipset alaplap garanciával hibátlan működéssel
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest