1.2020RWCTF DBaaSadge WP
2.2022Pwnhub春季赛相关体验及wp
3.适合新手0基础一篇文章带你了解CTF大全
4.Apache RocketMQ 远程代码执行漏洞(CVE-2023-37582)
2020RWCTF DBaaSadge WP
本文深入解析了在CTF比赛中如何利用Burp进行暴力破解,码复尤其针对使用Burpsuite BApp及md5crack的码复实践技巧。文章从实战经验出发,码复通过详细复现环境并下载源码分析,码复引导读者了解如何配置环境,码复通过调试报错信息,码复javascript源码推荐找到关键代码段,码复进而分析数据库版本和用户角色。码复
重点在于,码复文章通过对比分析,码复揭示了题目利用了PostgreSQL的码复dblink和mysql_fdw扩展。通过引入“rouge-mysql”概念,码复文章深入探讨了如何利用这两个扩展实现从远程MySQL服务器读取数据的码复策略。文章详细介绍了构建相关环境、码复查询数据库版本与用户角色、码复遍历搜索pg_hba.conf文件,以及使用Burp的Turbo intruder工具进行密码爆破等技术细节。
对于密码爆破过程,文章强调了使用Burp的Turbo intruder工具的效率,以及在实际应用中遇到的性能瓶颈,特别是对于大规模密码集的处理。同时,文章还对比了Python与PHP版本的差异,推荐了更易于操作的PHP版本。
文章进一步深入探讨了提升权限和执行命令的策略,通过对比作者与队友的idea 源码构建解题思路,展示了不同的技术和思维路径。作者提出了通过查找配置文件中的漏洞,尝试免密码登录Superuser账户的方法,而队友则利用了PostgreSQL的交互式命令行特性,通过子查询和远程连接MySQL服务器实现密码获取和执行命令。
文章最后总结了CTF比赛中解决Web类问题的策略,强调了补全技能和准备的必要性,特别是针对Java和PostgreSQL等技术的掌握。文章提供了解题的多个路径和方法,鼓励读者根据自己的情况进行探索和实践。
Pwnhub春季赛相关体验及wp
首次参加Pwnhub举办的大型公开赛,体验令人满意。Pwnhub的声誉名副其实,比赛中只有四个解题,且难度集中在easyrop。比赛前期的宣传充分到位,Pwnhub历来以举办公开月赛闻名,此次公开赛规模空前,奖励丰厚。
比赛题目多样,涵盖了web、misc、crypto、re、pwn等多个方向,nio selector源码还加入了ACM、OCR、以及汇编等不同类型的题目,甚至引入了网页版的传奇游戏,以减轻比赛的枯燥性。题目设计全面,从多个方面考验参赛者的个人能力。
比赛流程流畅,靶机启动迅速,不限制数量,后期取消了靶机时间限制,但在所有靶机都开放在同一IP地址上,端口号可以遍历,加之不是动态flag,可能导致蹭取flag的情况。
首次在CTF比赛中遇到使用Flash游戏的题目,新颖有趣,促使我迅速安装Flash并进入主办方设置的游戏。游戏类题目共有四个小题,最后一个题需要获取服务器的shell,可以视为半个web挑战。
注册账号,创建角色登录游戏,发现公告栏中明确显示了flag,十分友好。java channel源码下一步是购买题目中的元宝召唤道具,但需要通过抽奖将绑定元宝转化为元宝,再购买。打死召唤出的怪物后,会掉落flag之书1,注意掉落的flag之书可以被其他玩家捡走,谨防被抢,我的flag为flag{ nonono_notmola}。
主办方放出服务器源码,虽然经过修改,但仍能从中找出一些漏洞。从log.php中可以获取生成token的密钥,允许任意用户登录其他账户。在log.php中,理论上存在注入漏洞,但线上复现不成功。web方面的其他漏洞未能发现,获取shell需要对游戏服务器文件进行逆向工程。
web部分考察知识新颖且难度适中。在EzPDFParser中,通过java写的PDF解析器在解析PDF时触发log4j2漏洞,搭建恶意JNDI服务器,修改PDF文件即可触发漏洞。在easyCMS中,通过测试MySQL联通性,linuxmysql源码安装利用MySQL读取文件,通过Rogue-MySql-Server实现,使用PHP脚本操作。
在baby_flask中,利用flask模板渲染不会更新的问题,通过生成个模板并在缓存刷新时执行payload,即可获取flag。Misc部分需要使用裸眼3d技巧,借助stegsolve工具将两张图分开,获取flag{ nice_pwnhub}。在其他页面的签到中,通过关于页面的视频中的二维码找到flag。
比赛持续小时,时间较长,但某些类别的题目数量似乎不是很多,如web部分,队伍数量较多,完成三个题后,期待后期上新题,可惜未能如愿。整体体验良好,通过赛题学习到许多知识,期待Pwnhub举办更多类似的公开赛!
适合新手0基础一篇文章带你了解CTF大全
一、什么是CTF?
CTF(Capture The Flag)通常被称为夺旗赛,是网络安全领域的技术人员之间进行技术竞技的一种比赛形式。这一竞赛起源于年的DEFCON全球黑客大会,用以取代之前黑客通过真实攻击进行技术比拼的方式。CTF已成为全球网络安全圈流行的竞赛形式,年全球举办了超过五十场国际性CTF赛事。竞赛模式主要分为解题模式、攻防模式和混合模式。在解题模式下,参赛者需要通过解决网络安全技术挑战题目来获取分数和时间排名;在攻防模式下,参赛者需要攻击对方团队的系统并保护自己的系统不被攻击;在混合模式下,参赛者需要在解题和攻防两种模式下切换。CTF是网络安全竞赛的基本形式,有助于提升网络安全技术的水平和增强网络安全意识。
二、CTF需要学习那些知识?
参与CTF比赛需要掌握以下知识:
编程语言:如C、Python、Java等,用于编写破解程序,攻破目标。
计算机网络协议、端口和IP地址:在解决网络相关的挑战时必不可少。
操作系统:需要熟悉操作系统的基本概念和知识,如进程、文件系统和权限管理等。
算法:如对称加密、非对称加密和哈希函数等,在解决与加密相关的挑战时非常关键。
网络安全理论:如缓冲区溢出、栈和堆溢出、Shellcode等,这些都是CTF比赛中常见的知识点。
攻击手段:了解常见的恶意软件类型和攻击方法,比如病毒、蠕虫和木马等,可以更好地防范和应对攻击。
web安全:了解Web应用程序的基本原理和常见的安全漏洞,比如SQL注入、跨站点脚本攻击等,可以更好地保护自己的Web应用程序。
此外,参加CTF比赛也需要良好的团队协作能力和精神集中力。除了这些基础技能外,还需要不断学习和尝试,积累更多的知识和经验,才能更好地参与CTF比赛并取得好成绩。
三、新书推荐
适合新手自学的网络安全基础技能“蓝宝书”:《CTF那些事儿》
CTF比赛是快速提升网络安全实战技能的重要途径,已成为各个行业选拔网络安全人才的通用方法。但是,本书作者在从事CTF培训的过程中,发现存在几个突出的问题:
1)线下CTF比赛培训中存在严重的“最后一公里”问题,线下培训讲师的水平参差不齐。
2)国内高等院校和职业院校的网络空间安全学科与专业缺乏实战型、系统化的教材和配套实验课程。例如,Base编码是网络安全行业必备的基础知识,但是学校的教材并不涉及该知识点,也没有专门的实验课对该知识进行讲解。
3)大部分CTF比赛书籍对想学习网络空间安全技术的新人不够友好,很多初学者找不到快速、有效的学习方法。
为了解决上述问题,帮助零基础的学习者快速掌握基本技能,同时吸引更多的人关注网络空间安全技能的学习,推进CTF比赛的发展,本书创新性地提出新的CTF知识学习框架,并在每一章附有大量实操练习,即使是没有网络空间安全知识基础的新手,也能按照书中的操作独立复现实验内容。
Apache RocketMQ 远程代码执行漏洞(CVE--)
Apache RocketMQ是一款高效的分布式消息中间件,然而,其在版本5.1.1及以下和4.9.6及以下存在远程代码执行漏洞(CVE--)。此漏洞源于对先前修复(CVE--)的不完善处理,使得在未经授权访问NameServer的情况下,攻击者可以构造恶意请求,以系统用户身份执行命令。
为了验证此漏洞,需要搭建环境。参考了关于CVE--的环境搭建指南。在Linux环境下启动相关服务,使用源码启动RocketMQ。此过程需启动两个服务:NamesrvStartup和BrokerStartup,确保环境变量ROCKETMQ_HOME已配置为ROCKETMQ_HOME=/home/ubuntu/Desktop/rocketmq-rocketmq-all-5.1.0。
漏洞复现通常涉及执行特定脚本或命令。在本例中,运行了一个Python脚本,成功在指定目录下的test.txt文件中写入了“test”字符串。此操作揭示了漏洞的潜在危害。
为助力网络安全学习者,提供了一系列学习资源,包括网安学习成长路径思维导图、+经典常用工具包、+SRC分析报告、+网安攻防实战技术电子书、CISSP认证考试指南、CTF实战技巧手册、网安大厂面试题合集、APP客户端安全检测指南等。
深入分析漏洞,发现org/apache/rocketmq/remoting/protocol/RequestCode.java中的code参数被用于调用特定功能,此处调用的是更新配置操作。根据对应的code,会调用相应的函数进行处理,进一步在org/apache/rocketmq/namesrv/processor/DefaultRequestProcessor.java中实现。在处理过程中,会调用src/main/java/org/apache/rocketmq/remoting/Configuration.java中的update方法,获取并处理文件路径。具体流程包括:判断是否为可控属性,获取文件路径(configStorePath),然后调用src/main/java/org/apache/rocketmq/common/MixAll.java中的string2File和string2FileNotSafe方法,最终使用IOTinyUtils.java中的writeStringToFile方法进行文件写入。
针对此漏洞的修复措施包括禁用修改配置路径的参数。这将限制攻击者利用该漏洞进行恶意操作,增强系统安全性。