• 2022 第五届 浙江省大学生网络与信息安全竞赛技能赛 预赛 Writeup,5题


    1、Web:nisc_easyweb

    题目描述:

    • 打开网站,是一个php的初始页面。
      在这里插入图片描述

    思路:

    • 查看robots.txt,发现有一些可以访问的目录。
      在这里插入图片描述
    • 访问/api/record,存在/test_api.php
      在这里插入图片描述
    • F12查看网页源代码,并根据页面文字提示构造GET请求
      在这里插入图片描述
    • 构造请求http://xx.xx.xx.xx:xxxx/test_api.php?i=FlagInHere
      在这里插入图片描述

    2、Web:nisc_学校门户网站

    题目描述:

    • 打开网站,是一个学生门户网站
      在这里插入图片描述

    思路:

    • 查看学生系统密码规则页面,得到账号密码格式和登陆页面
      在这里插入图片描述
    • 进入登录页面,按照格式注册一个账号
      在这里插入图片描述
    • 登录后即可看到备忘录里的flag
      在这里插入图片描述

    3、Web:吃豆人吃豆魂

    题目描述:

    • 打开网站,是一个吃豆人小游戏
      在这里插入图片描述

    思路:

    • 审计html代码,发现有个index.js, 控制游戏的输赢
      在这里插入图片描述
    • 在fuction函数中找到获胜后输出的base64编码
      在这里插入图片描述
    • base64解码一下得到flag
      在这里插入图片描述

    4、MISC:好怪哦

    题目描述:

    • 给出一个zip文件
      在这里插入图片描述

    思路:

    • 01Edit打开,发现是个反着的压缩包(末尾倒着的PK头)
      在这里插入图片描述

    • 拷贝16进制文本,写个脚本把数据逆转一下,然后粘贴重新保存为zip

       #include
       using namespace std;
       int main(){
           freopen("in1.txt","r",stdin);
           freopen("out1.txt","w",stdout);
           string op;
           vector<string>vc;
           while(cin>>op){
               vc.push_back(op);
           }
           reverse(vc.begin(),vc.end());
           int cnt = 0;
           for(string t : vc){
               cnt++;
               cout<<t;
               if(cnt%16==0)cout<<"\n";
               else cout<<" ";
           }
           return 0;
       }
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
      • 17
      • 18
      • 19
      • 20
    • 解压新压缩包得到flag.png图像,发现文件头89 50 4E 47 0D 0A 1A 0A有缺失,手动添加。
      同时修改第2行第67列的高度,让png变高。
      在这里插入图片描述

    • 打开文件,得到flag。
      在这里插入图片描述

    5、RE:ManyCheck

    题目描述:

    • 给出一个exe文件,是个猜数字小游戏
      在这里插入图片描述

    思路:

    • 丢进PE,发现是32位exe文件,然后丢进IDA32。
      在这里插入图片描述

    • 找到main函数,F5反编译得到一段包含check1函数的代码
      在这里插入图片描述

    • 进入check1,发现第一个问题的答案为77。
      在这里插入图片描述

    • 进入check2,发现第2个问题的答案为根号3025和2401,暴力得到结果为55和49
      在这里插入图片描述

    • 进入check3,发现第3个问题的答案为交换前后四位二进制后,结果等于1718896489的值。
      在这里插入图片描述
      在这里插入图片描述

    • 将1718896489转为16进制0x66744769,并交换前后4位得到0x47696674,再转回10进制,得到第3个问题的答案1198089844。
      在这里插入图片描述

    • 运行程序并依次输入3个问题的答案,得到flag。
      在这里插入图片描述

    其他可做题:

    • web4:买买买01(php代码审计)
    • re2:ezpy(缺个pyc反编译)
    • crypto1:easystream3(爆破mask)
    • misc2:波利比奥斯方阵密码
    • misc3:segmentFlow(crc爆破zip,然后流量分析)
    • 参考题解:https://mp.weixin.qq.com/s?srcid=0917tY6cSCbHsMBF6IcjEVCB&scene=23&sharer_sharetime=1663420845220&mid=2247483770&sn=2e7897d9bc0f80be646b49fae1ff1c05&idx=1&__biz=Mzg3NTg0OTAwMg%3D%3D

  • 相关阅读:
    网站Github资源收集 ,此篇没有找到github地址,作者整理了自己在Github中的starred项目可以直接在此网站进行访问。
    PHP实践:用Yconf配置扩展为项目插上性能的翅膀
    信息学奥赛一本通:1122:计算鞍点
    【django】django面试题总结
    Spring MVC中的拦截器
    【Android】开发 ConnectivityManager
    uniapp中的app和微信小程序来回跳转
    Pandas数据分析系列9-数据透视与行列转换
    力扣:88. 合并两个有序数组(Python3)
    《算法导论》第17章-摊还分析 17.1 聚合分析 && 17.2 核算法&&17.3 势能法
  • 原文地址:https://blog.csdn.net/qq_33957603/article/details/126922289