PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : JavaScript: Klick Framebrecher Erkennung



Worka
03.03.2008, 01:55
Hallo
Hier mein Code für die Framebrechererkennung beim Klicken.
Der Code prüft ob das Frameset verlassen wird, bevor der Vergütungsframe vergütet hat.

1. Version: Öffnet die MeldeURL im Popup:

1. Frameset.htm
Das Frameset. Hier ist auch die Erkennung eingebaut



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
<html>

<head>
<title>Frameset Test</title>

<title>Vergütungsframe oder Überwachungsframe</title>



<script type="text/javascript">
var Fertig=0;
var win;

function FBMeldung() {
if (Fertig != 1) {
Check = confirm("Framebrecher ähnliche Aktivität erkannt. Melden?");
if (Check== true){
win=window.open("meldeseite.htm", "Framebrecher Meldung", "width=300,height=300");
}
}
}

</script>

<frameset rows="30,*" onunload="FBMeldung()">
<frame src="abuse.htm" name="ab">
<frame src="http://www.gmx.de" name="werbung">
</frameset>

</head>

<body>

</body>

</html>

2. Abuse.htm
Der Vergütungsframe bevor der User vergütet wird. Das Dokument leitet zur Simulation einer Vergütung nach 5 Sekunden weiter zu einer Seite die anzeigt, dass man nun vergütet wurde.



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Vergütungsframe bitte bis zur Vergütung warten</title>

<script type="text/javascript">

function Weiterleiten() {
//nur eine simulation der Weiterleitung
//im vergütungsframe
window.location="Vergütet.htm";
}

setTimeout("Weiterleiten()", 5000);

</script>

</head>
<body>
Bitte bis zur Vergütung warten...
</body>

</html>
3. Vergütet.htm
Der Vergütungsframe, nachdem der User vergütet wurde.
Hier ist auch die anweisung drin, den Framebrechertest zu beenden, da er nach der Vergütung ja nicht mehr gebraucht wird.



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Vergütungsframe hat vergütet</title>

<script type="text/javascript">

function SetOK() {
//Framebrecher Test anweisen nichts mehr zu unternehmen wenn das
//Frameset verlassen wird
parent.Fertig=1;
}

</script>

</head>
<body onload="SetOK()";>
Es wurde vergütet und das Frameset sollte nun nicht mehr
auf Framebrecher testen.

</body>

</html>
4. Meldeseite.htm
Diese seite wird im falle eines Framebrecherfundes aufgerufen.
Hier nur ein html dokument ohne funktion aber man könnte auch ein php Script aufrufen, welches die Meldung annimmt und verarbeitet.
In dieser Version wird es im Popup aufgerufen und schliesst sich daher nach 5 Sekunden selber.



<html><head><title>Melden</title>

<script type="text/javascript">

function Schliessen() {
window.close();
}

setTimeout("Schliessen()", 5000);

</script>
</head>

<body bgcolor="#BACBDE">
Meldung. Weiter in 5 Sekunden

</body>

</html>
2. Version (scheint nur in FF1.5 zu funktionieren. Das System kennen einige von ?WIE HEISST DER BT NOCHMAL?.)

1.1 Frameset.htm
Das Frameset. Hier ist auch die Erkennung eingebaut



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
<html>

<head>
<title>Frameset Test</title>

<title>Vergütungsframe oder Überwachungsframe</title>

<script type="text/javascript">
var Fertig=0;

function FBMeldung() {
if (Fertig != 1) {
Check = confirm("Framebrecher ähnliche Aktivität erkannt. Melden?");
if (Check== true){
top.location="meldeseite.htm";
}
}
}

</script>

<frameset rows="30,*" onunload="FBMeldung()">
<frame src="abuse.htm" name="ab">
<frame src="http://www.gmx.de" name="werbung">
</frameset>

</head>

<body>

</body>

</html>

2. Siehe oben

3. Siehe oben

4. Melden.htm
Wird hier im Vergleich zur 1. Version nicht im Popup aufgerufen sondern direkt in dem Browserfenster in dem der Framebrecher losgeschlagen hat.
Daher schliesst sich das Fenster NICHT nach 5 Sekunden, weil der Browser das nur bei einem Popup erlauben würde.



<html><head><title>Melden</title>

</head>

<body bgcolor="#BACBDE">
Meldung.

</body>

</html>
Framebrecher zum testen

Ad.htm
Der Framebrecher



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Framebrecher</title>
<script type="text/javascript">
if (top != self) {
top.location = self.location;
}
</script>
</head>
<body bgcolor="#000000" text="#FFFFFF">

<h1>Framebrecher</h1>

</body>
</html>
Die Funktionalität könnt Ihr entweder mit dem Framebrecher Ad.htm testen (im Frameset anstatt gmx laden) oder einfach durch neuladen der Seite oder Eingabe einer URL, Aufruf eines Lesezeichens, oder sonstwelches Verlassen des Frameset vor der simulierten Vergütung.