Heim Backend-Entwicklung PHP-Tutorial 细谈php中SQL注入攻击与XSS攻击_PHP

细谈php中SQL注入攻击与XSS攻击_PHP

Jun 01, 2016 pm 12:12 PM
sql注入攻击 xss攻击

例如: 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
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So schützen Sie sich mit PHP vor Cross-Site-Scripting-Angriffen (XSS). So schützen Sie sich mit PHP vor Cross-Site-Scripting-Angriffen (XSS). Jun 29, 2023 am 10:46 AM

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 So nutzen Sie die PDO-Vorverarbeitung, um SQL-Injection-Angriffe zu verhindern Jul 28, 2023 pm 11:18 PM

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

Wie kann man SQL-Injection-Angriffe verhindern? Wie kann man SQL-Injection-Angriffe verhindern? May 13, 2023 am 08:15 AM

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

Wie funktionieren XSS-Schwachstellen? Wie funktionieren XSS-Schwachstellen? Feb 19, 2024 pm 07:31 PM

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.

Verhindern von SQL-Injection-Angriffen: Sicherheitsstrategien zum Schutz von Java-Anwendungsdatenbanken Verhindern von SQL-Injection-Angriffen: Sicherheitsstrategien zum Schutz von Java-Anwendungsdatenbanken Jun 30, 2023 pm 10:21 PM

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: Verhinderung von XSS- und CSRF-Angriffen PHP-Datenfilterung: Verhinderung von XSS- und CSRF-Angriffen Jul 29, 2023 pm 03:33 PM

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: Möglichkeiten zur Verhinderung von SQL-Injection-Angriffen Sicherheit der PHP-Datenbankverbindung: Möglichkeiten zur Verhinderung von SQL-Injection-Angriffen Sep 09, 2023 am 10:41 AM

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

Häufige Netzwerksicherheitsprobleme und Lösungen in der Java-Entwicklung Häufige Netzwerksicherheitsprobleme und Lösungen in der Java-Entwicklung Oct 09, 2023 pm 06:36 PM

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

See all articles