欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 家装 > 1.20学习记录

1.20学习记录

2025/2/23 14:35:11 来源:https://blog.csdn.net/2401_88422349/article/details/145266760  浏览:    关键词:1.20学习记录

misc

2024isctf 秘密

下载压缩包后发现是一个伪加密,直接用kali的binwalk分离出来,得到一张图片,结合给的附件名字可以猜想是用了oursecret加密,在010中搜索password,果然找到了在这里插入图片描述再用oursecret解密,得到了一个文档,文档有700多字节大小,但是打开来却只有三行字,猜测是零宽隐写,用在线工具查看在这里插入图片描述得到了flag

re

2024isctf Ezre

先查壳在这里插入图片描述没壳,放进ida查看,发现没主调函数在这里插入图片描述在最开始的函数反汇编在这里插入图片描述可以发现v2于v5相同的时候就输出flag,继续追踪

if ( v2 )v1 = "Yeah,You get what you want!!!";

发现比较v1和v2,继续追踪

__int64 __fastcall sub_140011860(__int64 a1, int a2, _BYTE *a3)
{__int64 v4; // rbx_BYTE *v6; // rax__int64 v7; // rdiv4 = a2;sub_1400112C1(&unk_14001E00F);if ( (int)v4 <= 0 )return 1LL;v6 = a3;v7 = a1 - (_QWORD)a3;while ( v6[v7] == *v6 ){if ( ++v6 - a3 >= v4 )return 1LL;}return 0LL;
}

这里是一个比较函数比较v6与v5,看他的代码

sub_140011073("%s", (const char *)v6);
strcpy(v4, "ISCTF");

这里的v4应该是类似于秘钥的东西,根据搜索得知,这是一个维吉尼亚加密,用在线网站解决,但是没解出来,于是上网去搜了一个维吉尼亚的脚本

def generate_payload(target_text, key):payload = ""key_length = len(key)for i, char in enumerate(target_text):if 'A' <= char <= 'Z':shift = ord(key[i % key_length])original_char = (ord(char) - 65 - shift + 65) % 26 + 65payload += chr(original_char)else:payload += charreturn payloadtarget_text = "QKEMK{7JB5_i5_W3SllD_3z_W3}"
key = "ISCTF"payload = generate_payload(target_text, key)
print("Generated Payload:", payload)

就可以解出flag了

web

2024isctf 小蓝鲨的冒险

代码审计

<?php
error_reporting(0);
highlight_file(__FILE__);
$a = "isctf2024";
$b = $_GET["b"];
@parse_str($b);
if ($a[0] != 'QNKCDZO' && md5($a[0]) == md5('QNKCDZO')) {$num = $_POST["num"];if($num == 2024){die("QAQ");}if(preg_match("/[a-z]/i", $num)){die("no no no!");}if(intval($num,0) == 2024){if (isset($_GET['which'])){$which = $_GET['which'];switch ($which){case 0:print('QAQ');case 1:case 2:require_once $which.'.php';echo $flag;break;default:echo GWF_HTML::error('PHP-0817', 'Hacker NoNoNo!', false);break;}}}
}

这里第一层是需要传入参数,但是看见了这个函数parse_str(),根据查询可以采用变量覆盖绕过,传入

b=a[0]=240610708

接下来看见了intval函数,这是一个取整函数,用post传参

num=2024.1

最后用get传参传入which=flag在这里插入图片描述

2024emojictf http

在这里插入图片描述题目要求简洁明了,完成要求即可
在这里插入图片描述在这里插入图片描述

2024emojictf e4_sql

这题先用sqlmap扫一下,发现扫不到注入点,应该是开启了过滤waf在这里插入图片描述就采用手注了在这里插入图片描述在这里插入图片描述
当提交1加上符号时会报错,是字符型注入,采用联合查询注入,用order by判断列数,这里判断出来有两列
在这里插入图片描述通过union select​ 来判断显示的信息是第几列的信息,接下来查看数据库名称在这里插入图片描述
接下来爆表名在这里插入图片描述最后爆字段名在这里插入图片描述在这里插入图片描述

crypto

2024isctf 小蓝鲨的数学题

这道题拿到题目以后看到提示log,想到对数,根据搜索是离散对数
exp:

m = 5321153468370294351697008906248782883193902636120413346203705810525086437271585682015110123362488732193020749380395419994982400888011862076022065339666193
a=7383779796712259466884236308066760158536557371789388054326630574611014773044467468610300619865230550443643660647968413988480055366698747395046400909922513
G=Zmod(2**512) 
m1=G(m) 
c1=G(a) 
print(ZZ(discrete_log(c1,m1)))

要下载对应的库

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词