把所有車牌都刪掉了 xddd
這次會提到的
以 python eval 舉例
其他常見的危險函式
如何預防?
可以看看 這個
Code Injection 常常會出現在 IOT 設備 (像是監視器、TX link 之類的)
指令就會變成 dig vincent55.tw; id
基本技巧 ;
|
&&
||
command substitution
如果空白被過濾了 - 用 ${IFS}
/ <
如果有一些 keyword 被過濾了
這題她有提供原始碼,可以知道背後的執行邏輯是 <pre><?= system("dig '" . $_POST['name'] . "';") ?></pre>
,所以可以用 ';
來截斷 dig
然後就能在後面輸入想要的指令了,先用 ls
找到 Flag 的位置,然後再印出來就是答案摟
這題多檔了一些字 blacklist = ['|', '&', ';', '>', '<', "\n", 'flag'];
,可以用之前的 code substitution 來繞過
這題多檔了空白,用 ${IFS}
就能通過了
Normal shell: ssh
Reverse shell 就是改成從 server 主動連線到 client
這邊 有各種不同的 reverse shell
ngrok 可以用來反向代理,這樣如果連成大網路就不會被擋一些東西了
簡介
SELECT title, subtitle, context FROM articles;
這邊是要找出 title, subtitle, context 這三個欄位的資料
SELECT * FROM articles;
找出所有欄位的資料
SELECT * FROM articles WHERE id = 2;
找出 id 為 2 的資料
這邊就有點像是前面 command injection 一樣,可以讓他做一些壞壞的事情
SELECT * FROM articles WHERE id = 3; DROP TABLE articles;
另外如果是在處理登入的資料庫是用 SELECT * FROM user='' AND pass=
來做判斷帳密是否正確,那就有可能發生下面一張的問題
藉由 '
截斷 和 --
註解的方式,可以讓他不管密碼是什麼的狀況下登入
分類