flask内存马 常用的python框架有django,flask这两者都可能存在ssti漏洞,python内存马利用flask框架中的ssti注入来实现,flask框架中在web应用模版渲染的过程中用到render_template_string进行渲染,但是未对用户输入的代码进行过滤导致用户可以通过注入恶意代码来实现python内存马的注入 前置 钩子函数(hook) 本质是:允许用户在某个特…
栈基础 什么是栈? 栈是一种典型的后进先出的数据结构,,主要是压栈(push)和出栈(pop)两种操作 有栈底和栈顶,其中栈底是固定的,不进行操作,栈是一种计算机结构 举一个例子 高地址(High Address) ┌────────────────────┐ │ 函数参数 …
说在前面 最近有实验室的小朋友做文件上传的题目,对这个点没有理太清楚 所以我来详细整理一下,顺便当做自己复习了 .user.ini文件 先来看看官方手册的解释 .user.ini 是 PHP 为 非 CGI 模式(主要是 FastCGI) 提供的一种目录级配置文件机制,用于设置当前目录及其子目录的 PHP 配置项 .user.ini 允许你在项目目录中局部修改 PHP 配置 可以看到是说对每个目录…
说在前面 本篇仅是本人对应急响应的学习记录,具体做题步骤可能有跳,可能没有很具体的答疑和写出知识点 第一章 应急响应-webshell查杀 简介 靶机账号密码 root xjwebshell1.黑客webshell里面的flag flag{xxxxx-xxxx-xxxx-xxxx-xxxx}2.黑客使用的什么工具的shell github地址的md5 flag{md5}3.黑客隐藏shell的完整…
什么是pin码 PIN码是用于flask开启调试模式下的安全机制,开启debug后,flask会在web浏览器增加交互式调试控制台,也就是相当于自带webshell,但是会要求未授权用户在输入PIN码后才可以使用控制台 pin码生成并不依赖flask本身,而是依赖于Werkzeug的调试工具(werkzeug.debug.tbtools.get_pin() 函数),他的源码位于 werkzeug/…
说在前面 回来复习复习,练习写脚本,温故知新嘛,最近学习感触也挺深的,到时候打算写个总结,MySQL要研究的东西还是很多的,同时实验室好多师傅也有来问我的,就想着回来再整理一下 web171 1' or 1=1--+即id='1' or 1=1--+'limit 1; web172 万能密码不行了 去查表 1' union select group_concat(table_name),2,3 f…
PHP伪协议是什么? PHP 伪协议是一种特殊的协议,它允许在 PHP 中以一种类似 URL 的方式访问和操作不同类型的资源,而无需依赖传统的网络协议(如 HTTP、FTP 等)。伪协议在文件包含、代码执行等操作中非常有用,但如果使用不当,也会带来严重的安全风险。 分类 1 file:// — 访问本地文件系统2 http:// — 访问 HTTP(s) 网址3 ftp:// — 访问 FTP(s…
前提 url的构成scheme://username:password@host:port/path?query#fragment 先上官方解释 parse_url — 解析 URL,返回其组成部分 本函数解析 URL 并返回关联数组,包含在 URL 中出现的各种组成部分。数组的元素值不会 URL 解码。 本函数不是用来验证给定 URL 的有效性的,只是将其分解为下面列出的部分。也会接受不完整或无…
什么是pickle? Pickle 是一个用于序列化和反序列化的 Python 库。它允许将复杂的对象,如字典、列表或其他Python对象,转换为字符串格式进 行存储或传输,并能在需要时恢复原始对象。 与php类似的,python也有序列化功能以长期储存内存中的数据,pickle是python下的序列化与反序列化包 python有另一个更原始的序列化包marshal,现在开发一般使用pickle …
会一直完善的,遇到新的姿势会继续整理的,这边直接就先上绕过了,有些简单的绕过我就没有写进去了 绕过! 类似于str_replace()('flag','')的过滤我们可以使用双写绕过。flflagag把中间的flag替换为空之后还是flag 过滤空格 < 、<>、%09(tab)、%20、$IFS$9、$IFS$1、${IFS}、$IFS等,还可以用{} 比如 {cat,flag…