- 博客(43)
- 收藏
- 关注
原创 [BJDCTF2020]Easy MD5 1
要注意的是这种情况是必须要有单引号括起来的,比如password=‘xxx’ or ‘1xxxxxxxxx’,那么就相当于password=‘xxx’ or 1 ,也就相当于password=‘xxx’ or true,所以返回值就是true。当然如果只有数字的话,就不需要单引号,比如password=‘xxx’ or 1,那么返回值也是true。,这可能导致一些非预期的行为,甚至引发安全漏洞(如认证绕过、密码校验绕过等)。,等价于 or 一个永真式,因此相当于万能密码,可以绕过md5()函数。
2025-06-06 19:31:37
862
原创 [极客大挑战 2019]BuyFlag 1
if (strcmp($_POST['money'],$flag) == 0)#比较money和flag的值和字符数,"=="PHP弱比较逻辑运算符。想要满足第一个简单,让password成为普通字符串就可以,404a、404b、404c、404%10、404,%20、404%30等等。需要你的100000000美元,如果你想购买FLAG:你一定是CUIT的学生!,一定要正确输入密码!// false(布尔 vs 数。
2025-06-06 14:26:45
728
原创 [RoarCTF 2019]Easy Calc
查看源代码这里请求了另一个url,url:"calc.php?:设置请求的目标地址是calc.php,并通过GET方式传递参数num。:获取 ID 为content的输入框(如<input>或<textarea>)的值。:对输入的内容进行 URL 编码,防止特殊字符(如空格)破坏 URL 结构。之后的代码是成功返回。。。。失败返回。。。看一下");获取num参数的值(定义一个黑名单$blacklist,禁止某些特殊字符(如空格、引号、反引号、等)。使用preg_match检查$str。
2025-06-02 20:36:17
1028
原创 BUUCTF之[ACTF2020 新生赛]BackupFile
会先将字符串转化为整数然后再进行比较。比如a=123和b=123admin456进行= =比较时。则b只会截取前面的整数部分。发现一个index.php.bak ,拼接url下载。:判断变量是否为数字或数字字符串(允许。也就是说key等于123就会==str。强制转换为整数(丢弃非数字部分)。先用dirsearct扫描网站文件。ey的值123,就能得到flag。是否是数字或数字字符串(如。= = 为弱相等,即当整数和。:检查 URL 中是否有。:检查变量是否已设置且非。:定义一个字符串变量。
2025-06-02 15:30:47
611
原创 端口协议相关
TCP协议规定,对于已经建立的连接,网络双方要进行四次握手才能成功断开连接,如果缺少了其中某个步骤,将会使连接处于假死状态,连接本身占用的资源不会被释放。常见的有DNS服务的53端口,SNMP(简单网络管理协议)服务的161端口,QQ使用的8000和400。由于TCP和UDP两个协议是独立的,因此各自的端口号也相互独立,比如TCP有235端口,UDP也 可以有235端口,两者并不冲突。常见的包括FTP服务的21端口,Telnet服务的23端口,SMTP服务的25端口,以及HTTP服务的80端口等等。
2025-02-03 22:46:52
926
原创 HTTP协议补充
1.URL地址用于描述一个网络上的资源, 基本格格式式如下:scheme指定低层使用的协议例如:host HTTP服务器的IP地址或者域名port# HTTP服务器的默认端口是80,这种情况下端口号可以省略。如果使用了别的端口,必须指明,例如path 访问资源的路径,路径以斜杠(/)开头url-params分号(;)后面的内容通常是路径参数(Path Parameters)或矩阵参数(Matrix Parameters)。
2025-02-03 17:28:58
336
原创 HTTP协议的无状态和无连接
它是通过服务器来保持状态的,当客户端访问服务器时,服务器根据需求设置 Session,将会话信息保存在服务器上,同时将标示 Session 的 SessionId 传递给客户端浏览器,客户端每次请求都会把这个id值放到http请求的头部发送给服务端,而这个id值在客户端会保存下来,保存的容器就是cookie.因此当我们完全禁掉浏览器的cookie的时候,服务端的session也会不能正常使用。于是,两种用于保持 HTTP 连接状态的技术就应运而生了,一个是 Cookie,而另一个则是 Session。
2025-02-03 16:03:23
417
原创 HTTP协议
HTTP 是无状态:HTTP 协议是无状态协议,无状态是指协议对于事务处理没有记忆能力,缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大,另一方面,在服务器不需要先前信息时它的应答就较快。根据响应类别的类别,服务器响应里可以含实体内容,但不是所有 的响应都有实体内容。HTTP 是媒体独立的:这意味着,只要客户端和服务器知道如何处理的数据内容,任何类型的数据都可以通过HTTP发送,客户端以及服务器指定使用适合的 MIME-type 内容类型。
2025-02-03 15:24:12
1054
原创 Linux基础2
正数表示在指定的时间内修改或访问过的文件,负数表示在指定的时间之前修改或访问过的文件,零表示在当前时间点上修改或访问过的文件。是要查找的目录路径,可以是一个目录或文件名,也可以是多个路径,多个路径之间用空格分隔,如果未指定路径,则默认为当前目录。例如:-mtime 0 表示查找今天修改过的文件,-mtime -7 表示查找一周以前修改过的文件。-N或--netlink或--symbolic 显示网络硬件外围设备的符号连接名称。-A 同 -a ,但不列出 "." (目前目录) 及 ".." (父目录)
2025-01-09 20:57:00
1013
原创 Linux基础1
这个文件的大小与归档中所有文件和目录的总和相同,因为它仅仅是将它们打包在一起,而没有通过任何算法来减小体积。-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其中,source(源文件)表示要复制的文件或目录的路径,dest(目标文件)表示复制后的文件或目录的路径。:在复制前提示确认,如果目标文件已存在,则会询问是否覆盖,回答 y 时目标文件将被覆盖。:用于复制目录及其所有的子目录和文件,如果要复制目录,需要使用该选项。退出编辑文件: :q(英文冒号,退出当前编辑的文件);
2025-01-04 21:43:14
708
原创 VM虚拟机三种网络模式
在NAT模式中,主机网卡直接与虚拟NAT设备相连,然后虚拟NAT设备与虚拟DHCP服务器一起连接在虚拟交换机VMnet8上,这样就实现了虚拟机联网。所以虚拟机和主机不再同一网段下,可以理解为主机是虚拟机的"上级",这也就是为什么桥接模式没有VMnet0这个虚拟网卡,因为桥接模式下的虚拟机和主机是"平等"的,共用同一个路由器。类似于把物理主机虚拟为一个交换机,所有桥接设置的虚拟机连接到这个交换机的一个接口上,物理主机也同样插在这个交换机当中,所以所有桥接下的网卡与网卡都是交换模式的,相互可以访问而不干扰。
2025-01-04 19:19:00
264
原创 php基础:正则表达式
例如,’\x41′ 匹配 “A”。\b 匹配一个单词边界,也就是指单词和空格间的位置。例如, ‘er\b’ 可以匹配”never” 中的 ‘er’,但不能匹配 “verb” 中的 ‘er’。’er\B’ 能匹配 “verb” 中的 ‘er’,但不能匹配 “never” 中的 ‘er’。等价于 [ \f\n\r\t\v]。等价于 [^ \f\n\r\t\v]。等价于 \x0b 和 \cK。等价于 \x0c 和 \cL。等价于 \x0a 和 \cJ。等价于 \x0d 和 \cM。等价于 \x09 和 \cI。
2024-12-14 20:28:58
583
1
原创 php基础:命名空间
命名空间namespace,是指人为的将内存进行分隔,让不同内存区域的同名结构共存,从而解决在大型项目中可能出现的重名结构的问题。
2024-12-14 18:34:14
597
原创 php基础:文件处理2
当我们在程序中操作文件时,可能会使用到文件的一些常见属性,比如文件的大小、类型、修改时间、访问时间以及权限等等。PHP 中提供了非常全面的用来获取这些属性的内置函数,如下表所示。注:依次读取文件名,同时向下移动文件句柄指针,读取不到则返回false。读取目录:文件名 = readdir(目录句柄)新建目录:mkdir(路径,权限,递归创建)打开目录:目录句柄 = opendir()移动(改名):rename()关闭目录:closedir()删除目录:rmdir()
2024-12-05 20:29:57
271
原创 php基础:文件处理
您并不想打开的文件占用您的服务器资源。fread() 的第一个参数包含待读取文件的文件名,第二个参数规定待读取的最大字节数。fopen() 的第一个参数包含被打开的文件名,第二个参数规定打开文件的模式。注释:在调用 fgetc() 函数之后,文件指针会移动到下一个字符。如果您用 fopen() 打开并不存在的文件,此函数会创建文件。fclose() 需要待关闭文件的名称(或者存有文件名的变量)注释:调用 fgets() 函数之后,文件指针会移动到下一行。创建文件所用的函数与打开文件的相同。
2024-12-05 13:16:42
453
原创 php基础:PHP超级全局变量、inclde 和 require 语句
GLOBALS 一个包含了全部变量的全局组合数组。变量的名字就是数组的键。$_SERVER 一个包含了诸如头信息(header)、路径(path)、以及脚本位置(script locations)等等信息的数组$_REQUEST 用于收集HTML表单提交的数据。它可以获取 cookie get post$_POST 广泛应用于收集表单数据,在HTML form标签的指定该属性:"method="post"。
2024-11-24 09:00:00
264
原创 php基础:类与对象(2)
例如某个抽象方法被声明为受保护的,那么子类中实现的方法就应该声明为受保护的或者公有的,而不能定义为私有的。接口是通过 interface 关键字来定义的,就像定义一个标准的类一样,但其中定义所有的方法都是空的。使用接口(interface),可以指定某个类必须实现哪些方法,但不需要定义这些方法的具体内容。(3)子类必须定义父类中的所有抽象方法,这些方法的访问控制必须和父类中一样(或者更为宽松)任何一个类,如果它里面至少有一个方法是被声明为抽象的,那么这个类就必须被声明为抽象的。
2024-11-23 17:47:11
337
原创 php基础:类与对象
在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的内容作为自己的内容,并加入若干新的内容。任何类的划分都是主观的,但必须与具体的应用有关。在面向对象的程序设计(英语:Object-oriented programming,缩写:OOP)中,对象是一个由信息及对信息进行处理的描述所组成的整体,是对现实世界的抽象。− 简单说,就是函数或者方法有同样的名称,但是参数列表不相同的情形,这样的同名不同参数的函数或者方法之间,互相称之为重载函数或者方法。
2024-11-23 10:10:20
992
原创 php基础:函数、变量作用域
PHP 同时在名为 $GLOBALS[index] 的数组中存储了所有的全局变量。指调用函数的时候将另一个函数作为参数传递到调用的函数中,而不是传递一个普通的变量作为参数,使用回调函数是为了可以将一段自己定义的功能传到函数内部使用。当函数完成/执行后,会删除所有变量。分为内置函数和自定义函数,用户定义的函数声明以单词 "function" 开头。在 PHP 中,可以在脚本的任意位置对变量进行声明。变量的作用域指的是变量能够被引用/使用的那部分脚本。global 关键词用于在函数内访问全局变量。
2024-10-25 16:37:45
815
原创 php基础:控制语句
语句 - 在条件成立时执行一块代码,条件不成立时执行另一块代码。- 首先执行一次代码块,然后在指定的条件成立时重复这个循环。语句 - 在若干条件之一成立时执行一个代码块。语句 - 在若干条件之一成立时执行一个代码块。- 只要指定的条件成立,则循环执行代码块。的作用是跳出本次循环,接着执行下一次循环。- 根据数组中每个元素来循环代码块。- 循环执行代码块指定的次数。- 在条件成立时执行代码。
2024-10-25 08:13:45
442
原创 php基础:数组
数组是一个能在单个变量中存储多个值的特殊变量。在 PHP 中,array() 函数用于创建数组:array();数值数组- 带有数字 ID 键的数组关联数组- 带有指定的键的数组,每个键关联一个值多维数组- 包含一个或多个数组的数组#数值数组#关联数组#多维数组//专门打印数组,echo不行echo $a[1];//取值#返回数组长度#数组遍历for($i=0;$i++){?在PHP 中定义了多个数组排序的内置函数:sort() - 对数组进行升序排列。
2024-10-24 13:58:22
484
原创 php基础:数据类型、常量、字符串
PHP预定义了许多常量,这些常量无需使用define()函数定义,可直接在程序中使用。如:(1)__FILE__(FILE前后分别是两个下画线):当前正在处理的脚本文件名,若使用在一个被引用的文件中(include或require),那么 它的值就是被引用的文件,而不是引用它的那个文件。(2)__LINE__(LINE前后分别是两个下画线):正在处理的脚本文件的当前行数。(3)PHP_VERSION:当前PHP预处理器的版本,如5.4.16。(4)PHP_OS: PHP所在的操作系统的类型。
2024-10-22 20:39:50
598
原创 php1简介、静态网站与动态网站访问流程、基本语法
PHP(全称:PHP:Hypertext Preprocessor,即"PHP:超文本预处理器")是一种通用开源脚本语言。PHP 文件可包含文本、HTML、JavaScript代码和 PHP 代码PHP 代码在服务器上执行,结果以纯 HTML 形式返回给浏览器PHP 文件的默认文件扩展名是 ".php"PHP 可以生成动态页面内容PHP 可以创建、打开、读取、写入、关闭服务器上的文件PHP 可以收集表单数据PHP 可以发送和接收 cookies。
2024-10-21 17:24:47
264
原创 JavaScript基础入门(3)
DOM是浏览器提供的一套专门用来操作网页内容的功能。开发网页内容特效和实现用户交互。DOM树将html文档以树状结构直观的表现出来,可以体现标签和标签的关系DOM对象浏览器根据html标签生成的对象比如html里的一个div标签,在js里使用时就是一个对象其中document是最大的对象,也就是整个页面或者html文档即自己定义并使用,且必须要以data-开头<head></head><body><script>//dataset代表属性集合,会输出data-id和data-id1。
2024-09-08 20:03:34
428
原创 JavaScript基础入门(2)
arr.unshift(元素1,元素2,.....)将一个或者多个元素添加到数组的开头,并返回该数组的新度。7.arr.push(元素1,元素2,.....)将一个或者多个元素添加到数组的末尾,并返回该数组的新度。简单点说就是&&是一假则假,当第一个是假,就不去判断第二个了,返回第一个值(如果都是真,则返回第二个)注:函数命名规范:小驼峰,前缀为动词。一元:+3,+4,-5.......+-(正负),++ 或者--(自增自减)为一元运算符。同样||一真则真,第一个为真,则不去判断第二个真假,返回第一个值。
2024-07-18 23:36:01
968
原创 CSS基础(3)
css先到这里,后续遇到不会的或者没见过的随时补充t=N7T8经验分享:CSS浮动(float,clear)通俗讲解 - 杨元 - 博客园 (cnblogs.com)https://www.cnblogs.com/iyangyuan/archive/2013/03/27/2983813.html。
2024-07-15 22:52:34
2047
原创 CSS基础(1)
CSS (Cascading Style Sheets) 用于渲染HTML元素标签的样式。书写位置:title标签下方听见爱style,style中书写css代码格式:选择器{属性名:属性值;
2024-07-13 22:31:39
1491
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人