从独立于脚本语言的网页中提取 SQL 查询
目前我正在做一个关于SQL注入的项目。我这样做的方式是它会发现独立于服务器端脚本的 SQL 注入..无论它是 jsp、asp 还是 php。现在主要的问题是我必须从网页中提取 SQL 查询。例如,当我按下提交按钮时,从Web服务器到数据库的请求将以sql语句的形式发送。所以我的问题是捕获该sql语句
关于如何做到这一点有什么建议吗?
提前致谢
At present i am doing a project regarding SQL injection. I am doing it in such a way that it will find the SQL injection independent of the server side scripting.. whether it may be jsp or asp or php. Now the major problem is I have to extract the SQL query from the web page. That is when i press submit button for instance, the request from the web server to the database will be sent in the form of sql statement. So my problem is to capture that sql statement
Any suggestions of how to do it?
Thanks in advance
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您无法捕获基于服务器的 SQL 脚本,任何用 Javascript 生成 SQL 的网站都只是要求您破坏他们的网站。
You can't capture a server based SQL script, and any website that generates the SQL in Javascript is just asking you to brea ktheir site.
您可以在 Web 应用程序和 RDBMS 之间放置代理。某些系统(MySql 例如)带有这样的代理。
You can put a proxy between your web application and the rdbms. Some systems (MySql for example) come with such a proxy.
一些 RDBMS 具有记录执行的 SQL 查询的功能(例如 SQL Server 具有 SQL Server Profiler)。如果您的 RDBMS 没有此功能,您可以使用网络中的某个代理捕获 SQL 查询(Web 应用程序 ----> 您的代理 ----> RDBMS)。
您应该将输入值和记录的查询配对。
在代码中搜索 SQL 查询的问题非常复杂,我认为这是不可能的。 SQL 查询不能是纯文本形式或者可以动态创建。
例如:
Some RDBMS have feature of recording executed SQL queries (SQL Server has the SQL Server Profiler for example). If your RDBMS does not have this feature, you can catch the SQL queries with some proxy in the network (web application ----> your proxy ----> RDBMS).
You should pair the input values and recorded queries.
The problem with searching the SQL queries in code is very complex and I think impossible. The SQL query must not be in plain text form or can be created dynamically.
For example: