
安全学习
文章平均质量分 82
安全学习
H3rmesk1t
记录一下平时遇到的问题和学习的东西
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
NoSQL 注入
NoSQL 注入基本概念NoSQLMongoDBMemcachedRedisMongoDB 初步MongoDB 基础概念解析数据库(Database)文档(Document)集合(Collection)MongoDB 基础语法解析MongoDB 创建数据库MongoDB 创建集合MongoDB 插入文档MongoDB 更新文档update 方法save 方法MongoDB 查询文档MongoDB 与 RDBMS Where 语句的比较MongoDB AND 条件MongoDB OR 条件AND 和 OR 联原创 2021-09-17 20:08:53 · 2872 阅读 · 0 评论 -
详解SSTI模板注入
详解SSTI模板注入SSTI简介常见的模板引擎PHPJAVAPYTHONRUBYGOLANGSSTI产生的原因常用检测工具 TplmapFlask/Jinja模板引擎的相关绕过Flask简介demo漏洞代码基础知识沙盒逃逸Python的内建函数名称空间类继承寻找Python-SSTI攻击载荷的过程攻击载荷过程常用的目标函数常见的中间对象fuzz可利用类脚本服务端fuzzPython常用的命令执行方式Python-Web框架配置文件TornadoflaksFlask过滤器定义使用方式用的过滤器模块查找脚本常见原创 2021-09-09 17:23:58 · 4688 阅读 · 0 评论 -
XXE-XML外部实体注入
XXE-XML外部实体注入环境原理介绍漏洞危害例子有回显无回显解决方案和建议更进一步的学习XXE环境PHP 7.0.30、Libxml 2.8.0(Libxml2.9.0以后默认不解析外部实体,对于PHP版本不影响XXE的利用)原理介绍XML 被设计为传输和存储数据,其焦点是数据的内容,HTML 被设计用来显示数据,其焦点是数据的外观,HTML 旨在显示信息,而 XML旨在传输信息XML特点:XML 被设计用来结构化、存储以及传输信息,仅仅是纯文本,有能力处理纯文本的软件都可以处理 XML,原创 2021-06-06 14:45:26 · 185 阅读 · 2 评论 -
绕过PHP代码执行中的过滤限制详解
绕过PHP代码执行中的过滤限制详解代码执行函数字符串拼接绕过字符串转义绕过多次传参绕过内置函数访问绕过异或绕过或绕过URL编码取反绕过递增递减运算符绕过上传临时文件代码执行函数PHP中具有代码执行功能的函数eval():最常见的代码执行函数,把字符串 code 作为PHP代码执行eval ( string $code ) : mixedassert():检查一个断言是否为falseassert()会检查指定的assertion并在结果为false时采取适当的行动,在PHP5或P原创 2021-06-02 17:37:31 · 3066 阅读 · 5 评论 -
详解命令执行漏洞
详解命令执行漏洞漏洞描述漏洞原理漏洞危害漏洞产生的原因命令执行与代码执行的区别常见的危险函数命令执行的类型危险函数利用systempassthruexecshell_exec`(反引号)escapeshellarg/escapeshellcmdOS命令执行WINDOWS系统支持的管道符LINUX系统支持的管道符JavaPython常见过滤绕过编码绕过八进制绕过十六进制绕过空格过滤>,+过滤关键词绕过空变量花括号的用法无回显的命令执行读文件命令长度绕过DNSlog外带反弹shell防范措施漏洞描述原创 2021-05-28 09:53:05 · 16355 阅读 · 8 评论 -
详解文件包含漏洞
详解文件包含漏洞什么是文件包含文件包含漏洞成因php引发文件包含漏洞的四个函数文件包含漏洞的类型本地文件包含无任何限制限制包含文件的后缀名Session文件包含漏洞什么是文件包含为了更好地使用代码的重用性,引入了文件包含函数,通过文件包含函数将文件包含进来,直接使用包含文件的代码,简单点来说就是一个文件里面包含另外一个或多个文件文件包含漏洞成因文件包含函数加载的参数没有经过过滤或者严格的定义,可以被用户控制,包含其他恶意文件,导致了执行了非预期的代码例如:$_GET['filename']没原创 2021-05-28 02:05:40 · 1380 阅读 · 15 评论 -
详解PHP反序列化漏洞
PHP反序列化学习序列化与反序列化定义常见使用情况常见的序列化格式反序列化中常见的魔术方法反序列化绕过protected和private绕过__wakeup绕过(CVE-2016-7124)引用利用16进制绕过字符过滤同名方法的利用绕过部分正则字符逃逸字符增多字符减少序列化与反序列化定义序列化(串行化):是将变量转换为可保存或传输的字符串的过程;反序列化(反串行化):就是在适当的时候把这个字符串再转化成原来的变量使用;这两个过程结合起来,可以轻松地存储和传输数据,使程序更具维护性;常见的php原创 2021-05-23 22:15:22 · 3095 阅读 · 17 评论 -
PHP序列化与反序列化记录
(1): preg_match(’/[oc]:\d+:/i’, $value, $matches);在include/utils.php类有sugar_unserialize方法function sugar_unserialize($value){ preg_match('/[oc]:\d+:/i', $value, $matches); if (count($matches)) { return false; } return unserializ原创 2020-12-04 19:57:47 · 695 阅读 · 0 评论 -
PHP伪协议学习
首先归纳下常见的文件包含函数:include、require、include_once、require_once、highlight_file 、show_source 、readfile 、file_get_contents 、fopen 、file,计划对文件包含漏洞与php封装协议的利用方法进行总结,本篇先总结下一些封装协议,涉及的相关协议:file://、php://filter、php://input、zip://、compress.bzip2://、compress.zlib://、data:/原创 2020-11-29 14:58:57 · 253 阅读 · 0 评论 -
.htaccess利用方式
.htaccess利用方式文件解析文件包含源码泄露代码执行命令执行XSS自定义错误文件文件解析经常出现在文件上传的黑名单没有限制 .htaceess 后缀,通过上传 .htaccess 文件,再上传图片,使图片的 php 恶意代码得以被解析执行.htaccess 文件内容有如下两种(1)SetHandler 指令# 将images.png 当做 PHP 执行<FilesMatch "images.png">SetHandler application/x-httpd-ph原创 2021-05-08 20:36:55 · 2089 阅读 · 2 评论 -
.htaccess相关问题
.htaccess相关问题背景原理.htaccess攻击.htaccess在重定向中的利用.htaccess的shellBypass方式背景有的时候由于各种名单的原因,可能我们只能上传任何php文件,而且还没有其他地方来解析成php,但是如果能上传.htaccess文件的话,这个问题就能引刃而解了原理.htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置;通过htaccess文件 ,可以实现网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的原创 2021-05-08 20:01:03 · 949 阅读 · 2 评论 -
Upload-labs通关
Upload-labs通关第一关第二关第一关源码;function checkFile() { var file = document.getElementsByName('upload_file')[0].value; if (file == null || file == "") { alert("请选择要上传的文件!"); return false; } //定义允许上传的文件类型 var allow_ext = ".jpg原创 2021-05-08 18:29:23 · 793 阅读 · 0 评论 -
htmlspecialchars函数绕过
htmlspecialchars函数绕过定义语法用法绕过方法定义把预定义的字符转换为 HTML 实体语法htmlspecialchars(string,flags,character-set,double_encode)用法预定义的字符&:转换为&":转换为"':转换为成为 '<:转换为<>:转换为>string:必需,规定要转换的字符串flags :可选,规定如何处理引号、无效的编码以及使用原创 2021-05-07 21:17:57 · 3169 阅读 · 0 评论 -
xss-labs
level1Payloadhttp://test.ctf8.com/level1.php?name=<script>alert('xss')</script>level2Payloadhttp://test.ctf8.com/level2.php?keyword=%22%3E%3Cscript%3Ealert%28%27xss%27%29%3C%2Fscript%3E&submit=%E6%90%9C%E7%B4%A2原创 2021-05-07 23:25:56 · 241 阅读 · 0 评论 -
XSS常见的触发标签
无过滤情况<script><scirpt>alert("xss");</script><img>图片加载错误时触发<img src="x" onerror=alert(1)><img src="1" onerror=eval("alert('xss')")>鼠标指针移动到元素时触发<img src=1 onmouseover="alert(1)">鼠标指针移出时触发<img src=1 onm原创 2021-05-06 22:00:52 · 21659 阅读 · 6 评论 -
XSS概述
简述XSS攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。这些恶意网页程序通常是JavaScript,但实际上也可以包括Java,VBScript,ActiveX,Flash或者甚至是普通的HTML。攻击成功后,攻击者可能得到更高的权限(如执行一些操作)、私密网页内容、会话和cookie等各种内容。XSS常见的攻击手段和目的1.盗用cookie,获取敏感信息。2.利用植入Flash,通过crossdomain权限设置进转载 2021-05-06 20:43:46 · 328 阅读 · 0 评论 -
google-xss-game
题目链接level1-未过滤的字符串输入没有任何过滤,最基本的操作:<script>alert(1)</script>level2-服务端存储漏洞查看网页源码,我们在用户字段输入的文字被外部标签<blockquote>标签包裹,尝试level1中的操作,发现无法弹窗。在<script>标签无法触发的时候,尝试用另一个标记来触发javascript,考虑到数据是永久存储在对方服务器上的,所以可以这样输入:<img src="x" onerror="原创 2021-05-06 19:29:38 · 275 阅读 · 0 评论 -
利用/绕过escapeshellarg/escapeshellcmd函数
利用/绕过escapeshellarg/escapeshellcmd[1]escapeshellarg和escapeshellcmd的功能[2]已知的绕过/利用参数注入TARFINDEscapeshellcmd和escapeshellarg用.bat执行命令SENDMAILCURLMYSQLUNZIP未设置LANG环境变量,则去除非ASCII字符[3]经典EXP[4]GitList RCE漏洞利用[1]escapeshellarg和escapeshellcmd的功能escapeshellarg:(P原创 2021-05-16 21:48:35 · 6461 阅读 · 0 评论 -
Wireshark例题-CTF
Wireshark例题-CTF搜索文件提取例题一例题二信息提取搜索题目文件:key.pcapng题目描述:flag被盗,赶紧溯源!题目题解:①可以只将这个数据包当做文本文件打开,比如用一些notepad++编辑器,然后直接搜索②用Wireshark自带的搜索功能找尝试查找一些关键词(比如key、flag、shell、pass等),然后跟进可疑的数据包,根据数据包特征,很明显看出这是一个菜刀连接一句话木马的数据包,然后往下找,即可看到读取的flag文件提取例题一题目文件:原创 2021-05-14 23:40:53 · 16751 阅读 · 1 评论 -
Wireshark流量分析
Wireshark流量分析开始抓包wireshark过滤器表达式wireshark着色规则数据流的追踪数据包的统计分析数据包的大致结构网络分析只抓包头开始抓包打开wireshark后,按ctrl+K,勾选需要抓包的网卡点击Start开始抓包wireshark过滤器表达式协议过滤TCP:只显示TCP协议的数据流HTTP:只显示HTTP协议的数据流ICMP:只显示ICMP协议的数据流ARP:只显示ARP协议的数据流DNS:显示DNS协议的数据流IP过滤ip.addr =原创 2021-05-14 18:46:06 · 17470 阅读 · 5 评论 -
MD5绕过
MD5绕过MD5弱类型比较方法一:数组绕过方法二:科学计数法绕过双MD5判断扩展构造MD5强类型比较方法一:数组绕过方法二:使用md5加密后两个完全相等的两个字符串绕过哈希长度扩展攻击MD5弱类型比较<?phphighlight_file(__FILE__);error_reporting(0);$flag = "flag{H3rmesk1t_is_a_loser}";$val1 = $_GET['val1'];$val2 = $_GET['val2'];if (isset($_GET原创 2021-05-14 11:13:27 · 9424 阅读 · 4 评论