Files
bpfire/lfs/apache2
Matthias Fischer e001c59719 apache: Update to 2.4.62
"All good things go by three..."

For details see:
https://dlcdn.apache.org/httpd/CHANGES_2.4.62

"Changes with Apache 2.4.62

  *) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
     mod_rewrite in server/vhost context on Windows (cve.mitre.org)
     SSRF in Apache HTTP Server on Windows with mod_rewrite in
     server/vhost context, allows to potentially leak NTML hashes to
     a malicious server via SSRF and malicious requests.
     Users are recommended to upgrade to version 2.4.62 which fixes
     this issue.
     Credits: Smi1e (DBAPPSecurity Ltd.)

  *) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
     disclosure with handlers configured via AddType (cve.mitre.org)
     A partial fix for  CVE-2024-39884 in the core of Apache HTTP
     Server 2.4.61 ignores some use of the legacy content-type based
     configuration of handlers. "AddType" and similar configuration,
     under some circumstances where files are requested indirectly,
     result in source code disclosure of local content. For example,
     PHP scripts may be served instead of interpreted.
     Users are recommended to upgrade to version 2.4.62, which fixes
     this issue.

  *) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
     "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
     with BalancerMember(s).  PR 69168.  [Yann Ylavic]

  *) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
     PR 69160 [Yann Ylavic]

  *) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
     [Joe Orton]

  *) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
     via OpenSSL 3.x providers.  [Ingo Franzki <ifranzki linux.ibm.com>]

  *) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL >= 3.0.
     [Ruediger Pluem, Yann Ylavic]

  *) mpm_worker: Fix possible warning (AH00045) about children processes not
     terminating timely.  [Yann Ylavic]"

Signed-off-by: Matthias Fischer <matthias.fischer@ipfire.org>
Reviewed-by: Adolf Belka <adolf.belka@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:21 +00:00

123 lines
5.4 KiB
Plaintext

###############################################################################
# #
# IPFire.org - A linux based firewall #
# Copyright (C) 2007-2024 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
# the Free Software Foundation, either version 3 of the License, or #
# (at your option) any later version. #
# #
# This program is distributed in the hope that it will be useful, #
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
# GNU General Public License for more details. #
# #
# You should have received a copy of the GNU General Public License #
# along with this program. If not, see <http://www.gnu.org/licenses/>. #
# #
###############################################################################
###############################################################################
# Definitions
###############################################################################
include Config
VER = 2.4.62
THISAPP = httpd-$(VER)
DL_FILE = $(THISAPP).tar.bz2
DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
DEPS = aprutil pcre
###############################################################################
# Top-level Rules
###############################################################################
objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
$(DL_FILE)_BLAKE2 = 0e5c3b05819771e6ff72933ad715695199a32c384f63de6598e179ff5803580f04639437829305150305c9a2b7d309178552d8c9a2d7248a034c98f445193b95
install : $(TARGET)
check : $(patsubst %,$(DIR_CHK)/%,$(objects))
download :$(patsubst %,$(DIR_DL)/%,$(objects))
b2 : $(subst %,%_BLAKE2,$(objects))
###############################################################################
# Downloading, checking, b2sum
###############################################################################
$(patsubst %,$(DIR_CHK)/%,$(objects)) :
@$(CHECK)
$(patsubst %,$(DIR_DL)/%,$(objects)) :
@$(LOAD)
$(subst %,%_BLAKE2,$(objects)) :
@$(B2SUM)
###############################################################################
# Installation Details
###############################################################################
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
### Add IPFire's layout, too
echo "# IPFire layout" >> $(DIR_APP)/config.layout
echo "<Layout IPFire>" >> $(DIR_APP)/config.layout
echo " prefix: /usr" >> $(DIR_APP)/config.layout
echo " exec_prefix: /usr" >> $(DIR_APP)/config.layout
echo " bindir: /usr/bin" >> $(DIR_APP)/config.layout
echo " sbindir: /usr/sbin" >> $(DIR_APP)/config.layout
echo " libdir: /usr/lib" >> $(DIR_APP)/config.layout
echo " libexecdir: /usr/lib/apache" >> $(DIR_APP)/config.layout
echo " mandir: /usr/share/man" >> $(DIR_APP)/config.layout
echo " sysconfdir: /etc/httpd/conf" >> $(DIR_APP)/config.layout
echo " datadir: /srv/web/ipfire" >> $(DIR_APP)/config.layout
echo " installbuilddir: /usr/lib/apache/build" >> $(DIR_APP)/config.layout
echo " errordir: /srv/web/ipfire/error" >> $(DIR_APP)/config.layout
echo " iconsdir: /srv/web/ipfire/icons" >> $(DIR_APP)/config.layout
echo " htdocsdir: /srv/web/ipfire/htdocs" >> $(DIR_APP)/config.layout
echo " manualdir: /srv/web/ipfire/manual" >> $(DIR_APP)/config.layout
echo " cgidir: /srv/web/ipfire/cgi-bin" >> $(DIR_APP)/config.layout
echo " includedir: /usr/include/apache" >> $(DIR_APP)/config.layout
echo " localstatedir: /srv/web/ipfire" >> $(DIR_APP)/config.layout
echo " runtimedir: /var/run" >> $(DIR_APP)/config.layout
echo " logfiledir: /var/log/httpd" >> $(DIR_APP)/config.layout
echo " proxycachedir: /var/cache/apache/proxy" >> $(DIR_APP)/config.layout
echo "</Layout>" >> $(DIR_APP)/config.layout
cd $(DIR_APP) && ./configure --enable-layout=IPFire \
--enable-ssl --enable-mods-shared=all --enable-proxy --with-mpm=event --disable-lua --disable-md
cd $(DIR_APP) && make $(MAKETUNING)
cd $(DIR_APP) && make install
chown -v root:root /usr/lib/apache/httpd.exp \
/usr/bin/{apxs,dbmmanage} \
/usr/sbin/apachectl \
/usr/share/man/man1/{ab,apxs,dbmmanage,ht{dbm,digest,passwd,txt2dbm},logresolve}.1 \
/usr/share/man/man8/{apachectl,htcacheclean,httpd}.8 \
/usr/share/man/man8/{rotatelogs,suexec}.8
# Install apache config
cp -rf $(DIR_CONF)/httpd/* /etc/httpd/conf
touch /etc/httpd/conf/hostname.conf
# Create captive logging directory
-mkdir -pv /var/log/httpd/captive
@rm -rf $(DIR_APP)
@$(POSTBUILD)