自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 告别csdn,迁移到自己的博客网站

博客迁移

2022-10-09 14:50:35 355 1

原创 ssrf总结

SSRF总结简介服务端请求伪造(Server Side Request Forgery, SSRF)指的是攻击者在未能取得服务器所有权限时,利用服务器漏洞以服务器的身份发送一条构造好的请求给服务器所在内网。SSRF攻击通常针对外部网络无法直接访问的内部系统。SSRF可以对外网、服务器所在内网、本地进行端口扫描,攻击运行在内网或本地的应用,或者利用File协议读取本地文件。原理SSRF漏洞形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤与限制。例如,黑客操作服务端从

2022-05-01 20:38:19 1619

原创 Redis学习

Redis简介REmote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。Redis 通常被称为数据结构服务器,因为值(value)可以是字符串(String)、哈希(Hash)、列表(list)、集合(s

2022-04-26 17:42:53 1046

原创 反弹shell总结

反弹shell在介绍反弹链接的时候先说明什么是正向链接:假设我们攻击了一台机器,打开了该机器的一个端口,攻击者在自己的机器去连接目标机器(目标ip:目标机器端口),这是比较常规的形式,我们叫做正向连接。远程桌面,web服务,ssh,telnet等等,都是正向连接。而反弹shell是指攻击者指定服务端,受害者主机主动连接攻击者的服务端程序,就叫反弹连接。本质上是网络概念的客户端与服务端的角色反转。反弹shell简单来说就是通过命令让靶机的shell的控制权交到攻击者的机器中。可能有人会问:我们都能够在靶机

2022-04-26 17:41:42 4377

原创 Docker学习记录

1、Docker概念1.1 什么是DockerDocker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。1.2 Docker的应用场景Web 应用的自动化打包和发布。自动化测试和持续集成、发布

2022-04-14 17:56:36 341

原创 php面向对象

面向对象引入:计算机编程在历史的发展长河中,经历了多次版本变革,变化的轨迹是伴随着硬件的发展和人们对于计算机的认知以及需求。机器语言:即开发者(科学家)使用0和1组成命令,然后在特定计算机上执行优点:执行效率高缺点:开发难度大、移植性差、开发成本高汇编语言:开发者使用简洁英文字母和符号组成,让计算机读取后根据符号进行加工执行优点:指令简单明了、推广性高缺点:移植性差、功能简单高级计算机语言:开发者使用类似自然语言的符号组成,高级语言根据编程思想分为

2022-04-14 17:52:27 1927

原创 php学习

PHP 简介PHP 是服务器端脚本语言。PHP 是什么?PHP(全称:PHP:Hypertext Preprocessor,即"PHP:超文本预处理器")是一种通用开源脚本语言。PHP 脚本在服务器上执行。PHP 可免费下载使用。PHP 文件是什么?PHP 文件可包含文本、HTML、JavaScript代码和 PHP 代码PHP 代码在服务器上执行,结果以纯 HTML 形式返回给浏览器PHP 文件的默认文件扩展名是 “.php”PHP 能做什么?PHP 可以生成动态页面内

2022-04-14 17:51:24 5203

原创 shell基础+强化

shell脚本一、shell介绍什么是shellshell功能1.什么是shellshell是一个程序,采用C语言编写,是用户和Linux内核沟通的桥梁。它既是一种命令语言,又是一种解释性的编程语言。通过一个图标来查看以下设立了的作用扩展知识kernel(内核):为软件服务,接收用户或软件指令驱动硬件,完成工作;shell:命令解释器user:用户接口,对接用户从上图可以看出,shell在操作系统中起到了承接用户和系统内核的作用。那为什么步直接用户对内核呢?原因很简单,因为

2022-04-14 17:49:58 13597

原创 upload-labs

upload-labs通关记录upload-labs是收集ctf和渗透测试中文件上传遇到的各种漏洞的靶场,旨在通过关卡的形式来帮助大家对文件上传有个全面的了解。项目地址:https://github.com/c0ny1/upload-labsPass-01选择本地1.php文件上传,打开burp抓包,还没抓到包页面就显示只能上传.jpg.png等类型文件,说明是前端JS判断。这里有两种绕过方法:打开浏览器的审查元素,找到文件上传的js代码,发现checkFile()函数,推测是这个函数进行

2022-04-14 17:44:22 1508

原创 phpfilter的妙用

php://filter的妙用php://filter是PHP中独有的协议,利用这个协议可以创造很多“妙用”。php://filterphp://filter 是一种元封装器, 设计用于数据流打开时的筛选过滤应用。 这对于一体式(all-in-one)的文件函数非常有用,类似 readfile()、file()和 file_get_contents(), 在数据流内容读取之前没有机会应用其他过滤器。php://filter 目标使用以下的参数作为它路径的一部分。 复合过滤链能够在一个路径上指定。

2022-04-14 17:39:02 4539

原创 文件包含总结

文件包含总结概念服务器执行PHP文件时,可以通过文件包含函数加载另一个文件中的PHP代码,并且当PHP来执行,这样能够避免了同一个功能重复造轮子,减少了重复代码量,减少了开发时间,提高效率,总之,文件包含是一个十分有用的功能。文件包含漏洞是利用文件包含的函数进行攻击,引入设计者非预期的文件。文件包含又分为本地文件包含和远程文件包含。原理当PHP函数引入文件时,由于传入的文件名没有经过合理的检验,从而引入了非预期的文件,这就造成了文件包含漏洞。对于PHP而言,文件包含的函数有:include()

2022-04-14 17:37:45 899 1

原创 ssti模板注入总结

模板注入总结介绍模板引擎模板引擎(这里特指用于Web开发的模板引擎)是为了使用户界面与业务数据(内容)分离而产生的,它可以生成特定格式的文档,利用模板引擎来生成前端的html代码,模板引擎会提供一套生成html代码的程序,然后只需要获取用户的数据,然后放到渲染函数里,然后生成模板+用户数据的前端html页面,然后反馈给浏览器,呈现在用户面前。原理服务端模板注入和常见Web注入的成因一样,也是**服务端接收了用户的输入,将未过滤的数据传给引擎解析,在进行目标编译渲染的过程中,执行了用户插入的恶意内容

2022-04-14 17:14:14 1296

原创 python沙箱逃逸总结

python沙箱逃逸总结让用户提交 Python 代码并在服务器上执行,是一些 OJ、量化网站重要的服务,很多 CTF 也有类似的题。为了不让恶意用户执行任意的 Python 代码,就需要确保 Python 运行在沙箱中。沙箱经常会禁用一些敏感的函数,例如 os,研究怎么逃逸、防护这类沙箱还是蛮有意思的。前言Python 的沙箱逃逸的最终目标就是执行系统任意命令,次一点的写文件,再次一点的读文件。顺便安利一本书:《流畅的 Python》。这本书有很多中高阶知识点,很全面而且讲的很清楚,如果你看过,相

2022-04-14 17:12:49 3744 1

原创 flask sssti lab闯关记录

flask ssti lab闯关记录sstilab是一个模板注入的靶场,目前只有Flask模板注入的练习地址:https://github.com/X3NNY/sstilabslevel 1判断出是post方法借用bp的intrude模块查看可以利用的类,这里查找的模块是__import__发现80、81、82、83可以有__import__模块,加以利用得到payload{{[].__class__.__base__.__subclasses__()[80].__init__.__gl

2022-04-14 17:11:20 2385 3

原创 php反序列化总结

php反序列化总结基础知识序列化序列化就是将 对象object、字符串string、数组array、变量 转换成具有一定格式的字符串,方便保持稳定的格式在文件中传输,以便还原为原来的内容。serialize ( mixed $value ) : stringserialize() 返回字符串,此字符串包含了表示 value 的字节流,可以存储于任何地方。example:class Test { public $name = "s1ng"; private $age = 19;

2022-04-08 20:49:50 6388 2

原创 yii反序列化漏洞复现及利用

yii反序列化漏洞Yii框架Yii 是一个适用于开发 Web2.0 应用程序的高性能PHP 框架。Yii 是一个通用的 Web 编程框架,即可以用于开发各种用 PHP 构建的 Web 应用。 因为基于组件的框架结构和设计精巧的缓存支持,它特别适合开发大型应用, 如门户网站、社区、内容管理系统(CMS)、 电子商务项目和 RESTful Web 服务等。Yii 当前有两个主要版本:1.1 和 2.0。 1.1 版是上代的老版本,现在处于维护状态。 2.0 版是一个完全重写的版本,采用了最新的技术和协议

2022-04-06 12:12:42 5270 1

原创 命令注入总结

文章目录命令注入总结原理常见的危险函数PHPsystemexecpassthrushell_execpopenproc_open反引号Pythonsystempopensubprocess.call/subprocess.runspawnJavajava.lang.Runtime.getRuntime().exec(command)Linux下常用的符号特殊符号通配符常用绕过命令分隔与执行多条命令空格绕过绕过 escapeshellcmd黑名单绕过无参数rce过滤字母或数字常用读取文件方式常用读取目录方式利

2021-12-15 13:42:25 1505

原创 命令注入总结

文章目录命令注入总结原理常见的危险函数PHPsystemexecpassthrushell_execpopenproc_open反引号Pythonsystempopensubprocess.call/subprocess.runspawnJavajava.lang.Runtime.getRuntime().exec(command)Linux下常用的符号特殊符号通配符常用绕过命令分隔与执行多条命令空格绕过绕过 escapeshellcmd黑名单绕过无参数rce过滤字母或数字常用读取文件方式常用读取目录方式利

2021-12-15 13:22:16 6216 1

原创 文件上传总结-详细

文件上传总结文件上传漏洞是指由于程序员在对用户文件上传部分的控制不足或者处理缺陷,而导致的用户可以越过其本身权限向服务器上上传可执行的动态脚本文件。这里上传的文件可以是木马,病毒,恶意脚本或者WebShell等。“文件上传”本身没有问题,有问题的是文件上传后,服务器怎么处理、解释文件。如果服务器的处理逻辑做的不够安全,则会导致严重的后果。原理在 WEB 中进行文件上传的原理是通过将表单设为 multipart/form-data,同时加入文件域,而后通过 HTTP 协议将文件内容发送到服务器,服务器端

2021-11-22 17:33:31 3860

原创 文件上传-01基础及过滤方式

文件上传之基础及过滤方式1、简介什么是文件上传漏洞指程序对文件的上传未作全面的限制,导致用户可以上传一些超越用户权限的一些文件,可以是木马,shell脚本,病毒等。文件上传漏洞有哪些危害可以通过文件上传漏洞上传webshell后门文件上传漏洞如何查找及判断黑盒: 使用扫描工具扫描打开网站。黑盒:测试会员中心,测试后台。白盒:直接撸源代码。文件上传漏洞有哪些需要注意的地方拿到漏洞后要对漏洞类型进行区分,编辑器、第三方应用、常规等。区分漏洞类型关于文件上传漏洞在实际应用

2021-11-21 15:11:02 4314 1

原创 sql注入总结--详细

文章目录SQL注入总结1、原理2、数据库基础系统函数字符串连接函数mysql注释符union 操作符的介绍order by介绍字符串编码数据库结构导入导出相关操作增删改函数3、判断是否存在SQL注入4、回显注入(联合注入)查询字段数目查询库名查询表名查询字段名查询字段值获取WebShell5、盲注sql注入截取字符串常用函数REGEXP正则表达式LIKE 匹配布尔盲注布尔盲注的流程脚本时间盲注DNSLog盲注6、堆叠注入7、报错注入数据溢出xpath语法错误主键重复一些特性8、二次注入9、ORDER BY

2021-11-19 01:42:13 5756 3

原创 sql注入-08 sqlmap绕过waf

sqlmap绕过waf1、绕过的方法–白名单方式一:ip白名单从网络层tcp、udp获取的ip,这种一般伪造不来。如果是通过脚本获取客户端的IP,这样就可能存在伪造IP绕过的情况。测试方法:修改http的header来bypass wafx-forwarded-for x-remote-IP x-originating-IP x-remote-addr x-Real-ip方式二:静态资源特定的静态资源后缀请求,常见的静态文件(.js .jpg .swf .css等等),类似白名单

2021-11-17 18:50:59 3575

原创 sql注入-07 堆叠注入及WAF绕过注入

堆叠及WAF绕过注入1、堆叠注入简介引用大佬的解释:Stacked injections–堆叠注入。从名词的含义就可以看到应该是一堆 sql 语句(多条)一起执行。而在真实的运用中也是这样的,我们知道在 mysql 中,主要是命令行中,每一条语句结尾加 ; 表示语句结束。这样我们就想到了是不是可以多句一起使用。这个叫做 stacked injection。​ 在 SQL 中,分号(;)是用来表示一条 sql 语句的结束。试想一下我们在 ; 结束一个 sql 语句后继续构造下一条语句,会不会一起执行

2021-11-16 16:11:48 1003

原创 sql注入-06二次注入、加解密、DNS注入

二次注入、加解密、DNS注入1、二次注入二次注入可以理解为,攻击者构造的恶意数据存储在数据库后,恶意数据被读取并进入到SQL查询语句所导致的注入。防御者可能在用户输入恶意数据时对其中的特殊字符进行了转义处理,但在恶意数据插入到数据库时被处理的数据又被还原并存储在数据库中,当Web程序调用存储在数据库中的恶意数据并执行SQL查询时,就发生了SQL二次注入。二次注入,可以概括为以下两步:第一步:插入恶意数据进行数据库插入数据时,对其中的特殊字符进行了转义处理,在写入数据库的时候又保留了原来的数据。

2021-11-15 18:07:41 985

原创 sql注入-05查询方式及报错盲注

查询方式及报错盲注当进行SQL注入时,有很多注入会出现无回显的情况,其中不回显的原因可能是SQL语句查询方式的问题导致,这个时候我们需要用到相关的报错或盲注进行后续操作,同时作为手工注入时,提前了解或预知其SQL语句大概写法也能更好的选择对应的注入语句。直接扔笔记:select查询数据在网站应用中进行数据显示查询操作例: select * from news where id=$idinsert插入数据在网站应用中进行用户注册添加等操作例: insert into news (id, ur

2021-11-15 18:07:11 468

原创 sql注入-04Oracle、Mongodb等注入

Oracle、Mongodb等注入1、杂七杂八sql的配置文件里的用户配置决定了网站注入点的用户权限高权限:文件读写命令执行注册表读取工具:pangolin(体验感不好)sqlmapNoSQLAttackjson的双引号不需要闭合,需要闭合的是SQL语句中的单引号或双引号。2、几种数据库Access数据库手动测试,因为asses没有数据库,可以直接查数据Mysql数据库我们获取的数据库权限会影响我们的下一步的测试思路高权限直接测试低权限就一

2021-11-15 18:06:35 1480

原创 sqli-labs--23-37关通关指南(详细)

文章目录Less-23Less-24Less-25Less-25aLess-26Less-26aLess-27Less-27aLess-28Less-28aLess-29背景知识:正题:Less-30Less-31Less-32Less-33Less-34Less-35Less-36Less-37总结Less-37总结前言:本节开始对advanced injections关卡进行通关记录,23-38关在这里补充一下信息收集的命令:@@version 数据库版本@@datadir 数据库数据路径@

2021-11-14 15:56:35 1344

原创 sqli-labs闯关随记

前言:做了sqli-labs的接近三十关,在这里简单做个总结,以下是自己在闯关中所学到的知识,包括在网上查询、参考别人文章以及资料所理解到的。这个随记比较杂乱,都是我边学边写的,希望大家凑合着看哈。会不定时更新,如果后面内容较多,会考虑分为上下篇。1、sql注入分类基于从服务器接收到的响应:基于错误的sql注入联合查询的类型堆查询注射sql盲注:基于布尔sql盲注基于时间的sql盲注基于报错的sql盲注基于如何处理输入的sql查询(数据类型):基于字符串数字或证书为基础

2021-11-11 13:48:22 1468

原创 sql注入-03数据类型及提交注入

数据类型及提交注入1、明确参数类型数字、字符、搜索、json等。2、明确请求方法GET、POST、COOKIE、REQUEST、HTTP头等:GET,POST,COOKIE仅能接收与自己相对应的数据,在PHP中表示为:GET,_GET,G​ET,_POST,$_COOKIEREQUEST可以接收所有请求方法的数据,在PHP中表示为:$_REQUEST在此插入关于**$_SEVER**的知识:$_SERVER['HTTP_ACCEPT_LANGUAGE']//浏览器语言 $_SER

2021-11-10 11:30:25 132

原创 sqli-labs 11-20关通关指南(详细解读)

前言:这里的关卡多为post注入,故结合burpsuite进行抓包分析Less-111、post注入,先在username输入admin’,password随便输,返回错误信息,从错误信息可知在username处应该有注入点,且可能为字符注入类型:抓包:2、加上万能语句or 1=1#,修改为admin’ or 1=1#,发现登陆成功,而且用户默认为dumb,可确定为字符型注入:3、order by确定列数,确定为2:4、开始爆破数据库、表名、列名:数据库名:表名:列名

2021-11-08 21:36:31 2224

原创 sql注入-02mysql注入

mysql注入1、用户权限查询数据库分类root用户:最高权限用户,可以查看所有数据库,可跨库查询、注入普通用户:仅可查询当前自己所属的数据库2、跨库注入利用information_schema表特性,记录库名、表名、列名对应表,常常结合where table_name = ‘表名’ and table_schema = ‘数据库名’、from mysql.admin类似这样的限制条件。3、文件读写操作3.1函数(mysql独有)load_file():读取函数mysql> se

2021-11-07 20:41:33 1188

原创 sql注入-简要SQL注入

简要SQL注入1、如何判断注入点老方法:and 1=1页面正常and 1=2页面错误这样可能存在注入点新方法:随便输入任意数字文字,例如id=1dhlahdajd苹果,回显空白或者回显与正常的不一样,则正面存在注入点有些网站会跳转到404界面,这个说明网站有注入检测,不存在注入点2、注入思路判定注入类型 id=1’、id=1"、id=3-1、id=1’)等等,根据报错信息来判断是字符型(单引、双引)、数值型、复合带括号型等判定注入列数 order by判断显示位,结

2021-11-06 16:21:39 576

原创 sqli-labs闯关指南--01-10关(非常详细)

注意:如果你是使用的phpstudy,请务必将sql的版本调到5.5以上,因为这样你的数据库内才会有information_schema数据库,方便进行实验测试。另外-- (这里有一个空格,–空格)在SQL内表示注释,但在URL中,如果在最后加上-- ,浏览器在发送请求的时候会把URL末尾的空格舍去,所以我们用–+代替-- ,原因是+在URL被URL编码后会变成空格。要学会利用报错信息来判断注入类型!!!Less-11、先测试and 1=2,回显正常,说明不是数值型注入2、接着在id=1后添

2021-11-05 12:35:09 4350 1

原创 正则表达式学习笔记

一、简介1、为什么使用正则表达式通过使用正则表达式,可以:测试字符串内的模式。例如,可以测试输入字符串,以查看字符串内是否出现电话号码模式或信用卡号码模式。这称为数据验证。替换文本。可以使用正则表达式来识别文档中的特定文本,完全删除该文本或者用其他文本替换它。基于模式匹配从字符串中提取子字符串。可以查找文档内或输入域内特定的文本。2、举个示例^ 为匹配输入字符串的开始位置。[0-9]+匹配多个数字, [0-9] 匹配单个数字,+ 匹配一个或者多个。abc∗∗匹配字母∗∗abc

2021-11-02 15:09:13 2552

原创 git学习笔记

一、Git基本介绍1、Git结构2、本地库和远程库2.1团队内部协作pull与clone的区别:从远程服务器克隆一个一模一样的版本库到本地,复制的是整个版本库,叫做clone.(clone是将一个库复制到你的本地,是一个本地从无到有的过程,其中包含了本地初始化的操作)从远程服务器获取到一个branch分支的更新到本地,并更新本地库,叫做pull.(pull是指同步一个在你本地有版本的库内容更新的部分到你的本地库)git clone是远程操作的第一步,通常是从远程主机克隆一个版本

2021-10-22 20:52:14 128

原创 网络协议随记(上)

一、基本概念1、客户端VS服务器JVM是java machine environment的简称,即java虚拟机Tomcat是服务器最常用的软件,绑定一个端口即可使用,通过启动服务器软件来执行客户端提交的代码2、访问服务器的项目访问http://ip地址:端口/项目地址,例如:访问http:192.168.12.32:8080/qq/login?user=root&passwd=123ip地址为127.0.0.1或者localhost即本地ip地址3、网络参考模型OSI参考

2021-10-18 21:13:10 241

原创 小迪安全课程笔记--01基础入门

一、web源码拓展1、各类型文件的存放位置数据库配置文件一般放在include、config或者data文件夹下后台目录即管理员目录一般在admin文件夹下模板目录一般在template文件夹下2、在线CMS指纹识别CMS是"Content Management System"的缩写,意为"内容管理系统"Web指纹扫描用于识别目标所运行的web软件、后端服务器、编程语言等特征,实现对目标的web应用的准确标识,包括应用名称(版本)、服务器软件(版本)、编程语言(版本)、应用框架(版

2021-10-18 20:29:05 1176

原创 mysql学习笔记--mysql易忘知识点总结

一、易忘的1、命令归类1.1命令分类DQL(数据查询语言):最常用,selectDML(数据控制语言):数据层面,有增删改–insert,delete,updateDDL(数据定义语言):表层面,也有增删改–create,drop,alterTCL(事务控制语言):表层面,commit,rollbackDCL(数据控制语言):数据层面,grant(授权),revoke(删除权限)1.2登录命令# -h:ip地址 -p:端口 -u:用户名 -p:密码PS C:\Users\Y&

2021-10-12 18:57:04 90

空空如也

空空如也

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

TA关注的人

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