前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何使用WAFARAY增强你的恶意软件检测能力

如何使用WAFARAY增强你的恶意软件检测能力

作者头像
FB客服
发布2023-08-08 13:41:49
2400
发布2023-08-08 13:41:49
举报
文章被收录于专栏:FreeBuf

关于WAFARAY

WAFARAY是一款基于Web应用防火墙和YARA规则的强大安全工具,该工具可以帮助广大研究人员增强自身的恶意软件检测能力。WAFARAY是一个基于Debian 11.3.0(稳定版) x64实现的实验环境,能够基于Web应用防火墙和YARA规则来检测通过Web功能(例如文件上传)感染的恶意文件,例如Webshell、病毒、恶意软件和恶意代码等等。

工作机制

1、通过使用自定义规则的ModSecurity(WAF)预编译并准备使用YARA规则; 2、工具将使用该自定义规则对可能包含恶意代码的文件进行检查和检测; 3、一般来说,如果通过Web功能(例如上传文件)上传了可疑文件,那么ModSecurity将会拒绝接收该文件并返回403错误代码;

工具架构

主路径

Yara编译规则: /YaraRules/Compiled Yara默认规则: /YaraRules/rules Yara脚本: /YaraRules/YaraScripts Apache vhosts: /etc/apache2/sites-enabled Temporal文件: /temporal

实现方法

Blueteamers:规则执行,发送警报,检测通过Web上传文件功能上传的恶意软件; Redteamers/pentesters:灰盒范围,上传和绕过恶意文件,规则执行; Security Officers:持续警报、威胁搜索; SOC:监控恶意文件; CERT:恶意软件分析,判断新的IoC;

实验环境部署

项目提供了一个wafaray_install.sh,项目提供的manual_instructions.txt中也包含了手动安装的指引。除此之外,还提供了一个PHP页面来帮助我们于工具交互并使用WAF+YARA来检测恶意文件。

通过Shell脚本安装

首先,我们需要安装并配置好Debian 11.3.0环境:

https://cdimage.debian.org/debian-cd/current/amd64/iso-dvd/debian-11.3.0-amd64-DVD-1.iso

接下来,使用VMware或VirtualBox部署Debian。

安装完成之后,请运行下列命令:

代码语言:javascript
复制
alex@waf-labs:~$ su root

root@waf-labs:/home/alex#
代码语言:javascript
复制

建议修改YOUR_USER为你自己的用户名,例如waf:

代码语言:javascript
复制
root@waf-labs:/home/alex# sed -i 's/^\(# User privi.*\)/\1\nalex ALL=(ALL) NOPASSWD:ALL/g' /etc/sudoers

root@waf-labs:/home/alex# exit

alex@waf-labs:~$ sudo sed -i 's/^\(deb cdrom.*\)/#\1/g' /etc/apt/sources.list

alex@waf-labs:~$ sudo sed -i 's/^# \(deb\-src http.*\)/ \1/g' /etc/apt/sources.list

alex@waf-labs:~$ sudo sed -i 's/^# \(deb http.*\)/ \1/g' /etc/apt/sources.list

alex@waf-labs:~$ echo -ne "\n\ndeb http://deb.debian.org/debian/ bullseye main\ndeb-src http://deb.debian.org/debian/ bullseye main\n" | sudo tee -a  /etc/apt/sources.list

alex@waf-labs:~$ sudo apt-get update

alex@waf-labs:~$ sudo apt-get install sudo -y

alex@waf-labs:~$ sudo apt-get install git vim dos2unix net-tools -y

alex@waf-labs:~$ git clone https://github.com/alt3kx/wafaray

alex@waf-labs:~$ cd wafaray

alex@waf-labs:~$ dos2unix wafaray_install.sh

alex@waf-labs:~$ chmod +x wafaray_install.sh

alex@waf-labs:~$ sudo ./wafaray_install.sh >> log_install.log
代码语言:javascript
复制
(向右滑动,查看更多)

测试你的实验环境:

代码语言:javascript
复制
alex@waf-labs:~$ firefox localhost:8080/upload.php

工具使用

Yara规则

当Yara规则下载并编译完毕之后,我们还需要自定义需要部署的规则类型。下面的日志中,显示的是当Web应用防火墙+Yara规则检测到恶意文件时的场景:

代码语言:javascript
复制
Message: Access denied with code 403 (phase 2). File "/temporal/20220812-184146-YvbXKilOKdNkDfySME10ywAAAAA-file-Wx1hQA" rejected by

the approver script "/YaraRules/YaraScripts/modsec_yara.py": 0 SUSPECTED [YaraSignature: eicar]

[file "/etc/apache2/sites-enabled/test.conf"] [line "56"] [id "500002"]

[msg "Suspected File Upload:eicar.com.txt -> /temporal/20220812-184146-YvbXKilOKdNkDfySME10ywAAAAA-file-Wx1hQA - URI: /upload.php"]
代码语言:javascript
复制
(向右滑动,查看更多)

测试WAFARAY

终止/运行ModSecurity

代码语言:javascript
复制
$ sudo service apache2 stop

$ sudo service apache2 start

Apache日志

代码语言:javascript
复制
$ cd /var/log

$ sudo tail -f apache2/test_access.log apache2/test_audit.log apache2/test_error.log
代码语言:javascript
复制
(向右滑动,查看更多)
代码语言:javascript
复制

许可证协议

本项目的开发与发布遵循GPL-3.0开源许可证协议。

项目地址

WAFARAY

https://mp.weixin.qq.com/cgi-bin/appmsg?t=media/appmsg_edit_v2&action=edit&isNew=1&type=77&createType=0&token=41151176&lang=zh_CN#---3

https://owasp.org/www-community/vulnerabilities/Unrestricted_File_Upload https://kifarunix.com/intercept-malicious-file-upload-with-modsecurity-and-clamav/ https://portswigger.net/daily-swig/waf-reloaded-modsecurity-3-1-showcased-at-black-hat-asia https://yara.readthedocs.io/en/latest/gettingstarted.html https://yara.readthedocs.io/en/v3.4.0/yarapython.html https://virustotal.github.io/yara/ https://www.tutorialspoint.com/perl/perl_introduction.htm https://malware.expert/scan-every-file-clam-antivirus-scanner-modsecurity/ https://xael.org/pages/pyclamd-en.html https://docs.clamav.net/ https://www.decalage.info/en/python/pyclamd https://opensource.apple.com/source/clamav/clamav-116.2/clamav.Conf/clamd.conf.auto.html https://c99.sh/hunting-0days-with-yara-rules/ https://github.com/claroty/arya https://isc.sans.edu/diary/YARA%27s+Console+Module/28288

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-07-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 关于WAFARAY
  • 工作机制
  • 工具架构
    • 主路径
      • 实现方法
      • 实验环境部署
        • 通过Shell脚本安装
        • 工具使用
          • Yara规则
          • 测试WAFARAY
          • 许可证协议
          • 项目地址
          相关产品与服务
          Web 应用防火墙
          腾讯云 Web 应用防火墙(Web Application Firewall,WAF)帮助腾讯云内及云外用户应对 Web 攻击、入侵、漏洞利用、挂马、篡改、后门、爬虫等网站及 Web 业务安全防护问题。企业通过部署腾讯云 WAF 服务,将 Web 攻击威胁压力转移到腾讯云 WAF 防护集群节点,分钟级获取腾讯 Web 业务防护能力,为网站及 Web 业务安全运营保驾护航。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档