Web的基本漏洞--代码执行漏洞

目录

一、代码执行漏洞的介绍

1.代码执行漏洞的原理

2.常用含有的代码执行漏洞的函数

3.代码执行漏洞的危害

4.代码执行漏洞的防范措施 


一、代码执行漏洞的介绍

1.代码执行漏洞的原理

web应用程序是指程序员在代码中使用了一些执行函数例如php的eval,assert等函数,用户可以控制这个字符串去这些函数中执行,从而造成安全漏洞

应用程序在调用一些能够将字符串转换为代码的函数(如 PHP 中的 eval )时,没有考虑用户是否控制这
个字符串,将造成代码执行漏洞。大部分都是根据源代码判断代码执行漏洞。

2.常用含有的代码执行漏洞的函数

eval()

assert()

call_user_func()

call_user_func_array()

3.代码执行漏洞的危害

  • 执行任意的代码,例如协议脚本文件
  • 向网站写入webshell
  • 控制整个网站或者服务器

4.代码执行漏洞的防范措施 

代码执行的防御分为三个方面 参数 , 函数 和 权限

  1. 对于eval()函数一定要保证用户不能轻易接触eval的参数或者用正 则严格判断输入的数据格式。
  2. 对于字符串一定要使用单引号包裹可控代码,并且插入前进行 addslashes().或使用黑白名单校验
  3. 对于preg_replace放弃使用e修饰符。如果必须要用e修饰符,请 保证第二个参数中,对于正则匹配出的对象,用单引号包裹。
  4. 限制Web用户的权限
  5. 禁用或减少使用执行代码的函数

猜你喜欢

转载自blog.csdn.net/weixin_62421736/article/details/130977806
今日推荐