Score:0

Installing Apache2 for Ubuntu 20.04 using Specific Version between v2.4.32 to v2.4.44 (exclusive)

jp flag

I've recently been trying to test out a vulnerability in Apache Webserver that requires a very specific version of Apache2 and its related libfiles. (Specifically, libapache2-uwsgi versions in the range v2.4.32 to v2.4.44 are vulnerable to this publicly listed exploit. I wish to test it.

I've been trying out two different methods of getting apache to work properly, and thusfar have not been able to get it working either way.

Method 1:

My problem is, whilst I have managed to find the Launchpad for these version (https://launchpad.net/ubuntu/+source/apache2) - Specifically version 2.4.41.

[Problem 1: What architecture does Ubuntu use when virtualized with Virtual Box?]

Through this, I've been downloading the .deb files for everything there. Unfortunately, I've been unable to install it using dpkg due to dependency problems (the deb files relate to each other in a way I personally don't know). This is as far as I have gotten in this method.

Method 2

Through (https://httpd.apache.org/docs/2.4/install.html), I have also been attempting to compile and install Apache via httpd method. After many hours of debug on AskUbuntu and similar, I found about needing APR, APR-Utils and PCRE sources in /httpd/srclib/ and acted to put them there.

[Problem 2: During make, I get an error stating:

ab.c:(.text+0x6228): undefined reference to `SSLv2_client_method'
/usr/bin/ld: ab.c:(.text+0x625f): undefined reference to `SSLv3_client_method'
/usr/bin/ld: ab.c:(.text+0x6509): undefined reference to `CRYPTO_malloc_init'

Unfortunately, unlike in this Stackoverflow Post or this reference, the /usr/local/php-5.5.3/ folder doesn't exist.]

Any help on either of these methods would be massive help. Thanks in advance!

David avatar
cn flag
Read this info about php 5. https://www.digitalcanvas.com/blog/is-php-5-6-still-supported/
cn flag
Why not install from a tar ball in /opt? it will have all dependencies already fixed. Same can be done for php or any other tool you need: set it up in /opt and connect it to eachother. Then start apache from /opt/ using your current sites-enabled. "Problem 1: What architecture does Ubuntu use when virtualized with Virtual Box?" whatever you tell VBox to use. VBox likely defaults to what the system itself uses though.
in flag
When very specific versions of packages are required, I have found the only reliable way to do this is via Docker containers. [From here you can get Apache 2.4.41](https://hub.docker.com/_/httpd/tags?page=1&name=2.4.41) and, if you are going to test for Log4Shell or Text4Shell, these containers may be vulnerable.
JerryPlayz101 avatar
jp flag
Thanks for the suggestion @matigo - I'll try docker as it seems easiest, but thanks for the answers to the other part Rinzwind. That clears up some confusion.
JerryPlayz101 avatar
jp flag
I am having a trouble with docker however - I can't seem to configure a module proxy through the dockerfile and I can't seem to grab it with copy as per `"docker run --rm httpd:2.4 cat /usr/local/apache2/conf/httpd.conf > my-httpd.conf"` - the httpd.conf grab works in this case, but not for `/usr/local/apache2/conf/conf.d/mod_proxy.conf` @matigo
mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.