Fórum Root.cz

Ostatní => Odkladiště => Téma založeno: imrich kann 22. 01. 2019, 12:51:57

Název: Jak blokovat a mazat cookie nastavené JavaScriptem
Přispěvatel: imrich kann 22. 01. 2019, 12:51:57
Hledám způsob (userscriptem například), jak v prohlížeči blokovat cookie, které jsou nastavované skrze javascript. Tzn aby se cookies s vybraným jménem NEodesílaly na server. A potřebuji to jako generické pravidlo, (aby to hned fungovalo na libovolné stránce).
Název: Re:jak blokovat+mazat cookie nastavené javascriptem
Přispěvatel: gll 22. 01. 2019, 13:46:07
definujete setter nad document.cookie.
Název: Re:Jak blokovat a mazat cookie nastavené JavaScriptem
Přispěvatel: imach kann 22. 01. 2019, 15:19:02
Jenže ono to nefunguje... Buď je tam potřeba dát nějaké práva (unsafewindows a podobná magie), nebo změnit @run-at. nebo . Nerozumím tomu pořáadně. Kromě toho document.cookie je vůbec divný, protože když nastavím, že document.cookie="a=b"; tak se
Kód: [Vybrat]
// ==UserScript==
// @name        cookier
// @namespace   Tučňák Tuňák
// @include     https://www.maminka.cz/*
// @include     https://www.expres.cz/*
// @include     https://www.idnes.cz/*
// @include     https://www.aktualne.cz/*
// @include     https://www.reflex.cz/*
// @include     https://www.respekt.cz/*
// @include     https://*.zive.cz/*
// @version     3.14
// @grant       none
// ==/UserScript==


console.log("--- cookie manager ");

Object.defineProperty(document, 'cookie', {
        get: function(y){
          console.log("--- cookie ## get " + document.cookie);
          return ''},
        set: function(y{
          console.log("--- cookie ## set "+y+ document.cookie);
          return true},
}
)

Zkoušeno  it

document.cookie="";
document.cookie="adb";
document.cookie="adb=";
document.cookie="";

Je v tom bordel (ty poslední řádky) - když si pak vypíšu document.cookie, někdy tam vidím, že název cookie tam je nastaven, někdy je vynulován (nazev=) někdy je tam původní i novyý (nazev=puvodni ; dalsi=bla; nazev=...)


Očividně se cookei na stránky odesílají.


Dokonce ani nezabere ublock
  domena.cz##script:inject(cookie-remover.js, nazev) způsobí, že to funguje v 50% (téměř pravidelně: liché reloady/navigace bez problému, sudé s cookie+infikováno). Kromě toho pak výpis document.cookie dává falešnou informaci, že cookie takový neexistuje.  bavím se o cookies nastavovaných přes javascript furt.
Název: Re:Jak blokovat a mazat cookie nastavené JavaScriptem
Přispěvatel: gll 22. 01. 2019, 15:27:10
Kód: [Vybrat]
// @grant        unsafeWindow
// @run-at       document-start

a

Kód: [Vybrat]
Object.defineProperty(unsafeWindow.document, 'cookie',  ....

by mělo fungovat.
Název: Re:Jak blokovat a mazat cookie nastavené JavaScriptem
Přispěvatel: iman kann 22. 01. 2019, 19:02:27
nefunguje mi to

Kód: [Vybrat]
// ==UserScript==
// @name        cookie
// @namespace   dickens
// @include     https://www.maminka.cz/*
// @include     https://www.expres.cz/*
// @include     https://www.idnes.cz/*
// @include     https://www.aktualne.cz/*
// @include     https://www.reflex.cz/*
// @include     https://www.respekt.cz/*
// @include     https://*.zive.cz/*
// @grant       unsafeWindow nebo nic
// @run-at      document-start nebo bez
// ==/UserScript==


el=document; // nebo unsafeWindow.document

console.log("--- cookie ## ");

el.cookie="adb=";
el.cookie="adb.key=";
Object.defineProperty(el, 'cookie', {
        get: function(y){
          console.log("--- cookie ## get " + el.cookie);
          return ''},
        set: function(y{
          console.log("--- cookie ## set "+y+ el.cookie);
          return true},
}
)
el.cookie="adb=";
el.cookie="adb.key=";
console.log("--- cookie ## ");

mimochodem co je odpoved ze serveru:
Kód: [Vybrat]
<h3>404 Not Found</h3>
neni adb_cook_24109591
Název: Re:Jak blokovat a mazat cookie nastavené JavaScriptem
Přispěvatel: hawran diskuse 22. 01. 2019, 19:30:02
Nejsem webař, ale ta kukina musí "patřit" nějaké doméně, ne?
Nebo fakt lze v javashitu na webu xxx.com poslat zpátky serveru kukinu z webu yyy.com. ?

Mi se na tohle blokování osvědčil uMatrix.
(v kombinaci s uBlockem, NoScriptem a Privacy Badgerem)

Ale jak jsem říkal, nejsem webař...
Název: Re:Jak blokovat a mazat cookie nastavené JavaScriptem
Přispěvatel: iiman kann 22. 01. 2019, 20:31:30
Nejsem webař, ale ta kukina musí "patřit" nějaké doméně, ne?
Nebo fakt lze v javashitu na webu xxx.com poslat zpátky serveru kukinu z webu yyy.com. ?

Mi se na tohle blokování osvědčil uMatrix.
(v kombinaci s uBlockem, NoScriptem a Privacy Badgerem)

Ale jak jsem říkal, nejsem webař...
Název: Re:Jak blokovat a mazat cookie nastavené JavaScriptem
Přispěvatel: iiman kann 23. 01. 2019, 12:47:04
???, nějak se nevložila část příspěvku s odpovědí.
Psal jsem, že jde o cookie, který je normálně patřící té doméně, ze které je navštíven web. A proč tedy píšeš o  cookies mezi doménami a že tohle vůbec neřeším.

A nechce se mi z nějakého důvodu používat umatrix, když už požívám ublock vyladěný . Oba doplňky se odlišují v různých okrajových funkcích a i systém blockace je trochu jiný (ublock nemá v podstatě  možnost  určovat typ obsahu a současně  původ). Mám pocit, že by to moc zatěžovalo CPU mít 2 firewally místo jednoho. Tak jsem chtěl něco lehkého - jednoduchý userscript, který se postará o promazání cookies nastavené javascriptem, ale asi to je nějaké vaRlaté.
Název: Re:Jak blokovat a mazat cookie nastavené JavaScriptem
Přispěvatel: gll 23. 01. 2019, 13:10:34
nefunguje mi to

Kód: [Vybrat]
// ==UserScript==
// @name        cookie
// @namespace   dickens
// @include     https://www.maminka.cz/*
// @include     https://www.expres.cz/*
// @include     https://www.idnes.cz/*
// @include     https://www.aktualne.cz/*
// @include     https://www.reflex.cz/*
// @include     https://www.respekt.cz/*
// @include     https://*.zive.cz/*
// @grant       unsafeWindow nebo nic
// @run-at      document-start nebo bez
// ==/UserScript==


el=document; // nebo unsafeWindow.document

console.log("--- cookie ## ");

el.cookie="adb=";
el.cookie="adb.key=";
Object.defineProperty(el, 'cookie', {
        get: function(y){
          console.log("--- cookie ## get " + el.cookie);
          return ''},
        set: function(y{
          console.log("--- cookie ## set "+y+ el.cookie);
          return true},
}
)
el.cookie="adb=";
el.cookie="adb.key=";
console.log("--- cookie ## ");

mimochodem co je odpoved ze serveru:
Kód: [Vybrat]
<h3>404 Not Found</h3>
neni adb_cook_24109591

máš tam syntaktickou chybu. Mně to funguje, když nastavím prázdný setter, nejdou přidat javascriptové cookies.
Název: Re:Jak blokovat a mazat cookie nastavené JavaScriptem
Přispěvatel: hawran diskuse 23. 01. 2019, 18:41:00
???, nějak se nevložila část příspěvku s odpovědí.
Psal jsem, že jde o cookie, který je normálně patřící té doméně, ze které je navštíven web. A proč tedy píšeš o  cookies mezi doménami a že tohle vůbec neřeším.
...
Znáš význam tohoto znaku: '?' ?

Ale jinak samozřejmě promiň, že jsem se snažil k něčemu dobrat, moje chyba.
 ;)
Název: Re:Jak blokovat a mazat cookie nastavené JavaScriptem
Přispěvatel: gll 23. 01. 2019, 18:50:39
Nejsem webař, ale ta kukina musí "patřit" nějaké doméně, ne?
Nebo fakt lze v javashitu na webu xxx.com poslat zpátky serveru kukinu z webu yyy.com. ?

Mi se na tohle blokování osvědčil uMatrix.
(v kombinaci s uBlockem, NoScriptem a Privacy Badgerem)

Ale jak jsem říkal, nejsem webař...

javascriptové cookies jdou nastavovat jen vlastní doméně stránky.
Název: Re:Jak blokovat a mazat cookie nastavené JavaScriptem
Přispěvatel: hawran diskuse 23. 01. 2019, 20:00:46
Nejsem webař, ale ta kukina musí "patřit" nějaké doméně, ne?
Nebo fakt lze v javashitu na webu xxx.com poslat zpátky serveru kukinu z webu yyy.com. ?

Mi se na tohle blokování osvědčil uMatrix.
(v kombinaci s uBlockem, NoScriptem a Privacy Badgerem)

Ale jak jsem říkal, nejsem webař...

javascriptové cookies jdou nastavovat jen vlastní doméně stránky.
OK, dík za upřesnění.

(stejně si myslím, že to v tom uMatrixu jde úplně krásně)
Název: Re:Jak blokovat a mazat cookie nastavené JavaScriptem
Přispěvatel: imrichh kann 23. 01. 2019, 23:00:38
wow, konečně Terminátor funguje. Jen to není uplně uživatelsky přívětivé, protože když už ty cookies jsou nastavené , nejdou smazat, což znesnadnuje testování.

teď ještě kde zjistit seznam domén
Kód: [Vybrat]
https://img.cncenter.cz/static/data/blesk/cncenter/sas/js/cncsas.js?&#
/ seznam traffic
    var site = /Auto|Reflex|Zive|E15|Maminka|Mobilmania|Autorevue|Mojezdravi|Avmania|DIGIarena|FinExpert|Lifee/g;
    if(_SAS.seznam.is && site.test(_SAS.site)) _SAS.area = 'Seznam';       

/Ahaonline_Mobile|Auto_Mobile|AutoRevue_Mobile|Avmania_Mobile|Blesk_Mobile|Bleskprozeny_Mobile|DIGIarena_Mobile|Hokej_Mobile|iSport_Mobile|Lideazeme_Mobile|Maminka_Mobile|Mimibazar_cz_Mobile|MobilMania_Mobile|NHL_Mobile|Recepty_Mobile|Reflex_Mobile|SportRevue_Mobile|Supermamy_Mobile|Zeny_Mobile|Zive_Mobile/g;

http://www.zive.cz/Client.Scripts/webProtocol.js?
            "connect.zive.cz",
            "vtm.zive.cz",
            "doupe.zive.cz",
            "digiarena.e15.cz",
            "finexpert.e15.cz",
            "avmania.e15.cz",
            "jnp.zive.cz",
            "sportrevue.isport.blesk.cz",
            "f1sport.auto.cz",
            "www.autorevue.cz",
            "www.maminka.cz",
            "motogpsport.autorevue.cz",
            "www.zive.cz",
            "www.mobilmania.cz",
            "samsungmania.mobilmania.cz",
            "navigovat.mobilmania.cz",
            "www.zeny.cz",
            "www.mojezdravi.cz",
            "www.recepty.cz",
            "www.dama.cz",
            "www.info.cz"

 
V brzké době zasáhne.
Název: Re:Jak blokovat a mazat cookie nastavené JavaScriptem
Přispěvatel: gll 24. 01. 2019, 07:39:20
protože když už ty cookies jsou nastavené , nejdou smazat

jde jim nastavit expires na minulé datum.