[极客大挑战 2019]Http1(萌新向大佬勿喷)

这篇博客讲述了通过抓包工具修改HTTP头部信息,包括Referer和User-Agent,来绕过网站访问限制的方法。作者首先发现了一个隐藏链接secret.php,并通过删除view-source:前缀查看源码。接着,通过添加Referer字段模拟来自特定URL的请求,然后修改User-Agent为指定的Syclover浏览器。最后,通过设置X-Forwarded-For为127.0.0.1实现本地访问。整个过程展示了网络安全中常见的反爬与反反爬策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

于是我,摸鱼来了→_→

这道题没什么难度

 没给连接,手动输入

乍一看还以为是个广告植入(雾)

看源码:

 

看见一个神秘连接:secret.php,点进去

URL前删掉 view-source: (顺带一提,这也是打开页面源码的一种方式,以前有道题死活打不开源码差点让我emo了)

删掉后得到了路上页面。

It doesn't come from 'https://Sycsecret.buuoj.cn'

言简意赅,意思是要从https://Sycsecret.buuoj.cn来访问secret.php。

那么如何来访问呢?

抓包改包。

他说要来自https://Sycsecret.buuoj.cn,在文件头加上Referer

结果回显:

请使用Syclover浏览器。

继续抓包,该客户端。

 

在User-Agent这一栏里把浏览器修改为题目所说的Syclover浏览器(什么玩意T_T)

再次发送!

 。。。 。。。

要求只能从本地访问。

再次抓包,修改访问从本地发起。

在文件头中加入

X-Forwarded-For,并加上127.0.0.1,发送。

好耶!

——————我——是——分——割——线——————————

()

        1&Referer

        HTTP Referer是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器该网页是从哪个页面链接过来的,服务器因此可以获得一些信息用于处理。Referer 常用在防盗链和防恶意请求中。传输referer需要在页面内添加相关的代码。

        2&User-Agent

        用来传输用户使用的是什么样的浏览器。有些网站为了防止爬虫,会检验User-Agent,只有当是用户访问的时候才会传输数据。

        3&X-Forwarded-For

        X-Forwarded-For(XFF)是用来识别通过HTTP代理或负载均衡方式连接到Web服务器的客户端最原始的IP地址的HTTP请求头字段。当今多数缓存服务器的用户为大型ISP,为了通过缓存的方式来降低他们的外部带宽,他们常常通过鼓励或强制用户使用代理服务器来接入互联网。有些情况下,这些代理服务器是透明代理,用户甚至不知道自己正在使用代理上网。
如果没有XFF或者另外一种相似的技术,所有通过代理服务器的连接只会显示代理服务器的IP地址,而非连接发起的原始IP地址,这样的代理服务器实际上充当了匿名服务提供者的角色,如果连接的原始IP地址不可得,恶意访问的检测与预防的难度将大大增加。
如果你使用透明代理上网,那么在透明代理发送给服务器端的HTTP请求中会包含x-forward-for信息
        简单来说就是用来传输最原始ip地址的,阻止匿名请求的,但是可以通过抓包来修改。

### 安装和配置 Qv2ray #### 下载并准备 Qv2ray 应用程序图像文件 为了在 Ubuntu 上安装 Qv2ray,首先需要获取应用程序的 AppImage 文件。可以从官方网站或其他可信资源下载最新版本。 ```bash wget https://github.com/Qv2ray/Qv2ray/releases/download/v2.7.0/Qv2ray-v2.7.0-linux-x64.AppImage ``` #### 设置可执行权限 下载完成后,需设置该文件具有可执行权限以便启动它[^3]: ```bash sudo chmod +x ./Qv2ray-v2.7.0-linux-x64.AppImage ``` #### 创建桌面快捷方式(可选) 如果希望创建一个桌面图标来方便访问 Qv2ray,则可以按照下面的方法操作[^2]: 1. 编辑一个新的 `.desktop` 文件用于定义应用程序条目: ```bash cd /usr/share/applications && sudo gedit Qv2ray.desktop ``` 2. 将下列内容粘贴进去,并根据实际情况调整路径: ```ini [Desktop Entry] Encoding=UTF-8 Name=Qv2ray Comment=A GUI client for V2Ray based on Qt5. Exec=/path/to/your/Qv2ray-v2.7.0-linux-x64.AppImage Icon=/path/to/icon/Qv2ray.png Terminal=false StartupNotify=true Type=Application Categories=Network; ``` 3. 授予 `.desktop` 文件必要的权限使其成为有效的启动器: ```bash sudo chmod u+x Qv2ray.desktop ``` #### 解决可能遇到的问题 当更改用户组之后发现 Qv2ray 无法正常工作时,可能是由于缺少某些特定的能力(capabilities),可以通过给定二进制文件增加这些能力来修复这个问题[^4]: ```bash sudo setcap cap_net_bind_service=+ep cap_net_admin=+ep /path/to/qv2ray_executable_file ``` #### 配置全局代理(适用于命令行工具) 对于那些依赖于 HTTP 或 SOCKS5 协议的应用和服务来说,在设置了 Qv2ray 的监听端口后还需要进一步修改环境变量以实现全局代理功能[^5]。这通常涉及到编辑用户的 shell profile 文件如 `~/.bashrc` 添加如下几行代码: ```bash export http_proxy="http://127.0.0.1:8889" export https_proxy=$http_proxy export all_proxy="socks5://127.0.0.1:1089" ``` 完成上述步骤后记得使新的环境变量生效: ```bash source ~/.bashrc ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值