- 博客(199)
- 收藏
- 关注
原创 JDK官网安装教程 Windows
GraalVM for JDK 23:是针对JDK 23的GraalVM实现,它是一种高性能的运行时环境,除了支持Java,还能运行其他语言(如JavaScript、Python等)编写的程序,具备即时编译(JIT)和提前编译(AOT)等优化技术,可提升应用性能。GraalVM for JDK 21:基于JDK 21构建的GraalVM,具备与针对JDK 23版本类似的特性,只是基于JDK 21,更适合已经选用JDK 21作为基础环境,同时又希望利用GraalVM优势的开发场景。
2025-03-03 21:02:16
1172
原创 用deep seek练习IDA静态分析和定位strcmp参数
为了帮你练习IDA静态分析和定位strcmp参数,我提供一个自制的CTF风格示例代码。
2025-02-27 19:31:09
1024
原创 151,攻防世界 逆向 Reversing-x64Elf-100
根据验证结果,程序会输出相应的提示信息(“Incorrect password!” 或 “Nice!”),并返回相应的退出状态码(1 表示密码错误,0 表示密码正确)。该文件不是 Windows 可执行文件(NOT Win EXE),而是 ELF 可执行文件,64 位目标文件,由 GCC(Ubuntu 4.8.4 版本)编译,CPU 为 AMD x86 架构。根据验证条件,正确的密码字符应该是 (&v3)[i % 3][2 * (i / 3)] - 1。再用ExeinfoPE查壳。点击main 再按F5。
2025-02-26 20:45:30
759
原创 148,[3] BUUCTF WEB [CISCN 2019 初赛]Love Math
【代码】148,[3] BUUCTF WEB [CISCN 2019 初赛]Love Math。
2025-02-16 19:15:52
296
原创 146,[1] BUUCTF WEB [SWPU2019]Web1
我尝试的1和空格以及1空格2,但是发现最后空格没有出现。多尝试了几次发现用()解决过滤了空格的方法行不通。那就先只用union select找注入点。猜测第一次传入的sql语句也没有正确传入。在union select后半部分报错了。历史记录里有SQL语句,那就试试。所以上传的广告应该是注入点。
2025-02-16 18:52:28
375
原创 144,【4】 buuctf web [极客大挑战 2020]Roamphp1-Welcome
看到哈西碰撞就想到了上次的惨痛历史,这次直接用数组绕过。应该是请求哪里有问题。
2025-02-15 20:20:43
165
原创 143,【3】 buuctf web [GYCTF2020]EasyThinking
上传这个脚本,再访问这个文件就能得到flag。这道一点都不会做,一头雾水,看wp。一开始那个题目名字就想到了框架。
2025-02-15 19:49:29
407
原创 142,【2】 buuctf web [GKCTF 2021]easycms
看了wp知道要看下载链接,又长知识了,还能这么操作。用户名admin,密码12345先试试。成功进入登录页面,提示里给了密码信息。点击保存后自动下载了一个zip文件。不过第二个输入后自动改变了url。文件名改为flag即可。查了源码没有什么信息。好像还是没有什么信息。这些文件没什么信息啊。
2025-02-15 18:42:10
289
原创 138,【5】buuctf web [RootersCTF2019]I_<3_Flask
这段代码是利用 Python 的类继承和反射机制来尝试执行系统命令读取。
2025-02-15 13:48:07
609
原创 136,【3】 buuctf web [极客大挑战 2020]Roamphp4-Rceme
三次都尝试之后,我才反应过来,我输的是文件的格式.........对 $code 进行 MD5 哈希运算,然后取结果的前 5 个字符。判断取出来的前 5 个字符是否等于 "4a94f"先去官网下载能打开这个文件的软件。恢复后的内容就会写入到这个文件中。下载好后在cmd输入命令。
2025-02-15 00:17:33
513
原创 135,【2】 buuctf web bestphp‘s revenge
随意提交内容后,发现最后只有名字提交的参数会显示在页面上,而虽然在源代码里允许我们闯入函数名和参数,但是它不会在页面上显示。开启会话并设置会话变量后,PHP 会在会话结束时自动将会话数据序列化并存储到指定的会话存储位置 ,在本段代码中,意味着name需要进行反序列化操作。想获得更多的信息,显然查看源代码和抓包是没有用的,所以我们试着扫描一下目录。本地代码肯定是要提交的,所以我们在 name 的参数里面提交,刚好进行反序列化。通过get方式传递的还有参数name。通过post方式传递给函数f的参数。
2025-02-14 21:53:19
646
原创 134,【1】buuctf web [ASIS 2019]Unicorn shop
购买一二三时都显示错误的商品,购买4没有显示,应该目的就是让我们买4号这个商品,但是它又显示了只允许输入一个字符串,4的价格偏偏是4位数,那我们如何用一个字符来代替这4个数?之前也碰到过限制长度的,记得最后是用16进制解决的,但是16进制怎么着也超过一个字符了。突然反应过来源代码也给了类似提示,不过当时没反应过来。既然源码查看过了,那就抓包,看看有什么信息。在这里面找到比1337大的数字的字符就好。不过在正常操作买马的时候也显示操作失败。这个图案好可爱,就你了。输入后都是下面的页面。翻译,好像也不太需要。
2025-02-14 19:55:25
269
原创 133,【2】 buuctf web [网鼎杯 2018]Comment
进入靶场点击发帖,试试出现了登录页面还尝试了很多也是这个页面查看源代码也没有什么信息反应过来占位中有三个***是不是不知道这三个内容的信息抓包爆破成功登录后又跳转到留言页面先提交看看显示什么点击详情可以再提交留言可以两次提交内容,想到了二次注入,之前做的二次注入的题比较简单,很明显这道题就有点迷茫了,不知道注入点和回显点,所以在所有位置都输入了SQL语句尝试没有什么用此时迫切的想知道源代码,做了几道代码审计题目后的毛病主要是确实没有其他信息了。
2025-02-14 11:04:15
268
原创 132,【1】 buuctf web [EIS 2019]EzPOP
不过啊,不过啊,下面几个代码块首先引起了我的关注,截下来更方便看。先不进入靶场了,先看给出的代码。还是很懵,先看看大佬脚本。那要不还是继续看代码吧。
2025-02-13 21:50:02
366
原创 130,[1] 攻防世界 very_easy_sql
本题名为sql,不过尝试sql的时候没显示什么,url处传输本地地址时都没想到ssrf。提示的cookie解码后是admin,开始利用sql注入,就以cookie为注入点。明白第一个页面是通过post方式提交,反正没得到什么信息,去抓包。或许set cookie的部分就是给出信息,不过我们传输的内容不对。提交的内容不在url处显示,反而第二个url页面会在url处显示。同样的改cookie在第一个页面也尝试了,同样没什么结果。还尝试了其他都是nonono。爆出了错误,开始报错注入。用到了gopher协议。
2025-02-12 20:35:30
1072
原创 129,【2】buuctf [BJDCTF2020]EzPHP
进入靶场查看源代码看到红框就知道对了她下面那句话是编码后的,解码1nD3x.php得知参数名称shana,passwd,file,debu,code,arg我勒个豆,好多参数'debu' 参数是否符合正则表达式 '^aqua_is_cute$' 且不等于 'aqua_is_cute'可以尝试数组,内容不变,但类型不是字符串当 PHP 获取时,它会直接返回浏览器发送过来的原始查询字符串,不会对其进行 URL 解码。所以按理说我们进行url编码就能绕过绕过原理是哈希碰撞。
2025-02-11 23:09:41
1675
原创 128,【1】buuctf [极客大挑战 2019]PHP
得知username和password,且值为admin和100。访问index.php没反应,但www.zip成功下载了文件。index.php里得到如下有用信息。参数的值,并对该值进行序列化操作。所以我们要通过GET 方式传递。其他好像不用看了,试着开始构造。再去查看class.php。还需绕过_wakeup方法。扫描出了两个有反应的。
2025-02-11 15:49:49
454
原创 127,【3】 buuctf [NPUCTF2020]ReadlezPHP
函数在 PHP 中既可以用于调试和检查条件是否成立,也可以将传入的参数当作 PHP 代码来执行。是 PHP 中的一个函数,其作用是执行外部程序,并将执行结果输出。我们需要通过get方式传参给data参数,并进行序列化操作。phpinfo() 函数用于输出 PHP 的配置信息。同时b包括函数名,a包括对应参数。此处就是利用了他的第二个性质。但尝试了不行,换一个。
2025-02-10 22:46:22
473
原创 125,【1】攻防世界unserialize3
函数对一个对象进行操作时,序列化的是整个对象实例,这包含了对象的所有属性以及类的定义信息 ,所以就这个题而言,我们序列化的不只是 flag 属性的值,我们要序列化它给出来的所有代码,整个 xctf类。也就是说只需要在题目给出的代码中加三句用于实现序列化的语句并输出即可,语句中调用serialize()函数,整和后如下。此时我们需要修改属性个数,就需要了解这串序列化字符串中的各个部分代表什么,如下。代码表明会进行反序列化,所以我们要进行序列化,但不能调用_wakeup()方法。修改1,改为比一大的数字即可。
2025-02-10 18:55:24
620
原创 123,【7】 buuctf web [极客大挑战 2019]Secret File
自己点击时只能看到1和3处的文件,点击1后直接跳转3,根本不出现2。查看源代码,发现一个紫色文件。太熟悉了,有种回家的感觉。又有一个文件,访问一下。要么源代码,要么抓包。
2025-02-07 20:14:53
328
原创 122,【6】buuctf web [护网杯2018] easy_tornado
进入靶场出现了3个文件点击看看都点击看看得知flag所在目录render在 Web 开发框架中常常出现是一个用于对 Cookie 进行签名或加密的密钥。意味着我们现在需要先找到在请求里有cookie,但都不显示cookie,反观三个文件点开后的url,奇奇怪怪,把从&开始的部分删掉看看出现新的页面新页面没有,url倒是有一个发现msg后面的和页面显示的一样,改它验证一下这块应该就是模板的注入点{6*6}}本来应该显示36,但是并没有,应该存在过滤机制换一个由于输出配置信息。
2025-02-07 19:39:10
699
原创 121,【5】 buuctf web [RoarCTF 2019] Easy Calc
函数的主要功能是输出当前 PHP 环境的详细配置信息。得知参数名为num,传递方式是get。号通常会被当作空格来处理。尝试看看能不能得到源码。发现calc.php。
2025-02-07 18:29:28
574
原创 120,【4】 攻防世界 web Confusion1(jinja2)
某天,Bob说:PHP是最好的语言,但是Alice不赞同。所以Alice编写了这个网站证明。在她还没有写完的时候,我发现其存在问题。(请不要使用扫描器)我一般看到这个页面,直接放弃这两个选项,不过这个题长知识了,还能从这个页面找到信息,也能从源代码中找到信息。1,发现这里的login.php进行了一个原样回显,猜测存在模板注入。昨天最后一道题就是这个类型,直接试试昨天的。2,源代码中看到/知道这是flag的路径。属于模板注入的题,新领域啊。都显示not found。点上面的登录注册看看。
2025-02-07 14:12:30
288
原创 118,【2】 攻防世界 web ics-06
要设置多少自己定,我一开始设置的少了,但看状态码都是200,就知道少了,再加。左边的其他都点不动,报表中心点击后直接跳转了新页面。题目说有一处留下了入侵者的痕迹,我们点击看看。没有显示404或者访问不到。注意到出现了id=1,尝试修改id为2,3。证明这块是可以注入的。
2025-02-07 13:00:40
180
原创 116,【8】 攻防世界 web shrine(jinja2)
进入靶场看开头像python代码过滤了config和self都是flask里会出现的东西还有函数可以尝试,它是 Flask 框架中的一个非常实用的函数,主要用于获取之前通过flash函数存储的消息。这些信息通常只需要显示一次,在用户刷新页面或者进行下一次请求后就不再需要显示/shrine/{
2025-02-06 22:06:50
339
原创 115,【7】 攻防世界 web fileinclude
得知传参的名字为language,而且是在cookie处传,还会在传的值后面直接加上.php。试着访问了几个文件,都没得到信息,f12看看源码。传个最常见的上去,而且只写文件名就行。顺利得到base64编码后的flag。再加上题目名称暗示了文件上传。f12修改cookie并传参。
2025-02-06 21:08:50
296
原创 114,【6】攻防世界 web wzsc_文件上传
别的博主说这是服务器在短时间内就立刻将其删掉了,需要采取条件竞争,我们需要抢在它删除之前访问文件并生成一句话木马文件,所以访问包的线程需要大于上传包的线程。还需要将攻击荷载设置为空,但找了半天也没找到,也就是说我现在必须设置一个位置为荷载。没显示用于解析的.htaccess和.user.ini 文件,还两个都不显示。最后访问upload就会发现上传成功了,用蚂剑连接即可。假如上一步实现后,运用大佬的脚本创造shell.php。但上传的时候bp查看状态码是200,意味着上传成功了。不过接下来的思路是清晰的。
2025-02-06 20:41:21
355
原创 113,【5】 功防世界 web unseping
需要通过 POST 请求传递一个经过 Base64 编码的序列化对象给参数ctf。别问为什么不直接在php代码里转换为base64,我的php运行工具不太行。查看flag_831b69012c67b35f.php。得知了有个flag_1s_here文件,查看一下。
2025-02-06 19:14:18
484
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人