细谈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

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

So nutzen Sie PHP zur Abwehr von Cross-Site-Scripting-Angriffen (XSS) Angesichts der rasanten Entwicklung des Internets sind Cross-SiteScripting-Angriffe (XSS) eine der häufigsten Bedrohungen für die Netzwerksicherheit. XSS-Angriffe dienen hauptsächlich dem Zweck, an vertrauliche Benutzerinformationen zu gelangen und Benutzerkonten zu stehlen, indem sie bösartige Skripte in Webseiten einschleusen. Um die Sicherheit der Benutzerdaten zu schützen, sollten Entwickler geeignete Maßnahmen zur Abwehr von XSS-Angriffen ergreifen. In diesem Artikel werden einige häufig verwendete PHP-Technologien zur Abwehr von XSS-Angriffen vorgestellt.

So nutzen Sie die PDO-Vorverarbeitung, um SQL-Injection-Angriffe zu verhindern. Einführung: Während der Webentwicklung müssen wir häufig mit der Datenbank interagieren. Falsche Datenbankabfragevorgänge können jedoch zu ernsthaften Sicherheitsrisiken führen, und eine der am häufigsten ausgenutzten Angriffsmethoden sind SQL-Injection-Angriffe. Um SQL-Injection-Angriffe zu verhindern, stellt PDO einen Vorverarbeitungsmechanismus bereit. In diesem Artikel wird die korrekte Verwendung der PDO-Vorverarbeitung vorgestellt. Was ist ein SQL-Injection-Angriff: SQL-Injection ist eine Angriffstechnik gegen die Datenbank, die der Angreifer verwendet

Mit der Popularität des Internets und der kontinuierlichen Erweiterung der Anwendungsszenarien nutzen wir Datenbanken immer häufiger in unserem täglichen Leben. Aber auch Fragen der Datenbanksicherheit erhalten zunehmend Aufmerksamkeit. Unter diesen ist der SQL-Injection-Angriff eine häufige und gefährliche Angriffsmethode. In diesem Artikel werden die Prinzipien, Schäden und die Verhinderung von SQL-Injection-Angriffen vorgestellt. 1. Prinzipien von SQL-Injection-Angriffen SQL-Injection-Angriffe beziehen sich im Allgemeinen auf das Verhalten von Hackern, die bösartige SQL-Anweisungen in Anwendungen ausführen, indem sie bestimmte böswillige Eingaben konstruieren. Diese Verhaltensweisen führen manchmal dazu

Was ist das Prinzip des XSS-Angriffs? Mit der Popularität und Entwicklung des Internets rückt die Sicherheit von Webanwendungen zunehmend in den Mittelpunkt. Unter diesen ist Cross-SiteScripting (kurz XSS) eine häufige Sicherheitslücke, auf die Webentwickler achten müssen. XSS-Angriffe werden durchgeführt, indem bösartiger Skriptcode in eine Webseite eingeschleust und im Browser des Benutzers ausgeführt wird. Dadurch kann der Angreifer den Browser des Benutzers steuern und an die vertraulichen Informationen des Benutzers gelangen.

Datenbanksicherheit: Strategien zum Schutz von Java-Anwendungen vor SQL-Injection-Angriffen Zusammenfassung: Mit der Entwicklung des Internets spielen Java-Anwendungen eine immer wichtigere Rolle in unserem Leben und Arbeiten. Allerdings sind gleichzeitig auch Fragen der Datenbanksicherheit immer wichtiger geworden. SQL-Injection-Angriffe gehören zu den häufigsten und verheerendsten Sicherheitslücken in Datenbanken. In diesem Artikel werden einige Strategien und Maßnahmen zum Schutz von Java-Anwendungen vor der Bedrohung durch SQL-Injection-Angriffe vorgestellt. Teil 1: Was ist ein SQL-Injection-Angriff? SQL-Injection

PHP-Datenfilterung: XSS- und CSRF-Angriffe verhindern Mit der Entwicklung des Internets ist die Netzwerksicherheit zu einem Schwerpunkt geworden. Bei der Website-Entwicklung ist es sehr wichtig, vom Benutzer übermittelte Daten zu filtern und zu überprüfen, insbesondere um XSS-Angriffe (Cross-Site-Scripting-Angriffe) und CSRF-Angriffe (Cross-Site-Request-Forgery-Angriffe) zu verhindern. In diesem Artikel wird erläutert, wie Sie mit PHP diese beiden häufigen Sicherheitslücken verhindern können, und es wird ein Beispielcode als Referenz bereitgestellt. Verhindern von XSS-Angriffen XSS-Angriffe beziehen sich auf böswillige Angreifer, die bösartige Skripte oder Codes einschleusen, um sie zu manipulieren

Sicherheit der PHP-Datenbankverbindung: Methoden zur Verhinderung von SQL-Injection-Angriffen Einführung: Bei der Entwicklung von Webanwendungen ist die Datenbank eine der sehr wichtigen Komponenten. Allerdings können fehlerhafte oder unsichere Datenbankverbindungen böswilligen Benutzern die Durchführung von SQL-Injection-Angriffen ermöglichen, die die Sicherheit unserer Anwendungen ernsthaft gefährden. Um die Anwendung vor SQL-Injection-Angriffen zu schützen, müssen wir einige Sicherheitsmaßnahmen ergreifen. In diesem Artikel werden einige häufig verwendete Sicherheitsmethoden für PHP-Datenbankverbindungen vorgestellt und entsprechende Codebeispiele gegeben. 1. machen

Zusammenfassung häufiger Netzwerksicherheitsprobleme und Lösungen bei der Java-Entwicklung: Mit der Popularisierung des Internets sind Netzwerksicherheitsprobleme immer wichtiger geworden. Während der Java-Entwicklung müssen wir darüber nachdenken, wie wir die Sicherheit der Netzwerkkommunikation schützen können. In diesem Artikel werden einige häufig auftretende Netzwerksicherheitsprobleme vorgestellt und entsprechende Lösungen und Codebeispiele bereitgestellt. 1. Cross-Site-Scripting-Angriff (XSS) Beim XSS-Angriff handelt es sich um eine Angriffsmethode, die durch das Einschleusen bösartiger Skripte in Webseiten an vertrauliche Benutzerinformationen gelangt. Um XSS-Angriffe zu verhindern, können wir eine regelmäßige Eingabeprüfung nutzen
