2021-8-4dc1靶机实战记录

一、打点,nmap发现22,80,都开着,80发现drupal,必应搜索drupal exploit ,在GitHub上,getshell参考我之前的博客,rce,代码审计看不懂,白宫的cms果然很难。。。

HackNos-Os-hackNos-1靶机-drupal-getshell

找到flag之后就不知道怎么做了,这里发现一个有趣的命令可执行漏洞:

shell.php原本就存在这里,我也不知道作者什么意思?

但是权限在1000开外,看不了,我看了flag1.txt,但是我不知道这个cms的配置文件是什么,这里想不出,参考别人博客,知道这flag1.txt的提示要我们找配置文件其实是这个:

 

这个字符串是一个 JSON 格式的查询条件,需要将其解析并转换为 SQL 语句。以下是一个可能的解析过程和 SQL 拼接: 1. 将 JSON 字符串解析为对象: ```csharp dynamic query = JsonConvert.DeserializeObject(jsonString); ``` 2. 根据查询规则生成 WHERE 子句: ```csharp string where = ""; foreach (var rule in query.rules) { string field = rule.field; string op = rule.op; string data = rule.data; if (where != "") where += " " + query.groupOp + " "; switch (op) { case "eq": where += $"{field} = '{data}'"; break; // 其他比较操作符 } } ``` 3. 根据查询分组生成子查询和连接符: ```csharp string subqueries = ""; foreach (var group in query.groups) { if (subqueries != "") subqueries += " " + group.groupOp + " "; string subwhere = ""; foreach (var rule in group.rules) { string field = rule.field; string op = rule.op; string data = rule.data; if (subwhere != "") subwhere += " " + group.groupOp + " "; switch (op) { case "eq": subwhere += $"{field} = '{data}'"; break; // 其他比较操作符 } } if (subwhere != "") subqueries += $"(SELECT * FROM table WHERE {subwhere})"; } if (subqueries != "") where += $" AND id IN ({subqueries})"; ``` 4. 根据查询部门拼接成完整的 SQL 语句: ```csharp string sql = $"SELECT * FROM table WHERE {where} AND F_DepartmentId IN ('13365d1b-92f2-4dc7-98a0-9e9c9ffdafdf', '23ac3ac1-097f-4007-8bd2-20fea87fe377')"; ``` 需要注意的是,这个解析过程可能不完全准确,具体要根据实际情况进行调整。另外,为了防止 SQL 注入,最好使用参数化查询。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值