BUUCTF
阿哲也要努力学习!
00后|安全工程师
没有网络安全就没有国家安全!
展开
-
【极客大挑战 2019】EasySQL
admin ’ or 1=1 # + admin //之后又尝试了password后面也是可以进行注入的。尝试用admin+admin进行登陆给出:NO,Wrong username password!然后尝试在uasername后进行sql注入。登陆成功,并且给出了flag。原创 2023-01-17 15:22:04 · 377 阅读 · 0 评论 -
【极客大挑战 2019】Havefun
cat=dog就会输出Syc{cat_cat_cat_cat}进入页面,啥提示也没有,直接f12看一下源码。尝试一下,flag出来了。原创 2023-01-17 15:11:55 · 214 阅读 · 0 评论 -
【HCTF 2018】WarmUp
原理如下:在我们将参数传给file时,服务器端会自动进行一次url解码,然后这里还有个urldecode再进行一次解码。_REQUEST[‘file’])&& emmm::checkFile($_REQUEST[‘file’]三个条件同时为真,才会包含我们传入的file。/flag.php’)和include(‘…所以:/var/www/flag.php 和…/var/www/flag.php是一个文件,上层没有了。说明flag.php在 /var/html类似目录中,只有两层,var为最上层了。原创 2023-01-17 15:10:04 · 1243 阅读 · 0 评论 -
【护网杯 2018】easy_tornado
常见的注入有:SQL 注入,XSS 注入,XPATH 注入,XML注入,代码注入,命令注入等等。sql注入已经出世很多年了,对于sql注入的概念和原理很多人应该是相当清楚了,SSTI也是注入类的漏洞。错误的执行了用户输入。当然还是和sql注入有所不同的,SSTI利用的是现在的网站模板引擎(下面会提到),主要针对python、php、java的一些网站处理框架,比如Python的jinja2mako tornado django,php的smarty twig,java的jadevelocity。原创 2023-01-17 15:05:27 · 528 阅读 · 1 评论 -
【极客大挑战 2019】BuyFlag
通过分析,我们看见了password == 404 ,并且有is_numeric来判断password是否为数字或数字字符串。导致我们给password传入的参数只能为字符串类型的。传入password=404aa&money=100000000,提示money这个参数过长。将两个参数以post传入进去password=404aaa&money=100000000。提示我们需要传入money和password,目前给出了password的相关信息。money的信息给出了提示money=100000000。原创 2023-01-17 14:58:34 · 417 阅读 · 0 评论 -
【ACTF2020 新生赛】BackupFile
所以str = "123ffwsfwefwf24r2f32ir23jrw923rskfjwtsw54w3"在和数字比较时,str就转换称了123。如果比较一个数字和字符串或者比较涉及到数字内容的字符串,则字符串会被转换成数值并且比较按照数值来进行。所以str==flag。我们需要向key传一个参数,只有key==str时候才会echo flag。=== 在进行比较的时候,会先判断两种字符串的类型是否相等,再比较。== 在进行比较的时候,会先将字符串类型转化成相同,再比较。原创 2023-01-17 14:55:49 · 455 阅读 · 0 评论 -
【极客大挑战 2019 】Http
X-Forwarded-For(XFF)是用来识别通过HTTP代理或负载均衡方式连接到Web服务器的客户端最原始的IP地址的HTTP请求头字段。所以直接在请求头下面加入X-Forwarde-For:127.0.0.1再发送就能获取flag。然后又提示我们需要使用Syclover的浏览器,那就是User-Agent。X-Forwarded-For这个参数可以进行代理。这里做了个referer的拦截,我们直接用bp。然后就没思路了,去查找了一下HTTP的请求头。再修改相应的内容重新发送。原创 2023-01-17 14:51:15 · 546 阅读 · 0 评论 -
【极客大挑战 2019】 Knife
看见了一句话木马,我们尝试直接用蚁剑连接一下。在根目录下找见flag文件,就拿到了flag。原创 2023-01-17 14:48:03 · 134 阅读 · 0 评论 -
【极客大挑战 2019】 PHP
在上面的class中有一个 __wakeup() 方法,调用反序列化函数的时候会先调用了 __wakeup() 方法,但是这个方法有个缺陷,就是当参数的个数大于实际参数个数的时候就可以跳过执行 __wakeup() 方法。在类外部使用 serialize() 函数进行序列化的时候,会先调用类内部的 __sleep() 方法,同理在调用 unserialize() 函数的时候会先调用 __wakeup() 方法。//注意方框代表空格,直接在浏览器中复制的序列化没有空格。下面给出解释,这里并不是空格。原创 2023-01-17 14:44:18 · 151 阅读 · 0 评论