Avatar billede goose Nybegynder
04. oktober 2004 - 21:19 Der er 34 kommentarer og
1 løsning

Problem med NIS

Jeg har fundet ud af, at folk der bruger Norton Internet Security ikke vil kunne se min hjemmeside hvis de bruger ad-blocker.

Det er noget med, at NIS indsætter følgende kode selv:

<script language="JavaScript">
function SymError()
{
  return true;
}
window.onerror = SymError;
var SymRealWinOpen = window.open;
function SymWinOpen(url, name, attributes)
{
  return (new Object());
}
window.open = SymWinOpen;
</script>

- men hvad kan man gøre for at komme ud over dette problem ?
Min kode validerer 100% og jeg har ingen annoncer på min side.

Hvad kan jeg gøre ?!?
Avatar billede erikjacobsen Ekspert
04. oktober 2004 - 21:21 #1
Undlad at bruge window.open    ;)
Avatar billede goose Nybegynder
04. oktober 2004 - 21:36 #2
Ja, men det bruger jeg heller ikke ?

/Goose
Avatar billede nikolajdu Nybegynder
04. oktober 2004 - 21:46 #3
var SymRealWinOpen = window.open;

??
Avatar billede goose Nybegynder
04. oktober 2004 - 22:29 #4
ja, men der noget som NIS automatisk sætter ind i koden.
Hvis jeg har ad-blocking sat til i NIS bliver det tilføjet hvis jeg vælger vis kilde.
Det er ikke i min oprindelige kode.

/Goose
Avatar billede erikjacobsen Ekspert
04. oktober 2004 - 22:33 #5
Hvad skade gør den så på din side?
Avatar billede goose Nybegynder
04. oktober 2004 - 22:44 #6
DAMM jeg tror jeg fandt ud af det ....... suk
Det er tilsyneladende fordi mine mapper og include filer stammer fra nogle mapper der der starter med ad.... et eller andet og NIS er som standard sat op til at blokerer for alt der starter med ad :o(

/Goose
Avatar billede roenving Novice
05. oktober 2004 - 09:58 #7
Tjah, måske kunne man nederst i koden indsætte:

<script type="text/javascript">
window.open = SymRealWinOpen;
</script>

-- men det trick er den måske beregnet til at gennemskue ...
Avatar billede goose Nybegynder
05. oktober 2004 - 10:35 #8
Nej det kan man ikke uden at få en scriptfejl på: 'SymRealWinOpen' er ikke defineret.
- og det er jo fordi det kun bliver indsat på den lokale pc hvor NIS er instaleret.

Det som NIS gør, er at den indsætter følgende øverst på siden:

<script language="JavaScript">
<!--

function SymError()
{
  return true;
}

window.onerror = SymError;

var SymRealWinOpen = window.open;

function SymWinOpen(url, name, attributes)
{
  return (new Object());
}

window.open = SymWinOpen;

//-->
</script>

Deudover indsætter dette efter </HTML>

<script language="JavaScript">
<!--
var SymRealOnLoad;
var SymRealOnUnload;

function SymOnUnload()
{
  window.open = SymWinOpen;
  if(SymRealOnUnload != null)
    SymRealOnUnload();
}

function SymOnLoad()
{
  if(SymRealOnLoad != null)
    SymRealOnLoad();
  window.open = SymRealWinOpen;
  SymRealOnUnload = window.onunload;
  window.onunload = SymOnUnload;
}

SymRealOnLoad = window.onload;
window.onload = SymOnLoad;

//-->
</script>

Jeg ved ikke om det kan lade sig gøre at snyde NIS, men forslag er velkomne.

/Goose
Avatar billede erikjacobsen Ekspert
05. oktober 2004 - 10:40 #9
Måske

<script type="text/javascript">
if (SymRealWinOpen) {
  window.open = SymRealWinOpen;
}
</script>
Avatar billede bojo Nybegynder
05. oktober 2004 - 10:40 #10
Jeg har ikke NIS så jeg kan ikke teste, men hvad hvis du selv definere de funktioner NIS sætter på, bliver de så overskrevet eller hvad?
Avatar billede roenving Novice
05. oktober 2004 - 10:41 #11
Så måske:

<script type="text/javascript">
if(SymRealWinOpen)window.open = SymRealWinOpen;
</script>
Avatar billede goose Nybegynder
05. oktober 2004 - 10:55 #12
Nu skal jeg lige være helt med, skal jeres forslag indsættes nederst på siden eller før </head> ?

/Goose
Avatar billede goose Nybegynder
05. oktober 2004 - 10:56 #13
bojo >> jeg fatter en hat af javascript så jeg ved ikke hvad ud mener med at jeg selv skal definerer scriptet ?

/Goose
Avatar billede roenving Novice
05. oktober 2004 - 11:03 #14
For at undgå problemer med at det af NIS indsatte script kunne komme senere, ville jeg indsætte det nederst !-)
Avatar billede goose Nybegynder
05. oktober 2004 - 11:17 #15
ja det har jeg også gjort, men NIS indsætter sit eget efter det og så er jeg jo lige vidt :o)

/Goose
Avatar billede goose Nybegynder
05. oktober 2004 - 11:22 #16
Nu har jeg så prøvet manuelt at indsætte NIS scriptene, men det indsætter stadigvæk også site eget, også det allernederst, så de har nok været opmærksomme på diverse hacks :o(

Jeg tror desværre ikke der er andet at gøre end at tage højde for det.

/Goose
Avatar billede nikolajdu Nybegynder
05. oktober 2004 - 11:39 #17
hvad med sådan et lille "hack" :

<script type="text/javascript">
w = "window";
o = ".open";

win = eval(w+o)("http://www.dr.dk");
</script>
Avatar billede nikolajdu Nybegynder
05. oktober 2004 - 11:39 #18
det virker faktisk hos mig.
Avatar billede goose Nybegynder
05. oktober 2004 - 11:47 #19
nikolajdu >> gider du lige uddybe det hack lidt nærmere, hvor skal det indsættes ?

/Goose
Avatar billede nikolajdu Nybegynder
05. oktober 2004 - 11:48 #20
du skal erstatte den kode der åbner vinduet med den lille omskrivelse.
Avatar billede erikjacobsen Ekspert
05. oktober 2004 - 11:49 #21
Men skal vi ikke forstå det sådan, goose, at du ikke selv bruger window.open på
din side, men det er andre ting, der giver problemer.

Men så er det selvfølgelig også sjovt at se om man kan omgå NIS's kapring af window.open....
Avatar billede nikolajdu Nybegynder
05. oktober 2004 - 11:49 #22
Det jeg egentligt gør er bare at splitte det op så Norton ikke genkender det - Det kan splittes yderligere op for totalt mangel på genkendelse ;-)
Avatar billede nikolajdu Nybegynder
05. oktober 2004 - 11:50 #23
Nåjo der var ikke brugt window open, men hvad pokker får så Norton til at indsætte koden? Kan du ikke vise os din kildekode?
Avatar billede goose Nybegynder
05. oktober 2004 - 11:54 #24
Det går galt fordi, som jeg har skrevet længere oppe, at jeg f.eks. har en mappe der hedder ad-include.

NIS er som standard sat op til at bortfiltrerer alt hvad der bl.a. starter på ad, eller ad-, eller ../ad o.s.v.

Jeg bruger ikke selv window.open på mine sider.

/Goose
Avatar billede nikolajdu Nybegynder
05. oktober 2004 - 11:56 #25
Så prøv samme "hack" for "ad-include"

m = "a"
m += "d-"
m += "include"

mappe = eval(m);
Avatar billede goose Nybegynder
05. oktober 2004 - 12:08 #26
Jeg skal lige have det her ind med skeer :o/

Hvis jeg nu f.eks. har følgende kode:

<img src="ad-include/foto4.jpg" ALT="foto nr 4" border="0" align="bottom">

- hvordan skal jeg så bruge dit hack ?

/Goose
Avatar billede erikjacobsen Ekspert
05. oktober 2004 - 12:10 #27
Jeg ville nok tage en anden løsning og omdøbe det:

<img src="norton-er-for-dum-ad-include/foto4.jpg" ALT="foto nr 4" border="0" align="bottom">
Avatar billede nikolajdu Nybegynder
05. oktober 2004 - 12:21 #28
Hvis ikke Eriks virker så prøv :

<script type="text/javascript">
m = "a"
m += "d-"
m += "include"

document.write('<img src="'++'/foto4.jpg" ALT="foto nr 4" border="0" align="bottom">');
</script>
Avatar billede goose Nybegynder
05. oktober 2004 - 12:28 #29
erikjacobsen >> :o) - det var det jeg mente med at tage højde for det, og det virker ganske fint hvis jeg omdøber mine mapper til noget anti_norton noget, der bare rigtig mange steder jeg skal omdøbe, but thats life :o(

nokolajdu >> Jeg tror jeg er nået til den erkendelse, at der nok ikke er andet for end at omdøbe hele lortet fra en ende af, man ved jo ikke hvilke idéer Symantech får i næste måned :o(

/Goose
Avatar billede goose Nybegynder
05. oktober 2004 - 12:29 #30
Jeg tror jeg lukker her igen, men jeg vil gerne takke for de bidrag der er kommet og hvis i så lige vil smide et svar så deler i pointene som tak for jeres indsats.

/Goose
Avatar billede nikolajdu Nybegynder
05. oktober 2004 - 12:33 #31
Hvis du bruger en simpel editor, så kan du vel også bare bruge "replace" - Det burde kunne ændre alle forekomster af ad-include - En mere avanceret editor som f.eks Homesite kan ændre forekomster af "ad-include" i alle filer på én gang, så mon ikke f.eks dreamweaver også har samme funktion (de købte jo hele homesite kode-konceptet).

/Nikolaj
Avatar billede goose Nybegynder
05. oktober 2004 - 12:42 #32
Ja men det er lidt mere omstændigt end det, jeg skal lige have ændret strukturen i hele mit cms, men hellere det end at NIS brugere ikke kan se sitet :o)

/Goose
Avatar billede nikolajdu Nybegynder
05. oktober 2004 - 12:43 #33
:)
Avatar billede erikjacobsen Ekspert
05. oktober 2004 - 12:45 #34
Tak, jeg samler slet ikke på point.
Avatar billede goose Nybegynder
06. oktober 2004 - 12:11 #35
Nå, der var ingen andre der var interesseret i point, så jeg lukker igen.
Hvis nikolajdu eller roenving blot skulle have overset min anmodning om svar, så skriv en kommentar og jeg opretter et spørgsmål med point til jer.

/Goose
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester