Integration von ET-Chat v3.0.5 in phpBB3

In diesem Forum können Mod-Autoren ihre Mods vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
ET-Chat
Mitglied
Beiträge: 9
Registriert: 05.11.2008 15:32
Kontaktdaten:

Beitrag von ET-Chat »

MartectX hat geschrieben: fliegt Dir nämlich um die Ohren, wenn der User nicht ein paar Minuten zuvor (je nach eingestellter Session-Länge) im Forum gesurft hat (so schaut's für mich zumindest aus).
Also wenn ich mir das nun in Ruhe überlege, ist es ja so, dass im Cookie die SID des Users gespeichert ist. Mit dieser SID holt sich phpBB3 die Session-Daten aus der DB. Wenn die Cookielebenszeit zu kurz eingestelt ist, so wird der Cookie ungültig und die Session geht auch in phpBB3 verloren. Somit ist es eigentlich nicht falsch sich am Cookie zu orientieren. Es ist aber in phpBB3 auch anders möglich, dass die SID über GET-Parameter übertragen wird, wenn z.B. der Browser keine Cookies annimmt, das ist aber bei ET-Chat anders umgesetzt und Cookies sind Pflicht, also wird der User in diesem Fall in meinem MOD eine Fehlermeldung erhalten.

So gesehen sind deine Zweifel an Richtigkeit des Mods eigentlich vom technischen Standpunkt unbegründet.
Benutzeravatar
MartectX
Ehemaliger Übersetzer
Beiträge: 648
Registriert: 10.05.2008 17:08
Wohnort: Marienplatz

Beitrag von MartectX »

ET-Chat hat geschrieben:So gesehen sind deine Zweifel an Richtigkeit des Mods eigentlich vom technischen Standpunkt unbegründet.
Danke für die Aufklärung. Ich nahm an, das Fehlen der Aufnahme einer Session wäre von Dir nicht gewollt, was aber wohl nicht so ist.
Benutzeravatar
djchrisnet
Mitglied
Beiträge: 1275
Registriert: 29.06.2007 15:52
Wohnort: Elmshorn
Kontaktdaten:

Beitrag von djchrisnet »

Code: Alles auswählen

$_COOKIE[$cookiename[0][0]."_sid"]
auch cookiedaten können bösen code enthalten!!! statt $_cookie kannste sonst auch §_GET['hack_mich'] nutzen,
ET-Chat
Mitglied
Beiträge: 9
Registriert: 05.11.2008 15:32
Kontaktdaten:

Beitrag von ET-Chat »

Sie meinen dass dadurch eine SQL-Injection gemacht werden kann?

Also ich könnte diesen SID-Hasch auf z.B. Leerzeichen überprüfen die im Fale einer SQL Injection vorhanden wären, in etwa so:

Code: Alles auswählen

if (eregi(" ", $_COOKIE[$cookiename[0][0]."_sid"])){
	echo "Das habe ich nun wirklich nicht erwartet!!! ;-)";
	$dbphpbb->close();
	exit();
}
Würde das ausreichen?
Benutzeravatar
djchrisnet
Mitglied
Beiträge: 1275
Registriert: 29.06.2007 15:52
Wohnort: Elmshorn
Kontaktdaten:

Beitrag von djchrisnet »

http://de3.php.net/mysqli_real_escape_string

PS: statt eregi() währe für eine solche prüfung auch strstr() vollkommen ausreichen und um einiges performanter
ET-Chat
Mitglied
Beiträge: 9
Registriert: 05.11.2008 15:32
Kontaktdaten:

Beitrag von ET-Chat »

mysqli_real_escape_string möchte ich nicht verwenden, da die mysqli nicht unbedingt installiert werden muß. Der ET-Chat könnte z.b: genau wie phpBB3 auch mit PostgreSQL arbeiten. Und die Performance bei einer einmaligen Prüfung ist eher zweitrangig.

Die Prüfung auf Leerzeichen habe ich nun eingebaut. Das müsste ausreichen um die SQL-Injection zu verhindern. :lol:
Benutzeravatar
Dr.Death
Moderator
Moderator
Beiträge: 17412
Registriert: 23.04.2003 08:22
Wohnort: Xanten
Kontaktdaten:

Beitrag von Dr.Death »

Hi,

in der Datei ( phpBB3 ) includes/sessions.php wird das Auslesen des Cookies mit Hilfe der phpBB3 Funktion " request_var() " durchgeführt.

Dadurch wird einer SQL Injection vorgebeugt.

Siehe dazu ab Zeile 196:

Code: Alles auswählen

		if (isset($_COOKIE[$config['cookie_name'] . '_sid']) || isset($_COOKIE[$config['cookie_name'] . '_u']))
[...]

Code: Alles auswählen

$this->session_id 		= request_var($config['cookie_name'] . '_sid', '', false, true);
und includes/functions.php ab Zeile 63:

Code: Alles auswählen

function request_var($var_name, $default, $multibyte = false, $cookie = false)
Uranoxiflynox|

Beitrag von Uranoxiflynox| »

Hallo,

verstehe nicht so ganz wie der Einbau funktioniert.
Das mit der overall_header ist klar.

Nur dann haperts beim Hochladen. Muss ich die ZIP.Datei in den Root kopieren oder die entpackte Datei. Oder muss ich einen neuen Ordner mit dem Namen "/et_chat_v3/" anlegen?

Bitte helft mir auf die Sprünge. :)

Edit: Problem hat sich erübrigt.
goga-ru
Mitglied
Beiträge: 4
Registriert: 01.02.2008 22:12

Re: Integration von ET-Chat v3.0.5 in phpBB3

Beitrag von goga-ru »

Hallo
Ich benutze chat im russische forum.
Das Problem wäre das user mi russische schrift werden nur als ?????? zeichen angezeigt!
Wie kann ich das endern? ich kenne mich mit php wenig aus.
Dr.Sterbehilfe
Mitglied
Beiträge: 31
Registriert: 03.02.2008 16:28
Wohnort: wernau
Kontaktdaten:

Re: Integration von ET-Chat v3.0.5 in phpBB3

Beitrag von Dr.Sterbehilfe »

Ich habe es mal bei mir installiert und getestet.
Soweit echt super. Nur einige konnten dem chat nicht beitreten. Die haben dann eine
Fehlermeldung bekommen zwecks Cookie Einstellungen - Bei Mozilla zumindest.
Beim IE wurde die Seite einfach nicht angezeigt.

Als ich im Chat drin war und andere versuchten ihm bei zu treten warf der chat für
alle ersichtlich eine ewig laaaange log aus mit jedes mal der gleichen Meldung.
Geschriebene Nachrichten waren somit nicht mehr zu lesen außer man blätterte sieben Seiten
zurück. Also da hat das System schon viel ausgeworfen an unnötigen Info.

Würde wenn das aber Stable ist auf jedenfall bei mir einbauen.
Antworten

Zurück zu „[3.0.x] Mods in Entwicklung“