原创:3s_NwGeek合天智汇
原创投稿活动:https://link.zhihu.com/?target=https%3A//mp.weixin.qq.com/s/Nw2VDyvCpPt_GG5YKTQuUQ
最近我们公司准备有几个实习生要转正了,领导让我亲自出一些结合实际安全工作的题目,题目的由来都是从工作中遇到过的问题到解决的的过程中产生的。从简单到难的题目,既能考到实习生的知识基础,又能考到他们的学习能力(面对不同未接触过的难题如何去应对),还有就是情景开放式答题,网上能查到一点资料,但是又需要自己思考的,结合实际工作来回答的。好的话不多说,由简至难奉上题目,以及参考答案,希望我的工作经验中发现的问题能帮到大家。1. Zookeeper默认的端口
三个端口:
- 2181:对cline端提供服务
- 3888:选举leader使用
- 2888:集群内机器通讯使用(Leader监听此端口)
官方文档:
http://zookeeper.apache.org/doc/r3.5.5/zookeeperStarted.html
参考资料1:
https://blog.youkuaiyun.com/webnum/article/details/76653665
参考资料2:
https://www.jianshu.com/p/5e012efb2d82
2. Zookeeper主要的作用:
开源的、分布式的、应用程序协调服务
推荐:参考资料1(ZooKeeper是什么)——
https://blog.youkuaiyun.com/u012152619/article/details/52901319
参考资料2(ZooKeeper详解) ——
https://www.imooc.com/article/251135
参考资料3(漫画图解ZooKeeper)——
https://juejin.im/post/5b037d5c518825426e024473
3. Zookeeper 未授权访问的检查方法
telnet zookeeper端口 输入envi,回显路径等信息则存在zookeeper未授权访问漏洞
4. 请列出让客户满意的Zookeeper未授权访问漏洞的修复方案
根据客户实际情况可以提供以下修复方案:
- 禁止将zookeeper暴露在公网
- 使用iptables对端口进行访问控制
- 添加访问控制,根据情况选择对应方式(认证用户,用户名密码)
- 绑定指定IP访问
参考链接1:https://thief.one/2017/12/08/1
参考链接2:
https://p4yche.com/2018/08/10/zookeepr%E6%9C%AA%E6%8E%88%E6%9D%83%E8%AE%BF%E9%97%AE%E6%BC%8F%E6%B4%9E/zookper%E6%9C%AA%E6%8E%88%E6%9D%83%E8%AE%BF%E9%97%AE/
5. Weblogic后台默认密码
weblogic/weblogic
6. weblogic CVE-2019-2725漏洞描述与让客户满意的修复方案
漏洞描述 :由于在反序列化处理输入信息的过程中存在缺陷,未经授权的攻击者可以发送精心构造的恶意 HTTP 请求,利用该漏洞获取服务器权限,实现远程代码执行。
修复建议 : 官方目前已发布针对此漏洞的紧急修复补丁,可以采取以下4种方式进行防护。
- 及时打上官方CVE-2019-2725补丁包官方已于4月26日公布紧急补丁包,下载地址:https://www.oracle.com/technetwork/security-advisory/alert-cve-2019-2725-5466295.html?from=timeline
- 升级本地JDK版本因为Weblogic所采用的是其安装文件中默认1.6版本的JDK文件,属于存在反序列化漏洞的JDK版本,因此升级到JDK7u21以上版本可以避免由于Java原生类反序列化漏洞造成的远程代码执行。
- 配置URL访问控制策略部署于公网的WebLogic服务器,可通过ACL禁止对/_async/及/wls-wsat/路径的访问。
- 删除不安全文件删除wls9_async_response.war与wls-wsat.war文件及相关文件夹,并重启Weblogic服务。具体文件路径如下:10.3.*版本:
Middlewarewlserver_10.3serverlib%DOMAIN_HOME%serversAdminServermp_WL_internal%DOMAIN_HOME%serversAdminServermp.internal
12.1.3版本:
MiddlewareOracle_Homeoracle_commonmodules%DOMAIN_HOME%serversAdminServermp.internal%DOMAIN_HOME%serversAdminServermp_WL_internal
注:wls9_async_response.war及wls-wsat.war属于一级应用包,对其进行移除或更名操作可能造成未知的后果,Oracle官方不建议对其进行此类操作。若在直接删除此包的情况下应用出现问题,将无法得到Oracle产品部门的技术支持。请用户自行进行影响评估,并对此文件进行备份后,再执行此操作。
参考网站1:
https://www.chainnews.com/articles/956692560698.htm
参考网站2:
https://www.anquanke.com/post/id/177381#h2-3
6.2
假设现weblogic爆发0day漏洞,weblogic的/vulpath存在漏洞,所有存在http://ip:port/vulpath 路径的系统均受影响,现已完成目标资产的端口扫描,需要你紧急排查受影响资产,请说说你的做法
假设端口扫描时已有版本识别,挑出所有weblogic服务 挑出weblogic服务存在IP+端口地址后,通过url批量检测脚本httpCatcher.py检测出是否存在ip:port/vulpath路径200返回值,返回即为受影响资产
用法为:将IP+端口存在一个ip.txt文件。

然后修改httpCatcher.py的路劲改为/vulpath


输入命令python httpCatcher.py ip.txt 1.csv即可得到1.csv文件,查看即可



7.以下exp是属于哪个cms的远程代码执行漏洞:
http://localhost:9096/public/index.php?s=index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=system&vars1=whoami
路径有关键字 think , 和 PHP ,再使用payload进行查询可知为 thinkphp 中间件 thinkPHP是国产开源的PHP开发框架,中国使用最多
参考资料:
https://www.jianshu.com/p/5c7ba693b265
8.流量分析:webshell流量交互的流量特征有哪些(列举3个特征来简略描述)
webshell是用来控制服务器的,在控制服务器的过程中,就会触发许多 系统函数 ,例如eval、z0(菜刀特征)、shell,需监控这些关键的函数,具体需要查看是哪个网页发起的请求进行鉴别
除此之外,webshell连接可能使用 base64编码,正常功能也会使用base64容易引起误报,一般与eval数量对比,数量差异较小时可能被上传webshell进行编码通讯
除了系统函数、base64编码通讯外,还存在int_set("display_errors