- 博客(13)
- 收藏
- 关注
原创 要输入5字
在没有路由器的情况下,这两个网络之间是不能进行TCP/IP通信的,因为TCP/IP协议会根据主机IP地址和子网掩码(255.255.255.0)判断出这两个网络中的主机处于不同的网络里。所以如果网络 A 中的主机发现数据包的目的主机不在本地网络中,就把数据包转发给它自己的网关,再由网关转发给网络 B 的网关,网络 B 的网关再转发给网络 B 的某个主机。由于计算机本身不具备路由寻址功能,所以计算机要把所有的IP包发送到一个默认的中转地址上面进行转发,也就是默认网关。//设置网关地址为网关机内网IP。
2024-04-27 20:10:28
306
1
原创 大步小步算法
位数, 所以可以把目标设为只求缺少的数,这样我们要求的数字最大就是(2^16)称之为大步小步算法,一种解决离散对数问题的方法,其主要思路是中间相遇攻击。时,他们求出来得值是一样的,所以可以算出。的值决定着该算法计算出结果所需要的时间。对于这个式子我们就可以先枚举j。这里可以找到i=2, j=13。这样我们就只需要求a_low。的结果并存储下来,接着枚举。转化为x = i*m+j。先算出结果并存入列表中。位得到的数,要求的数是m。,而不是去整体计算a。
2023-08-29 14:09:28
338
3
原创 Thinkphp5.0.x 文件包含漏洞
这个漏洞我复现的不是很完善,按网上的教程,传入图片码是可以被解析为php文件,从而实现攻击,但是我尝试了几次都不成功,目前还不知道是为什么。
2023-07-30 22:03:12
658
1
原创 thinkphp6.x 反序列化漏洞
thinkphp5.x的反序列化还在贴图片,md文件不能直接沾上来难受,而这个遇到个奇怪的问题,一个代码开始能运行,过段时间居然报错了,不得不说计算机挺玄学的。
2023-07-09 18:52:48
1088
1
原创 create_function()函数利用
最近做题发现有利用到这个函数,所以就找了这篇学习了一下,并做个笔记适用范围 : php < 7.2 7.2也有不过会有报错。
2023-06-11 23:08:52
950
原创 Rust学习笔记 (二)
它与python等动态语言不同,rust是静态语言,意思就是编译器必须要在编译期就要知道所有变量的类型。虽然它可以根据上下文自己推导出这个变量的类型,但在某些情况下还需要你自己去给它标注类型。语句和表达式虽有区分,但它们并不是一直分开的,就比如上面这段代码,大括号里的整体作为表达式,返回值绑定给y变量,但整体看y的绑定语句,它又是一条语句。对于这个值,rust是很难分辨它的类型的。在上面的例子就能看到,rust中函数返回值得时候,不需要用到return,只需要把;就像这样,它的意思就是返回x+5的值。
2023-06-04 12:58:52
54
1
原创 Rust学习笔记 (一)
摆烂的太久了,想以写文章的方式给自己一点学习的动力,所以定下目标一周至少要写一篇文章,内容不定,不过基本上都是这一周我学到的东西。
2023-05-24 10:17:24
139
原创 小皮面板rce漏洞
Linux也有不少规则,我们如果就按这种写法就会出现报错,不过我们却可以用双引号闭合,它只会把双引号所包含的数据写进文件中。这种方式,不过这也没关系,因为我们知道其实$_POST[]里面也有不用引号闭合的方式,那就是输入数字,变成$_POST[123],ok这下就修改完成了,后面在改改文件所在位置就行了,别文件传进去了,却访问不到木马文件。这就是我们当时登录时,所留下的记录,本来可以通过这个日志,知道有谁尝试登录过我们的小皮面板,但我们输入的js代码,会被它解析并运行,这就导致了xss漏洞。
2023-03-31 21:54:13
440
原创 hash长度扩展攻击原理
做题时遇到了相关的题,找了几篇文章,现在应该是把原理搞懂了,在此记录一下。对于md4,md5,ripemd-160,sha-0,sha-1,sha-256,sha-512等都能实现hash长度扩展攻击,我在这儿只讲下md5的hash长度扩展攻击。我们先来了解一下md5加密的原理。当服务器进行sha1运算前,会先判断字符串的长度,并将整段字符串分割称64bytes一组。之后再进行hash生成。ps: 64bytes == 512bits 1bytes == 8bits而当hash函数拿到需要被hash的字符串
2022-12-05 16:23:44
364
原创 UUCTF WP
3.这里有个小知识点,我也是通过这道题才知道的,这里的__wakeup()会强制把a变赋个空字符,而我们需要利用die()来调用output():__toString(),那就要想办法给a传值output类。pdata的值传过来,后面要给key传“UUCTF”,之后要通过unserlize()调用nothing类,所以也说明了nothing里的__wakeup()没法绕过,而basedata很明显了要传个base加密后的序列化链子,所以它应该就是主要入口,ob呢就没啥作用了。那我们就用1作为随机种子。
2022-11-06 14:47:44
319
原创 python解决折叠加密问题
所以这里的for作用就显而易见了,对每层的字符串进行重新分层,比如第一次折叠,只有一层字符串,那就只分一次就行,而第二次时已经有两层了,所以就要两次分。发现每折叠一次,层数都是2的n次方,所以我们在一开始就要决定这个列表能储存多少字符串。2.折叠后发现层数也增加乐,就像是叠叠乐一样,所以想到可以把初始字符串作为地基,通过不断地折叠,在地基上不断地建层。经过之前的手动折叠,我们能发现,每次折叠字符串的一半会留在原层,另一半会变成倒序并且与原层对称的位置储存。后面折叠时就可以把相应的字符串放上层。
2022-10-15 15:35:52
599
6
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人