首页 > 其他分享 >御网杯2

御网杯2

时间:2024-10-01 18:14:08浏览次数:4  
标签:code third second char chr 网杯 first

Reverse

Reverse-ez_apk

用IDA进行打开,找到main函数

def decrypt(encrypted_text, decryption_key):

key_bytes = decryption_key.encode()

characters = list(encrypted_text)

decrypted_characters = [''] * len(characters)

for index, character in enumerate(characters):

if character in ['_', '{', '}']:

decrypted_characters[index] = character

elif 'a' <= character <= 'z':

# 应用解密逻辑

decrypted_characters[index] = chr(((ord(character) - ord('a') - (key_bytes[index % len(key_bytes)] - ord('a'))) % 26 + ord('a')))

else:

# 遇到非预期字符则停止解密

break

return ''.join(decrypted_characters)

# 解密密钥

decryption_key = "aptxcony"

# 密文

cipher_text = "fatd{sm_cgrmvc_ylvhokhuk_gxsgffc_wtec}"

# 解密结果

decrypted_result = decrypt(cipher_text, decryption_key)

print(decrypted_result)

加密处理,进行构造脚本

Reverse-jiqimao

用kali打开,进行反编译exe

发现不可以打开,那我进行反编译

找到一段字符

fVJXNjE0ODBpM2RrZmNSVzYxNDgwaTNka01BSlVPe25oc20=

这是一段base64编码,进行解密

凯撒偏移解码

}KP61480b3wdyvKP61480b3wdFTCNH{galf

再进行字符串逆序

Reverse-fenxi

找到一道类似的题目,进行参考一下[https://blog.csdn.net/weixin_52640415/article/details/123877043](https://blog.csdn.net/weixin_52640415/article/details/123877043" \t "_blank)

if (p[3]+p[5] != pow((I-------I).A,2) * (I-----I)+(I---I)) error(); // (3*3) ** 2 * 2 + 1 == 163

if (p[3]+p[4] != pow((o-----------o

| !

! !

! !

o-----------o).A,2)+(I---I)) error(); // (5*3) ** 2 + 1 == 226

if (p[4]*p[5] != (pow((o-------------o

| !

! !

! !

o-------------o).A,2)-(I---I))(I-----I)pow(I-------I,2)) error(); // ((63) ** 2 - 1)2* 3**2 = 5814

if (p[7]+p[8] != (o-----------o

|L </font>

| L </font>

| L </font>

| o-----------o|! // x=5,y=3,z=4

o | ! // 534 * 22 - (3*2)2 +1 == 205

L | !

L | !

L| !

o-----------o).V*pow(I-----I,2) - pow((o-------o // x=3,y=2

| !

! !

o-------o).A,2) + (I---I)) error();

尝试爆破得到字符

# 解密标志的第一部分

flag = ''

for first_char_code in range(0x20, 0x7f):

for second_char_code in range(0x20, 0x7f):

for third_char_code in range(0x20, 0x7f):

if first_char_code + second_char_code == 101 and </font>

second_char_code + third_char_code == 143 and </font>

first_char_code * third_char_code == 5035:

flag += chr(first_char_code) + chr(second_char_code) + chr(third_char_code)

print('[' + chr(first_char_code) + chr(second_char_code) + chr(third_char_code) + ']')

# 已找到的部分标志

#50_

# 解密标志的第二部分

for first_char_code in range(0x20, 0x7f):

for second_char_code in range(0x20, 0x7f):

for third_char_code in range(0x20, 0x7f):

if first_char_code + second_char_code == 226 and </font>

first_char_code + third_char_code == 163 and </font>

second_char_code * third_char_code == 5814:

flag += chr(first_char_code) + chr(second_char_code) + chr(third_char_code)

print('[' + chr(first_char_code) + chr(second_char_code) + chr(third_char_code) + ']')

# 已找到的部分标志

#pr3

# 解密标志的第三部分

for first_char_code in range(0x20, 0x7f):

for second_char_code in range(0x20, 0x7f):

for third_char_code in range(0x20, 0x7f):

if second_char_code + third_char_code == 205 and </font>

first_char_code + third_char_code == 173 and </font>

first_char_code * second_char_code == 9744:

flag += chr(first_char_code) + chr(second_char_code) + chr(third_char_code)

print('[' + chr(first_char_code) + chr(second_char_code) + chr(third_char_code) + ']')

# 已找到的部分标志

#Tty

# 解密标志的最后一部分

for first_char_code in range(0x20, 0x7f):

for second_char_code in range(0x20, 0x7f):

for third_char_code in range(0x20, 0x7f):

if first_char_code + second_char_code * third_char_code == 5375 and </font>

second_char_code + first_char_code * third_char_code == 4670 and </font>

first_char_code + second_char_code == 205:

flag += chr(first_char_code) + chr(second_char_code) + chr(third_char_code)

print('[' + chr(first_char_code) + chr(second_char_code) + chr(third_char_code) + ']')

# 已找到的部分标志

#_n0

# 添加剩余字符

flag += 'w'

# 输出最终的标志

print(flag)

50_pr3TtY_n0w

最后得到,进行包裹得到flag

Reverse-CSMazeee

首先查个壳发,现是32位的,并且有壳

寻找工具能进行脱壳处理

脱壳后是这个,然后把他放入dnspy中进行分析

这应该是一个迷宫程序

进行调试得到

00******0000

0000000**0

***000

100*0000

0**0

****00000000

是上下左右,走出迷宫

rdrrrrrddrruuurrrdddddllllllluull

连续点击100下得到flag

感悟

在这次御网杯的比赛中,我不仅在技术上有了显著的进步,更重要的是,在精神层面也得到了一次难得的洗礼,在一天的比赛中我体验到从感到新鲜,到渐渐疲惫,再到解出flag的欣喜。

在本次比赛中我对web有了更深的理解,通过实际操作,我发现理论知识与实战经验之间存在着巨大的差异,只有真正动手去做,才能体会到解决问题的乐趣。比赛中遇到的一些复杂问题,更是激发了我对网络安全领域的兴趣,使我意识到自己在这个领域的不足之处,同时也明确了未来努力的方向。

在做其他题目时候,我发现我的逆向能力还不强,我在以后得学习中会加强这方面的学习与理解,在密码学方面,我也有些欠缺 ,我对密码的基础概念还可以,但是通过本次比赛,我发现我对密码的理解还不够深刻,还有一些知识盲区,我意识到网络安全对我们的重要性,每个细节都决定了我们的成败。

总的来说,御网杯不仅是一场技术较量,更是一次自我超越的过程。在这里,我不仅收获了知识,更收获了友谊和成长。未来,我将继续努力,不断探索网络安全的奥秘,为自己也为社会贡献一份力量。同时我也要感谢比赛方给了我这次比赛学习的机会,我会更坚定的在网安的道路上走下去。

标签:code,third,second,char,chr,网杯,first
From: https://www.cnblogs.com/minmaxm/p/18443037

相关文章

  • 2024御网杯初赛(wp+赛后复现)
    Webweb1input_datasvn泄露,使用SVN泄露的漏洞利用工具dvcs-ripper即可恢复flag文件flag值:flag{5674938f-803d-4c41-8f84-a77f5164bb4f}web2admin扫目录发现两个目录,admin和login根据报错页面发现是springbootThymeleaf模板注入找到一篇文章写的很好,利用文章给......
  • [强网杯2019]supersqli--Web安全进阶系列
    [强网杯2019]supersqli--Web安全进阶系列使用引号判断是否存在sql注入报错,可能存在sql注入,注入payload,判断列数,结果为不存在4列?inject=1'orderby4--q换2试试,正常显示,说明存在2列输出结果?inject=1'orderby2--q尝试使用联合注入失败,并且限制了select|update......
  • [护网杯 2018]easy_tornado
    [护网杯2018]easy_tornadoStep靶机页面/flag.txt/welcome.txt/hints.txt其中:/flag.txtflagin/fllllllllllllag/hints.txtmd5(cookie_secret+md5(filename))链接url/file?filename=/welcome.txt&filehash=0d57a014b2bc88b9c6f12277495dwww其中filehash则是......
  • [强网杯 2019]Upload php反序列化代码审计
    进入页面发现有登录,随便注册一个用户登录试试。文件上传?传个试试,结果发现不论怎么上传都没用,还发现了cookie像是反序列化的东西。扫目录看看,发现源码。发现主要文件,做做审计吧。index.php<?phpnamespaceapp\web\controller;usethink\Controller;classIndexextend......
  • 强网杯(2019)随便注
    强网杯(2019)随便注1.随便提交一个1,发现返回数据,猜测是sql注入:2.尝试使用select注入,发现过滤的黑名单:3.竟然没有过滤分号,那么我们可以使用堆叠注入,首先来找到所有的数据库名:';showdatabases;4.继续读取当前数据库所有的表名:';showtables;5.继续读取当前数据库"1919......
  • [广东强网杯 2021 团队组]love_Pokemon rce读取绕过
    五一结束了,真快啊!今天看一道RCE绕过类型的题目。上来先看看源码。点击查看代码<?phperror_reporting(0);highlight_file(__FILE__);$dir='sandbox/'.md5($_SERVER['REMOTE_ADDR']).'/';if(!file_exists($dir)){mkdir($dir);}functionDefenderBonus($......
  • 2017第二届广东省强网杯线上赛- who are you
    2017第二届广东省强网杯线上赛whoareyou:题目类型:web题目描述:打开链接,得到一个页面:解题方法:这句话的意思说:对不起,你没有权限,先查看一下网页源码,没有发现什么有用的信息,然后再扫描一下目录:然后访问一下这几个目录,发现都不行,返回的都是:对不起,你没有权限用bp来抓包看一下:......
  • [强网杯 2019]高明的黑客
    [强网杯2019]高明的黑客按照提示下载了www.tar.gz这个文件,解压后发现有三千多个php文件打开其中一个进行代码审计。认真看这些文件都是getshell文件。能把传入的变量执行系统命令。不过不可能都是有用的,随便打开几个会发现,传入的变量都变为空了,所以基本上无效。编写pyt......
  • CTF练习日记——[强网杯 2019]随便注 1
    先点查询1试试:再试试查询1',看是否存在字符注入:?inject=1'#利用orderby查看有几个字段:?inject=1'orderby3#,?inject=1'orderby2#可以知道有两个字段,接下来利用联合查询:?inject=1'unionselect1,2#发现select被过滤了,那咱们利用堆叠注入来查看数据库,表名,?inject=1......
  • [护网杯 2018]easy_tornado
    [护网杯2018]easy_tornado审题一共有3个界面flag.txtwelcome.txthint.txt通过审题得知,flag位于/flllllllllag中,要使用ssti注入,其加密方式为md5(cookie_secret+md5(filename))知识点tornado模版注入解题看到filehash猜测其为加密后的结果所以应该是修改它。......