Autor |
Logikfrage zu 1.8.6 |
1 # 8
|
thorstenlang Noob
Beiträge: 6
Eingetreten: 20.02.09 Status: Offline
|
Eingetragen am 20.02.2009 18:12 |
|
|
Hallo Zusammen,
ich verwende PHP Fusion v6.01.18 und seit heute versuch ich mich am secsys 1.8.6.
Hab alles installiert. Gab auch keine Fehlermeldungen. Nur hab ich das Gefühl, dass irgendwie nichts gefiltert wird. Hab alle Einsetellungen laut Doku vorgenommen.
Als Gast kann man in Gästebuch schreiben, was man möchte. Auch können Mitglieder einfach Kommentare ins Forum posten, die eigentlich gesperrt sein müssten.
Hat jemand ne Idee?
Mir erschließt sich folgende Programmteile nicht:
Zitat | if (isset($_COOKIE['fusion_user'])) {
$sec_cookie_vars = explode(".", $_COOKIE['fusion_user']);
$sec_cookie_1 = isNum($sec_cookie_vars['0']) ? $sec_cookie_vars['0'] : "0";
$sec_cookie_2 = (preg_match("/^[0-9a-z]{32}$/", $sec_cookie_vars['1']) ? $sec_cookie_vars['1'] : "");
$sec_cookie_3 = (preg_match("/^[0-9a-z]{32}$/", $sec_cookie_vars['1']) ? md5($sec_cookie_vars['1']) : "");
$sec_result = dbquery("SELECT * FROM ".DB_PREFIX."users WHERE (user_id='$sec_cookie_1' AND user_password='$sec_cookie_2') OR (user_id='$sec_cookie_1' AND user_password='$sec_cookie_3') ");
unset($sec_cookie_vars,$sec_cookie_1,$sec_cookie_2,$sec_cookie_3);
if (dbrows($sec_result) != 0) {
$sysdata = dbarray($sec_result);
} else {
setcookie("fusion_user","",time()-7200,"","/","0");
}
} else {
$sysdata = ""; $sysdata['user_level'] = 0; $sysdata['user_rights'] = ""; $sysdata['user_groups'] = ""; $sysdata['user_id']="0"; |
Zitat | // Check if user is assigned to the specified user group
function checksysgroup($group) {
if (iSYS_SUPERADMIN) { return true; }
elseif (iSYS_ADMIN && ($group == "0" || $group == "101" || $group == "102")) { return true; }
elseif (iSYS_MEMBER && ($group == "0" || $group == "101")) { return true; }
elseif (iSYS_GUEST && $group == "0") { return true; }
elseif (iSYS_USER_GROUPS!="" && iSYS_MEMBER && in_array($group, explode(".", iSYS_USER_GROUPS))) {
return true;
} else {
return false;
}
} |
Ok der obere Teil verwendet $sec_cookie_3 wegen der doppelten md5 verschlüsselung richtig?
Für was ist der nächste Teil, bzw. wo wiord der benötigt?
Zitat | $bl_list=0;
if (!iSYS_ADMIN || !iSYSMOD) {
$bl_list=dbcount("(blacklist_ip)","secsys_blacklist","blacklist_ip='".SYS_USER_IP."'");
if ($bl_list>0) {
// fallback(SEC_INFDIR."filterstop.html");
} else {
secsys_filter(); // IP/AGENT-Blocker
}
secsys_hacker(); // SQL-Injection
if (!empty($_POST['message']))
{secsys_spamcontrol('message');}
if (!empty($_POST['shout_name']))
{secsys_spamcontrol('shout_name');}
if (!empty($_POST['shout_message'])) |
Hier wird doch eh definiert, dass dies immer ausgefüht, außer bei !iSYS_ADMIN || !iSYSMOD
Vielleicht hat jemand ein paar Tips?
Kann natürlich auch daran liegen, dass ich jetzt schon zu lange rumprobiert habe.
Danke schon mal.
PS: Ich teste das gerade erst mal lokal mit Xampp
Bearbeitet von thorstenlang am 20.02.2009 18:14 |
|
Autor |
RE: Logikfrage zu 1.8.6 |
2 # 8
|
thorstenlang Noob
Themenstarter
Beiträge: 6
Eingetreten: 20.02.09 Status: Offline
|
Eingetragen am 20.02.2009 18:25 |
|
|
Also Floodcontrol klappt, wenn ich mehrfach versuche hintereinander ins Forum zu schreiben.
Nur der Filter klappt wohl nicht. Bin als Member angemeldet.
Thorsten |
|
Autor |
RE: Logikfrage zu 1.8.6 |
3 # 8
|
thorstenlang Noob
Themenstarter
Beiträge: 6
Eingetreten: 20.02.09 Status: Offline
|
Eingetragen am 20.02.2009 18:30 |
|
|
So und nun hab ich auch kontrolliert, dass ich kein Moderator bin....klappt noch immer nicht. |
|
Autor |
RE: Logikfrage zu 1.8.6 |
4 # 8
|
Silvermoon Webmaster
Beiträge: 698
Ort: 72270 Baiersbronn
Eingetreten: 26.06.06 Status: Offline
|
Eingetragen am 21.02.2009 00:30 |
|
|
Der Filter ist der UserAgent und IP-Filter, wenn du Spamwörter meinst, dann sollten diese in Spamwörter gespeichert werden.
Also ich selbst habe alle Tests mehrmals durchlaufen und es hat bisher keine Probleme gegeben.
Es ist alles eine Frage der Überarbeitung
BS-FUSION - KEEP IT SIMPLE
Content Management System Support |
|
Autor |
RE: Logikfrage zu 1.8.6 |
5 # 8
|
thorstenlang Noob
Themenstarter
Beiträge: 6
Eingetreten: 20.02.09 Status: Offline
|
Eingetragen am 23.02.2009 12:42 |
|
|
genau die Spamwörter. Das geht aber trotzdem nicht. Hab jetzt nochmals alles neu installiert. Hab jetzt mehrere Wörter aus der Liste getestet, es geht wieder beim Gästebuch, noch beim Forum und bei den PMs. Mitgleider dürfen irgendwie alles reinschreiben...
Thorsten |
|
Autor |
RE: Logikfrage zu 1.8.6 |
6 # 8
|
thorstenlang Noob
Themenstarter
Beiträge: 6
Eingetreten: 20.02.09 Status: Offline
|
Eingetragen am 23.02.2009 14:05 |
|
|
ok. gefunden...
Zitat | }
if ($found_spam>=3) {
|
ich habs immer nur mit einem Spamwort versucht.
Wenn ich mindestens 3 verwende get der Filter ohne Probleme.
Ist diese Einstellung absicht?
THorsten |
|
Autor |
RE: Logikfrage zu 1.8.6 |
7 # 8
|
Silvermoon Webmaster
Beiträge: 698
Ort: 72270 Baiersbronn
Eingetreten: 26.06.06 Status: Offline
|
Eingetragen am 23.02.2009 14:08 |
|
|
Hast du jeweils nur ein Wort oder mehrere Wörter aus der Liste getestet?
Damit meine ich natürlich in ein und denselben Post, da dass Spamsystem auf Häufigkeit prüft.
Es ist alles eine Frage der Überarbeitung
BS-FUSION - KEEP IT SIMPLE
Content Management System Support |
|
Autor |
RE: Logikfrage zu 1.8.6 |
8 # 8
|
thorstenlang Noob
Themenstarter
Beiträge: 6
Eingetreten: 20.02.09 Status: Offline
|
Eingetragen am 23.02.2009 14:22 |
|
|
natürlich nur mit einem....
Hab den Hinweis aber auch nicht in der Doku gelesen. ab mir jetzt einfach nochmals die Funktion angeschaut und gemerkt, dass erst ab 3 Spamwörtern der Hinweis kommt |
|