php lfi rfi掃盲大補帖
TRANSCRIPT
PHP LFI RFIPHP LFI RFI 掃盲大補帖掃盲大補帖hack-stuff.com
2012/11/3
1
PHP fuzzingPHP fuzzing
PHP fuzzing 兩大 getshell 的方法(SQL injection 會受限於資料庫,略過 ~~)◦ Execution : Eval 、 system command eval 、 assert 、 shell_exec 、 system
◦ File Inclusion : LFI 、 RFIinclude 、 include_once 、require 、 require_once 、 fopen 、 readfile
◦ 這次講題 focus 在 File Inclusion 這個部分
2
大綱大綱
1. LFI 成因與限制2. RFI 成因與限制3. PHP 的截斷與 Directory Traversal4. LFI get shell5. Demo
3
LFILFI 成因與限制成因與限制
Include or Require
4
LFILFI 成因與限制成因與限制
LFI & 跳脫字元
5
RFIRFI 成因與限制 強大但 肋雞成因與限制 強大但 肋雞
php.ini◦ allow_url_include =ON ( 但預設都是關掉的 囧 )
開了就從 LFI 升級成 RFI
6
RFIRFI 成因與限制 強大但 肋雞成因與限制 強大但 肋雞
另外的方法 ( 若檢查 file 存在 ) : php 5.0 以上Using php://input wrapper
7
RFIRFI 成因與限制 最近漏洞應用成因與限制 最近漏洞應用
最近的 php-cgi 漏洞應用 (2012/5/6)
8
PHPPHP 的截斷與的截斷與 Directory Directory TraversalTraversal
%00 截斷 (php 5.3.2 修復 )
9
PHPPHP 的截斷與的截斷與 Directory Directory TraversalTraversal
//////// or /././././././◦ Win : 256 , linux : 4096 ◦ 缺點 : 不能 traversal ../../../../ 了,只能該目錄
及子目錄的東西◦ 優點: no any patch!!
10
LFILFI 利用方式大集合利用方式大集合
1. 讀取系統資訊◦ Linux OS : /etc/issue◦ Linux Kernel : /proc/version
11
LFILFI 利用方式大集合利用方式大集合
2. 讀 /proc/self/environ GetShell( 強大但不常見 )
LFILFI 利用方式大集合利用方式大集合
2. 讀 /proc/self/environ GetShell( 強大但不常見 )
LFILFI 利用方式大集合利用方式大集合
3. 包含 error_log ( 大部分不行 )4. PHP session 包含與上傳 案檔 php 的 session 存在 裡,怎麼包含哪 呢 ?
/var/lib/php/session/sess_26 位亂碼26 位亂碼 就在你的 cookie 的到查 ~
14
DemoDemo
Zero day Demo
15