- 博客(58)
- 收藏
- 关注
原创 文件上传漏洞
对文件上传路径变量过滤不严,并且对用户上传的文件后缀以及文件类型限制不严,攻击者可通过 Web 访问的目录上传任意文件,包括网站后门文件(webshell),进而远程控制网站服务器。
2025-04-05 15:05:21
889
原创 SQL注入重新学习
sql注入一般就是构造闭合,在查询语句中构造恶意语句,因为过滤并不严格导致信息泄露,后台登陆语句:SELECT * FROM admin WHERE Username=‘user’ and Password=‘pass’万能密码:‘or ’1‘ = ’1‘ #;sql常用函数:(1)user() 返回当前使用数据库的用户,也就是网站配置文件中连接数据库的账号(2)version() 返回当前数据库的版本。
2025-04-04 23:54:45
825
原创 日报日报流量分析
快捷键Ctrl+K,选择需要抓包的网卡 Ctrl+F可以进行关键字搜索 Ctrl+M,标记数据包Ctrl+Shift+N跳到标记处查看包有多少协议Protocol Hierarchy(协议分级)搜了一下TCP协议,是互联网最基本的协议,分为4层,了解了一下tcp协议,具体请看谁和谁进行了通信: Conversations。
2025-03-29 23:40:06
831
原创 sql66666666
输入admin显示user agent信息,尝试通过user agent进行注入当时不理解为什莫后面要加一个and语句 ,搜了一说sql语句后面可能还有其他结构,直接把后面注释掉可能导致语法错误,and '1'='#'使得#更像合法语句,顺理成章地把后面注释掉有回显,构造报错注入,爆库,后面按照常规构造语句就行了。
2025-03-28 23:51:28
521
原创 Docker逃逸
账号密码:在etc/shadow(:前面的是密码)没密码的用不了,将特权账号密码写进去,下图给了123456的加密后的密文直接写入。特权模式以后如何逃呢:在特权模式下docker容器将被允许访问主机上的所有设备,并可以执行mount命令进行挂载(挂载。首先进入 tmp目录下,创建一个文件夹,将/dev/sda1(真正系统的磁盘)挂载到创建目录下。许多系统不允许root账号登入,因为权力太大了,先创建一个普通账号并登录,然后再切换为root。windows的账号密码一定在目录下,查看ect/passwad。
2025-03-22 23:48:33
440
原创 日志2333
1、时间盲注:根据页面的响应时间来判断是否存在注入,联合(页面没有回显位置),报错(页面不显示数据库报错信息),布尔(s/f都只显示一种结果)都不行的时候考虑,if (1>0,'ture','false');--输出‘ture’ /if (1<0,'ture','false');select ascii('')/select ord('')返回字符串第一个字符的结果。无论输入id=1/id=1'/id-1"全部不报错没回显,考虑时间盲注。转了5s,通过这种界定,逐个试,是115,最后得出security。
2025-03-22 23:48:11
312
原创 sql-labs
sql注入的目的是为了破坏sql语句结构,有三种参数类型,字符型(就是一个字符1或者a之类的),字符串(“hellow之类的”)型,数值型,前两个有闭合,注释符号有# --(空格) --+[(空格)转换为20%#转换为23%]有回显,说明参数是字符型单引号闭合,尝试爆字段当输入order by 4的时候报错,说明存在3列,而且就然能报错说明将语句解析执行了,说明存在注入点(order by是对列进行排序的意思)联合查询,前面报错后面插入恶意语句,得到回显位2,3 (显示数据库查询结果)
2025-03-20 23:45:55
624
1
原创 2025春季开学考云曦复现
代码审计$g是$a$b的拼接,正则匹配,if成立将$g赋值给$key,不含有则继续执行if语句,有..flag则die,没有就将$b赋值给$gg,如果$gg正则匹配成立,就将$gg倒叙赋值给$ggg截取$ggg中的第8位截取四个,因为最后提示是看看flag.php所以拼接$a为flag编码,后面给解码和$hhh拼接。代码审计发现绕过不了,上传图片🐎,靠我的图片🐎为什莫显示非法文件上传,算了,用的同僚给我的图片🐎,得了成功获取flag,啊啊啊啊啊啊啊啊啊臭狗屎,为啥老子自己的不行。
2025-03-15 00:38:33
601
原创 响应(Response)
在 Flask 中,视图函数可以返回多种类型的响应,例如字符串、HTML、JSON、文件等。Flask 提供了函数,用于生成和自定义 HTTP 响应。
2025-03-14 21:21:53
963
原创 laravel Blade 模板引擎
Blade 是 Laravel 的默认模板引擎,Blade 模板文件使用.blade.php 作为文件扩展名,被存放在resources/views目录中,
2025-03-11 22:34:36
1057
原创 模板注入Smarty
是最流行的PHP模板语言之一,为不受信任的模板执行提供了安全模式。这会强制执行在 php 安全函数白名单中的函数,因此我们在模板中无法直接调用 php 中直接执行命令的函数(相当于存在了一个disable_function)但是,实际上对语言的限制并不能影响我们执行命令,因为我们首先考虑的应该是模板本身,$smarty内置变量可用于访问各种环境变量,:如等,用于访问 HTTP 请求中的 GET、POST、COOKIE 数据。:如等,用于访问服务器和环境变量。:如,用于访问配置文件中的变量。:如。
2025-03-08 15:35:13
781
原创 模板注入(Twig)
为了使用户界面与业务数据(内容)分离而产生的,模板引擎会提供一套生成html代码的程序,然后只需要获取用户的数据,再放到渲染函数里,生成模板+用户数据的前端html页面,然后反馈给浏览器,呈现在用户面前。模板引擎也会提供沙箱机制来进行漏洞防范,但是可以用沙箱逃逸技术来进行绕过。
2025-03-07 22:36:51
1111
原创 apload-lab打靶场
17.按理说这道题是先上传末尾有php代码的文件,保存上传图片,用010打开另存图片和原图片发现另存图片被渲染末尾的代码没了,那么通过比对,找到不被渲染的地方插入php代码上传成功即可,我不小的为什莫我上传的图片没有被渲染,这个牛逼。4.先上传.htaccess文件(在php的nts版本下面无法解析为php文件,.php5.6以下不带nts的版本)先上传一张正常的png另存地址到文件夹,在该另存图片末尾通过010添加相关php语句再次上传,构造geet传参访问。7.没有删除末尾的点,点绕过4.php. .
2025-03-02 16:35:40
945
原创 日志,建网站前知识学习
文本图像等</a>例:<a href="http://www.baidu.com">百度</a><li><a href="#">吃</a></li><li><a href="#">喝</a></li><li><a href="#">玩</a></li><li><a href="#">乐
2025-02-26 22:18:04
750
原创 云曦秋季考试复现
题目中说可能长宽高被修改,一开始想用搜索的其他方法比如用解码软件查看图片真实的长宽高然后再打开图片查看现在的长宽高,修改一下图片的码,还看了好多方法但是有点乱没搞出来,问了一下同学,题目中给了两张图直接用010查看编码,发现前几行不一样给替换掉。构造路径../../../capoo.php,然后根据提示猜测flag文件../../../flag.php。一开始以为是截图片的长宽高把flag截掉了,后来看提示让了解一下盲水印的工具下载后一提取就出来了。使用$IFS$9/绕过空格,输入?
2025-02-22 04:25:39
872
原创 upload-labs靶场
在抓包中把php改为php5或者php3等需要修改配置文件httpd.conf,在大概465行加入AddType application/x-httpd-php .php .phtml .php5 .php3,这里是设定了可以将后缀为php3,php5等文件也当作php文件执行。文件类型不正确,直接抓包修改上传的PHP的content-type为image/png。提示不允许上传.asp,.aspx,php,jsp后缀文件!再次上传出来一个图片,然后用post传参去查看。上传一句话木马不支持php格式。
2025-02-22 04:23:39
282
原创 zyNo.26
值,关键的关系式$out=\sum{state_i \times mask_i}$可改写为矩阵乘法形式$out=State \times Mask$State是 $1\times128$ 向量,Mask是 $128 \times 1$ 向量256轮循环最终输出。将传的参数进行base64编码,绕过base64_decode函数,在反序列化串的O:前加个加号“+”,绕过preg_match函数,修改反序列化串的对象属性个数,绕过wakeup。拼接part2:flag{UPX_4nd_0n3_4nd_tw0}
2025-02-22 03:16:25
871
原创 zyNo.24
三种XSS攻击类型的主要区别在于恶意代码的存储和执行方式:反射型XSS:即时反射,不存储,依赖用户交互。存储型XSS:持久存储,影响范围广。DOM型XSS:完全基于客户端,不经过服务器处理。
2025-02-13 20:53:41
900
原创 zyNo.23
一个数据库由多个表空间组成,sql注入关系到关系型数据库,常见的关系型数据库有MySQL,Postgres,SQLServer,Oracle等以Mysql为例,输入 mysql-u用户名-p密码 即可登录到MySQL交互式命令行界面。既然是数据的集合,我们要想操作这些数据就需要有一定的媒介和手段。比如,可以选择用图形化的工具(如Datagrip、Navicat等),也可以直接使用数据库管理工具自带的命令行(如MySQL自带了一个命令行的界面,Postgres亦然)。
2025-02-12 18:59:51
899
原创 【无标题】
(1)Bash:最常见的命令cat flag在 Bash 中,cat以及的tacnlmoreheadlesstailodpr·cat按顺序依次输出各文件内容,常用于快速查看小文件内容,或在脚本中组合文件内容等场景。tac与cat相反,tac flag会将flag文件内容从最后一行到第一行依次显示。nlnl flag会在显示flag文件内容的同时,给每行添加上行号more逐页显示文件内容,按空格键显示下一页,按回车键显示下一行。当使用more flag时,会以分页形式展示flag文件内容。
2025-02-12 11:13:57
598
原创 zyNo.22
(1)Bash:最常见的命令cat flag在 Bash 中,cat以及的tacnlmoreheadlesstailodpr·cat按顺序依次输出各文件内容,常用于快速查看小文件内容,或在脚本中组合文件内容等场景。tac与cat相反,tac flag会将flag文件内容从最后一行到第一行依次显示。nlnl flag会在显示flag文件内容的同时,给每行添加上行号more逐页显示文件内容,按空格键显示下一页,按回车键显示下一行。当使用more flag时,会以分页形式展示flag文件内容。
2025-02-11 18:23:42
1318
原创 反弹shell
这段代码就像是一把特殊的 “钥匙”。bash -i就像是打开 Shell 这扇门的初始动作,它启动了一个交互式的 bash Shell,就好像在屋子内部打开了一个可以操作的控制台。这部分,/dev/tcp是 Linux 系统里一种特殊的网络设备接口,ip是黑客自己服务器的地址,port是一个特定的端口号,这部分相当于让靶机按照黑客服务器的地址和端口号去建立一个连接,就像是让屋子里的人按照小偷给的地址和门牌号去敲门。0>&1则是把标准输入也导向这个连接,保证整个交互过程的顺畅。
2025-02-11 15:30:48
291
原创 在PHP中,system函数和exec函数有不同的功能和特点
• system函数方便获取命令最后一行输出且直接显示全部输出,适合简单查看命令执行结果的场景。• exec函数更侧重于控制命令执行状态,如需获取输出需要额外处理,在一些对输出控制要求更精细、需要灵活处理的场景中使用。
2025-02-11 14:21:57
342
原创 PHP中的魔术方法
类的构造函数,在对象创建完成后第一个自动调用,用于执行初始化任务,如对成员属性赋予初始值。:类的析构函数,当对象不再被使用、即将被销毁时调用,可用于执行清理工作,如关闭文件句柄、释放资源等。:当调用对象中不存在的方法时触发,可用于捕获方法调用,实现如代理模式等设计模式。:在序列化对象时调用,可清理对象并返回一个包含所有要序列化属性名称的数组。:尝试以调用函数的方式调用对象时触发,使对象可像闭包一样被调用。:当读取一个不存在的属性时调用,可用于实现属性的重载。语句中)时调用,用于定义对象的字符串表示形式。
2025-02-09 17:12:44
407
原创 zy.21
1.PHP中代码漏洞的概念代码执行漏洞就是在代码中若存在eval、assert等能将所接收的参数作为代码去执行,并且拼接的内容可被访问者控制,也就是把传入的参数给拼接进去了,造成了额外的代码执行,也就造成了代码执行漏洞。(大概原理:原本正常访问/?method=method1,eval接收到参数,拼接出来的代码是(newTestController())->method1();",正常调用method1。但如果传入的参数是method1();
2025-02-09 11:28:43
413
原创 array_walk. array_map. array_filter
回调函数接收的前两个参数分别是元素的值和键名,如果有第三个参数,则数组所有的值都共用这个参数。用回调函数处理数组中的各个元素,返回一个新的数组,原数组不变。,回调函数接收两个参数,分别对应两个数组中的元素,回调函数将两个数组对应位置的元素相加,最后返回一个新的数组。用回调函数处理数组中的各个元素,重点在于过滤数组元素。中的每个元素执行回调函数,该回调函数将每个元素进行平方运算,最后返回一个新的数组。,那么这个元素将会从结果数组中被过滤掉,原数组不变,结果数组保持原来的索引。,该函数用于打印数组的键和值。
2025-02-09 08:45:32
293
原创 zyNo.20
1.弱类型漏洞产生原理常见四种情况2.md5 hash 相关漏洞利用phpecho $flag;这是典型的弱类型比较,两个输入值需符合如下条件:(以下例子看到要眼熟)1)MD5(值)计算后结果开头是0e2)0e后面全是数字。
2025-02-05 11:50:27
970
原创 参数3说明
这里 $key1 原本已存在,extract 函数为新提取的 key1 加上 new_ 前缀变为 $new_key1,而原本的 $key1 保持不变,同时 $key2 也被加上前缀成为 $new_key2。上述代码中,extract 函数将数组 $array 中的变量提取出来,并为它们都加上 my_ 前缀,执行后会分别输出 value1 和 value2。只有当变量在当前作用域中存在时,才给提取的变量加上指定前缀,与 EXTR_PREFIX_SAME 类似,但这里强调“存在时才加前缀”这一条件。
2025-02-05 11:41:11
453
原创 zyNo.18
截取从pos位置开始到最后的所有str字符串SUBSTR (str, pos, len)(做盲注基本用这个写法,因为三个参数从某一位开始截取一个字符)注意pos是从1开始数的注:如果过滤了逗号可以用from for代替与SELECT SUBSTR('2018-08-17'FROM 6 FOR 5);意思相同。
2025-01-26 11:51:54
1391
原创 zyNo.17(Web题型总结3)
1.弱类型:===在进行比较的时候,会先判断两种字符串的类型是否相等,再比较(严格)== (弱相等)在进行比较的时候,会先将字符串类型转化成相同,再比较(eg:1=ture),如果比较一个数字和字符串或者比较涉及到数字内容的字符串,则字符串会被转换成数值并且比较按照数值来进行2.弱类型类型转换规则类型转换规则:从第一个不是数字的后面丢弃admin=0php//true//true//true 两个字符串作比较,e代表科学计数法0e代表0*10的多少次方都是0,因此相等。
2025-01-25 11:29:37
732
原创 zyNo.16(笔记web题型)
(vi/vim是ubuntu里面编写文档的工具)创建文档可以编写内容,按esc退出编写模式,按:wp 保存并退出文档,桌面上就出现了note.txt文件查看内容(cat note.txt)在使用vi时自动保存一个备份文件即note.txt.swp退出编辑后自动消失,如果异常退出就会保存swp文件用于恢复参考资料编辑器之神——vim编辑器(详细、完整)-优快云博客Wappalyzer是一款强大的网站技术栈嗅探工具,它能够帮助用户识别任意网站所使用的技术,包括内容管理系统(CMS)、电子商务平台、Web框架
2025-01-24 07:36:18
720
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人