SlideShare a Scribd company logo
1 of 15
PHP LFI RFI 掃盲大補帖
            hack-stuff.com
                2012/11/3




                             1
PHP fuzzing 兩大 getshell 的方法
 (SQL injection 會受限於資料庫,略過 ~~)
 ◦ Execution : Eval 、 system command
    eval 、 assert 、 shell_exec 、 system

 ◦ File Inclusion : LFI 、 RFI
   include 、 include_once 、
   require 、 require_once 、 fopen 、 readfile
 ◦ 這次講題 focus 在 File Inclusion 這個部分




PHP fuzzing
                                               2
1.   LFI 成因與限制
2.   RFI 成因與限制
3.   PHP 的截斷與 Directory Traversal
4.   LFI get shell
5.   Demo




大綱
                                    3
Include   or Require




LFI 成因與限制
                        4
LFI   & 跳脫字元




LFI 成因與限制
                5
php.ini
 ◦ allow_url_include =ON ( 但預設都是關掉的 囧 )
開了就從      LFI 升級成 RFI




RFI 成因與限制 強大但雞 肋
                                          6
另外的方法   ( 若檢查 file 存在 ) : php 5.0 以上
Using php://input wrapper




RFI 成因與限制 強大但雞 肋
                                        7
最近的   php-cgi 漏洞應用 (2012/5/6)




RFI 成因與限制 最近漏洞應用
                                 8
%00   截斷 (php 5.3.2 修復 )




PHP 的截斷與 Directory
Traversal
                            9
////////   or /././././././
 ◦ Win : 256 , linux : 4096
 ◦ 缺點 : 不能 traversal ../../../../ 了,只能該目錄
   及子目錄的東西
 ◦ 優點: no any patch!!




PHP 的截斷與 Directory
Traversal
                                            10
1.    讀取系統資訊
     ◦ Linux OS : /etc/issue
     ◦ Linux Kernel : /proc/version




LFI 利用方式大集合
                                      11
2.讀 /proc/self/environ GetShell( 強大但
 不常見 )




LFI 利用方式大集合
2.讀 /proc/self/environ GetShell( 強大但
 不常見 )




LFI 利用方式大集合
3. 包含 error_log ( 大部分不行 )
4. PHP session 包含與上傳檔案
   php 的 session 存在哪裡,怎麼包含呢 ?
   /var/lib/php/session/sess_26 位亂碼
   26 位亂碼 就在你的 cookie 查的到 ~




LFI 利用方式大集合
                                      14
Zero   day Demo




Demo
                   15

More Related Content

What's hot

如何使用Console連接眾至UTM設備
如何使用Console連接眾至UTM設備如何使用Console連接眾至UTM設備
如何使用Console連接眾至UTM設備
sharetech
 
Tutorial matriks_jawapan
Tutorial matriks_jawapanTutorial matriks_jawapan
Tutorial matriks_jawapan
Hazlin Nazri
 
Lembaran kerja Matematik - Operasi Bergabung Tambah dan Tolak
Lembaran kerja Matematik - Operasi Bergabung Tambah dan TolakLembaran kerja Matematik - Operasi Bergabung Tambah dan Tolak
Lembaran kerja Matematik - Operasi Bergabung Tambah dan Tolak
AsyrafRidzuan
 
Huraian sukatan Sains Tahun 5 (BM)
Huraian sukatan Sains Tahun 5 (BM)Huraian sukatan Sains Tahun 5 (BM)
Huraian sukatan Sains Tahun 5 (BM)
mohd hafizan
 
Modul pdp sains tahun 5 KSSR
Modul pdp sains tahun 5 KSSRModul pdp sains tahun 5 KSSR
Modul pdp sains tahun 5 KSSR
saliza_sains
 
Form 5 Chapter 2 Part 1
Form 5 Chapter 2 Part 1Form 5 Chapter 2 Part 1
Form 5 Chapter 2 Part 1
Ahmad Rizal
 
Chemistry paper 3
Chemistry paper 3Chemistry paper 3
Chemistry paper 3
Ina Amalina
 
Modul penyelesaian masalah matematik 3
Modul penyelesaian masalah matematik 3Modul penyelesaian masalah matematik 3
Modul penyelesaian masalah matematik 3
soulmoon
 

What's hot (20)

Pat pjk tingkatan 1
Pat pjk tingkatan 1Pat pjk tingkatan 1
Pat pjk tingkatan 1
 
如何使用Console連接眾至UTM設備
如何使用Console連接眾至UTM設備如何使用Console連接眾至UTM設備
如何使用Console連接眾至UTM設備
 
SPM PHYSICS FORM 5 electricity
SPM PHYSICS FORM 5 electricitySPM PHYSICS FORM 5 electricity
SPM PHYSICS FORM 5 electricity
 
LATIHAN TAJUK RUANG
LATIHAN TAJUK RUANGLATIHAN TAJUK RUANG
LATIHAN TAJUK RUANG
 
Tutorial matriks_jawapan
Tutorial matriks_jawapanTutorial matriks_jawapan
Tutorial matriks_jawapan
 
Asas nombor… math tg5
Asas nombor… math tg5Asas nombor… math tg5
Asas nombor… math tg5
 
Lembaran Kerja Darab, Bahagi dan Pecahan Tahun 2
Lembaran Kerja Darab, Bahagi dan Pecahan Tahun 2Lembaran Kerja Darab, Bahagi dan Pecahan Tahun 2
Lembaran Kerja Darab, Bahagi dan Pecahan Tahun 2
 
Lembaran kerja Matematik - Operasi Bergabung Tambah dan Tolak
Lembaran kerja Matematik - Operasi Bergabung Tambah dan TolakLembaran kerja Matematik - Operasi Bergabung Tambah dan Tolak
Lembaran kerja Matematik - Operasi Bergabung Tambah dan Tolak
 
Huraian sukatan Sains Tahun 5 (BM)
Huraian sukatan Sains Tahun 5 (BM)Huraian sukatan Sains Tahun 5 (BM)
Huraian sukatan Sains Tahun 5 (BM)
 
Pelan strategik tkrs 2018
Pelan strategik tkrs 2018Pelan strategik tkrs 2018
Pelan strategik tkrs 2018
 
Buku catatan aktiviti harian kelab doktor muda
Buku catatan aktiviti harian kelab doktor mudaBuku catatan aktiviti harian kelab doktor muda
Buku catatan aktiviti harian kelab doktor muda
 
matematik tingkatan 1 (nota 1)
matematik tingkatan 1 (nota 1)matematik tingkatan 1 (nota 1)
matematik tingkatan 1 (nota 1)
 
Modul pdp sains tahun 5 KSSR
Modul pdp sains tahun 5 KSSRModul pdp sains tahun 5 KSSR
Modul pdp sains tahun 5 KSSR
 
Form 5 Chapter 2 Part 1
Form 5 Chapter 2 Part 1Form 5 Chapter 2 Part 1
Form 5 Chapter 2 Part 1
 
Chemistry paper 3
Chemistry paper 3Chemistry paper 3
Chemistry paper 3
 
Dbm2013 engineering mathematics 3 june 2017
Dbm2013  engineering mathematics 3 june 2017Dbm2013  engineering mathematics 3 june 2017
Dbm2013 engineering mathematics 3 june 2017
 
1. functions
1. functions1. functions
1. functions
 
3 persediaan untuk pertandingan
3 persediaan untuk pertandingan3 persediaan untuk pertandingan
3 persediaan untuk pertandingan
 
SKEMA TRIAL SPM K2 SET A 2022-1.pdf
SKEMA TRIAL SPM K2 SET A 2022-1.pdfSKEMA TRIAL SPM K2 SET A 2022-1.pdf
SKEMA TRIAL SPM K2 SET A 2022-1.pdf
 
Modul penyelesaian masalah matematik 3
Modul penyelesaian masalah matematik 3Modul penyelesaian masalah matematik 3
Modul penyelesaian masalah matematik 3
 

Viewers also liked

Antivirus Bypass
Antivirus BypassAntivirus Bypass
Antivirus Bypass
hackstuff
 
cmd injection
cmd injectioncmd injection
cmd injection
hackstuff
 
調試器原理與架構
調試器原理與架構調試器原理與架構
調試器原理與架構
hackstuff
 
Webshell 簡單應用
Webshell 簡單應用Webshell 簡單應用
Webshell 簡單應用
hackstuff
 

Viewers also liked (17)

Web2.0 attack and defence
Web2.0 attack and defenceWeb2.0 attack and defence
Web2.0 attack and defence
 
ROP 輕鬆談
ROP 輕鬆談ROP 輕鬆談
ROP 輕鬆談
 
SQL injection duplicate error principle
SQL injection duplicate error principleSQL injection duplicate error principle
SQL injection duplicate error principle
 
Rootkit 101
Rootkit 101Rootkit 101
Rootkit 101
 
Algo/Crypto about CTF
Algo/Crypto about CTFAlgo/Crypto about CTF
Algo/Crypto about CTF
 
新手無痛入門Apk逆向
新手無痛入門Apk逆向新手無痛入門Apk逆向
新手無痛入門Apk逆向
 
Python 網頁爬蟲由淺入淺
Python 網頁爬蟲由淺入淺Python 網頁爬蟲由淺入淺
Python 網頁爬蟲由淺入淺
 
Android Security Development
Android Security DevelopmentAndroid Security Development
Android Security Development
 
Antivirus Bypass
Antivirus BypassAntivirus Bypass
Antivirus Bypass
 
cmd injection
cmd injectioncmd injection
cmd injection
 
調試器原理與架構
調試器原理與架構調試器原理與架構
調試器原理與架構
 
Crawler
CrawlerCrawler
Crawler
 
Webshell 簡單應用
Webshell 簡單應用Webshell 簡單應用
Webshell 簡單應用
 
Dvwa low level
Dvwa low levelDvwa low level
Dvwa low level
 
在開始工作以前,我以為我會寫扣。
在開始工作以前,我以為我會寫扣。在開始工作以前,我以為我會寫扣。
在開始工作以前,我以為我會寫扣。
 
ARM uVisor Debug Refinement Project(debugging facility improvements)
ARM uVisor Debug Refinement Project(debugging facility improvements)ARM uVisor Debug Refinement Project(debugging facility improvements)
ARM uVisor Debug Refinement Project(debugging facility improvements)
 
How To (Really) Get Into Marketing
How To (Really) Get Into MarketingHow To (Really) Get Into Marketing
How To (Really) Get Into Marketing
 

Similar to Php lfi rfi掃盲大補帖 (9)

Phalcon the fastest php framework 阿土伯
Phalcon   the fastest php framework 阿土伯Phalcon   the fastest php framework 阿土伯
Phalcon the fastest php framework 阿土伯
 
Phalcon phpconftw2012
Phalcon phpconftw2012Phalcon phpconftw2012
Phalcon phpconftw2012
 
工作坊簡介
工作坊簡介工作坊簡介
工作坊簡介
 
啟動 Laravel 與環境設定
啟動 Laravel 與環境設定啟動 Laravel 與環境設定
啟動 Laravel 與環境設定
 
Why to choose laravel framework
Why to choose laravel frameworkWhy to choose laravel framework
Why to choose laravel framework
 
第四章解答
第四章解答第四章解答
第四章解答
 
六步教你学会简单Rmi
六步教你学会简单Rmi六步教你学会简单Rmi
六步教你学会简单Rmi
 
课题一:PHP5.3、PHP5.4的特性介绍与深度挖掘
课题一:PHP5.3、PHP5.4的特性介绍与深度挖掘课题一:PHP5.3、PHP5.4的特性介绍与深度挖掘
课题一:PHP5.3、PHP5.4的特性介绍与深度挖掘
 
Laravel - 簡介與環境設定
Laravel - 簡介與環境設定Laravel - 簡介與環境設定
Laravel - 簡介與環境設定
 

Php lfi rfi掃盲大補帖

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