文件包含漏洞原理
程序开发人员通常会把可重复使用的执行函数写在单个文件内,在使用某个函数的时候,直接可以通过文件包含函数,直接调用执行函数文件,无需多次或再次编写,这种调用文件的过程通常被称为包含
产生的原因:
为了代码更加的灵活,开发者会把被包含的文件设置为变量,进行动态调用,从而导致客户端可以调用任意文件,假设攻击者构造恶意代码,并包含了该恶意代码执行文件。
文件包含漏洞可以解析含PHP代码的文件内容 如果文件内 包含php可执行代码 则php程序会被解析并正常执行
产生原因
⭐⭐⭐PHP文件包含会将一切的文件当成PHP脚本执行
文件包含是php的正常功能,如果包含的文件用户可以控制。且后端代码没有进行严格验证,就会造成文件包含漏洞。
Java、ASP是完全面向对象的语言 不存在文件包含漏洞
产生代码思路
对base64编码后的字符进行php代码执行
data://text/plain;base64,[执行脚本]
base64编码是 出现+号 在URL中 出现 需要二次编码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |