细谈php中SQL注入攻击与XSS攻击_PHP
例如: SQL注入攻击
XSS攻击
复制代码 代码如下:
任意执行代码
文件包含以及CSRF.
}
关于SQL攻击有很多文章还有各种防注入脚本,但是都不能解决SQL注入的根本问题
见代码:
复制代码 代码如下:
mysql_connect("localhost","root","123456")or die("数据库连接失败!");
mysql_select_db("test1");
$user=$_post['uid'];
$pwd=$_POST['pass'];
if(mysql_query("SELECT * from where
admin
= `username`='$user' or `password`='$pwd'"){
echo "用户成功登陆..";
} eles {
echo "用户名或密码出错";
}
?>
很简单的一段代码,功能是用于检测用户名或密码是否正确,可是在一些恶意攻击者中提交一些敏感代码.后果可想而知.. post判断注入的方式有2种。
1.在form表单的文本框输入 "or‘1'=1"或者"and 1=1"
在查询数据库的语句就应该是:
SELECT admin from where login = `user`=''or‘1'=1' or `pass`=‘xxxx'
当然也不会出现什么错误,因为or在sql的语句中代表和,或的意思。当然也会提示错误。
当时我们已经发现了可以执行SQL语句之后就可以查询当前表的所有信息。例如:正确的管理员账户和密码进行登录入侵。。
修复方式1:
使用javascript脚本过滤特殊字符(不推荐,指标不治本)
如果攻击者禁用了javascript还是可以进行SQL注入攻击。。
修复方式2:
使用mysql的自带函数进行过滤。
见代码:
复制代码 代码如下:
// 省略连接数据库等操作。。
$user=mysql_real_escape_string($_POST['user']);
mysql_query("select * from admin whrer `username`='$user'");
?>
既然前面说道了xss攻击,我们再来说说XSS攻击以及防范吧。。
提交表单:
复制代码 代码如下:
接收文件:
复制代码 代码如下:
if(empty($_POST['sub'])){
echo $_POST['test'];
}
很简单的一段代码,在这里只是模拟了下使用场景..
加入攻击者提交
<script>alert(document.cookie);</script>
在返回的页面就应该显示当前页面的cookie信息。
我们可以运用到某些留言板上(提前是没过滤的),然后当管理员审核改条信息时盗取COOKIE信息,并发送到攻击者的空间或者邮箱。。攻击者可以使用cookie修改器进行登陆入侵了。。
当然解决方案也有很多。。下面就介绍一个最常用的方式吧。
修复方案1:使用javascript进行转义
修复方案2:使用php内置函数进行转义
代码如下:
[code]
if(empty($_POST['sub'])){
$str=$_POST['test'];
htmlentities($srt);
echo $srt;
}
[html]
好了,关于SQL注入攻击和XSS攻击的案例与修复方法就讲的差不多了。
当然还有其他的解决方法:
例如:使用php框架
还有其他的一些方法。。当然了,XSS的运用范围与攻击方式很多也很广。本文只针对php的提交方式进行过滤,还有其他的需要自己去研究 ^_^~
此文出此:Aey uhost team(team.hake.cc),转载请带上版权。
y0umer
2012/6/7

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

如何使用PHP防御跨站脚本(XSS)攻击随着互联网的快速发展,跨站脚本(Cross-SiteScripting,简称XSS)攻击是最常见的网络安全威胁之一。XSS攻击主要是通过在网页中注入恶意脚本,从而实现获取用户敏感信息、盗取用户账号等目的。为了保护用户数据的安全,开发人员应该采取适当的措施来防御XSS攻击。本文将介绍一些常用的PHP防御XSS攻击的技术

如何使用PDO预处理防止SQL注入攻击引言:在进行Web开发过程中,我们经常需要与数据库进行交互。然而,不正确的数据库查询操作可能导致严重的安全风险,其中一种被广泛利用的攻击方式就是SQL注入攻击。为了防止SQL注入攻击,PDO提供了一种预处理机制,本文将介绍如何正确地使用PDO预处理。什么是SQL注入攻击:SQL注入是一种针对数据库的攻击技术,攻击者通过在

随着互联网的普及和应用场景的不断拓展,我们在日常生活中使用数据库的次数越来越多。然而,数据库安全问题也越来越受到关注。其中,SQL注入攻击是一种常见且危险的攻击方式。本文将介绍SQL注入攻击的原理、危害以及如何防范SQL注入攻击。一、SQL注入攻击的原理SQL注入攻击一般指黑客通过构造特定的恶意输入,在应用程序中执行恶意SQL语句的行为。这些行为有时候会导致

XSS攻击原理是什么,需要具体代码示例随着互联网的普及和发展,Web应用程序的安全性逐渐成为人们关注的焦点。其中,跨站脚本攻击(Cross-SiteScripting,简称XSS)是一种常见的安全漏洞,对于Web开发人员而言必须要重视。XSS攻击是通过向Web页面注入恶意的脚本代码,从而在用户的浏览器中执行,这样攻击者就能控制用户的浏览器,获取用户的敏感信

数据库安全性:保护Java应用程序免受SQL注入攻击的策略摘要:随着互联网的发展,Java应用程序在我们的生活和工作中扮演着越来越重要的角色。然而,与此同时,数据库的安全性问题也日益凸显。SQL注入攻击是最常见且最具破坏性的数据库安全漏洞之一。本文将介绍一些策略和措施,以保护Java应用程序免受SQL注入攻击的威胁。第一部分:什么是SQL注入攻击?SQL注入

PHP数据过滤:预防XSS和CSRF攻击随着互联网的发展,网络安全成为人们关注的焦点之一。在网站开发中,对于用户提交的数据进行过滤和验证是非常重要的,尤其是预防XSS(跨站脚本攻击)和CSRF(跨站请求伪造攻击)攻击。本文将介绍如何使用PHP来防止这两种常见的安全漏洞,并提供一些示例代码供参考。预防XSS攻击XSS攻击是指恶意攻击者通过注入恶意脚本或代码来篡

PHP数据库连接安全性:防止SQL注入攻击的方法引言:在开发Web应用程序的过程中,数据库是非常重要的组件之一。然而,不正确或不安全的数据库连接可能会导致恶意用户进行SQL注入攻击,这将严重威胁我们的应用程序的安全性。为了保护应用程序免受SQL注入攻击的影响,我们需要采取一些安全措施。本文将介绍一些常用的PHP数据库连接安全方法,并给出相应的代码示例。一、使

Java开发中常见的网络安全问题及解决方法摘要:随着互联网的普及,网络安全问题日益凸显。在Java开发过程中,我们需要考虑如何保护网络通信的安全性。本篇文章将介绍一些常见的网络安全问题,并提供相应的解决方法和代码示例。一、跨站脚本攻击(XSS)XSS攻击是指通过将恶意脚本注入到网页中,获取用户敏感信息的一种攻击手段。为防止XSS攻击,我们可以使用常规的输入检
