dhcp+nat实现小盒子直连笔记本联网
参考了这篇博客,使用第二张网卡的时候可以选择桥接物理网卡,以太网2,然后在虚拟机里面部署centos的dhcp服务,绑定好网卡,关闭防火墙,启动dhcp服务,开启路由转发。那么小盒子就能获取到ip并且可以通过虚拟机里面的centos进行上网。
IPV6的DDNS配置
0x01问题来源很早就知道了DDNS,这次是将IPV6和DDNS结合起来,主要是借助了华为云的一个接口完成。
我有一个小盒子改成了kali系统,同时我把该小盒子放在了寝室,如果我在校园外想连接我的小盒子那么肯定是要做内网穿透的(虽然买小盒子的时候商家送了一份frp的内网穿透),那要是他们服务不稳定或者是我的服务器到期了,那么frp肯定是不能完全保障我能控制我的小盒子,所以我想通过ipv6直接访问我的小盒子,而ipv6存在租期以及其在不同网络环境下会有不同的ipv6前缀,所以我想着部署一个ddns来访问我的服小盒子,直接访问而不用经过第三方服务器。
0x02 解决方案ipv6+DDNS一、首先了解一下ipv6首先需要有ipv6地址,可以通过ipconfig,ifconfig等命令查看是否有ipv6地址,使用http://www.test-ipv6.com/ 查看是否可以通过ipv6连接外网。
当你有ipv6之后,就可以进行下一步了
二、dns api的使用首先找到华为云的dns产品文档
找到api参考,然后选择修改record set管理,修改单个record set ,然后点击 ...
HTTP请求走私
HTTP请求走私在一次比赛中,了解到了HTTP请求走私漏洞,目前我只接触到django和Nginx一起组合,实现负载均衡,所以靠近于代理端,即前端控件的我没怎么了解过。
0x01 漏洞成因 漏洞成因是由于前端控件(一般指代理服务器)对HTTP协议的长度截取和后端服务器的截取不同导致。HTTP规范提供了两种不同的方法来指定请求的结束位置:Content-Length标头和Transfer-Encoding标头,若同一请求前端与后端所使用的规范不同就可能导致解析差异,从而造成请求走私。一般服务器有三种解析方式:
123CL.TE:前端服务器使用Content-Length标头,而后端服务器使用Transfer-Encoding标头。TE.CL:前端服务器使用Transfer-Encoding标头,而后端服务器使用Content-Length标头。TE.TE:前端服务器和后端服务器都支持Transfer-Encoding标头,但是可以通过对标头进行某种方式的混淆来诱导其中一台服务器不对其进行处理。
这里的解析错误主要取决于HTTP1.1中的两个特性:keep-alive 与 pip ...
突破校园网的认证限制
突破校园网的认证限制0x01 事情起因事情是这样的,我一大早来到教室不想学汇编,由于之前在搞ipv6,开始就ipconfig查看自己的ipv6,然后我ping了一下buucoj.cn,让我感兴趣的是他的ipv6,但是在ping的过程中,我发现自己ping不同,开始疑惑以为是限制了他们那一方限制了ping命令,然后打开该网站这才想起自己未认证校园网,这时候才开始思考未认证校园网为什么可以得到dns记录,我以为是缓存,可是电脑才开机,带着疑问我去随意ping 了一个dn1.com,
图 1-1ping buu
结果如下
显然我的电脑是不可能带有dn1.com的缓存(我甚至不知道这个网站真实存在),最后在网上找到了相关的论述,网上说是有一个入口设备在未认证的时候导向校园网的认证页面,直到认证完成,然后才让你的数据通过,但是dns数据是可以通过的,既然数据是可以传出去,还能传回来,那么我肯定可以利用这一点,于是我去网上搜索了相关文章,网上有很多的利用dns隧道技术突破校园网 ...
好久不见
真~好久不见 好久没更新博客了,因为最近在刷算法和搞项目,安全类的博客没怎么去更新,算法博客觉得有点不务正业就索性不更新了,最主要的是我的博客因为更新主题而做了很多备份,后来写的时候搞错了博客,以至于博客主题出错,修了好久没修好,然后很多的主题配置文件没了就很伤心(我花了好几天来配置我漂亮的主题,还加了看板娘😂),所以我一直没更新博客,这次终于发现了我的其中一个备份文件是已经配好的博客,所以就立马更新了。
php中有意思的==
php中有意思的==php除了弱类型比较,还有一些有意思的东西,比如科学计数法,
这里的YBB可以传参,一般$_GET都是字符串形式,所以一般的弱类型比较还真的很难做出来
123456789101112<?php//Author:H3h3QAQinclude "flag.php";highlight_file(__FILE__);error_reporting(0);if (isset($_GET["YBB"])) { if (hash("md5", $_GET["YBB"]) == $_GET["YBB"]) { echo "小伙子不错嘛!!flag给你了:" . $flag; } else { echo "偶吼,带黑阔被窝抓到了!!!!"; }}
这里可以使用科学计数法来做
所以只要找到md5值为0e开头就行
flask_session伪造
https://blog.csdn.net/weixin_44677409/article/details/100733581
https://github.com/noraj/flask-session-cookie-manager
flask session伪造想要伪造session,需要先了解一下flask中session是怎么构造的。flask中session是存储在客户端cookie中的,也就是存储在本地。flask仅仅对数据进行了签名。众所周知的是,签名的作用是防篡改,而无法防止被读取。而flask并没有提供加密操作,所以其session的全部内容都是可以在客户端读取的,这就可能造成一些安全问题。具体可参考:https://xz.aliyun.com/t/3569https://www.leavesongs.com/PENETRATION/client-session-security.html#
我们可以通过脚本将session解密一下:
123456789101112131415161718192021222324252627282930313233#!/usr/bi ...
回溯上限
12345678910111213141516171819202122<?phpfunction areyouok($greeting){ return preg_match('/Merry.*Christmas/is',$greeting);} $greeting=@$_POST['greeting'];if(!areyouok($greeting)){ if(strpos($greeting,'Merry Christmas')!==false){ echo 'Merry Christmas. '.'flag{xxxxxx}'; }else{ echo 'Do you know .swp file?'; } }else{ echo 'Do you know PHP?' ...