INFOKOM-KI/yara-scan-judol

GitHub: INFOKOM-KI/yara-scan-judol

一套聚焦印尼网络赌博黑产注入的 Yara 规则集,帮助安全团队检测公共网站中的赌博内容注入、PHP 后门、Black SEO 和 WordPress 入侵等威胁。

Stars: 0 | Forks: 0

# YARA 规则 — 检测印尼网络赌博 (Judol) 用于检测网络赌博内容、网络赌博后门以及针对印尼网站的 Black SEO 技术的 Yara 规则集合。 **作者:** Nauliajati <csirt@tangerangkota.go.id> **组织:** TangerangKota-CSIRT **版本:** 1.0 | **日期:** 2026-05-06 **许可证:** [TangerangKota-CSIRT Detection Rule License 1.0](LICENSE) ## 背景 印尼的政府网站、学校和公共机构是非法网络赌博活动的主要目标。攻击者不仅仅是建立他们自己的赌博网站,他们还会黑客入侵政府、学校和其他组织的官方网站,然后暗中注入赌博内容,以用于搜索引擎推广 (SEO)。 此规则集是通过直接观察攻击模式开发而成的,旨在帮助 CSIRT 团队、服务器管理员和安全分析师快速准确地检测此类活动。 ## 规则集结构 ``` yara-rules-dev/ ├── judol_keywords_.yar # Deteksi kata kunci konten judi (6 aturan) ├── judol_php_backdoor_.yar # Deteksi PHP backdoor judol (6 aturan) ├── judol_blackseo_inject_.yar # Deteksi injeksi Black SEO (6 aturan) ├── judol_wordpress_.yar # Deteksi kompromi WordPress (6 aturan) ├── judol_javascript_inject_.yar # Deteksi injeksi JavaScript (5 aturan) ├── JUDOL_YARA_RULES.md # Dokumentasi teknis lengkap ├── LICENSE # Lisensi penggunaan └── README.md # File ini ``` ## 检测内容 ### 1. 赌博内容关键字 (`judol_keywords_.yar`) 检测网页文件中的赌博关键字。这些词汇绝对不会合法出现在政府或公共网站上。 | 规则 | 阈值 | 分数 | |---|---|---| | `Judol_1` | 17 个老虎机关键字中满足 4 个 | 70 | | `Judol_2` | 15 个彩票关键字中满足 2 个 | 75 | | `Judol_3` | 15 个赌场关键字中满足 3 个 | 65 | | `Judol_4` | 2 个供应商 + 1 个行为词 | 60 | | `Judol_5` | 15 个存款/促销术语中满足 2 个 | 75 | | `Judol_6` | 文件大小 < 100KB 内包含 6 个关键字 | 80 | 包含:`slot gacor`、`bocoran rtp`、`bandar togel`、`togel online`、`deposit pulsa`、`bonus new member`、`pragmatic play`、`mahjong ways`、`gates of olympus` 以及其他术语。 ### 2. PHP 网络赌博后门 (`judol_php_backdoor_.yar`) 检测具备 Shell 或注入能力,同时包含赌博内容的 PHP 文件。 | 规则 | 分数 | 检测目标 | |---|---|---| | `Judol_PHP_Eval_Inject` | 85 | `eval()` / `base64_decode()` + 赌博关键字 | | `Judol_PHP_Cloaking_Bot` | 90 | 检查 User-Agent Googlebot + 赌博内容/重定向 | | `Judol_PHP_WP_OptionInject` | 90 | WordPress `update_option()` + 赌博元数据 | | `Judol_PHP_Redirect_Domain` | 80 | `header("Location:")` + 赌博域名/关键字 | | `Judol_PHP_Backdoor_Hidden_SEO` | 85 | 获取远程内容 + 包含赌博内容的隐藏 div | | `Judol_PHP_Shell_Combo` | 95 | RCE (`system`, `exec`) + 赌博内容 | ### 3. Black SEO 注入 (`judol_blackseo_inject_.yar`) 检测隐藏网络赌博内容以使其对搜索引擎 (SEO) 可见的技术。 | 规则 | 分数 | 检测目标 | |---|---|---| | `Judol_BlackSEO_Hidden_Links` | 85 | `display:none` / `visibility:hidden` + 赌博链接 | | `Judol_BlackSEO_Meta_Inject` | 80 | Meta keywords/description 被注入赌博关键字 | | `Judol_BlackSEO_WhiteText` | 80 | 注入白色文本 | | `Judol_Htaccess_Redirect` | 85 | .htaccess `RewriteRule` 重定向至赌博域名 | | `Judol_BlackSEO_Hidden_Iframe` | 80 | 尺寸为 0x0 像素且指向赌博网站的 Iframe | | `Judol_BlackSEO_AnchorText` | 75 | 带有赌博关键字 anchor text 的 `` 标签 | ### 4. WordPress 被入侵 (`judol_wordpress_.yar`) WordPress 是最常被用于网络赌博入侵的 CMS。此规则集用于检测特定于 WordPress 生态系统的模式。 | 规则 | 分数 | 检测目标 | |---|---|---| | `Judol_WP_FakePlugin` | 85 | 带有 WP 头部 + 赌博注入代码的虚假插件 | | `Judol_WP_ThemeInject` | 80 | functions.php / 主题被篡改 + 赌博内容 | | `Judol_WP_Action_Hook_Inject` | 85 | `add_action()` / `add_filter()` + 赌博内容 | | `Judol_WP_PostDB_Inject` | 85 | `wp_insert_post()` / `wpdb->query()` + 赌博内容 | | `Judol_WP_Admin_Backdoor` | 90 | 创建隐藏的管理员账户 + 赌博上下文 | | `Judol_WP_Cloaking_Bypass` | 85 | `is_user_logged_in()` + 隐藏的赌博内容 | ### 5. JavaScript 注入 (`judol_javascript_inject_.yar`) 检测用于重定向、生成动态内容或基于浏览器的 SEO Cloaking 的 JavaScript 代码。 | 规则 | 分数 | 检测目标 | |---|---|---| | `Judol_JS_Redirect` | 80 | `window.location` 重定向至赌博域名/关键字 | | `Judol_JS_ContentGen` | 80 | `document.write()` / `innerHTML` + 赌博内容 | | `Judol_JS_Cloaking_UA` | 90 | `navigator.userAgent` 检查 Googlebot + 赌博内容 | | `Judol_JS_RemoteLoad` | 80 | `fetch()` / `XMLHttpRequest` + 赌博上下文 | | `Judol_JS_Obfuscated_Payload` | 75 | `eval(atob())` / `fromCharCode()` + 赌博关键字 | ## 使用方法 ### 前提条件 ``` # 安装 Yara apt install yara # Debian/Ubuntu yum install yara # CentOS/RHEL brew install yara # macOS # Yara-X (推荐) git clone https://github.com/VirusTotal/yara-x cd yara-x cargo install --path cli ``` ### 验证语法 ``` # Yara yara --syntax-check *.yar # YARA-X yr check *.yar ``` ### 扫描单个文件 ``` yara -r *.yar /var/www/html/wp-content/plugins/plugin-xxx/a.php ``` ### 扫描整个网页目录 ``` # 所有规则同时运行,递归 yara -r *.yar /var/www/html/ # 显示触发字符串 (用于 triage) yara -rs *.yar /var/www/html/ ``` ### 将结果保存到文件 ``` yara -r *.yar /var/www/html/ > hasil_scan_$(date +%Y%m%d).txt ``` ### 仅扫描 PHP 文件 ``` find /var/www/html -name "*.php" -exec yara judol_php_backdoor_.yar {} \; ``` ### 通过 Cron 自动化 ``` # 添加到 crontab (crontab -e) 0 2 * * * yara -r /home/auli/yara-rules-dev/*.yar /var/www/html/ \ >> /var/log/hasil_judol_scan.log 2>&1 ``` ## 分数解读 | 分数 | 解读 | 操作 | |---|---|---| | **90–95** | 几乎确定已被入侵 | 立即隔离,进行取证调查 | | **80–89** | 非常可疑 | 在 24 小时内进行人工验证 | | **70–79** | 可疑,需结合上下文 | 检查文件,并查看修改历史 | | **60–69** | 初步迹象 | 记录,监控,并将其作为线索证据 | ## 处理误报 最常见的误报来源: - 报道网络赌博突击检查的**新闻报道**,通常触发的是关键字规则,而不是技术性的 yara 规则 - 提到 DANA/GoPay 的**支付插件**,需检查是在电商还是网络赌博的上下文中 - 提到 Pragmatic Play/PG Soft 的**游戏评测**,需检查是否包含网络赌博的行为词(例如:注册、存款、备用链接) 快速验证方法: ``` # 查看触发字符串及其上下文 yara -s judol_keywords_.yar xxx.html # 检查文件最后修改时间 stat xxx.php # 与备份进行比较 diff xxx.php /backup/xxx.php ``` 请将误报情况报告至 csirt@tangerangkota.go.id,以便我们持续改进此规则集。 ## TTP 技术 (MITRE ATT&CK) | 技术 | MITRE ID | 相关规则 | |---|---|---| | PHP Command Execution | T1059.005 | `PHP_Eval_Inject`, `PHP_Shell_Combo` | | JavaScript Execution | T1059.007 | `JS_Redirect`, `JS_ContentGen` | | Masquerading (Cloaking) | T1036 | `PHP_Cloaking_Bot`, `JS_Cloaking_UA` | | Web Shell | T1505.003 | `WP_FakePlugin`, `WP_ThemeInject` | | Defacement | T1491.001 | `BlackSEO_Meta_Inject`, `AnchorText` | | Account Manipulation | T1098 | `WP_Admin_Backdoor` | | Traffic Signaling | T1205 | `Htaccess_Redirect` | | Hidden Files | T1564 | `BlackSEO_Hidden_Links`, `WhiteText` | ## 局限性 - 无法检测在运行时解密的完全加密 payload - 不涵盖直接针对数据库 (MySQL/MariaDB) 的注入 - 不基于域名信誉,如需封锁赌博域名,请使用单独的威胁情报源 - 尚未检测图片/媒体文件中的内容(将在后续更新) 有关包含网络赌博攻击流程、详细 MITRE 映射以及 SIEM 集成指南的完整技术文档,请参阅 [JUDOL_YARA_RULES.md](JUDOL_YARA_RULES.md)。 ## 许可证与署名 此规则集由 **Nauliajati, TangerangKota-CSIRT** 开发,并在 [TangerangKota-CSIRT Detection Rule License 1.0](LICENSE) 下授权。在注明适当出处的前提下,可免费用于防御目的。 如有技术问题、贡献或误报告知,请联系: **csirt@tangerangkota.go.id**
标签:CISA项目, CSIRT, DNS信息、DNS暴力破解, IP 地址批量处理, JavaScript注入, Naabu, PHP安全, SEO注入, Webshell检测, WordPress安全, YARA规则, 内容安全, 印尼在线赌博, 合规检测, 后门检测, 威胁情报, 库, 应急响应, 开发者工具, 操作系统监控, 政府网站安全, 数字取证, 数据可视化, 文件完整性监控, 网站入侵检测, 网站防篡改, 网络信息收集, 网络安全, 自动化脚本, 规则集, 隐私保护, 非法内容监测, 黑帽SEO