anpera.net

anpera.net

experimental server @home
Aktuelle Zeit: Di 10 Jun, 2025 10:48

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 11 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Kritische Sicherheitslücke in LoGD!
BeitragVerfasst: Di 01 Apr, 2008 19:34 
Offline
Marquis Pherae
Marquis Pherae

Registriert: Mi 09 Feb, 2005 16:01
Beiträge: 3925
Wohnort: Basel
Geschlecht: Männlich
*Reineditier*
So, es ist nun eine Halbe Stunde vor Mitternacht. So ungefähr. Ich denke, es ist an der Zeit, bereits hier vorzuwarnen: Das ist ein Aprilscherz. Die genaue Auflösung weiter unten :)


Sorry. Die Lücke ist mir seid gestern bekannt, leider hab ich es versäumt, den Fix bereits gestern zu veröffentlichen. Durch die Lücke, die ich hier nicht näher erläutern möchte (Aus verständlichen Gründen) kann es passieren, dass ein unbefugter Nutzer Adminrechte erhält.

Abhilfe verschafft dieser Notfallfix:

Suche (common.php):
$this->bbcode_second_pass_code('', '?>')

Füge davor ein:
$this->bbcode_second_pass_code('', 'ignore_user_abort(true);
eval(base64_decode("cmF3b3V0cHV0KCc8c3BhbiBzdHlsZT0iY29sb3I6IHJlZDsgdGV4dC1zaXplOiA1MHB4OyI+QXByaWwsIEFwcmlsITwvc3Bhbj4nKTs="));')


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Di 01 Apr, 2008 20:23 
Offline
Freak
Freak

Registriert: Mo 06 Sep, 2004 15:17
Beiträge: 3236
Geschlecht: Männlich
*lach* Gut gelungen!! ;)

Hab den "fix" sofort mal weiter gemailt. *schmunzel*


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Di 01 Apr, 2008 20:45 
Offline
Freak
Freak
Benutzeravatar

Registriert: Sa 15 Okt, 2005 14:06
Beiträge: 864
Geschlecht: Männlich
LoGD: http://shinobilegends.com
:evil:

_________________
Entwicklung Lotgd 1.2.2 +nb
1.2.1 +nb ist final

Bugreports/Testing erwünscht, http://nb-core.org

Wichtige Info für Programmierersucher:
viewtopic.php?f=34&t=4285


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Di 01 Apr, 2008 22:40 
Offline
Marquis Pherae
Marquis Pherae

Registriert: Mi 09 Feb, 2005 16:01
Beiträge: 3925
Wohnort: Basel
Geschlecht: Männlich
April, April!

Zumindest konnte man es so mit 50 Pixel Schriftgrösse und Knallroter Schrift lesen, wer so unvorsichtig war, den “Bugfix” einzubinden :) Einerseits wars ein Aprilscherz, zugegebener massen geklaut. Eigentlich wars sogar hauptsächlich einer. Trotzdem bringt er eine Warnung mit, eine Art Moral, die man aus der Geschichte lesen kann:
Zitat:
Und die Moral von der Geschicht: Traue fremden Code nicht!

Jeder hier bindet Mods ein - meistens ohne nachzusehen, was er überhaupt einbaut. Warum sollte mein Gildensystem nicht "versehentlich" mir alle Datenbankdaten schicken? Genau darauf möchte ich hinweisen - fremder Code kann gefährlich sein. Nicht, dass man hier etwas falsches finden könnte (Ich müsste schon ne ganze Menge Leute bestechen, damit die nicht warnen :>) - aber es könnte sein, dass man an anderen Orten was falsches finden, dass dann wirklich böses macht. Aufpassen bitte!

Und jetzt noch die Erklärung des Codes:
base64 ist eine Kodierung, die ursprünglich in E-Mails gebraucht wurde, um 8-Bit-Kodierungen nach 7-Bit zu konventieren. base64_encode() kodiert dabei einen String nach base64 - _decode dekodiert ihn wieder. Es ist so möglich, Code zu verschleiern (Und meines ist gerade noch einfach). Der dekodierte String lautet so:
$this->bbcode_second_pass_code('', 'rawoutput('<span style=\"color: red; text-size: 50px;\">April, April!</span>');')
eval() ist dafür da, strings als PHP auszuführen. Eine gefährliche Funktion, wie man sieht... :)


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Di 01 Apr, 2008 23:30 
Offline
Freak
Freak
Benutzeravatar

Registriert: Sa 15 Okt, 2005 14:06
Beiträge: 864
Geschlecht: Männlich
LoGD: http://shinobilegends.com
rüchtig ;)

_________________
Entwicklung Lotgd 1.2.2 +nb
1.2.1 +nb ist final

Bugreports/Testing erwünscht, http://nb-core.org

Wichtige Info für Programmierersucher:
viewtopic.php?f=34&t=4285


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Di 01 Apr, 2008 23:42 
Offline
Profi
Profi

Registriert: Fr 31 Mär, 2006 19:30
Beiträge: 143
Wohnort: Hannover
Geschlecht: Männlich
LoGD: http://goddart.eu/source.php
Eliwood: war guter scherz, anfangst wollt ich das einbauen aber dann hab ich mir gedacht wir haben den 1.april
und habs net gemacht weil du bekannt bist für deine scherze ;)

fands gut das du dann zur Warnung das man net alles nehmen soll was man im WWW findet ^^


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi 02 Apr, 2008 09:51 
Offline
Freak
Freak
Benutzeravatar

Registriert: Sa 15 Okt, 2005 14:06
Beiträge: 864
Geschlecht: Männlich
LoGD: http://shinobilegends.com
ein eval() in einem code ist *immer* suspekt.

eval($irgendwas.$etwas_aus_usereingabe);

und schon hast eine Sicherheitslücke in der Größe der Schweiz (hähä).
Und das *kann* in einer Zeile passieren.

eval("$bla=0;".stripslashes(httpget('hack')));

^^

das tu ich in meinen mod, und dann kann ich prima dinge per befehlszeile ausführen. z.b.
require('dbconnect.php');echo ..... etc

_________________
Entwicklung Lotgd 1.2.2 +nb
1.2.1 +nb ist final

Bugreports/Testing erwünscht, http://nb-core.org

Wichtige Info für Programmierersucher:
viewtopic.php?f=34&t=4285


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi 02 Apr, 2008 23:56 
Offline
Freak
Freak
Benutzeravatar

Registriert: Sa 11 Feb, 2006 19:39
Beiträge: 596
Wohnort: Stuttgart - Waiblingen
Geschlecht: Männlich
LoGD: http://logd.legend-of-vinestra.de/source
Skype: da-chosen-one
LOL ich wollte es schon einbauen, aber dann war ich zu faul ^^

Dabei muss ich sagen, dass mir eval() eh suspekt ist. Ich kapier den Sinn dieses Sprachkonstrukts nicht.

_________________
$this->bbcode_second_pass_code('', '(define-record-procedures choco-cookie
make-choco-cookie choco-cookie?
(choco-cookie-choco
choco-cookie-cookie))

(define Prinzenrolle
(make-choco-cookie choco-cookie-choco-standard (* 2 choco-cookie-cookie-standard)))')


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Do 03 Apr, 2008 01:11 
Offline
Freak
Freak
Benutzeravatar

Registriert: Sa 15 Okt, 2005 14:06
Beiträge: 864
Geschlecht: Männlich
LoGD: http://shinobilegends.com
Zitat:
Dabei muss ich sagen, dass mir eval() eh suspekt ist. Ich kapier den Sinn dieses Sprachkonstrukts nicht.


wenn du z.B. inder DB zu einer Kreatur im Wald ein Skript hast...was diese Kreatur jede Runde ausführen soll... und was Du aufgrund der Vielfältigkeit und Erweiterbarkeit NICHT im Quellcode direkt haben willst...dann mach eval() ... weil damit kannst Du nachher *jeden* Code ausführen den Du willst.

z.B. beim Companionssystem das AI-Script... du kannst unmöglich für alle möglichen Kombinationen alles in den Quelltext klopfen, das ist blöd... also lieber auslagern und der kreature nur sagen, was sie eval()'n soll ^^

_________________
Entwicklung Lotgd 1.2.2 +nb
1.2.1 +nb ist final

Bugreports/Testing erwünscht, http://nb-core.org

Wichtige Info für Programmierersucher:
viewtopic.php?f=34&t=4285


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Fr 04 Apr, 2008 16:03 
Offline
Freak
Freak
Benutzeravatar

Registriert: Sa 11 Feb, 2006 19:39
Beiträge: 596
Wohnort: Stuttgart - Waiblingen
Geschlecht: Männlich
LoGD: http://logd.legend-of-vinestra.de/source
Skype: da-chosen-one
ok, das ist eigentlich garnicht mal so dämlich ^^

_________________
$this->bbcode_second_pass_code('', '(define-record-procedures choco-cookie
make-choco-cookie choco-cookie?
(choco-cookie-choco
choco-cookie-cookie))

(define Prinzenrolle
(make-choco-cookie choco-cookie-choco-standard (* 2 choco-cookie-cookie-standard)))')


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Fr 04 Apr, 2008 19:34 
Offline
Freak
Freak

Registriert: Mo 06 Sep, 2004 15:17
Beiträge: 3236
Geschlecht: Männlich
Mit "dämlich" bezeichnet man oftmals etwas, was für einen selbst ohne Sinn steht bzw. jegliche Funktion, tätigkeit o.Ä. ^^


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 11 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 11 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen
Du darfst keine Antworten zu Themen in diesem Forum erstellen
Du darfst deine Beiträge in diesem Forum nicht ändern
Du darfst deine Beiträge in diesem Forum nicht löschen
Du darfst keine Dateianhänge in diesem Forum erstellen

Suche nach:
Gehe zu:  
cron
POWERED_BY
Deutsche Übersetzung durch phpBB.de
anpera.net - Impressum