通行证│用户名: 密码: 验证码: 验证码,看不清楚?请点击刷新验证码 电信网通铁通移动   在线
文章搜索:
热门搜索:红客 黑鹰 红客技术 安全动画 红客培训
首页 文章 软件 动画 资源 励志 论坛 邮箱 会员 军事 科技 博客 爱心红客 最近更新 800g资源
 业内新闻 漏洞公告 病毒公告 电脑知识 网络知识 菜鸟入门 攻防教程 黑客攻防 安全编程 工具使用 综合安全 个人安全 安全相关 Q Q安全 原创精华 红客人物 站内事件
您现在的位置: 爱国者安全网 >> 文章类 >> 红客教程 >> 网络攻防 >> 文章正文
Php网站脚本注入的原理
责任编辑:酷酷の鱼   更新日期:2008-1-14
 

来源:安全中国

接下来我简述一下对于php的注入攻击:

Php的环境一般是apache+php+mysql,平常配置服务器一般是打开php.ini里的安全模式,将safe_mode设为on,还有就是将display_erors设为off,即关闭错误显示。还有一个非常重要的配置选项-----magic_quotes_gpc,高版本默认为on,以前的版本中默认为off。当magic_quotes_gpc为on的时候我们怎么防范php的字符变量注入呢?其实只需将提交的变量中的所有单引号、双引号、反斜线和空字告符自动转换为含有反斜线的转义字符。如把“’”变成“\”,把“\”变成“\\”,就ok了。下面我们分为对magic_quotes_gpc=off和magic_quotes_gpc=on的注入清况分析一下。

我们先看一段有漏洞的php代码,这段代码是用来搜索的。


从上面代码中我们可以看出,是一个搜索表单,通过post提交数据,并进行select查询,当然要分析这些漏洞我们得先掌握php语言和mysql语法。如果我们从表单中提交%’ order by id#(#号在mysql中表示注释,不执行后面的sql语句),或者用’ order by id#,带入的sql语句就成了select * from user where u

sername like ‘% %’ order by id# order by username 和 select * from us

ers where username like ‘%%’ order by id# order by username。这样数据库的内容会全部返回,列出所有用户名,还有密码等。当然还有update 语句注入攻击、insert语句注入攻击等,最常用的是union语法注入,采用into outfile语句导出php脚本木马。

首先要清楚一些mysql语句,如mysql>select load_file(‘c:/boot.ini’)我们可以查看c盘下的boot.ini文件内容,在有注入点的网址后面加入该查询语句就可以显示出黑客们想获得的敏感信息,如查看数据库的连接文件获得数据帐号,查看ect/password信息等。Select * from  table  into  outfile  "C:\\Inetpub\\wwwroot\\shell.php";也就是从表中导出字符串到C:\Inetpub\wwwroot\shell.php中,通常黑客们在得到mysql帐号的情况下,利用create table rose(cmd text);建立一个rose表,字段cmd为text类型,然后用use  rose;打开rose表,insert into rose values("<?php POST[cmd]);?> ")加入一句话马到字段里。然后select * from rose into outfile "C:\\Inetpub\\wwwroot\\shell.php";将一句话木马导出为一个shell.php文件,当然这个shell.php中就包含<?php ]);?>,懂php的都知道这句会造成什么后果,配合提交参数,是可以执行cmd命令和上传php木马的。

当magic_quotes_gpc=on时,提交变量中的所有单引号、双引号、反斜线和空字符会自动转换为含有反斜线的转义字符,字符型的注入可以防范,但数字型没有用到单引号,字符型注入也可以通过char()将参数解释为整数,并返回由这些整数的ASCII码字符组成的一个字符串,也可以用16进制来代替字符。例如:在浏览器里输入http://localhost/www/admin/login.php?username=char(114,111,115,101)%23

上面假设的我们知道的用户名是rose,转换成ASCII后是char(114,111,115,101),%23是#号

表注释。那么sql语句变成:select * from  example where=’’,后面的and password=’’被注释掉了,我们顺利进入后台。

  • 上一篇文章:
  • 下一篇文章:
  • 最近更新
    固顶文章 爱国者安全网2007年度优秀版主评选
    普通文章 瑞星公司01月14日发布 每日计算机病毒及木马播报
    推荐文章 推荐:安全检测80端口Web服务攻击痕迹
    普通文章 IIS 6.0默认设置安全性的改变
    普通文章 防范DDOS分布式攻击的策略和措施
    普通文章 Php网站脚本注入的原理
    普通文章 网站脚本漏洞形成的原因
    普通文章 自己写的文件分析器-PE DeCODER v1.0
    普通文章 OfficeMan-V2.1简单算法分析-菜鸟篇
    普通文章 MS08-002:LSASS中的漏洞有可能允许本地特权提升
    热门文章
    普通文章网络渗透测试无法告诉你的东西
    普通文章反汇编破解Radmin密码实例
    普通文章简单的TxtEdit 4.5.2注册算法
    推荐文章推荐:用IE浏览器实现远程控制服务器
    普通文章双色球掌握天机 1.2.0的注册算法
    普通文章delphi控件ImageEn2.26算法分析
    普通文章计算机病毒鼻祖拟挑战谷歌
    普通文章黑色“DOS”频繁闪出 究竟是谁在作怪?
    普通文章2007年十大病毒排行:U盘病毒折桂年度毒王
    普通文章江民监测报告称计算机新病毒一年增长5倍
    精彩专题