中间件定义:中间件是一类连接软件组件和应用的计算机技软件,包括一组服务,以便运行在一台或多台机器上的多个软件进行交互。所提供互操作性,推动了分布式体系架构,该架构常用于支持并简化复杂的分布式应用程序,包括web服务器,事务监控器,消息队列软件
开源web中间件
Apache httpd JBOSS Jetty JTomcat Nginx
商业web中间件
Websphere Weblogic IIS
service httpd start 开启服务
service httpd stop 停止服务
service httpd trestart 重启服务
http -v 查看应用服务版本
service httpd status 查看服务运行状态
ps -ef | grep httpd查看w服务对应的进程
httpd -s 查看服务信息
/etc/httpd/conf/httpd.conf Apache的主配置文件
/usr/lib64/httpd/modules/ Apache模块存放路径
/var/www/html 网站默认根目录
/var/www/cgi-bin/ 可执行的CGI程序存放目录
/var/log/httpd/ Apache日志目录
新建Apache用户组及Apache用户来运行Apache httpd服务
设置文件上传目录为不可执行
设置主目录权限为非属主不可执行
设置配置文件为仅属主可读写,如chmod 600 /etc/httpd/conf/httpd.conf
设置日志文件为仅属主可写, 如chmod 644 /var/ log/httpd/*.log
错误日志
访问日志
修改Options Indexe FollowSymlinks 为 Options FollowSymlinks
设置400的错误页面ErrorDocument 400 /custom400.html
修改Timeout、KeepAlive、KeepAliveTimeout的值
ServerSignature Off Server Tokens Prod
TraceEnable Off
注释CGI相关模块
listen x.x.x.x:80
添加配置
Order Allow,Deny
Deny from all
漏洞编号:CVE-2017-15715
漏洞影响版本Apache httpd v2.4.0-v2.4.29
漏洞描述:在解析PHP时,xx.php\x0A将被按照php后缀进行解析,可绕过一些安全策略
漏洞编号:CVE-2017-15715
漏洞描述:Apache httpd支持一个文件有多个后缀,像xxx.php.jpg。如果Apache配置文件(Apache/conf/httpd.conf)中国存在如下代码:AddHAndler application/x-httpd-php.php。当文件中存在.php时该文件就会被解析为php文件。
漏洞编号:CVE-2021-41773
漏洞影响版本Apache httpd v2.4.29
漏洞描述:在Apache httpd v2.4.9中引入了ap_normalize_path 函数对路径进行规范时先进性URL解码,判断是否存在.../的路径穿越符,若检测到路径中存在%时,后面2个字符是16进制字符,便会进行URL解码。可以构造curl -v --path-as-is http://像.x.x.x.x:8080/icons/.%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd进行利用。
还有很多其他漏洞,不再描述。
service tomcat start 开启服务
service tomcat stop 停止服务
service tomcat restart 重启服务
service tomcat status 查看服务运行状态
ps -ef | grep tomcat 查看服务对应的进程
/bin tomcat 执行脚本的目录
/conf tomcat 配置文件目录
/lib tomcat 运行需要的库文件
/logs tomcat 执行文件的log文件
/temp tomcat 临时文件存放目录
/webapps tomcat的主要web发布目录
/work tomcat的工作目录,存放.java,.class等文件
cataline.sh 用于启动和关闭tomcat服务器
configtest.sh 用于检查配置文件
startup.sh 启动tomcat脚本
shutdown.sh 关闭tomcat脚本
server.xml tomcat全局配置文件
web.xml 为不同tomcat配置的web应用设置缺省值的文件
tomcat-user.xml tomcat用户认证的配置文件
在conf/server.xml开启日志记录
在conf/tomcat-user.xml注释默认用户或修改默认用户的密码为强密码
在conf/web.xml中加入下面代码可定义404的错误页面,错误页面放置于工程根目录下,其他页面也可以。
修改conf/web.xml文件(把listings的参数改为false)
将webapps目录下的docs、examples等不需要的初始文件删除。
漏洞编号:CVE-2020-1938
漏洞影响版本:
apache tomcat 6
apache tomcat 7 <7.0.100
apache tomcat 8 <8.5.51
Apache tomcat 9 <9.0.31
漏洞描述:tomcat默认开启AJP服务(8009端口),存在一处文件包含缺陷,攻击者可构造恶意请求包进行文件包含,进而读取受影响tomcat服务器上web目录文件,攻击者可以读取任意webapps文件(配置文件,源代码等)或包括一个文件来执行代码。
漏洞影响版本:全版本
漏洞介绍:tomcat可通过web界面进行war包部署,若部署界面存在弱口令,攻击者便可通过此功能上传带有webshell功能的war包。