第一次SKCTF小组组内练习赛Writeup

> 第一次打比较正式的比赛,也看到了自己有多么菜。 # Web ## easy_parse **考察prase_str()变量覆盖漏洞** ![](https://upload-images.jianshu.io/upload_images/15800372-957a9915ed5ae572.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) 打开链接只看到“an easy web”,可以在网页源代码的注释部分找到一部分源码: ![](https://upload-images.jianshu.io/upload_images/15800372-f4ab6c85138fbd37.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) ...

2020-01-24 22

Jarvis OJ Writeup之Web(部分)

# [61dctf]admin **分值:100** **考察查看robots.txt、基本的抓包改包操作** ![](https://upload-images.jianshu.io/upload_images/15800372-76cf2d73b2211728.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) 点进去一看只有Hello World,查看网页源代码也没有什么有用的信息 ![](https://upload-images.jianshu.io/upload_images/15800372-7871e3ad71be7ab4.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) 尝试了index.html、admin....

2020-01-24 22

SpringBoot整合SpringSecurity踩过的那些坑

# 前言 大家新年快乐呀! 最近在开发自己的个人网站,考虑到以后要做的一个项目要使用Spring Security,遂学习如何将Spring Security与Spring Boot整合并且用在我的个人网站里做授权认证。 但是实际操作之后才发现,这个东西的坑真的是太多了,而且似乎有很多是因为和Spring Boot整合才出现的。 项目地址:[https://github.com/WenDev/WenDev-Web](https://github.com/WenDev/WenDev-Web) # 配置Spring Security Spring Security与Spring Boot整合之后,配置并不是使用xml文件,而是使用一个专门的类来做配置。这个配置类需要继承`WebSecurityConfigurerAdapter`并打上`@Configu...

2020-01-24 15

Maven学习笔记

> 今天开始正式入坑Java Web,当然就得从Maven开始。于是花了一下午在B站上找了视频教程来学习,总算是弄明白了。好在这个东西也不是很难。 # Maven是什么 `Maven`是一种用于Java的项目管理工具,通过一小段信息(XML文档)来管理项目的构建、测试、报告和文档。其核心是**项目对象模型**`POM(Project Object Model)`模型(类似于Web前端开发中的文档对象模型`DOM(Document Object Model)`)。 # 为什么需要Maven这样的工具? + 如果在开发时,项目非常庞大,就不适合像传统的Java项目一样以`package`划分模块,最好是一个项目对应一个工程。 + 开发中所需要的各种jar包,必须提前准备好或者手动下载。同样的jar包重复出现在不同的工程中,浪费存储空间。 + 一个jar包所依赖...

2020-01-24 11

Java Web常见漏洞分析

# 目录 ## Java vs PHP ## Java Web的常见概念 + Java Web项目的目录结构 + Servlet + JSP(Java Server Pages) + JDBC(Java Database Connectivity) + Java Bean ## Java Web常见漏洞分析 + 命令执行(JSP一句话木马等) + SQL注入 + 条件竞争(Servlet线程不安全) + SSRF + 文件上传 + 代码执行(Java反射机制) + 任意文件读取/目录遍历攻击 # Java vs PHP 语言|Java|PHP -------|:------|----- 语言类型(静态类型/动态类型)|静态类型(不过现在似乎引入了动态类型)|动态类型(变量在声明时不需要声明类型) 语言类型(强类型/弱...

2020-01-24 12

CVE-2017-12615 Tomcat远程代码执行漏洞分析与复现

# 漏洞概述 > 2017年9月19日,Apache Tomcat官方确认并修复了两个高危漏洞,其中就有远程代码执行漏洞(CVE-2017-12615)。当存在漏洞的Tomcat 运行在 Windows 主机上,且启用了HTTP PUT请求方法,攻击者将有可能可通过精心构造的攻击请求数据包向服务器上传包含任意代码的 JSP 的webshell文件,JSP文件中的恶意代码将能被服务器执行,导致服务器上的数据泄露或获取服务器权限。 * 影响范围:Apache Tomcat 7.0.0 – 7.0.79 # 漏洞分析与复现 环境: * Windows8.1 * Tomcat 7.0.56 * JDK 1.8.0_221 * IntelliJ IDEA 2019.1.3 * BurpSuite 2.0.11 ## 漏洞分析 ...

2020-01-24 11

Node.js代码审计之eval()远程命令执行漏洞

# JavaScript eval() 函数介绍 ## eval() 函数 `eval()`函数是 JavaScript 中的一个函数,用于计算 JavaScript 字符串,并把它当成命令来执行。 如果传入 eval() 的参数是一个表达式,eval() 将会计算表达式的值。如果是一个字符串,该字符串会被当成 JavaScript 语句来执行。 ## 语法 ```javascript eval(string) ``` `string`:需要计算的字符串。需要为 JavaScript 表达式或者要执行的语句。 例如: ```javascript > eval("x = 10; y = 20; console.log(x + y)") 30 > eval(10 + 20) 30 ``` # 漏洞代码 rce.js...

2020-01-24 12

Node.js任意文件读取漏洞(CVE-2017-14849)复现

# 漏洞简介 CVE-2017-14849是Node.js和Express共同导致的一个目录穿越漏洞,可以通过此漏洞读取任意文件。 # 受该漏洞影响的版本 Node.js 8.5.0 + Express 3.19.0-3.21.2 Node.js 8.5.0 + Express 4.11.0-4.15.5 # 复现过程 ## 环境搭建 靶机:Manjaro Xfce 19.05.21,ip:192.168.5.134 攻击机:Windows10 1809 ### 安装Node.js 8.5.0 在Linux中直接通过命令行安装即可。 ``` wget https://nodejs.org/download/release/v8.5.0/node-v8.5.0-linux-x64.tar.gz tar -zxvf nod...

2020-01-24 11

CTF中Web题目的常见题型及解题姿势

> 想写这个想了很久了,但一直觉得自己的知识不足,于是一直没有写。 > 后来觉得至少还是要边学边写才好,于是就有了这篇总结。 > 由于本人退坑,此文不再更新,感谢大家的支持。 # 基础知识类题目 考察基本的查看网页源代码、HTTP请求、修改页面元素等。 这些题很简单,比较难的比赛应该不会单独出,就算有应该也是Web的签到题。 实际做题的时候基本都是和其他更复杂的知识结合起来出现。 **姿势:恶补基础知识就行** ## 查看网页源代码 按F12就都看到了,flag一般都在注释里,有时候注释里也会有一条hint或者是对解题有用的信息。 + Bugku web2: http://123.206.87.240:8002/web2/ + Bugku web3: http://123.206.87.240:8002/web3/ ## 发...

2020-01-24 11

常用的Linux命令(转载)

> 转载自:https://www.cnblogs.com/yjd_hycf_space/p/7730690.html # 系统信息 - arch 显示机器的处理器架构(1) - uname -m 显示机器的处理器架构(2) - uname -r 显示正在使用的内核版本 - dmidecode -q 显示硬件系统部件 (SMBIOS / DMI) - hdparm -i /dev/hda 罗列一个磁盘的架构特性 - hdparm -tT /dev/sda 在磁盘上执行测试性读取操作 - cat /proc/cpuinfo 显示CPU info的信息 - cat /proc/interrupts 显示中断 - cat /proc/meminfo 校验内存使用 - cat /proc/swaps 显示哪些swap被使用 - cat /...

2020-01-24 10