multipart/form-data

Hallo Leser,

ich schreibe hier mal wieder was über php5. Diese hat wieder eine Lücke die erst ab 5.3.1 gepatcht ist.
Da viele Leute aber die Repros b.z.w die search Dateien oder die deb´s Nutzen ist eine Installation nicht möglich.
Naja möglich schon aber mit viel aufwand verbunden

Nun gut es gibt ja einige Wege um das ganze zu Patchen.

Das dotdeb Projekt hat nun die Version 5.3.1 für Debian Lenny Packages zusammengestellt.

/etc/apt/sources.list

deb http://php53.dotdeb.org stable all
deb-src http://php53.dotdeb.org stable all

danach ein
apt-get update && apt-get upgrade

und schon sollte das ganze Installiert werden.

Wer das ganze mit php5-suhosin lösen möchte kann dieses auch ganz einfach tun.
Hierzu machen wir ein apt-get update && apt-get install php5-suhosin in der Console

apt-get install php5-suhosin
Paketlisten werden gelesen… Fertig
Abhängigkeitsbaum wird aufgebaut
Lese Status-Informationen ein… Fertig
Die folgenden NEUEN Pakete werden installiert:
php5-suhosin
0 aktualisiert, 1 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
Es müssen 66,4kB an Archiven heruntergeladen werden.
Nach dieser Operation werden 180kB Plattenplatz zusätzlich benutzt.
WARNUNG: Die folgenden Pakete können nicht authentifiziert werden!
php5-suhosin
Diese Pakete ohne Überprüfung installieren [j/N]? j
Hole:1 http://ftp.hosteurope.de stable/all php5-suhosin 5.2.12-0.dotdeb.1 [66,4kB]
Es wurden 66,4kB in 0s geholt (367kB/s)
Wähle vormals abgewähltes Paket php5-suhosin.
(Lese Datenbank … 27973 Dateien und Verzeichnisse sind derzeit installiert.)
Entpacke php5-suhosin (aus …/php5-suhosin_5.2.12-0.dotdeb.1_amd64.deb) …
Richte php5-suhosin ein (5.2.12-0.dotdeb.1) …

und schon findet man bei /etc/php5/conf.d/ die suhosin.ini

insgesamt 32
drwxr-xr-x 2 root root 4096 7. Jan 14:04 .
drwxr-xr-x 5 root root 4096 6. Jan 18:53 ..
-rw-r–r– 1 root root 58 4. Jan 15:50 mcrypt.ini
-rw-r–r– 1 root root 57 19. Sep 23:28 mysqli.ini
-rw-r–r– 1 root root 56 19. Sep 23:28 mysql.ini
-rw-r–r– 1 root root 52 19. Sep 23:28 pdo.ini
-rw-r–r– 1 root root 60 19. Sep 23:28 pdo_mysql.ini
-rw-r–r– 1 root root 60 5. Jan 16:36 suhosin.ini

Diese kann man mit nano,vi oder einem anderen Editor öffnen

der Inhalt dürfte in etwa so ausschauen

; configuration for php suhosin module
extension=suhosin.so

Im Standart steht suhosin.upload.max_uploads schon auf 25, nun können wir das ganze auch auf 20 begrenzen.

; configuration for php suhosin module
extension=suhosin.so
suhosin.upload.max_uploads = 20

ein apache reload b.z.w restart und schon ist das ganze Aktiv!
Jedoch sollte man aufpassen suhosin kann auch das System ausbremsen und zu unerwünschten verhalten führen.

Hierzu sollte man unbedingt mal bei http://www.hardened-php.net/suhosin.127.html vorbei schauen und sich mal alle möglichen Einstellungen anschauen. Suhosin kann noch mehr 🙂

Selbst verständlich kann man die Änderung auch in seiner phpinfo verfolgen.

Viel Spaß beim testen..

Nofollow Links setzen

Hallo Gemeinde,

hier mal wieder ein kleines HowTo wie man Links im Woltlab 2.3.* Board auf nofollow setzt.
Mit dem Attribut Nofollow auf Links sorgt man das keine Links in Suchmaschinen nicht mit zur Berechnung der Webseite mit eingezogen wird, sprich die „Linkpopularität“.

Genaue Erklärung gibt es bei Wikipedia unter Nofollow

Im wbb.2.3.* sucht man in der /acp/lib/class_pharse.php

function formaturl($url, $title = '', $maxwidth = 60, $width1 = 40, $width2 = -15) {
if (!wbb_trim($title)) {
$title = rehtmlconverter($url);
if (!preg_match("/[a-z]:\/\//si", $url)) $url = "http://$url";
if ($this->cuturls == 1 && wbb_strlen($title) > $maxwidth) $title = wbb_substr($title, 0, $width1)."...".wbb_substr($title, $width2);
return "".htmlconverter($this->stripSlashes($title))."";
}
else {
if (!preg_match("/[a-z]:\/\//si", $url)) $url = "http://$url";
return "".$title."";
}
}

und tauscht dieses gegen diesen Code aus.


function formaturl($url, $title = '', $maxwidth = 60, $width1 = 40, $width2 = -15) {
if (!wbb_trim($title)) {
$title = rehtmlconverter($url);
if (!preg_match("/[a-z]:\/\//si", $url)) $url = "http://$url";
if ($this->cuturls == 1 && wbb_strlen($title) > $maxwidth) $title = wbb_substr($title, 0, $width1)."...".wbb_substr($title, $width2);
return "".htmlconverter($this->stripSlashes($title))."";
}
else {
if (!preg_match("/[a-z]:\/\//si", $url)) $url = "http://$url";
return "".$title."";
}
}

je nach dem ob man einen HideHack verbaut hat, muß man dieses auch ändern.

Für das wbb 1.0.* kann man auch mit rel=\“nofollow\“ vorgehen!

SQL Bugs in Woltlab Addons & Co

Hallo Gemeinde,

ich habe mir jetzt mal vorgenommen was hier über „SQL Bugs“ zu veröffentlichen.
Es kommt immer wieder vor das Addons für z.b das alte woltlab 2.3.* immer noch Buggy sind,wobei inzwischen klar sein dürfte wie man sich gegen SQL-Injection schützen kann.

Um seine SQL Query zu Schützen sollte man mit der php-funktion intval,addslashes oder auch mysql_real_escape_string arbeiten.

Genaue Aufklärung findet man auch bei wikipedia unter SQL-Injektion