⑴ 不会php和SQL,能做漏洞挖掘吗
如果基础不够扎实、自己开发还是比较冒险的,如果想防止漏洞可以下载pageadmin cms、discua cms都是比较简单的、直接下载就可以使用。
⑵ php漏洞与代码审计过程中需要注意的几点
1.xss + sql注入
其中占大头的自然是XSS与SQL注入,对于框架类型或者有公共文件的,建议在公共文件中统一做一次XSS和SQL注入的过滤。写个过滤函数,可由如下所示:
$_REQUEST = filter_xss($_REQUEST);
$_GET = filter_xss($_GET);
$_POST = filter_xss($_POST);
$_COOKIE = filter_xss($_COOKIE);
$_POST = filter_sql($_POST);
$_GET = filter_sql($_GET);
$_COOKIE = filter_sql($_COOKIE);
$_REQUEST = filter_sql($_REQUEST);
这里有一点需要说明,$_REQUEST虽然等于$_GET+$_POST,但他们是独立的数组,也就是说假设改变了$_GET的值,但$_REQUEST的值还是原来的值,所以过滤时都不能落下,至于其他的如$_FILE之类的就可忽略了。
最简单的filter_xss函数是htmlspecialchars()
最简单的filter_sql函数是mysql_real_escape_string()
当然,谁都知道这种过滤filter_sql只能过滤字符型和搜索型的注入,对于数字型是没有办法的,但也说明做了这层过滤后,只需在后面注意数字型的SQL语句就可以了,遇到了加intval过滤就可以了,这就变得容易多了。
2. 命令执行
对于命令执行,可以从关键字入手,总共可分为3类
(1) php代码执行 :eval等
(2)shell命令执行:exec、passthru、system、shell_exec等
(3) 文件处理:fwrite、fopen、mkdir等
对于这几类需要注意其参数是否用户可控。
3.上传漏洞
对于上传漏洞,也是重点关注的地方,要仔细分析它的处理流程,针对上传的绕过方式是很多的,最保险的方式:在保存文件是采用文件名随机命名和后缀白名单方式。其次要注意的一点是上传文件的地方可能不止一处,不要有遗漏,可能会碰到这样的情况,突然在某个目录里面包含了一个第三方的编辑器在里面。
文件包含漏洞涉及的函数如include() 、include_once()、require()、require_once()、file_get_contents()等
最常见的还是出在下载文件功能函数,例如download.php?file=///etc/passwd 这种类型中。
4. 权限绕过
权限绕过可分为两类吧
(1)后台文件的未授权访问。后台的文件没有包含对session的验证,就容易出现这样的问题
(2)未作用户隔离,例如mail.php?id=23显示了你的信件,那么换个ID, mail.php?id=24就查看到了别人的信件,编写代码是方便,把信件都存在一个数据表里,id统一编号,前端展现时只需按id取出即可,但未作用户隔离,判定归属,容易造成越权访问。
这样的例子是很常见的,给某银行做评估是就经常发现这种漏洞。
5. 信息泄露
信息泄露算是比较低危的漏洞了,比如列目录这种就属于部署问题,而与代码审计无关了,而像暴路径、暴源码这种是需要防止的。曾经遇到这样的代码
<?php if(empty($_GET['a'])) {…} ?>
表面上似乎没问题,可是当请求变为 xx.php?a[]=1时,即参数变为数组的时候,就会发生错误以致路径泄露,而用isset判断则不会,当然一个个防太麻烦,建议在配置文件中关闭错误提示,或者在公共文件中加入如下代码以关闭错误显示功能:
<?php error_reporting(0);?>
⑶ php中有哪些容易导致漏洞的危险函数
最危险的当属:eval了,eval — Evaluate a string as PHP code,把字符串当做php代码来执行,很多一句话木马就是用的这个函数来构造的,你可以去搜”php一句话木马“看看。
include/require 这两个函数也被黑客经拿来引用木马。
⑷ php漏洞修复
打开php配置文件,php.ini,然后在里面搜索dll,把你下载的布丁照着格式复制一行就行了。比如你下载的补丁为abc.dll;就加一行extension=abc.dll
⑸ 关于PHP漏洞修复
因为官方已经停止更新了,是不会出新包的。如果想要修复,只能把自己的版本迭代,升级到php7。物竞天择,只能狠狠心更新版本了,项目可能要大换血
⑹ PHP漏洞有哪些
首先和ASP一样,对敏感字符过滤不严会导致注入..
还有PHP很有特点,他得运行程序是很人性化得,如果设置不好,随便提交个有错得地址之类就会告诉你绝对路径之类得敏感信息.
PHP包含过滤不严会导致读取任意文件.
变量过滤不严会导致伪造数据欺骗服务器.
等等等等好多..我说得这些都是比较常见和常用得
⑺ 零基础如何学习挖漏洞
师傅领进门,修行在个人。
国内研究洞挖掘所谓的“地面”的习惯,吃各种各样的编程书籍,然后研究挖洞,这个问题不是好学的编程控制的程度,和纯首先学习编程也很无聊,很多人可能无法坚持。
漏洞利用
让我们来看看一些更高级的漏洞,比如各种可变覆盖漏洞,例如由unserialize引起的代码执行,我们可能会发现很难开始查看这些漏洞。然后你需要回过头来看看提取和其他函数的具体用法。
每一对$_REQUEST的变量生成过程是什么?unserialize函数的执行流程是什么?然后去看以前的技术文章将会是开明的。
这只是一个基本的PHP漏洞挖掘,然后熟练地尝试查看一些漏洞分析框架,比如thinkphp,这些也涉及OOP的知识,所以回到学习PHP OOP编程,然后继续。
总结
所以我认为还是先好好学习好语言,然后再学其他的会更扎实。
⑻ thinkphp 怎么利用漏洞
可以在腾讯智慧安全页面申请使用腾讯御点
然后使用这个软件上面的修复漏洞功能
直接对电脑的漏洞进行检测和修复就可以了