OSCP-PG-Born2Root
在我拿到靶机IP之后我首先使用nmap -A进行了全面扫描
每个信息对我们都至关重要,发现靶机开放了三个端口,并获得了他的版本号,随后我使用searchsploit搜索是否存在相关的版本漏洞发现并不存在相关的服务版本漏洞,那我们就从80的web服务端口开始寻找,并在首页找到了一个电话,三个姓名,一个邮箱052-452-990-054Martin NHadi MJimmy Smartin@secretsec.com下一步,使用gobuster dir -u 进行目录扫描,没过多久就已经找到了三个目录,并发现一个目录遍历在目录遍历出泄露了一个ssh私钥文件,并且22端口是开放的,我进行了第一次尝试登陆,使用上面泄露的用户名,,并使用martin登录了进去需要将id_rsa权限修改为600,并且用户名不能为大写,进入之后找到了低权限的标志文件[local.txt]在翻找了一段时间之后发现了一个定时文件,并写入了一个反弹shell的py文件,等待它执行但是在之后并未找到提权的路径,随后我又把希望放在了最后一个用户hadi身上,并生成了有关hadi的密码字典使用hydra -l hadi -P ...
[VNCTF2022]BabyMaze
PYC文件上uncompyle6直接G
查看字节码
1234import marshal, disf = open("BabyMaze.pyc", "rb").read()code = marshal.loads(f[16:]) #这边从16位开始取因为是python3 python2从8位开始取dis.dis(code)
开头就是花指令
定位花转换为十六进制就是71,所以分别是71 4 71 6 71 2使用010 Editor打开将这六个删除
PYC文件格式如下
去花的同时也需要修改co_code:字节码长度
2030对应二进制就是7EE减去六就是7E8保存即可上 uncompyle6
CrackMe4
一、查壳32位exe,需要注册码进行注册
二、OD调试使用OD载入文件发现易语言特征,易语言文件破解,搜索比较特征码test edx,3
需要搜索结果如上图结构
在0xB18EA处下个断点,并注册,图中EDX寄存器中是我输入的值,ECX寄存器也就是比较的值,也就是最后的注册码
三、flag
1flag{33053055C3055C2E3030553055C2}
[CVE-2022-0847]Linux内核提权漏洞
一、漏洞描述在Linux内核中,新的管道缓冲区结构的flags成员在copy_page_to_iter_pipe和push_pipe函数中缺乏适当的初始化,从而可能包含陈旧的值。 非特权本地用户可能会利用这个漏洞写入由只读文件支持的页面缓存中的页面,并以此提升他们在系统上的特权,攻击者通过利用此漏洞,可覆盖重写任意可读文件中的数据,从而可将普通权限的用户提升到特权 root
二、影响范围12Linux内核 5.8 及之后版本5.8 <= Linux 内核版本 < 5.16.11 / 5.15.25 / 5.10.102
三、漏洞复现3.1利用Metarget一键搭建环境
12345git clone https://github.com/brant-ruan/metarget.gitcd metarget/pip3 install -r requirements.txt./metarget cnv install cve-2022-0847#successfully installe ...
hexo_admin之图片路径修复
一、安装下载hexo-admin:npm install hexo-admin@2.3.0 –save
二、卸载删除hexo-admin:npm uninstall hexo-admin –save
三、图片路径修复hexo-admin粘贴图片时识别的图片路径错误->blog根目录->node_modules->hexo-admin->api.js搜索imagePath进行修改
12345678910111213141516filename = imagePath+"/"+ filename //修改点var outpath = path.join(hexo.source_dir, filename)var dataURI = req.body.data.slice('data:image/png;base64,'.length)var buf = new Buffer(dataURI, 'base64')hexo.log.d(`saving image to ${outpath}`)fs.writeFile(outpath, buf, fu ...
[攻防世界]serial-150
一,查壳 无壳64位ELF文件
二,分析程序ida载入程序,发现函数检测不出,我们使用快捷U,C,P程序定义一下函数,并把花指令出nop掉,然后使用IDA,动态调试:在关键处下断点 输入位置,再下面有一个判断,输入的长度是否为0x10,转为十进制就是16 下面继续F8紧接着就到达了关键处 但需要注意的是下面有俩次比较的值并不等于0x9B 总共16位,比较了8次,使用python处理一下,脚本如下
查看代码 查看代码
T1 = [0x45,0x5A,0x39,0x64,0x6D,0x71,0x34,0x63]T2 = [0x9B,0x9B,0x9B,0x9B,0xB4,0xAA,0x9B,0x9B]T3 = ‘’T4 = ‘’for i in range(len(T1)): T3 += chr(T2[i]-T1[i]) T4+=chr(T1[i])print(T4+T3[::-1])
Java泛型之上、下边界通配符的理解(适合初学)
泛型的由来为什么需要泛型 Java的数据类型一般都是在定义时就需要确定,这种强制的好处就是类型安全,不会出现像弄一个ClassCastException的数据给jvm,数据安全那么执行的class就会很稳定。但是假如说我不知道这个参数要传什么类型的,因为公司需求在变,如果写死的那就只能便以此需求就改一次,很麻烦。sun公司也注意到这个问题,这样会让代码的灵活性降低,他们就研究出了泛型。
泛型初识 什么是泛型,可以字面理解就是一个泛泛的类型,他是不确定的,在Java代码编译的时候用泛型是不会出错的,而在运行期时就会报错,说你这种第一是不合理的。这是为什么呢。因为为了提高灵活性,就在编译时期将条件放宽,但是泛型一定要在运行的时候告诉jvm你给我的数据到底是什么类型的,否则jvm会是懵逼的。所以泛型的好处就是将类型的灵活性提高,也只是在Java语法的基础上提高,不过泛型还是比较实用的。
何时使用泛型 泛型的应用场景就是应用在模型(可以理解为存储数据的盒子),我为了这个盒子适用更多的地方我就用将需要存入的数据用一个泛型表示,当然 ...
超实用的SQL语句之嵌套查询
嵌套查询
什么是嵌套查询.
嵌套查询的意思是,一个查询语句(select-from-where)查询语句块可以嵌套在另外一个查询块的where子句中,称为嵌套查询。其中外层查询也称为父查询,主查询。内层查询也称子查询,从查询。
嵌套查询的工作方式
先处理内查询,由内向外处理,外层查询利用内层查询的结果嵌套查询不仅仅可以用于父查询select语句使用。还可以用于insert、update、delete语句或其他子查询中。
子查询的组成
1、包含标准选择列表组件的标准select查询。
2、包含一个或多个表或者视图名称的标准from子句。
3、可选的where子句。
4、可选的group by子句。
5、可选的having子句。
子查询的语法规则
1、子查询的select查询总是使用圆括号括起来。
2、不能包括compute或for.browse子句。
3、如果同时指定top子句,则可能只包括order by子句。
4、子查询最多可以嵌套到32层。个别查询可能会不支持32层嵌套。
5、任何可以使用表达式的地方都可以使用子查询,只要它返回的是单个值。
...
博客美化——Silence主题皮肤
介绍 一款专注阅读的博客园主题,主要面向于经常混迹 博客园 的朋友。其追求大道至简的终极真理,界面追求简洁、运行追求高效、部署追求简单。
博客皮肤源码地址
预览地址
如何部署、使用皮肤
Silence作者的友链
特点
简洁优雅、精致漂亮的 UI 设计
提供多种风格主题以便适应各类用户的偏好
响应式设计,兼容手机端浏览器
提供事无巨细的部署文档
源码结构清晰并且注释完整,方便扩展
开发 请先确保您正在使用的机器已经安装 Node.js 和 Git 客户端。
git clone https://github.com/esofar/cnblogs-theme-silence.git # 克隆源码
cd cnblogs-theme-silence # 进入项目
npm install # 安装依赖
npm run build 如果没有安装n ...
Hexo-admin插件使用
1.下载依赖包1npm install --save hexo-admin
2.启动hexo服务1npm server -d
3.修改用户名、密码 在Hexo博客控制台页面->设置->用户名、密码一一填写,填写完毕后将页面最下面的config.yaml配置一键复制、粘贴,重启后即可生效


![[CVE-2022-0847]Linux内核提权漏洞](https://s2.loli.net/2022/02/11/8h6KzyHlgpNZPVe.jpg)


