ping一下ip
這裡用管道符來命令分割沒有用,測了一下,最終有用的是%0a
,linux下一般的命令分隔符有這幾個
| || & && . ; - <> $ %0a %0d `
ls一下
cat一下,得到
''
,';'
=>'',
'|'=
>'',
'-'=
>'',
'$'=
>'',
'('=
>'',
')'=
>'',
'`'=
>'',
'||'
=>'',
//%0a);
// remove any of the charactars in the array (blacklist).
$target
=str_replace
(array_keys
($substitutions),
$substitutions
,$target);
// var_dump($target);
// determine os and execute the ping command.if(
stristr
(php_uname
('s'),
'windows nt'))
else
// feedback for the end user
echo""
;}else
?>
確實是過濾了好多分隔符啊,接著ls
發現flag.txt,cat一下,得到flag
前面的步驟和上一題一樣,不過發現cat命令被ban了,測試發現很多讀取檔案的命令也被ban了,測試中發現paste
命令有用,得到flag
題目是已經做完了,不過來讀一下index.php看看,但是相關的變數並沒有在裡面。。
''
,';'
=>'',
'|'=
>'',
'-'=
>'',
'$'=
>'',
'('=
>'',
')'=
>'',
'`'=
>'',
'||'
=>'',
//%0a);
// remove any of the charactars in the array (blacklist).
$target
=str_replace
(array_keys
($substitutions),
$substitutions
,$target);
// var_dump($target);
// determine os and execute the ping command.if(
stristr
(php_uname
('s'),
'windows nt'))
else
// feedback for the end user
echo""
;}else
?>
Web滲透 命令執行漏洞
os命令執行 指令碼命令執行 框架執行漏洞 命令執行漏洞是指攻擊者可以隨意執行系統命令,不具備命令許可權的使用者可以執行命令,屬於高危漏洞之一,也屬於 執行範疇。在b s架構和c s架構中都常見 在能執行命令的地方,對命令語句過濾不嚴,可能利用連線符 來突破限制,如原本只能進行ping操作,通過連線...
Web頁面執行shell命令
本文以apache為web伺服器為例yum y install httpd sudo systemctl restart httpd cd var www cgi bin vim shell bin sh alias urldecode sed s g s x g xargs 0 printf b ...
Web頁面執行shell命令
本文以apache為web伺服器為例 安裝apache服務 啟動apache 建立shell指令碼 cd var www cgi bin vim shell bin sh alias urldecode sed s g s x g xargs 0 printf b echo e content ty...