wget设置UA下载文件
  WcMlrurH7Ysw 2023年11月02日 50 0

背景

许多的HTTP\HTTPS站点提供的文件下载服务并不允许wget访问,或者大文件之类的禁止wget访问,例如限制iso之类的格式,或者特定路径。或者有一些资源并不允许空ref访问,例如下载某些页面的图片。限制wget下载iso估计是总有无聊的人浪费带宽下载测速吧。


方法

以清华大学开源软件镜像站为例,此站点就禁止iso后缀通过包含wget字样的UA下载访问。

wget https://mirrors.tuna.tsinghua.edu.cn/centos/test.iso
--2023-08-05 12:10:58--  https://mirrors.tuna.tsinghua.edu.cn/centos/test.iso
Resolving mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)... 2402:f000:1:400::2, 101.6.15.130
Connecting to mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)|2402:f000:1:400::2|:443... connected.
HTTP request sent, awaiting response... 403 Forbidden
2023-08-05 12:10:58 ERROR 403: Forbidden.
wget https://mirrors.tuna.tsinghua.edu.cn/centos/test.iso2
--2023-08-05 12:13:01--  https://mirrors.tuna.tsinghua.edu.cn/centos/test.iso2
Resolving mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)... 2402:f000:1:400::2, 101.6.15.130
Connecting to mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)|2402:f000:1:400::2|:443... connected.
HTTP request sent, awaiting response... 404 Not Found
2023-08-05 12:13:01 ERROR 404: Not Found.

任意构造了一个test.iso,一个test.iso2的路径,前者返回403,后者返回404。说明http配置上,前者iso后缀,不假思索,没有访问硬盘,就直接返回了403,而后者文件后缀不在判断列表,找不到文件返回404。

wget https://mirrors.tuna.tsinghua.edu.cn/centos/filelist.gz -O file
--2023-08-05 12:15:19--  https://mirrors.tuna.tsinghua.edu.cn/centos/filelist.gz
Resolving mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)... 2402:f000:1:400::2, 101.6.15.130
Connecting to mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)|2402:f000:1:400::2|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 7657131 (7.3M) [application/octet-stream]
Saving to: ‘file’

100%[======================================>] 7,657,131   7.55MB/s   in 1.0s

2023-08-05 12:15:20 (7.55 MB/s) - ‘file’ saved [7657131/7657131]

下载其他真实的文件,确定可用下载。

wget https://mirrors.tuna.tsinghua.edu.cn/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-2009.iso -U 'firefox' -O c7mini.iso

以这个方式,就能够正常的从清华大学开源软件镜像站下载到镜像文件。其实添加-U ‘’,发送空的UA信息,不输出wget字样就不会被拦截。

从这里也能想到,虽然访问静态资源,客户端表面上没有提供任何信息,实际上还是发送了UA之类的信息的,而http服务器也会以设定的方式去处理这些信息,例如仅仅是保存,或者特定的匹配处理。因此某漏洞只需要构造特定的UA,就可以让哪怕是看起来完全安全的静态http服务器nginx被通过网络远程提权root。

wget --user-agnet="UA" --referer="refuri" 路径 -O 保存文件名

通过上面的例子,就可以自定义UA与ref信息,下载具有ref访问限制的资源。

如果某些网址还需要特定的cookies,例如你通过电脑登录后可以下载,但是希望直接通过服务器下载?

--load-cookies=cookie文件

从电脑浏览器导出当前下载的cookies,服务器就可以通过wget直接下载,不需要本地下载再上传了。


【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  38gcbVXUBcLA   2023年11月26日   25   0   0 服务器htmlHTTP
  L83A5jZvvg3Q   2023年11月22日   25   0   0 长连接TCPHTTP
  38gcbVXUBcLA   2023年11月24日   25   0   0 服务器客户端HTTP
  KRsXEGSB49bk   2023年11月24日   49   0   0 TCPHTTP首部
  eHipUjOuzYYH   2023年12月06日   29   0   0 nginxHTTP
  L83A5jZvvg3Q   2023年11月22日   17   0   0 HTTP重定向字段
  O3FLR83nwSoe   2023年11月22日   29   0   0 nginxHTTPbash
  L83A5jZvvg3Q   2023年11月22日   27   0   0 客户端HTTP字段
  38gcbVXUBcLA   2023年11月25日   29   0   0 服务器客户端HTTP
  KRsXEGSB49bk   2023年11月22日   28   0   0 TCPHTTP首部
WcMlrurH7Ysw