Manipulált $_SERVER['SERVER_NAME']?
Szíves elnézését kérem a fórumnak, ha nem megfelelően hoznám létre a témát. Nem nagyon szokásom fórumozni, inkább csak aktív olvasója vagyok azoknak, viszont most egy érdekes problémába ütköztem. Egy ip logolást csinálok épp, a beérkező lekérdezéseket az oldalon menti (ip, useragent, referer, stb) illetve, hogy melyik oldal volt lekérdezve, amit az alábbi módon állítok elő: " [link]
Ennek ellenére, befutott egy olyan (valószínűleg) bot által logolás ami az alábbi címet tartalmazta: [link] Természetesen, ilyen oldalt nem nézhetett mert az oldal nem az én tulajdonomba van... képzelhetitek mennyire meglepődtem.
A leglogikusabb magyarázat, hogy valamiképp a $_SERVER['SERVER_NAME'] értéket változtatta meg. Merül fel a kérdés, ez hogy lehetséges? Szeretnék hatékonyan védekezni ellene.
Még egy olyan záradékot is tettem bele a kódomba miszerint ha $_SERVER['SERVER_NAME'] nem egyezik a $_SERVER['HTTP_HOST'] -al akkor ne is szolgálja ki... ennek ellenére még is.
Szeretném kérni a tanácsotok ez ügyben.
Válaszaitokat előre is köszönöm.
(Google, megvolt de hiányos angol ismereteim végett neeem túl sokra jutottam).
Vhost probléma nem hiszem hogy lehetne, mert a szerver is az enyém, az oldalra irányuló domainek is (kivétel a fentebb említett fake oldal).
Köszönöm
Félre érted. Nincs semmi bot. A botok is olyanok, mint a júzerek, csak nem ember van ott hanem egy szoftver. Ha egy bot betudna tenni, akkor egy ember annál inkább.
Nem tudom, hogy milyen környezetben csinálod:
- free webhosting
- vagy XAMPP
DE! A PHP oldalon lévő változókat kívülről NEM lehet módosítani, mivel Input egy http kérés, output meg ugye PHP-ból echo/print, vagy HTML. PHP meg belső, rejtett dolog kintről nézve.
A $_SERVER globális tömb elemeit nem célszerű felülírni. Továbbá a Loggolás ezen tömb elemek kiolvasása és letárolása adatbázisban, vagy fájlban.
Én durván 6éve ismerem a PHP-t, de ezt nem lehet megcsinálni:
Vagyis ilyen hülyeséget még sose láttam... :D
Továbbá van a domain feloldás. Ismered?
Ugye, hogy nem ezt kell gépelni? példa: [link]
Mert van ilyen, ami a fenti IP-t "eltakarja: [link]
Ha localhost-on csinálod akkor van a hosts nevű állomány, amiben belehet állítani ilyeneket.
http://sajatwebtest/
és a localhoston futó XAMPP vagy webszerver-hez megy a kérés.
Persze VirtualHost esetén egy IP címre, több név is tartozhat, de akkor az Apache fogja irányítgatni a címeket a megfelelő helyre.
Igazából, csak hálás lehetek amiért válaszoltál a kérdésemre, ezért hálás is vagyok, annak ellenére, hogy óriási hülyeséget válaszoltál cimbora ><.
Közbe megkaptam a válaszom -> UseCanonicalName.
A fentebb említett parzolt rész pedig egy igen csak bevett módszer erre a témakörre :). Ez azért egy kicsit komplikáltabb kérdés volt ami szofisztikáltabb választ igényelt volna. (Xampot és egyéb telepítőcsomagokat nem használunk). Minden esetre azért köszönöm, hogy megpróbáltad, s a válaszod.
Off:
#1: a server valtozo azon kivul, hogy php oldalon van, nem igazan tartozik a phphoz. Azt a webservertol kapja meg, mint ahogy a requesteket a klienstol. A server pedig sok dolgot a keres alapjan hoz letre, tehat eleg konyen befolyasolhato.
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!