IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> PHP知识库 -> 2021黑盾杯+一点吐槽、一点遗憾 -> 正文阅读

[PHP知识库]2021黑盾杯+一点吐槽、一点遗憾

目录

日志分析

在线电力控制系统消息传送

myTemplate

Decode

Signin

DNS协议分析

?ICS-Modbus的秘密??

吐槽

遗憾


日志分析

url解码后,是个盲注日志文件,根据题目提示,找到管理员密码。直接搜关键词password中的pass,并把上面的都删除,只留下最后一部分

分为675和678两个类型,分析得知为布尔盲注,然后手工撸,得到

?用python一个一个chr出来,拼接一下的到flag

在线电力控制系统消息传送

根据题目提示为使用关键代码parse_url,这个代码会将//domain/../来识别为相对路径,然后用这么久的刷题经验盲猜一个flag地址,结果随便猜一个flag地址结果就对了,阿这,nice

?

myTemplate

御剑扫描得到www.zip

翻看源码注意到eval函数,这里var_dump使自己本地搭起来方便查看的,

溯源$file,其中会把$_GET得到的进行extract,这里可以覆盖掉$file,接着查看其他文件,看看有什么什么可利用的。

Admin.php:

?

?Common.inc.php关键代码:

到这里就有了思路,把session删除,然后访问admin.php,GET传参,覆盖掉$file,

在利用data伪协议给$content,

这里要注意过滤了一波

不是很懂这个黑名单都有啥,不过本地测试echo没被ban掉,反引号也没杯ban掉

于是构造payload:/admin.php?file=data:text/plain,<?php echo(`ls`)?>

在根下有flag.php,cat一下,得到flag

?

Decode

RAS加密

直接贴脚本:

import libnum
print(libnum.gcd(n1,n2))
q = libnum.gcd(n1,n2)
p= n1//q
phi_n = (p-1)*(q-1)
d = libnum.invmod(e1,phi_n)
print("d =",d)
m = pow(c1,d,n1)
print("m =",m)
print(libnum.n2s(int(m)))
p= n2//q
phi_n = (p-1)*(q-1)
d = libnum.invmod(e2,phi_n)
print("d =",d)
m = pow(c2,d,n2)
print("m =",m)
print(libnum.n2s(int(m)))
print(libnum.gcd(n2,n3))
q = libnum.gcd(n2,n3)
p= n3//q
phi_n = (p-1)*(q-1)
d = libnum.invmod(e3,phi_n)
print("d =",d)
m = pow(c3,d,n3)
print("m =",m)
print(libnum.n2s(int(m)))

?

Signin

下载后是一个TXT文件,打开后都是0,1字符串 ?猜测是0 1 代码转为二维码

编写python3脚本

from PIL import Image
MAX = 500
img = Image.new("RGB",(MAX,MAX))
str="1111...1111" #文档过于庞大  省略了文档内容
i = 0
for y in range (0,MAX):
    for x in range (0,MAX):
        if(str[i] == '1'):
            img.putpixel([x,y],(0, 0, 0))
        else:
            img.putpixel([x,y],(255,255,255))
        i = i+1
img.show()
img.save("flag.png")
print('over')

输出结果? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?使用画图工具不全二维码

?? ? ? ? ? ? ? ? ? ? ? ?

DNS协议分析

筛选dns流进行分析

将域名前段组合使用base64解码得到flag

?

?ICS-Modbus的秘密??

题目提示flag在流量包中,搜索下flag就出来了

?

吐槽

本来以为我们小队伍无缘决赛,但是在正式开赛后发现我们并没有自己想像的那么弱,开局保持着前10的排名,后面却因为一道题一落千仗,一道逆向题,赛后看见其他学校的wp才知道,原来只要输入cat /flag.txt就可以了,说好的逆向题呢?说好的200分呢?就考这个?我们队伍没有逆向爹和pwn爷,只能靠硬刚杂项密码和web,最后拿到755(拿了一题一血+了5分)的分数,晋级却只需要850分,如果没有那个“200分高难度的逆向题”该多好,只有我们队伍傻傻的没有去做。我们这个相信你们平台很公平,以技术为主,说逆向就是逆向,你却来了个小白都知道的题目,要是是只给50分就算了,关键却给了200分,我不理解,为什么明明解题的能力高于某些队伍,却要因为这种小白题无法晋升。

遗憾

因为本人是web狗,最后一题没解出来,也没有大佬分享wp,可惜。但凡我多看看那”200分高难度“的逆向题,也不至于,我还以为,其他队伍的逆向爹都这么猛,也不显示有多少队伍解了出来,一脸天真的认为只有那几队解了

  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2021-12-07 11:50:17  更:2021-12-07 11:50:54 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/14 14:50:40-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码