自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 收藏
  • 关注

原创 用IDEA编写第一个JAVA程序

打开IDEA。

2022-08-30 22:18:41 358 1

原创 XSS漏洞学习

XSS攻击通常指的是通过利用开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。这些恶意网页程序通常是JavaScript,但实际上也可以包括、、、Flash或者甚至是普通的HTML。攻击成功后,攻击者可能得到包括但不限于更高的权限(如执行一些操作)、私密网页内容、会话和cookie等各种内容。一般XSS可以分为如下几种常见类型。...

2022-07-23 15:56:50 1623

原创 XSSGAME小游戏(XSS学习)level1-15

XSS源码下载本地搭建。

2022-07-22 19:30:07 2530 1

原创 CTFHUB-Git泄露

首先下载GitHack。

2022-07-21 16:23:42 501 1

原创 PHP反序列化漏洞学习

序列化是将变量转换为可保存或传输的字符串的过程,反序列化就是在适当的时候把这个字符串再转化成原来的变量使用。序列化:反序列化: 例如:输出的结果为:在序列化后的结果中的字母标识为: 在这个代码中运用到了 __construct()魔术方法序列化魔术方法这里拿PIKACHU靶场一题来举例 这里给了一个例子我们看看源码这里并没有出现什么危险函数但construct析构函数中有个打印字符串的函数我们可以利用XSS漏洞弹个窗......

2022-07-14 16:33:08 333 2

原创 CTFHUB-Apache Mod CGI(PHP学习)

使用条件:早期的Web服务器,只能响应浏览器发来的HTTP静态资源的请求,并将存储在服务器中的静态资源返回给浏览器。随着Web技术的发展,逐渐出现了动态技术,但是Web服务器并不能够直接运行动态脚本,为了解决Web服务器与外部应用程序(CGI程序)之间数据互通,于是出现了CGI(Common Gateway Interface)通用网关接口。简单理解,可以认为CGI是Web服务器和运行其上的应用程序进行“交流”的一种约定。当遇到动态脚本请求时,Web服务器主进程就会Fork创建出一个新的进程来启动CGI程序

2022-07-09 11:22:07 627

原创 ctfhub-web进阶-shellshock(PHP学习)

使用条件:该方法利用的bash中的一个老漏洞,即Bash Shellshock 破壳漏洞(CVE-2014-6271)。该漏洞的原因是Bash使用的环境变量是通过函数名称来调用的,导致该漏洞出现是以开头定义的环境变量在命令 ENV 中解析成函数后,Bash执行并未退出,而是继续解析并执行shell命令。而其核心的原因在于在输入的过滤中没有严格限制边界,也没有做出合法化的参数判断。一般函数体内的代码不会被执行,但破壳漏洞会错误的将”{}”花括号外的命令进行执行。PHP里的某些函数能调用popen或其他能够派生

2022-07-09 10:37:30 1329

原创 [GWCTF 2019]枯燥的抽奖

枯燥的生活😴查看网页源代码 发现check.php用公钥推出私钥私钥是由mt_rand函数生成的种子生成的工具php_mt_seed可以爆破出种子PHP mt_rand安全杂谈及应用场景详解这里 工具php_mt_seed-master需要用4.0版本,不能用旧版本 下载网址先用脚本将伪随机数转换成php_mt_seed可以识别的数据:生成的数据: 命令: 根据种子生成完整字符 提交得到flag...

2022-07-04 10:53:51 180

原创 BUUCTF[ctf473831530_2018_web_virink_web]

文件存储路径就是md5(orange.ip)限制字符写shell 参考文章CTF-web 第十三部分 命令注入 成功写入shell通过上面的脚本写入shell,连上蚁剑 看一下主机信息 这里并没有看到内网ip,换个姿势 试了一下这里面的ip都没有开放端口,再经过Article_kelp师傅的帮助下,扫描到了ip 9000对应php-fpm,873对应nsync我们可以自己构造fastcgi协议,和fpm进行通信参考文章Fastcgi协议分析 && PHP-FPM未授权访问漏洞 && Exp

2022-06-12 20:50:42 764

原创 [CISCN 2022 初赛]online_crt

下载附件,查看app.pygetcrt是生成证书的,createlink调用popen运行了c_rehashc_rehash 存在漏洞 https://www.secrss.com/articles/42602 CVE-2022-1292是当用户可控文件名时的命令注入再看到/proxy路由由用户构造报文,看看go 服务源码可以通过 /proxy 来更改文件名为命令最后通过 /createlink 调用 c_rehash 执行命令 得到一个证书利用脚本修改 利用/createlink调用

2022-06-12 09:22:19 752 1

原创 Nginx处理http请求的11个阶段

Nginx将一个HTTP请求分成多个阶段。以模块为单位进行处理。这样做的优点是使处理过程更加灵活、减少耦合度。HTTP框架将处理分成了11个阶段,各个阶段能够包括随意多个HTTP模块并以流水线的方式处理请求。...

2022-06-04 12:18:16 995

原创 RCE命令执行和代码执行

RCE为两种漏洞的缩写,分别为Remote Command/Code Execute,远程命令/代码执行。代码执行简介因为需求设计,后台有时候需要把用户的输入作为代码的一部分进行执行,也就造成了代码执行漏洞。通过代码注入或远程代码执行(RCE),攻击者可以通过注入攻击执行恶意代码、向网站写webshell、控制整个网站甚至服务器。在某些情况下,攻击者可能能够从代码注入升级为命令注入。危险函数eval() //把字符串作为PHP代码执行assert()

2022-05-28 13:03:18 865 2

原创 sql注入学习

前置知识SQL注入即是指web应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,在管理员不知情的情况下实现非法操作,以此来实现欺骗数据库服务器执行非授权的任意查询,从而进一步得到相应的数据信息。常用查询信息 database() # 在用的数据库名 user() # 用户信息 version() # 数据库版本信息 @@basedir # 数据库安装路径 @@version_compile_os

2022-05-03 18:53:39 1667

原创 记一次站库分离的sql注入题目(手注和sql-shell的使用)

这里进行模糊测试,发现过滤了一大堆符号,但发现id为1和0时login name不同考虑异或的sql盲注附上我的脚本import requestsflag = ""for i in range(1, 2000): low = 32 high = 128 mid = (low + high) // 2 while low < high: url="http://*********/SQL%20Injection/?id=1^(..

2022-05-03 11:24:07 2156

原创 BUU[GYCTF2020]Ezsqli

布尔盲注 无列名盲注打开链接打开就看见尸体是吧啊😅我们往下翻见到一个输入框尝试输入1输入2输入'初步判定为布尔盲注这里测试一下,发现过滤了union select, or 等等information_schema.columns表名不能用了,我们在这里使用sys.schema_table_statistics这个表,or使用||代替当or后面判断返回结果为true,输出结果为Nu1L;当or后面判断返回结果为false,输出结果为Err...

2022-04-30 19:31:27 362

原创 BUU[SWPU2019]Web1

打开链接发现是个登录页面我们先注册再登录进去点开申请发布广告,将广告名设为1'试试是否存在sql注入果然报错了,显然存在sql注入获取列数这里过滤了空格,order by,我们使用/**/来进行绕过,order by可以用group by来代替-1'/**/group/**/by/**/23,'最后得到列数为22查找有回显的列2和3接下来爆表这里将information_schema过滤了,但在 information_s...

2022-04-26 18:10:18 1662

原创 BUU[GWCTF 2019]我有一个数据库

打开链接一堆乱码,查看源代码也没什么信息可提取,利用目录扫描器,看能不能扫出什么东西扫到了一个phpmyadmin进去看看这里的版本号为4.8.1,而phpmyadmin在4.8.0以及4.8.1的版本号中有文件包含漏洞[PHPMYADMIN]CVE-2018-12613我们试试读取看是否成功index.php?target=sql.php?/../../../../../../../../../etc/passwd成功尝试读取flaginde...

2022-04-26 16:55:45 1818

原创 BUUCTF[PHPMYADMIN]CVE-2018-12613

打开所提供的网址是个phpmyadmin界面phpmyadmin的版本号为4.8.1在phpmyadmin的版本号为4.8.1以及4.8.0的版本中有着包含(查看并可能执行)服务器上的文件的漏洞,详情可看这篇文章phpMyAdmin 是一套开源的、基于Web的MySQL数据库管理工具。在 4.8.2 之前的 phpMyAdmin 4.8.x 中发现了一个问题,其中攻击者可以在服务器上包含文件。该漏洞来自 phpMyAdmin 中重定向和加载页面的部分代码,以及对白名单页面的不当测试..

2022-04-24 21:50:27 1873 1

原创 漏洞中的伪协议异同

PHP 中的封装协议(伪协议) file:///var/www/html 访问本地文件系统 ftp://<login>:<password>@<ftpserveraddress> 访问 FTP(s) URLs data:// 数据流 http:// — 访问 HTTP(s) URLs ftp:// — 访问 FTP(s) URLs php:// — 访问各个输入/输出流 zlib:// — 压缩流...

2022-04-24 16:31:44 1331

原创 SSRF漏洞学习

SSRF漏洞原理SSRF(Server-Side Request Forgery:服务器端请求伪造)是一个由攻击者构造请求,在目标服务端执行的一个安全漏洞。攻击者可以利用该漏洞使服务器端向攻击者构造的任意域发出请求,目标通常是从外网无法访问的内部系统。简而言之就是以服务器的身份来执行请求。常见利用方式伪协议读取文件伪协议读取文件,在SSRF中常用的伪协议就是file:///协议/?url=file:///var/www/html/flag.php内网访问我们从目标主机内

2022-04-23 19:36:02 2596

原创 CTFHUB-SSRF-Redis协议

利用工具gopherus来生成payload这里我们进行第二次url编码时,不需要再将%0a换为%0d%0a了,因为生成的payload已经替换了gopher%3A//127.0.0.1%3A6379/_%252A1%250D%250A%25248%250D%250Aflushall%250D%250A%252A3%250D%250A%25243%250D%250Aset%250D%250A%25241%250D%250A1%250D%250A%252432%250D%250A%250...

2022-04-23 16:45:45 1860 2

原创 CTFHUB-SSRF-POST请求

打开连接尝试读取flag.php与index.phpflag.php<?phperror_reporting(0);if ($_SERVER["REMOTE_ADDR"] != "127.0.0.1") { echo "Just View From 127.0.0.1"; return;}$flag=getenv("CTFHUB");$key = md5($flag);if (isset($_POST["key"]) && $_P...

2022-04-23 15:53:39 1579

原创 CTFHUB-SSRF-FastCGI协议

Fastcgi协议分析 && PHP-FPM未授权访问漏洞 && Exp编写第一种方式expimport socketimport randomimport argparseimport sysfrom io import BytesIO# Referrer: https://github.com/wuyunfeng/Python-FastCGI-ClientPY2 = True if sys.version_info.major == 2 el

2022-04-23 15:45:01 1784

原创 XXE漏洞学习

漏洞原理XXE漏洞就是XML外部实体注入,就是当xml引用外部实体并解析的时候会产生的漏洞,xml解析器去获取其中的外部资源并存储到内部实体中,攻击者可引用外部实体对目标进行文件读取、命令执行、DDOS、内网探测等。利用方式命令执行<?xml version="1.0" encoding="utf-8"?><!DOCTYPE a[ <!ENTITY test SYSTEM "命令">]><c>&test</c>

2022-04-23 15:06:34 375

原创 PIKACHU之SSRF

概述SSRF(Server-Side Request Forgery:服务器端请求伪造)其形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能,但又没有对目标地址做严格过滤与限制导致攻击者可以传入任意的地址来让后端服务器对其发起请求,并返回对该目标地址请求的数据数据流:攻击者----->服务器---->目标地址根据后台使用的函数的不同,对应的影响和利用方法又有不一样PHP中下面函数的使用不当会导致SSRF:file_get_contents()fsockop

2022-04-22 20:30:27 1323

原创 BUU[GoogleCTF2019 Quals]Bnv

打开连接发现可以选择City用BP拦截提交后的信息明显的JSON格式,尝试将格式改为xml,重新构造数据这里我构造了很多次,都没成功,后来看了网上的wp才知道首先要构造DTD,申明实体,然后申明元素messageXML 的特殊字符(&、< 和 >)在 PCDATA 中可以识别,并用于解析元素名称和实体。PCDATA(字符数据)区域被解析器视为数据块,从而允许您在数据流中包含任意字符。<?xml version="1.0" encoding="u..

2022-04-19 20:46:02 561

原创 BUU [NCTF2019]True XML cookbook

打开连接熟悉的界面,我们就不做黑盒测试了,直接抓包修改xmlpayload:<?xml version="1.0" encoding="utf-8"?><!DOCTYPE note [ <!ENTITY admin SYSTEM "file:///flag"> ]><user><username>&admin;</username><password>123456</passwo...

2022-04-19 16:07:07 1838 4

原创 BUU [第二章 web进阶]SSRF Training

打开连接发现页面上提示了flag.php,那么flag应该就放在这里了,点开intersting challenge出现源码,审计代码 <?php highlight_file(__FILE__);function check_inner_ip($url) { $match_result=preg_match('/^(http|https)?:\/\/.*(\/)?.*$/',$url); if (!$match_result) { ...

2022-04-18 22:51:10 1707 1

原创 PIKACHU之XXE

概述XXE -"xml external entity injection"既"xml外部实体注入漏洞"。概括一下就是"攻击者通过向服务器注入指定的xml实体内容,从而让服务器按照指定的配置进行执行,导致问题"也就是说服务端接收和解析了来自用户端的xml数据,而又没有做严格的安全控制,从而导致xml外部实体注入。具体的关于xml实体的介绍,网络上有很多,自己动手先查一下。现在很多语言里面对应的解析xml的函数默认是禁止解析外部实体内容的,从而也就直接避免了这个漏洞。以PHP为例,在PHP里

2022-04-18 13:13:48 769

原创 file_put_contents学习笔记

这几日在学习文件包含漏洞时碰到了一道绕过死亡exit();的题目,借此机会就学一学file_put_contents写入webshell关于filter的知识:php:// — 访问各个输入/输出流(I/O streams)php://input 是个可以访问请求的原始数据的只读流。php://filter 是一种设计用来允许过滤器程序在打开时成为流的封装协议。这对于单独具有完整功能的文件函数非常有用,否则就没有机会在读取内容之前将过滤器应用于流之上。该协议语法为:php://filter

2022-04-17 14:05:33 2050

原创 [SUCTF 2019]EasyWeb

点击连接查看到源码<?phpfunction get_the_flag(){ // webadmin will remove your upload file every 20 min!!!! $userdir = "upload/tmp_".md5($_SERVER['REMOTE_ADDR']); if(!file_exists($userdir)){ mkdir($userdir); } if(!empty($_FILES["file..

2022-04-16 22:48:08 510

原创 [WMCTF2020]Web Check in 2.0

启动靶机,打开发现源码string(62) "Sandbox:/var/www/html/sandbox/cc551ab005b2e60fbdc88de809b2c4b1" <?php//PHP 7.0.33 Apache/2.4.25error_reporting(0);$sandbox = '/var/www/html/sandbox/' . md5($_SERVER['REMOTE_ADDR']);@mkdir($sandbox);@chdir($sandbox);var...

2022-04-16 20:19:26 1454

原创 文件包含漏洞&伪协议

文件包含文件包含漏洞原理PHP文件包含漏洞的产生原因是在通过PHP的函数引入文件时,由于传入的文件名没有经过合理的校验,从而操作了预想之外的文件,就可能导致意外的文件泄露甚至恶意的代码注入include:包含并运行指定的文件,包含文件发生错误时,程序警告,但会继续执行。include_once:检查这个文件是否已经被导入,如果已导入,便不会再导入。require:包含并运行指定的文件,包含文件发生错误时,程序直接终止执行。require_once:和 require 类似,不同处在于

2022-04-16 13:34:12 2235

原创 XML基础

XML简介XML 指可扩展标记语言XML 被设计用来传输和存储数据。XML 与 HTML 的主要差异XML 被设计为传输和存储数据HTML 被设计用来显示数据HTML 旨在显示信息,而 XML 旨在传输信息。XML对大小写敏感,语法要求严格XML标签只能自定义,HTML标签不能自定义XML语法规则<?xml version="1.0” encoding="UTF-8" ?><root> <man> &

2022-04-12 16:35:43 347

原创 DVWA文件包含

首先我们打开kali的apache服务,以此验证远程文件包含后面都用index.html来验证远程文件包含low本地包含直接调用dvwa文件目录下自带的phpinfo.php可以用绝对路径来读也可以构造相对路径来读远程包含可以直接读取其下的index.html源码<?php// The page we wish to display$file = $_GET[ 'page' ];?> 并未做任何过滤me...

2022-04-11 22:33:13 636

原创 PIKACHU文件包含

原理服务器执行PHP文件时,可以通过文件包含函数加载另一个文件中的PHP代码,并且当PHP来执行,这会为开发者节省大量的时间。这意味着您可以创建供所有网页引用的标准页眉或菜单文件。当页眉需要更新时,您只更新一个包含文件就可以了,或者当您向网站添加一张新页面时,仅仅需要修改一下菜单文件(而不是更新所有网页中的链接)。PHP中文件包含函数有以下四种:require()require_once()include()include_once()本地文件包含我们再pikachu

2022-04-11 22:08:51 1392

原创 文件上传漏洞考核

打开网站直接尝试上传小马发现上传失败,尝试禁用JS弹出错误也失败了,还没查看上传目录下的文件信息的,查看一下上传目录下的文件嗯,竟然有个flag.php,尝试预览失败,查看.htaccess概述来说,htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。...

2022-04-10 13:09:17 317

原创 文件上传漏洞常用绕过方式

目录文件上传漏洞原理常用防御方式和常用防御方式的绕过一、前端JS检测二、MIME检测三、白名单检测%00截断0x00截断四、黑名单绕过文件拓展名绕过.htaccess文件绕过.user.ini.绕过apache解析漏洞IIS解析漏洞Nginx解析漏洞widows系统文件命名规则的特殊利用五、文件内容检测①文件头检测②shell检测六、条件竞争靶场实战文件上传漏洞原理由于网站在对文件的上传功能中没...

2022-04-07 22:30:04 12498

原创 upload-labs下(13-21)

POST%00截断绕过$is_upload = false;$msg = null;if(isset($_POST['submit'])){ $ext_arr = array('jpg','png','gif'); $file_ext = substr($_FILES['upload_file']['name'],strrpos($_FILES['upload_file']['name'],".")+1); if(in_array($file_ext,$ext_arr)){

2022-04-05 19:26:10 1068

原创 upload-labs上(1-12)

前端JS检测直接尝试上传小马发现弹窗显示不允许上传,应该是前端JS代码对上传文件进行了检测,我们直接禁止使用JS上传成功,来利用phpinfo();验证查看源代码,是利用了前端JS来识别上传文件的类型,我们直接禁用来绕过function checkFile() { var file = document.getElementsByName('upload_file')[0].value; if (file == null || file == "") {..

2022-04-05 15:58:45 1900

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除