[2.3] Passwortgeschützte Threads

rellek

relativ sensationell
Teammitglied
Ach, wie doof von mir. :D

thread.php, suche:
Code:
$db->query_first("UPDATE bb".$n."_threads SET accessgranted = '$access' WHERE threadid = '".intval($threadid)."'");
ersetze durch:
Code:
$db->query("UPDATE bb".$n."_threads SET accessgranted = '$access' WHERE threadid = '".intval($threadid)."'");

oder nimm gleich die angehängte.
 

Anhänge

  • thread.php
    54,2 KB · Aufrufe: 81

rellek

relativ sensationell
Teammitglied
Nach der Eingabe des Passworts folgender Fehler?
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /.../acp/lib/class_db_mysql.php on line 100

thread.php, suche:
Code:
$db->query_first("UPDATE bb".$n."_threads SET accessgranted = '$access' WHERE threadid = '".intval($threadid)."'");
ersetze durch:
Code:
$db->query("UPDATE bb".$n."_threads SET accessgranted = '$access' WHERE threadid = '".intval($threadid)."'");
 
S

Shackles

Guest
rellek, ich brauch deine Hilfe!!!

Also, es wurd ein Bug rausgefunden!

Ich habe ein Tagebuchforum gegründet. Damit kann man Tagebücher mit oder ohne Passwortschutz erstellen.

Wenn man nun auf ein Tagebuch geht, das offen ist und das in der Tagebuchliste über einem anderen geschützten Tagebuch steht und dann auf voriges Thema klickt, dann kann man das geschützte Tagebuch lesen, sprich mit Passwortschutz, auch geht es beim nächsten Thema, wenn danach auch ein passwortgeschützter Thread kommt, kannst du das reparieren?
 
Zuletzt bearbeitet von einem Moderator:

rellek

relativ sensationell
Teammitglied
thread.php

suche:
Code:
global $db, $n, $thread, $boardid, $tpl, $lang, $threadid, $wbbuserdata, $REMOTE_ADDR;
        $result = $db->query_first("SELECT threadid FROM bb".$n."_threads WHERE visible = 1 AND lastposttime>'$thread[lastposttime]' AND closed <> 3 AND boardid = '$boardid' ORDER BY lastposttime ASC", 1);
        if (!$result['threadid']) error($lang->get("LANG_THREAD_ERROR_NONEXTNEWEST"));
        $threadid = $result['threadid'];
        $this->threadid = $threadid;
danach einfügen:
Code:
header("Location: thread.php?threadid=".$threadid.$SID_ARG_2ND_UN);
        exit;
suche:
Code:
global $db, $n, $thread, $boardid, $tpl, $lang, $threadid, $wbbuserdata, $REMOTE_ADDR;
        $result = $db->query_first("SELECT threadid FROM bb".$n."_threads WHERE visible = 1 AND lastposttime<'$thread[lastposttime]' AND closed <> 3 AND boardid = '$boardid' ORDER BY lastposttime DESC", 1);
        if (!$result['threadid']) error($lang->get("LANG_THREAD_ERROR_NONEXTOLDEST"));
        $threadid = $result['threadid'];
        $this->threadid = $threadid;
danach einfügen:
Code:
header("Location: thread.php?threadid=".$threadid.$SID_ARG_2ND_UN);
        exit;
Klappt das?
 

Cyberstar0

New Member
AW: Passwortgeschützte Threads

Huhu

Ja ich weiß ist schon ganz ganz lange her aber ich hab nurmal ne kleine Frage.

Hab ich das richtig verstanden,das wenn man ein neues Thema eröffnet nicht gleich ein Passwort angeben kann. Sondern erst wenn man das Thema bearbeitet?
LG
 

rellek

relativ sensationell
Teammitglied
AW: Passwortgeschützte Threads

Doch, das Passwort kann auch schon beim Erstellen gesetzt werden.
 

Miasma

New Member
AW: Passwortgeschützte Threads

Sicherheitslücke!!!

Wenn man ein passwortgeschütztes Thema anklickt, dass man eigentlich nicht lesen kann (weil man nicht die Zugriffsrechte hat und das entsprechende Passwort weiß), kann man es dennoch lesen (zumindest die letzten 10 Beiträge), indem man folgendes macht:

Geschütztes Thema anklicken -> thread.php?threadid=123 durch addreply.php?threadid=123 ersetzen -> Antworterstellfenster mit Lesemöglichkeit der letzten x Beiträge im Thread

Hilfe? Lösungsvorschläge? Bitte...
Finde dieses Sicherheitsrisiko schon bedenklich, denn geschützte Threads sollen geschützt sein und bleiben, egal, was man in der Adressleiste des Browsers ändert oder sonst wie anstellt.

Danke für jede nützliche Hilfe und LG,
Miasma
 
Oben