php – Analyse spezifischer Beispiele für SQL-Injection und XSS
高洛峰
高洛峰 2017-06-13 09:22:07
0
3
1898

Meine Website wurde vor einem Monat angegriffen und heute habe ich einen Schwachstellenerkennungsbericht von 360 erhalten. Oh mein Gott, 360 macht so etwas immer noch?

  • SQL-Injection
    Schwachstellen-Link 1:
    http://xxx.com:80/index.php?alias=message&action=comment?comment-diary-id=1&comment-ip=182.118.33.8&comment-author=88888&comment-email =hacker@hacker.org&comment-url=http://www.hacker.org/&comment-text=88888&comment-submit=SEND&comment-parent=0 RLIKE (SELECT (CASE WHEN (4725=4725) THEN 0 ELSE 0x28 END))
    Schwachstellen-Link 2:
    http://xxx.com:80/index.php?alias=message' AND SLEEP(5)%20%23
    Schwachstellen-Link 3:
    http://xxx.com:80/index .php?cat=note' UND 'dSob'='dSob

  • xss
    Schwachstellen-Link:
    http://xxx.com:80/admin/login.php?req_url=/admin/index.php"><script>alert(42873)</script>

Warum wird es immer noch eingefügt, wenn ich beim Schreiben in die Datenbank Addslashes verwende? Müssen Link 1 und Link 2 kombiniert werden, um injiziert zu werden?
Was die zweite Sicherheitslücke betrifft, bin ich mir nicht sicher, wie ich mich dagegen wehren soll.
Ich habe keine eingehenden Untersuchungen zur Website-Sicherheit. Ich möchte Sie bitten, zu analysieren, wie dies erreicht wird und wie die Lücken geschlossen werden können.
Wenn Sie den Code in die Datenbank schreiben müssen, werde ich ihn veröffentlichen.

PS, Schreiblinks werden automatisch um SF gekürzt, daher wird nach http: ein Leerzeichen eingefügt.


Nach dem Debuggen kann es tatsächlich injiziert werden ... Ich weiß immer noch nicht genug über SQL

Die endgültige in die Datenbank geschriebene Aussage lautet:

insert into comment values(NULL,1,1497261734,'88888',0,'hacker@hacker.org','http://www.hacker.org/','182.118.33.8','88888',0 RLIKE (SELECT (CASE WHEN (4725=4725) THEN 0 ELSE 0x28 END)) AND SLEEP(5)%20%23);

Ich würde gerne fragen, was der letzte Satz bedeutet

0 RLIKE (SELECT (CASE WHEN (4725=4725) THEN 0 ELSE 0x28 END)) AND SLEEP(5)%20%23
高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

Antworte allen(3)
Ty80

xss 嵌套html腳本代碼,參數應該轉為html實體。函數htmlspecialchars

連接1系通過輸入mysql的關鍵字去進行mysql如今,應該需要將關鍵字過濾。

當然其實所有防止注入最好的方式是用預處理!!!!

洪涛
  1. 最好使用参数化查询,而不要使用SQL语句拼接的方式。

  2. xss可以通过参数过滤,将类似<script>这样的脚本代码过滤掉。

我想大声告诉你

你这代码完全没过滤啊

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage