it-swarm-eu.dev

Jaký prohlížeč odesílá uživatelský agent začínající mozilla / 5.0 +, tramslates do amp;

Máme web, který funguje již několik let. Jeden z našich zákazníků právě začal mít občasný problém. Při pohledu na naše protokoly iis6.0 služba funguje správně, když mají uživatelský agent začínající „mozilla/4.0 +“, ale selže, když uživatelský agent začíná „mozilla/5.0 +“. Konkrétní zákazník začal mít tento problém až ve středu.

Zná někdo prohlížeč/upgrade, který mění 4.0 na 5.0?

Skutečný způsobený problém je, že "" v seznamu parametrů URL je kódován jako "amp;". Někdo viděl něco podobného?

Máme další uživatele, kteří odesílají z prohlížečů s uživatelským agentem 5.0+ bez problémů.

Omlouváme se za tagy, ale nemáte opakování pro vytváření nových.

Díky předem, Patricku

Edit: ahoj Viper_sb,

Je to pravděpodobně vlastní skript (jsem především vývojář c ​​++, takže tomu opravdu nerozumím). Naše služby týkající se služeb webu od jiných webů vyvinutých zákazníkem byly provedeny ve skriptu Java, pokud vím.

ve skutečnosti získáváme různé uživatelské agenty (pravděpodobně v závislosti na tom, který z našich zákazníků zákazníci přistupují ke službě), zde je několik:

Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+fr;+rv:1.9.1.11)+Gecko/20100701+Firefox/3.5.11
Mozilla/5.0+(Windows;+U;+Windows+NT+5.1;+en-US)+AppleWebKit/533.4+(KHTML,+like+Gecko)+Chrome/5.0.375.126+Safari/533.4 302 0 0
Mozilla/5.0+(Macintosh;+U;+PPC+Mac+OS+X;+fr)+AppleWebKit/523.12+(KHTML,+like+Gecko)+Version/3.0.4+Safari/523.12
Mozilla/5.0+(Windows;+U;+Windows+NT+5.1;+en-US;+rv:1.9.2.8)+Gecko/20100722+Firefox/3.6.8
Mozilla/5.0+(Windows;+U;+Windows+NT+5.1;+fr;+rv:1.9.2.8)+Gecko/20100722+Firefox/3.6.8+(.NET+CLR+3.5.30729)
1
Patrick

Firefox 3.x a mnoho dalších ano.

Můžete zveřejnit celý řetězec agentů, se kterým máte problémy? Zdá se, že by to mohl být vlastní skript, který generuje požadavek a předstírá, že je určitým agentem. Ale nesprávně vytváří řetězec ident. Nebo je kontrola proti řetězci agenta nesprávná.

Úpravy: Řetězce, které jste zveřejnili, jsou kódovány pomocí URL, znaménka + v nich by měla být mezera. Nejsem si jistý, kde je problém, jestli je to na straně vašeho javascriptu nebo u uživatele navštěvujícího web.

Půjdu sem a hádám, že váš javascript dekóduje řetězec agentů, k tomu by nemělo dojít (pokud z toho nevymažete url nebo nezveřejníte svůj web).

2
Viper_Sb

Hádám, že + v řetězcích UA je způsob, jakým to IIS zaznamenává.

Jen pro vyjasnění, říkáte, že máte řetězce odkazů v odkazech na webu a že někteří UA žádají o tyto adresy URL, ale místo & používají &?

Pokud je tomu tak, pak nejpravděpodobnější příčinou je nesmírně hloupá bota, která kazí svůj řetězec UA. Jakýkoli správně napsaný HTML by měl kódovat & v URL jako &. Správný prohlížeč a rozumný robot byly vytvořeny správně a víme, že máte na mysli http://example.com/?a=1&b=2, když ve zdrojovém kódu odkazujete na /?a=1&b=2. Vezmeme-li v úvahu jakýkoli jiný href, doslovně se to neprojevuje, ale brát je doslova by ukázalo chování, které podle vás popisujete.

Dostávám nejrůznější požadavky na stránky, které neexistují tam, kde jsou požadovány, ale existují jinde, a je to obvykle proto, že robot nemohl zvládnout takové věci jako základní cesty (ne moje práce - OpenCart je používá) z nějakého důvodu) nebo absolutní URL nebo URL na jiných hostitelích (trvá část cesty, ale ne hostitel).

Jedním z dobrých ukazatelů bývá spuštění vyhledávání rDNS na IP. Pokud se jeden nebo více z nich vyřeší zpět na webového hostitele, pak někdo spustí skript bot/němý.

1
IBBoard