NSS LitCTF Web 部分wp

news2024/11/28 19:04:20

目录

1、PHP是世界上最好的语言!!

2、这是什么?SQL !注一下 !

3、Ping

4、作业管理系统

5、我Flag呢?

6、1zjs

7、Vim yyds

8、Http pro max plus


1、PHP是世界上最好的语言!!

直接cat flag

flag=NSSCTF{11eaebe0-3764-410d-be83-b23532a24235}

system() 函数用来执行 command 参数所指定的命令, 并且输出执行结果,PHP执行系统命令的常用的函数还有:exec函数、popen函数,passthru函数(完整的返回字符串,且不经过不必要的其它中间的输出界面,即获取一个命令未经任何处理的原始输出),shell_exec函数他们都可以执行系统命令。

system语法: string system(string command, int [return_var]);若是 return_var 参数存在,则执行 command 之后的状态会填入 return_var 中。

2、这是什么?SQL !注一下 !

 直接查询,发现注入点是id

使用sqlmap列出所以数据库

sqlmap -u "http://node1.anna.nssctf.cn:28755//?id=1" --dbs

available databases [6]: [*] ctf [*] ctftraining [*] information_schema [*] mysql [*] performance_schema [*] test

列出指定数据库的表

第一个里面没什么发现,在第二个库里面看到flag字样

sqlmap -u "http://node1.anna.nssctf.cn:28755/?id=1" -D ctftraining --tables

继续列出指定表的字段 

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

 

获取指定字段中的数据

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

NSSCTF{759de34b-d02a-4781-a33c-113aba994a10}

总结一些sqlmap常用的参数:

-D 选择使用哪个数据库

-T 选择使用哪个表

-C 选择使用哪个列

--tables 列出当前的表

--columns 列出当前的列

--dump 获取字段中的数据

3、Ping

直接在页面执行ping再带一个其他命令, 127.0.0.1&&ls,发现不行

使用bp抓包重发

 添加../逐级展开上级目录

 

 

  可以看到flag就是在根目录下的flag目录,直接使用cat命令获取

 

 除了展开,也可以先使用find命令,尝试查找flag

command=127.0.0.1 || find / -name flag* &ping=Ping

 再使用cat命令获取

flag=NSSCTF{3ce5e885-66ee-4312-828a-bfbb78c8cea8}

本题总结:

1、find命令:find /(查找范围) -name 查找关键字

find / -name flag* &ping=Ping中,

星号是一个通配符,表示任意数量的任意字符,当不知道真正字符完整名字时,进行模糊搜索。

2、cat命令用法总结:

① 只查看文件内容 cat a.txt

② 查找文件中的内容 cat a.txt | grep cc

③ 利用cat创建文件、向文件中写入内容、修改文件内容或者清空文件内容

 其中EOF是告诉 bash 哪个符号代表文件结束,也可以使用自己习惯的符号。

4、作业管理系统

在源码中找到默认登录账户和密码

  

直接安排一句话木马

 没有任何的绕过

 

 在根目录下找到flag

 flag=NSSCTF{96cd0bd4-f5e6-4fbf-8b09-c38f244d4aa6}

5、我Flag呢?

在源码里找到被注释掉的flag

 

6、1zjs

 玩了会儿魔方

 直接搜索一些关键字并没有什么发现,根据题目提示,在它的js文件里寻找

找到一个被注释掉的路径 /f@k3f1ag.php,直接访问

 查了一下这个叫jsfuck编码

有两种解密方法:

1、在浏览器的控制台

 2、使用在线网站解密

7、Vim yyds

查看源码并没有什么发现

 知识基础:

当我们非正常关闭vim编辑器时(比如直接关闭终端或者电脑断电),会生成一个.swp文件,这个文件是一个临时交换文件,用来备份缓冲区中的内容;

意外退出时,并不会覆盖旧的交换文件,而是会重新生成新的交换文件。而原来的文件中并不会有这次的修改,文件内容还是和打开时一样;

如果你并没有对文件进行修改,而只是读取文件,是不会产生.swp文件的;

可以使用 vim -r 来查看当前目录下的所有swp文件;

也可以使用 vim -r filename 来恢复文件,这样上次意外退出没有保存的修改,就会覆盖文件。

访问.index.php.swp将文件下载下来

因为我win里面没vim,将文件发到centos里

 

直接查看

 使用vim -r index.php.swp恢复文件

恢复后如下

 代码审计:

给password传入"Give_Me_Your_Flag"且要先经过base64编码

就会输出Oh You got my password!并且调用system函数执行传入的cmd命令

先将字符串base64编码

 构造payload

post:password=R2l2ZV9NZV9Zb3VyX0ZsYWc=&&cmd=cat /flag

 NSSCTF{b8776bdb-b398-4544-b006-72ee55c5a531}

8、Http pro max plus

使用bp抓包改包重发

 请求头写 x-forwarded-for: 127.0.0.1

 

换一种 client-ip: 127.0.0.1

 请求头写 referer: pornhub.com

 请求头写 user-agent: Chrome

 请求头写 via: Clash.win

 拿到一个路径,直接访问它

 在源码里找到了另一个路径,继续访问

 NSSCTF{d295698b-50ae-47ed-8393-2463797931d3}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/550697.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++中vector的用法

博主简介:Hello大家好呀,我是陈童学,一个与你一样正在慢慢前行的人。 博主主页:陈童学哦 所属专栏:CSTL 前言:Hello各位小伙伴们好!欢迎来到本专栏CSTL的学习,本专栏旨在帮助大家了解…

Compose太香了,不想再写传统 xml View?教你如何在已有View项目中混合使用Compose

前言 在我的文章 记一次 kotlin 在 MutableList 中使用 remove 引发的问题 中,我提到有一个功能是将多张动图以N宫格的形式拼接,并且每个动图的宽保证一致,但是高不保证一致。 在原本项目中我使用的是传统 view 配合 RecyclerView 和 GridL…

jenkins入门与安装

一、实验环境 selinux iptables off 主机名IP系统版本gitlab10.10.10.200rhel7.5jenkins10.10.10.10rhel7.5tomcat10.10.10.11rhel7.5 二、安装jenkins 1、解压安装包 下载地址:https://download.docker.com/linux/static/stable/x86_64/ [rootjenkins ~]# tar xf …

C语言指针初级

目录 一、什么是指针 二、指针和指针类型 三、野指针 1.野指针的成因: 2.如何规避野指针 四、指针运算 1.指针-整数 2. 指针之间的加减 五、二级指针 六、指针数组 一个男人,到底要走多少的路,才能成为一个真正的男人 本专栏适用于…

【Linux】ubuntu设置ssh密钥登录详细教程,附Mobaxterm和pycharm ssh python解释器配置教程

0、写在前面 我们通常使用SSH 客户端来远程使用 Linux 服务器。但是,一般的密码方式登录,容易有密码被暴力破解的问题。所以,一般我们会将 SSH 的端口设置为默认的 22 以外的端口,或者禁用 root 账户登录。但是即使是将端口设置为…

复杂数据集,召回、精度等突破方法记录【以电科院过检识别模型为参考】

目录 一、数据分析与数据集构建 二、所有相关的脚本 三、模型效果 一、数据分析与数据集构建 由于电科院数据集有17w-18w张,标签错误的非常多,且漏标非常多,但是所有有效时间只有半个月左右,显卡是M60,训练速度特别…

linux防火墙之iptables

一、iptables概述 Linux 系统的防火墙 :IP信息包过滤系统,它实际上由两个组件netfilter 和 iptables组成。 主要工作在网络层,针对IP数据包。体现在对包内的IP地址、端口、协议等信息的处理上。 netfilter: 属于“内核态”&…

Java基础重温巩固

方法 方法与方法之间是平级关系,不能嵌套return表示结束当前方法 基本数据类型和引用数据类型 基本数据类型:数据存储在自己的空间中 引用数据类型:数据存储在其他空间中,自己空间存储的是地址值 值传递 传递基本数据类型时&…

详解Windows系统安装TensorRT

目录 下载TensorRT安装TensorRT测试 TensorRT 是 NVIDIA 推出的一款高性能神经网络部署引擎.Windows系统下TensorRT目前不能简单直接通过pip指令自动下载安装, 安装之前还需要提前安装好 CUDA 和 CUDNN. CUDA和CUDNN安装可参考: 详解 Windows系统下安装 CUDA 与 CUDNN. &…

ES6之Module:export、import

文章目录 前言一、export命令1.export2.export default(默认暴露) 二、import命令1.通用导入方式2.解析赋值导入方式 三、结果总结 前言 ES6之前,JavaScript语言一直没有模块(Module)体系,无法将一个大型程…

《计算机网络——自顶向下方法》精炼——3.5.1-3.5.4

人生像攀登一座山,而找寻出路,却是一种学习的过程,我们应当在这过程中,学习稳定、冷静,学习如何从慌乱中找到生机。——席慕蓉 文章目录 TCPTCP协议概述报文段结构序号、确认号 超时问题计算RTT计算重传时间 可靠数据传输 TCP TCP协议概述 TCP是面向连接的协议,在…

nest笔记十一:一个完整的nestjs示例工程(nestjs_template)

概述 链接:nestjs_template 相关文章列表 nestjs系列笔记 示例工程说明 这个工程是我使用nestjs多个项目后,总结出来的模板。这是一个完整的工程,使用了yaml做为配置,使用了log4js和redis和typeorm,sawgger&#…

Less和sass安装及使用

CSS预处理器 由来 CSS本身不是一种编程语言。你可以用它开发网页样式,但是没法用它编程。换句话说,CSS基本上是设计师的工具,不是程序员的工具。它并不像其它程序语言,比如说JavaScript等,有自己的变量、常量、条件语…

手把手教你验证upd与tcp“端口”开发策略

系列文章目录 文章目录 系列文章目录前言一、问题?二、验证网络策略步骤三、增强验证网络策略总结 前言 这篇文章,本意是让大家了解除了常用的telnet之外,在运维过程中,如果在服务器中未发现相关命令还可以借用像ssh、wget 等命令…

震惊!我的电脑居然中病毒了,快来看看我是如何解决的

打开电脑就自动跳转到http://www.exinariuminix.info/ 问题背景 今天刚打开电脑,然后电脑莫名奇妙就自动跳转到http://www.exinariuminix.info/网页: 联网后加载,它就自动重定向到一个莫名其妙的网站: 问题原因 出于好奇&#…

大数据Doris(二十四):Doris数据Insert Into导入方式介绍

文章目录 Doris数据Insert Into导入方式介绍 一、语法及参数 二、案例 三、注意事项 1、关于插入数据量 2、关于insert操作返回结果 3、关于导入任务超时 4、关于Session变量 5、关于数据导入错误 Doris数据Insert Into导入方式介绍 Doris 提供多种数据导入方案&…

SpringMVC执行原理

目录结构 pom.xml依赖 <dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>3.8.1</version><scope>test</scope></dependency><!-- https://mvnrepository.co…

【Java校招面试】实战面经(五)

目录 前言一、讲讲short数据类型&#xff0c;short s1 1; s1 s11;对不对&#xff1f;二、使用final关键字的好处三、如果String中重写equals不重写hashCode会出现什么问题&#xff1f;四、ConcurrentHashMap的get方法是不加锁的&#xff0c;如何保证线程安全&#xff1f;五、…

缓存存在的问题

文章目录 缓存问题缓存穿透引入解决方案 缓存雪崩缓存击穿 缓存问题 使用缓存时常见的问题主要分为三个&#xff1a;缓存穿透 、缓存雪崩、缓存击穿。 下面对其进行一一学习 缓存穿透 引入 定义&#xff1a;缓存穿透是指客户端请求的数据在缓存中和数据库中都不存在&#…

20230521给coolpi4b开发板刷Android12和串口的使用

20230521给coolpi4b开发板刷Android12和串口的使用 2023/5/21 9:31 所需要的配件&#xff1a; 1、2.0mm转2.54mm的杜邦线母头2条&#xff08;2位一起的一条&#xff09; 2、串口板&#xff1a;CH340&#xff08;WIN7下使用&#xff09; 3、USB的公头-公头线 首先&#xff0c;欢…