Information Leakage and Google Hacking - Shaolin

被遺忘的資訊洩漏

少林10.06 & 10.13

 

綱要

一 、利用Google Hacking 查找資訊洩漏

  1. 傳統資訊洩漏

    • 管理介面

    • 目錄

    • 錯誤訊息

  2. 開發環境資訊洩漏

    • 暫存、測試資訊

    • 版本管控

  3. DNS資訊洩漏

    • DNS Zone Transfer

二、Footprinting & Reconnaissance

三、新漏洞與大數據資料搜集

  1. DDOS大軍

  2. 大量自動化入侵

三、下一步:用戶與伺服器溝通

  1. Wireshark

  2. Burp Suite

四、Shellshock 威脅案例

案例一:攻擊使用CGI的網頁伺服器

案例二:建置惡意DHCP伺服器感染連線使用者

案例三:繞過Git/Subversion伺服器的shell限制

案例四:攻擊Mail伺服器

 

------------------------------------------------------------------------------------------------------------------------

一 、利用Google Hacking 查找資訊洩漏

  1. 傳統資訊洩漏

  • 管理介面

管理介面的洩漏有如有如告訴歹徒保險箱位置

會造成以下風險:

  • 暴力破解管理帳號
  • 後台防禦較弱
  • 不常更新後台,而造成套件管理介面存在漏洞

常見管理介面路徑如:/admin、/administrator、/phpmyadmin、

 

 

建議防範方式:

 

  • 管理介面不對外開放存取(限制Ip)
  • 隱藏管理介面目錄 (複雜的目錄名稱)
  • 加強後台防禦 (驗證碼之類的)

   ~~用Alexa 台灣前525個大網站, 調查phpmyadmin頁面洩漏狀況 7%~~

 

  • 目錄

 

相當於房屋平面設計圖一覽無遺

會造成以下風險:

  • 洩漏網站目錄結構
  • 有機會存取機敏檔案
  • 有機會存取設定檔

~~用Alexa 台灣前525個大網站, 調查 Index of 洩漏狀況 5%~~

建議防範方式:

  • 若無需要請關閉目錄顯示功能

 

 

  • 錯誤訊息

會造成以下風險:

    • 洩漏檔案路徑
    • 洩漏程式寫法
    • 洩漏機敏設定

錯誤訊息洩漏 SQL語法、資料庫帳號密碼、程式碼

                

建議防範方式:

    •      對外關閉錯誤訊息

ex: php.ini >>display_errors=off

 

 

Note:Google Hacking:

指的是利用搜尋引擎的進階搜尋字串,找到企業網站的關鍵資訊。

以下為語法介紹<參考網站: http://forum.slime.com.tw/thread177499.html>

  1. inurl:     搜索指定字元是否存在於URL中

ex. inurl:admin

inurl:/manage

inurl:admin site:fju.edu.tw

inurl:phpmyadmin site:fju.edu.tw

inurl:index.php.bak

inurl:index.php.bak intitle:index.of

inurl:config.php.bak

inurl:FCKeditor site:edu.tw

inurl:phpinfo.php

inurl:cgi-bin filetype:sh

inurl:fckediter

  1. intitle:   搜索網頁標題中是否有指定的字元

ex. intitle:index.of

intitle:index.of fju

intitle:index of 學生證

intitle:index of mp3

intitle:index.of /.git

  1. filetype:  搜索指定類型的文件

ex. filetype:sh

  1. warning:  搜尋錯誤訊息

ex. warning site fju

 

  1. 開發環境資訊洩漏

  • 暫存、測試資訊
    • 開發者為求方便建立的備份或測試
    • 編輯器自動產生的備份檔(index.php)

暫存、測試資訊相當於撿到保險箱藍圖影本

會造成以下風險:

    • 程式碼洩漏 &系統資訊洩漏
    • 測試程式常存有漏洞(test.php)
    • 設定檔資訊洩漏(例如資料庫帳號密碼)

 

~~用Alexa 台灣前525個大網站, 調查 phpinfo 洩漏狀況 9%~~

 

建議防範方式:

    • 不在正式產品環境進行開發
    • 關閉自動備份功能
    • 伺服器過濾備份檔案下載
  • 版本控管

版本控管軟體

版本控管內容可經由WEB存取

會造成以下風險:

    • 完整的專案架構
    • 全部程式碼還原(分析程式碼漏洞)
    • 設定檔資訊洩漏(例如資料庫帳號密碼)

~~用Alexa 台灣前525個大網站, 調查 版本控管目錄 洩漏狀況 10%~~

 

建議防範方式:

    • 禁止版本資料夾對外存取
    • 開發環境應與正式產品環境分開且開發環境不應對外開放
  1. DNS資訊洩漏

  • DNS Zone Transfer

DNS server 間的紀錄同步

Zone Transfer CVE-1999-0532

未限制同步來源,任何人皆可查詢

 

會造成以下風險:(告訴歹徒你家有什麼財產)

    • 發現隱藏的內部服務(防禦較弱)
    • 發現開發環境(防禦較弱)
    • 可推測外網的IP範圍(對網段進行掃描)
    • 可推測內網的IP範圍(對網段進行掃描)

介紹與操作流程:http://devco.re/blog/2014/05/05/zone-transfer-CVE-1999-0532-an-old-dns-security-issue/

~~用Alexa 台灣前525個大網站, 調查 DNS server 洩漏狀況 8%~~

 

建議防範方式:

DNS server 可限制存取Zone Transfer的來源

 

組合利用

利用Zone Transfer發現開發機dev168>>開發機存在.svn漏洞>>.svn漏洞找到資料庫帳號密碼>>開發機也有phpmyadmin洩漏>>存取資料庫

 

二、Footprinting & Reconnaissance

 

    • whois

$ whois fju.edu.tw

    • traceroute

$ traceroute fju.edu.tw

    • social engineering
    • google(人肉,GHDB)
    • website footprinting(wpscan,wappaalyzer)
    • 推薦擴充工具 Wappalyzer

原因: 能在瀏覽網頁時自動偵測該網站使用的網路技術

WordPress 網站漏洞掃描器 WPScan

教學: http://nitroxenon.com/wpscan

 

三、新漏洞與大數據資料搜集

  1. DDOS大軍

 

        DNS Amplification DDoS

                    全台灣有61414個IP能拿來利用

        NTP Amplification DDos

                    台灣有1003個IP能拿來利用

  1. 大量自動化入侵

OpenSSL Heartblooding(近十年網路最嚴重的安全漏洞)

        全台灣仍有1480個台主機尚未修復

用Alexa 台灣前525個大網站,共有21網站(4%)個網站尚未修復嚴重漏洞

 

-------------------------------------------------------------------------------------------

物聯網的設備通常安全信都不佳

HP:70% IoT產品有嚴重的漏洞

物聯網設備

    • 安全防護較差
    • 特徵明顯, 容易被搜集版本資訊
    • 使用者更新不易

 

物聯網設備資訊一經收集就是大範圍的被攻擊,進而滲透家用網路危害你居家隱私

面對大數據議題的幾點建議

    • 避免主機資訊被蒐集

              適當隱藏(偽造)服務及版本資訊

    • 對自家服務進行普查

              關閉不必要的對外服務

    •   注意使用服務有無釋出新版本

 

三、下一步:用戶與伺服器溝通

  1. Wireshark

網路封包分析軟體 Wireshark

教學: http://blog.shaolin.tw/2008/03/wireshark.html

  1. Burp Suite

網頁弱點偵測工具 Burp Suite

burpsuite_free_v1.6.28

下載: https://portswigger.net/burp/download.html

 

實作

  • 利用Google Hacking尋找資訊洩漏

  • shellshock

案例:

攻擊使用CGI的網頁伺服器

建置惡意DHCP伺服器感染連線使用者

繞過Git/Subversion伺服器的shell限制

攻擊Mail伺服器

四、Shellshock 威脅案例

  • shellshock概念

環境變數加上神奇字串 (){:;};_____

 欺騙bashe該環境變數為方法宣告

在神奇字串後接任意旨另將會被執行

 

如何變成攻擊,駭客想辦法(必要):

  • 找到地方寫入環境變數

  • 找到地方呼叫bash

 

案例一:攻擊使用CGI的網頁伺服器

條件一:環境變數

HTTP Header器傳入之參數會被寫到環境變數中。

條件二:執行bash

有些接口本身是bash shell script或是子程序有呼叫到bash

 

 

駭客如何利用:

取得系統操作權限(埋後門)

  • 竊取商業資料、會員資料
  • Botnet(C&C server,Bot)
  • 跳板
  • 攻擊內網
  • Denial of Server
  • (){:;};/bin/sleep20|sbin/sleep20|/usr/bin/sleep20
  • 開玩笑

(){:;};/bin/eject ; (){:;};echo-e"\a"

  • 幫忙更新

(){:;};yum -y update bash ; apt-get -y update bash;reboot

 

案例二:建置惡意DHCP伺服器感染連線使用者

條件一:環境變數

DHCP伺服器傳入之參數會被寫到環境變數中。

條件二:執行bash

某些DHCP客戶端會傳指令給bash執行

 

 

駭客如何利用:

滲透內網

  1. 再被攻陷的機器上建置惡意DHCP伺服器

  2. 發送欺騙訊號讓內網所有機器斷線

  3. 內網機器重新請求IP馬上中招

  4. 滲透大量內網機器(通常是最高權限)

 

案例三:繞過Git/Subversion伺服器的shell限制

 

條件一:環境變數

SSH連線時command參數會被存成環境變數:SSH_ORIGINAL_COMMAND。

條件二:執行bash

系統預設Shell為bath時,連線後自動啟動bash

駭客如何利用:

  • 繞過SSH伺服器限制

  • 取得系統操作權限(埋後門)

Botnet、攻擊內網...(同前)

 

案例四:攻擊Mail伺服器

條件一:環境變數

寄信時多項數值存成環境變數,例如寄件者。

條件二:執行bash

如果伺服器設定在寄件時使用垃圾信過濾軟體、郵件列表管理軟體等用到bash的程式,就可以利用。

 

駭客如何利用:

  • 取得系統操作權限(埋後門)

  • 竊取所有郵件資料

Botnet、攻擊內網...(同前)

 

因應之道

  • 更新系統bash至最新版本,並關注是否有後續更新

  • 過濾來源(IPTables、IDS、WAF...),防範遠端攻擊

  • 系統強化,阻檔惡意指令執行,例如使用SELinux

 

小結

  • 駭客利用Shellshock漏洞取得系統操作權限。 透過CGI、DHCP、SSH等途徑感染。

  • 目前駭客仍在尋找其他利用點,Shellshock威脅案例還會更多

  • 一些網路設備如NAS常被使用者忽略,是高危險群,應加強調查。

  • 建議所有UN*X環境產品立即更新bash

  • 預計會有更多駭客投入bash原始碼檢視

 

結論

  • 駭客如何利用資訊洩漏進行攻擊

  • 目前仍有網站沒做到最基本的資訊防護

  • 駭客正在蒐集你的資料並公布在網路

  • 大數據+物聯網時代 =大規模入侵

  • 由大數據看一般人對資安事件警覺不夠

  • 正確的系統設定,避免資訊洩漏

  • 適當的隱藏系統、框架等版本資訊

  • 對自己服務做普查,關閉不必要對外服務

  • 掌握最新資安消息,及時更新常用套件

 

老師建議和提問

    IoT在以後的物聯網, 設備都是server, 面對的資訊洩漏又不一樣

   

問題

    怎樣是比較好的自主學習方法?讓自己舒服一點 也可以解決問題

    要會入侵, 最好會自己寫一個

    要找到自己學習的目標

 

    花時間努力解答題目,解不出來就等解完的人的答案去學習

    Top-down bottom-up

    滲透測試中學習不熟的技術 框架

    回到前面 主要還是要有目的目標