提权简介提权从目的可分为纵向提权与横向提权:
纵向提权:低权限角色获得高权限角色的权限。(最常见的)
横向提权:获取同级别角色的权限。(根据实际的需求)
Windows常用的提权方法有:系统内核溢出漏洞提权、数据库提权、错误的系统配置提权、组策略首选项提权、窃取令牌提权、bypassuac提权,第三方软件/服务提权,WEB中间件漏洞提权等。
提权方法系统内核溢出漏洞提权系统内核溢出漏洞提权是通用的提权方法,攻击者通常可以使用该方法绕过系统的所有安全限制,前提是没有打补丁
手动命令发现确实补丁
查看当前用户权限
1whoami /groups
可以看到当前权限是M...
原文链接:https://whoamianony.top/2021/01/15/%E6%BC%8F%E6%B4%9E%E5%A4%8D%E7%8E%B0/Laravel/Laravel%20Debug%20mode%20RCE%EF%BC%88CVE-2021-3129%EF%BC%89%E5%88%A9%E7%94%A8%E5%A4%8D%E7%8E%B0/
漏洞简介Laravel是一套简洁、开源的PHP Web开发框架,旨在实现Web软件的MVC架构。
2021年01月12日,Laravel被披露存在一个远程代码执行漏洞(CVE-2021-3129)。当Laravel开启了Debug...
Linux提权概述Linux的提权主要分为基于内核的提权和其他提权,内核提权好处是只要是使用了漏洞版本的内核,那么基本exp通杀,缺点是不稳定,容易丢失shell或者造成系统崩溃,造成损失。
Linux提权的思路主要是:
上传提权遍历脚本遍历系统内核情况
根据系统开启的服务进行针对性提权
提权信息收集脚本
exploit_Suggester.pl
linux-exploit-suggester.sh
unix-privesc-check
linprivchecker.py
linux-exploit-suggester-2.pl
Linux提权实操信息收集内核,操作系统,设备信息1...
python内置模块的导入导入模块的方式import模块的几种方式
1、import 模块名
2、from 模块名 import 方法名
3、from 模块名 import *
4、import 模块名 as 别名
5、from 模块名 import 方法名 as 别名
官网还提供了__import__和importlib.import_module两种方法
导入模块的流程官网描述如下
简单来说就是当导入操作发生的时候,python会到sys.modules里面寻找是否已经导入过了,如果没有导入过才会按照sys.path的路径来寻找要导入的模块
sys.modules中存的是已经导入过...
漏洞简介漏洞存在版本:5.0.0<=ThinkPHP5<=5.0.23,5.1.0<=ThinkPHP<=5.1.30,在开启debug模式的情况下(默认不开启),传入payload可以修改Request类的成员变量,控制filter,和server[REQUEST_METHOD]最后在filterValue中的call_user_func造成任意代码执行
漏洞复现环境
php7.4.11
apache2
ThinkPHP5.0.23
1server%5BREQUEST_METHOD%5D=dir&_method=__constru...
反射的概念反射通常被定义为程序在执行时检查自身并修改其逻辑的能力。在技术方面,反射是要求对象告诉你它的属性和方法,并改变那些成员(甚至是私有成员)
反射的利用ReflectionClass123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263ReflectionClass implements Reflector { /* 常量 */ const integer IS_IMPLICIT_ABSTRAC...
SPLSPL是Standard PHP Library的缩写,是用于解决典型问题(standard problems)的一组接口与类的集合
一些处理文件的SPL类
遍历目录的类
FilesystemIteratorThe Filesystem iterator
123456<?php$iterator = new FilesystemIterator(__DIR__, FilesystemIterator::CURRENT_AS_PATHNAME);foreach ($iterator as $fileinfo) { echo $iterator->curre...
Fast DestructFast Destruct一般通过破坏序列化字符串的结构来实现,payload如下
123$payload = 'a:2:{i:0;O:7:"classes":0:{}i:1;O:4:"Test":0:{}';$payload = 'a:3:{i:0;O:7:"classes":0:{}i:1;O:4:"Test":0:{}}...
代理模式概念
代理就是帮别人做事情,如:工厂的中介,中介负责为工厂招收工人,那么中介就是工厂的代理;客户通过商家购买东西,商家向厂家购买货物,商家就是工厂的代理
在开发中存在a类需要调用c类的方法,完成某一个功能,但是c禁止a调用。这时,可以在a和c之间创建一个b类代理,a类访问b类,b类访问c类。例如:登录的时候需要进行短信验证,这个时候代理就是中国移动的子公司来完成短信的发送功能
代理模式就是为其他对象提供一种代理来控制这个对象的访问,在某些情况下一个对象不适合或不能直接引用另一个对象,而代理对象可以在客户类和目标对象直接起到中介的作用
功能增强:其中目标对象实现真正的功能...
pickle简介pickle和cpickle都用于对象的序列化和反序列化,作用和PHP的serialize与unserialize一样,两者只是实现的语言不同,一个是纯Python实现、另一个是C实现,函数调用基本相同,但cPickle库的性能更好。
pickle是一门栈语言,基于一个轻量的 PVM(Pickle Virtual Machine)。而PVM则主要包含指令处理器、stack和memo。
指令处理器:处理OPcode和参数,对其进行解析。最后留在栈顶的值将作为反序列化对象返回。
stack:用来临时存储数据,参数和对象,由python的list实现,可理解为计算机的内存
m...