文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

银河麒麟服务器操作系统编译安装httpd-2.4.54

2023-09-14 05:58

关注

Apache简介

Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中~

Apache攻击手段介绍

目前Apache存在换行解析漏洞与多后缀解析漏洞~

换行解析漏洞

影响版本:Apache 2.4.0 ~ 2.4.29

影响说明:绕过服务器策略,上传webshell

环境说明:PHP5.5、Apache2.4.10

漏洞原理:在php文件名后缀加了0x0a(换行),使得逃过了黑名单的检查,而Apache配置文件可以正确匹配.php0x0a的文件并当作php去解析。

注:在windows中不行,因为windows不允许换行符做文件名。所以虽然可以上传绕过检测,但文件无法保存。

多后缀解析漏洞

影响版本:使用module模式与php结合的所有版本apache存在未知扩展名解析漏洞,使用fastcig模式与php结合的所有版本apache不存在此漏洞。

影响说明:绕过服务器策略,上传webshell

环境说明:PHP7、任意版本的使用module模式与php结合的apache

漏洞原理:

apache支持php有多种模式,常见的有module、cgi、fastcgi等,此漏洞存在于module模式

Apache在遇到多个后缀的文件时,尝试从后往前解析,直到解析到可解析的为止。例如test.php.xxx就按照php去解析,test.php.aaa.jpg就按照php去解析。

根据这个原理,我们可以上传文件名如shell.php.xxx的文件,以此来绕过后端黑名单的检测,从而上传成功而且又能被Apache按照php去解析

应对方法

新版本的Apache已修复此漏洞,今日小编便编译最新版本:httpd-2.4.54

安装包下载网址:https://httpd.apache.org/download.cgi

实验环境:虚拟机

系统版本:Kylin-Server-10-SP2-x86-Release-Build09-20210524

安装包可以直接官网下载,也可以在终端使用wget下载(需有wget工具)

安装wget

终端中输入命令:

[root@172 ~ ]# yum  -y install wget

如图,我的系统中已安装wget且为最新版本,没有安装wget的可以使用 apt-yum  -y install wget 进行安装

下载相关安装包

[root@172 ~ ]#  wget https://httpd.apache.org/download.cgi/httpd-2.4.54.tar.gz

[root@172 ~ ]#  wget http://archive.apache.org/dist/apr//apr-1.7.0.tar.gz 

[root@172 ~ ]#  wget http://archive.apache.org/dist/apr/apr-util-1.6.1.tar.gz 

如图所示,相关安装包已下载完毕

添加用户

[root@localhost ~]# useradd -r -M -s /sbin/nologin apache

 

安装依赖包

[root@172 ~ ]#  yum -y install openssl-devel pcre-devel expat-devel  libtool

解压安装包

[root@172 ~ ]#  tar -zvxf apr-1.7.0.tar.gz 

[root@172 ~ ]#  tar -zvxf apr-util-1.6.1.tar.gz 

[root@172 ~ ]#  tar -zvxf httpd-2.4.54.tar.gz 

查看解压后的文件

[root@172 ~ ]#  ls

编译安装apr

[root@172 ~ ]#  cd apr-1.7.0/

[root@172  apr-1.7.0 ]#  vim configure

将框l蓝的一行注释掉,也就是在这一行行首添加#

[root@172  apr-1.7.0 ]#  ./configure --prefix=/usr/local/apr

[root@172  apr-1.7.0 ]#   make

[root@172  apr-1.7.0 ]#   make  install

编译安装apr-util

[root@172  apr-1.7.0 ]#  cd ../apr-util-1.6.1/

[root@172  arp-util-1.6.1 ]#  ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

[root@172  arp-util-1.6.1 ]#  make

[root@172  arp-util-1.6.1 ]#  make  install

编译安装httpd

[root@172  arp-util-1.6.1 ]#   cd ../httpd-2.4.54/

[root@172  httpd-2.4.54 ]#   ./configure --prefix=/usr/local/apache  --enable-so  --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/ --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork

[root@172  httpd-2.4.54 ]#   make

[root@172  httpd-2.4.54 ]#   make  install 

设置环境变量

[root@172 ~ ]# echo 'export PATH=/usr/local/apache/bin:$PATH' > /etc/profile.d/apache.sh

[root@172 ~ ]#  source /etc/profile.d/apache.sh

映射

[root@localhost ~]# ln -s /usr/local/apache/include/ /usr/include/apache

关闭防火墙

[root@localhost ~]# systemctl disable --now firewalld

[root@localhost ~]# setenforce 0

[root@localhost ~]# getenforce 

启动服务

[root@localhost ~]# which  apachectl

[root@localhost ~]#  apachectl  start

[root@localhost ~]#  ss  -antl

访问验证

浏览器输入:http://172.16.58.130

至此,编译完成~

同时,欢迎扫码关注如下公众号

 

                   

      祝:

工作顺利

来源地址:https://blog.csdn.net/weixin_47461537/article/details/125848121

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-人工智能
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯