Statistik |
Beiträge: 144.534 (Täglich: 19,19 )
Themen: 16.701
Mitglieder: 13.209
Neuestes Mitglied: zitronentee.
Ausl. d. letzten Minute: 387%
Ausl. d. letzten 5 Minuten: 323%
Ausl. d. letzten 15 Minuten: 283%
Aktulle Uhrzeit: 06:34
Freier Webspace: 4.04 TB
PHP-Version: 7.4.33
|
|
|
Thema: IONOS geht mir auf den S....enkel. |
|
Hallo Viktor,
ich glaube wir verstehen uns falsch. Es geht um das Kontaktformular in wbb2 wo Mitglieder
über Mails kommunizieren können. Genau von wegen Spam habe ich direkte Mailadressen
nicht sichtbar im Forum.
Wenn ich jetzt paul.de bin und Mitglied willi.de sendet eine Mail an otto.de, dann wird diese
Mail nach Ionos vom 15.01.24 nicht mehr durchgeführt. Somit sind auch geschäftliche Anbieter
in dem gleichen Dilemna, wo Mails über Kontaktformulare mit einer fremden Absenderadresse
verschickt werden, es geht hier um SMTP-Relay (SmartHost) das abgeschafft werden soll.
Es gibt inzwischen schon eine Riesenaufruhr, auch weil die Abschaltung kurzfristig erfolgt und in
der Ionos Hotline jeder Mitarbeiter eine andere Wahrheit verströmt.
|
|
Thema: IONOS geht mir auf den S....enkel. |
|
Ich bin wahrscheinlich nicht der einzige Betroffene.
Leider muss ich sagen, solange es 1und1 war lief das ziemlich gut,
jetzt kommen alle paar Monate neue Schikanen hinzu und ich weiss
noch nicht ob ich in dem Laden bleiben werde.
Problem ist diese Mitteilung von IONOS die sich besonders auf die internen Mails
bezieht :
Kein Versand von E-Mails mit abweichender Absenderadresse
Für Shared Hosting Linux und Managed ServerE-Mails, die Sie über Ihren IONOS Webspace senden,
erfordern ab dem 15.01.2024 eine Absenderadresse, die zu einer Domain Ihres IONOS Vertrages
gehört. Der Versand mit alternativen oder leeren E-Mail-Absendern über IONOS Server ist ab diesem
Zeitpunkt nicht mehr möglich.
Dies betrifft alle Skripte, Apps und Programme die auf Ihrem Webspace eingesetzt werden.
Sollte also heissen so wie ich es verstehe, dass die Absender Emailadresse nicht mehr als Absender
verwendet werden darf. Wie soll das funktionieren ? Grundsätzlich in der Software immer mit einer
internen IONOS Mailadresse den Inhalt verschicken und die Emailadresse vom Mitglied in das
Infofeld packen. Was soll der Sch..ss ??????
|
|
Thema: Forum gehackt? |
|
Das Problem bei wbb2, man kann Javacript und html einschleusen ohne Zugriff zum Server zu haben.
So kann man in die Forenbeschreibungen, Impressum usw. Javascripte einschreiben die direkt nicht
in der Forensoftware erscheinen, aber online eingebunden werden. Wer also ins ACP kann, hat die
Möglichkeiten.
Ich habe bei mir im Forum beispielsweise einige Programme und html Code aktiv, die Programme gibt
es nur im Beschreibungstext von Forum 1. Direkt zwischen der Ueberschrift "Foren" und "Informationen & Ankündigungen". Da es als Kategorie definiert wurde und die Ueberschrift blank ist, wird nur der eingegebene Programmtext verarbeitet und ansonsten nichts angezeigt.
https://antik-automaten.de
Das ist also schon brandgefährlich denn man kann so auch den Server knacken indem man ein eigenes PHP Programm vom Javascript her ausführt. Leider kann man PHP auch lokal ausführen.
Ich hatte auch mal mehrere Moderatoren, einer hat dann die Mitgliedslisten geklaut um ein eigenes
Forum aufzubauen.
Am besten, immer nur einer hat Zugriff auf das ACP. Im Notfall kann man immer noch einen Brief hinterlegen wenn man ausser Gefecht ist.
Ich habe alle Moderatoren und Co-Admins abgeschafft, ja sogar den Zugriff über meinen Mitgliedsnamen. Das hat zwar "Freunde" gekostet, aber alle Mitglieder profitieren von mehr Sicherheit.
Auch hier gilt, viele Köche verderben den Brei.
|
|
Thema: Forum gehackt? |
|
Javascript ist ziemlich hinterfotzig, ich habe beispielsweise bei mir im Forum eine Slideshow
abgespeicherter Bilder am Laufen, und die werden von einem kleinen PHP Programm durch
Zufall 12 Stück jeweils ausgewählt und als Adressen an den Javascript gesendet. Das Perfide,
man kann einen gemeinsamen Datenbereich zwischen PHP und Javascript definieren und so
an Daten vom Server gelangen. Javascript allein hat auf die Serverdaten keinen Zugriff, er
braucht PHP Hilfe.
Meist geht es aber nur darum den lokalen Benutzer zu infizieren, die Server Software dient
nur als Wirt. Da ja dieser Script bei jedem Aufruf vom Forum aktiv ist, kann er seinen Unfug
auf dem angeschlossenen PC treiben. Und du bist ja wahrscheinlich ähnlich wie ich auch der
intensivste Benutzer von deinem Forum.
Es gibt da nur eine Lösung, Virenscanner die möglicherweise eine infizierte Datei entdecken,
ausser er legt Code in einem freien Speicherbereich ab, der nur solange aktiv ist, wie der PC
eingeschaltet bleibt. Und wenn der Script gelöscht wurde, ist eine Neuinfizierung sowieso nicht
mehr möglich. Wenn man aber seine Bankgeschäfte über diesen PC abwickelt dann würde ich
alle Zugangsdaten von wichtigen Bereichen ändern.
|
|
Thema: Forum gehackt? |
|
Ja die Schweden, also ich glaube eher an Tansania oder so.
Ich habe mir mal die Zeilen angesehen von dem Javascript. Die "unverständliche Buchstabenreihe"
erfüllt nur einen Zweck, durch den script wird in einem Speicherbereich beim lokalen Nutzer ein
kleines Maschinen-Programm generiert und abgespeichert. Um dann von aussen durch die Injektion
von Argumenten Daten abzufangen. (Passwörter, Bankverbindungen usw.) Der Forumsbetrieb war also
nicht gefährdet, dafür aber die Benutzer.
|
|
Thema: Forum gehackt? |
|
|
Zitat: Original von Basti89
Ja, tatsächlich hat er sich nicht eingeloggt. D.h. sein Account wurde wohl gehackt!?
Browserkennung war bei den letzten Sitzungen auch eine ganz andere als sonst.
Hat jetzt auch erstmal das Passwort geändert.
Die Frage, die sich mir stellt: Wer macht sowas? Warum macht man sowas?
Was kann diese Javascript Datei jetzt bewirkt haben?
Wurde an anderer Stelle noch was geändert, was ich nicht mitbekommen habe?
Kann man sich davor in Zukunft schützen? |
|
|
Hast du in der Log nachgeschaut welche IP bei dem Vorfall benutzt wurde ?
Da die Typen meist aus dem Osten kommen, ist es einfach einen ganzen Bereich
in der .htaccess gegen die Bande zu sperren. Ein Bot war es wohl nicht.
|
|
Thema: Support-> WoltLab Burning Board 2.3.pl2 - Update PHP-Version 8.x |
|
So, nach etwa einer Woche ist die error.log immer noch unberührt,
der Start ab einer vor-vorherigen Version hat sich also gelohnt.
Ich hatte mal für eine grosse Software Firma ein Versionsverwaltungs
Paket geschrieben, die hatten vorher eine US Version die war so ähnlich aufgebaut
wie Kettenbriefe, um Platz zu sparen, und jeder Entwickler hatte einzig den
Schreibzugriff zu seinen eigenen Codezeilen, wenn er also seine Zeilen änderte
wurde das auch angehängt, und plötzlich herrschte nur noch Zähneknirschen
und Chaos. Es gab nie eine letzte Version. Ich glaube die Software war ClearCase ?
Egal, hier war ich wohl selbst der Urheber vom Problem, und ohne Schrimm wäre
ich nie darauf gekommen, die Versionen historisch gegeneinander zu checken.
|
|
Thema: Support-> WoltLab Burning Board 2.3.pl2 - Update PHP-Version 8.x |
|
Ja, du weisst ja, das Problem ist ja meist PEBKAC.
Ich hatte 2018 wahrscheinlich einen anderen Editor benutzt oder eine search/replace
Routine die aus dem Ruder gelaufen ist. Jedenfalls bin ich jetzt wieder aktuell und werde
schauen ob das Problem zwischen Tastatur und Stuhl behoben ist.
Hier nur eine Zeile:
php: |
1:
|
$result = $db->unbuffered_query("SELECT bbcodetag, bbcodereplacement, params, multiuse, pattern1, pattern2, pattern3, eval_replacement FROM bb" . $n . "_bbcodes ORDER BY params ASC"); |
|
Ich melde mich.
|
|
Thema: Support-> WoltLab Burning Board 2.3.pl2 - Update PHP-Version 8.x |
|
Hallo Schrimm,
Danke, ich glaube du hast mich auf die richtige Spur gebracht.
Zwischen der Version 7.0 und 7.x haben sich bei meiner class_parse.php
Leerstellen eingeschlichen.
Keine Ahnung wo die herkommen.
Nur als Beispiel, hier.
vorher :
php: |
1:
2:
3:
|
$this->smilie_search2[] = "/{".$this->hash."_".$row['smilieid']."}/";
if ($this->useCaching) $row['smiliepath'] = str_replace("{imagefolder}", "@@@imagefolder@@@", $row['smiliepath']);
$this->smilie_replace2[] = makeimgtag($row['smiliepath'], $row['smilietitle'], 0) . "\n"; |
|
nachher :
php: |
1:
2:
3:
|
$this->smilie_search2[] = "/\{". $this->hash . "_" . $row['smilieid'] . "\}/";
if ($this->useCaching) $row['smiliepath'] = str_replace("{imagefolder}", "@@@imagefolder@@@", $row['smiliepath']);
$this->smilie_replace2[] = makeimgtag($row['smiliepath'], $row['smilietitle'], 0) . "\n"; |
|
Was ich also machen werde, und ich habe gottseidank historisch alle Versionen gespeichert,
ich gehe also zurück auf PHP7.0 und mache die Aenderungen wieder aufwärts auf PHP8.x.
was die class_parse.php anbelangt.
|
|
Thema: Support-> WoltLab Burning Board 2.3.pl2 - Update PHP-Version 8.x |
|
Einer macht noch Mist,
und zwar in acp/lib/class_parse.php wo ja schon einiges geändert wurde.
Fast täglich Eintrag in der Error Log :
code: |
1:
2:
|
[24-Jun-2023 22:05:19 Europe/Berlin] PHP Warning: preg_replace(): Compilation failed: quantifier does not follow a repeatable item at offset 24 in /homepages/xxx...xxx//Antikautomaten/wbb2/acp/lib/class_parse.php on line 299
[24-Jun-2023 22:05:19 Europe/Berlin] PHP Warning: preg_replace(): Compilation failed: quantifier does not follow a repeatable item at offset 24 in /homepages/xxx...xxx/Antikautomaten/wbb2/acp/lib/class_parse.php on line 332 |
|
Das ist dieser Abschnitt : Die erste Zeile im Block ist 295 (// avoid bbcode wrapping)
Soweit ich mich erinnern kann wurden die preg_replace zugefügt als Teil der Aenderungen ?
// avoid bbcode wrapping
if ($allowbbcode == 1) {
if ($this->done['bbcode'] != 1) $this->getbbcode();
$post = preg_replace_callback_array($this->search_replace2, $post);
$post = preg_replace($this->search2, $this->replace2, $post);
if ($allowimages != 0) $post = preg_replace_callback($this->imgsearch2, $this->imgreplace2, $post);
}
// cache smilies
if ($allowsmilies == 1) {
if ($this->done['smilies'] != 1) $this->getsmilies();
$post = preg_replace($this->smilie_search, $this->smilie_replace, $post);
}
// wrap text
$post = $this->textwrap($post);
// remove break chars
if ($allowbbcode == 1) {
$post = str_replace($this->breakChar, '', $post);
}
// remove tab
$post = str_replace("\t", " ", $post);
// html
if ($allowhtml == 0) {
$post = htmlconverter($post);
$post = nl2br($post);
}
else $post = preg_replace("/<([\/]?)script([^>]*)>/i", "<\\1script\\2>", $post);
// html
if ($allowhtml == 0) {
$post = htmlconverter($post);
$post = nl2br($post);
}
else $post = preg_replace("/<([\/]?)script([^>]*)>/i", "<\\1script\\2>", $post);
// bbcodes
if ($allowbbcode == 1) {
if ($this->done['bbcode'] != 1) $this->getbbcode();
$post = preg_replace_callback_array($this->search_replace, $post);
$post = preg_replace($this->search, $this->replace, $post);
Hier ist der Punkt in der Liste :
---------------------------------------
suche:
---------------------------------------
$post = preg_replace($this->search, $this->replace2, $post);
if ($allowimages != 0) $post = preg_replace($this->imgsearch2, $this->imgreplace2, $post);
---------------------------------------
ersetze gegen:
---------------------------------------
$post = preg_replace_callback_array($this->search_replace2, $post);
$post = preg_replace($this->search2, $this->replace2, $post);
if ($allowimages != 0) $post = preg_replace_callback($this->imgsearch2, $this->imgreplace2, $post);
---------------------------------------
suche:
---------------------------------------
$post = preg_replace($this->search, $this->replace, $post);
---------------------------------------
füge darüber ein:
---------------------------------------
$post = preg_replace_callback_array($this->search_replace, $post);
|
|
Thema: GIF Logo beweglich |
|
Das Problem ist wie gesagt, du brauchst ein Bildprogramm das animierte Gifs verarbeiten kann.
Das Originalbild besteht aus 3 Frames, das ist keine Zauberei aber wenn du Text hineinschreibst
dann musst du den Teil mit dem Text in alle Frames gleich kopieren.
Egal, ich habe es neu gemacht, habe aber bei mir den genauen Font nicht gefunden den du
verwendest hast, es gibt sie tonnenweise. Ich habe also einen ähnlichen benutzt aber wenn du
darauf bestehst und mir den Namen nennst kann ich es nochmal machen, hier jetzt mit Wasserfall.
http://antik-automaten.de/wbb2_pics/logo-x.gif
|
|
Thema: GIF Logo beweglich |
|
Versuche mal unter /wbb2/ und dem Namen animated_favicon.gif
Entschuldigung, ich sehe es geht nicht um das Icon sondern um ein normales animiertes Gif-Bild.
Man muss jetzt wissen, es besteht ja aus mehreren Bildern die in einer gewissen Reihenfolge angezeigt werden. Wenn ich dein Bild jetzt direkt im Browser verlinke, dann müsste der Wasserfall laufen wenn das Bild korrekt ist, tut es aber nicht.
Kann es sein dass du das Bild verkleinert hast ? Das geht nur in einem Bildprogramm das animierte
Bilder verkleinern kann. Bei einem "normalen" Bildprogramm wird nur das erste Bild übernommen und die Animation ist weg. Falls das dein Fehler ist, kannst du das Originalbild hier verlinken, ich kann es dir dann auf Wunschgrösse verkleinern.
|
|
Thema: wbb2.3.x Topfive änderung |
|
Nach dem Quellcode zu urteilen habe ich die gleiche Version.
Die möglichen Anpassungen stehen im ACP unter Einstellungen/Startseite.
Man kann entweder Gäste ausschliessen oder einzelne Foren, durch Komma getrennt.
Mehr Möglichkeiten sehe ich nicht.
|
|
Thema: Support-> WoltLab Burning Board 2.3.pl2 - Update PHP-Version 8.x |
|
Zum ersten Mal überhaupt habe ich jetzt eine jungfräuliche php-error.log,
das war nie so, sogar nicht nach der Installation.
Eine einzige Warnung gab es noch, vom page.restrictor.php
Wer die Software nicht benutzt hat die sowieso nicht. Und den
habe ich selbst behoben
von
php: |
1:
2:
|
291: define('PRES_CLIENT_UA', htmlspecialchars(@$_SERVER['HTTP_USER_AGENT']));
292: define('PRES_CLIENT_REF', (isset($_SERVER['HTTP_REFERER']) ? htmlspecialchars($_SERVER['HTTP_REFERER']) : '')); // topic 36673 |
|
zu
php: |
1:
2:
|
291: define('PRES_CLIENT_UA', (isset($_SERVER['HTTP_USER_AGENT']) ? htmlspecialchars($_SERVER['HTTP_USER_AGENT']) : ''));
292: define('PRES_CLIENT_REF', (isset($_SERVER['HTTP_REFERER']) ? htmlspecialchars($_SERVER['HTTP_REFERER']) : '')); // topic 36673 |
|
Wenn es so bis Maria Himmelfahrt hält, ist die Version wirklich sauber.
Vielen Dank nochmal an Schrimm und alle anderen,
PHP9 darf kommen.
|
|
Thema: Support-> WoltLab Burning Board 2.3.pl2 - Update PHP-Version 8.x |
|
Das hat doch jetzt etwas länger gedauert.
Kaum war ich zuhause, hat meine KI rumgezickt.
Blauer Bildschirm und dann habe ich mal rumexperimentiert
und auch die Speichermodule gegen welche aus der Kramkiste getauscht.
Und jetzt läuft er auf 8GB, also ist Schmalhans Küchenmeister bis die neuen
Module ankommen.
Ich habe jetzt die neuen Befehle eingesetzt und es läuft soweit und bisher
kein Fehler, allerdings auch wenig Betrieb über die Feiertage. Ich komme später
sicher nochmal darauf zurück.
|
|
Thema: Support-> WoltLab Burning Board 2.3.pl2 - Update PHP-Version 8.x |
|
Und die Verschwörung nimmt ihren Lauf.
code: |
1:
2:
3:
4:
5:
6:
|
[13-Apr-2023 23:21:51 Europe/Berlin] PHP Warning: Undefined variable $attachment in /.../Antikautomaten/wbb2/attachment.php on line 23
[13-Apr-2023 23:21:51 Europe/Berlin] PHP Warning: Trying to access array offset on value of type null in /.../Antikautomaten/wbb2/attachment.php on line 23
[13-Apr-2023 23:21:51 Europe/Berlin] PHP Warning: Undefined variable $attachment in /.../Antikautomaten/wbb2/attachment.php on line 26
[13-Apr-2023 23:21:51 Europe/Berlin] PHP Warning: Trying to access array offset on value of type null in /.../Antikautomaten/wbb2/attachment.php on line 26
|
|
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
|
23:
24: if (isset($_REQUEST['idhash'])) $idhash = wbb_trim($_REQUEST['idhash']);
25: else $idhash = '';
26: $pmAttachment = false;
27:
28: // check permissions (attach file to post)
29: if (isset($boardid) && $boardid) {
30: if (!checkpermissions('can_upload_attachments') || (isset($board) && is_array($board) && ($board['isboard'] != 1 || $board['closed'] == 1))) {
31: eval("\$tpl->output(\"".$tpl->get("window_close")."\");");
32: exit();
33: }
34: $pmAttachment = false;
35:}
36:else $boardid = 0; |
|
|
|
Thema: Support-> WoltLab Burning Board 2.3.pl2 - Update PHP-Version 8.x |
|
Man hat mich erhört, geht ja doch
code: |
1:
2:
3:
4:
|
[13-Apr-2023 21:26:31 Europe/Berlin] PHP Warning: Undefined array key "enforcestyle" in /.../Antikautomaten/wbb2/global.php on line 149
[13-Apr-2023 21:26:31 Europe/Berlin] PHP Warning: Undefined array key "styleid" in /.../Antikautomaten/wbb2/global.php on line 149
|
|
Die global.php ist ja ein alter Bekannter, aber das ist die unter /wbb2/,
aber in dem Bereich wurde jetzt nichts geändert.
php: |
1:
2:
3:
4:
5:
6:
7:
|
149: if (isset($board) && ($board['enforcestyle'] == 1 || ($board['styleid'] != 0 && $wbbuserdata['styleid'] == 0))) {
150: $style = $db->query_first("SELECT s.styleid, s.templatepackid, s.designpackid, tp.templatestructure FROM bb".$n."_styles s LEFT JOIN bb".$n."_templatepacks tp ON(tp.templatepackid=s.templatepackid) WHERE s.styleid = '".$board['styleid']."'");
151: $wbbuserdata['designpackid'] = $style['designpackid'];
152: $wbbuserdata['templatepackid'] = $style['templatepackid'];
153: $wbbuserdata['styleid'] = $style['styleid'];
154: $wbbuserdata['templatestructure'] = $style['templatestructure'];
155: } |
|
|
|
|
|