文档章节

Gixy–分析Nginx配置文件的工具

问题终结者
 问题终结者
发布于 2017/08/29 20:23
字数 497
阅读 34
收藏 0

Gixy是一款用来分析Nginx配置文件的工具。 Gixy的主要目标是防止安全配置错误,并自动进行缺陷检测。

Gixy特性

  • 找出服务器端请求伪造。
  • 验证HTTP拆分。
  • 验证referrer/origin问题。
  • 验证是否正确通过add_header指令重新定义Response Headers。
  • 验证请求的主机头是否伪造。
  • 验证valid_referers是否为空。
  • 验证是否存在多行主机头。

Gixy安装

Gixy是一个Python开发的应用,目前支持的Python版本是2.7和3.5+。

安装步骤非常简单,直接使用pip安装即可:

$ pip install gixy

如果你的系统比较老,自带Python版本比较低。可参考「使用pyenv搭建python虚拟环境」或者「如何在CentOS上启用软件集Software Collections(SCL)」升级Python版本。

Gixy使用

Gixy默认会检查/etc/nginx/nginx.conf配置文件。

$ gixy

也可以指定NGINX配置文件所在的位置。

$ gixy /usr/local/nginx/conf/nginx.conf

==================== Results ===================

No issues found.

==================== Summary ===================

Total issues:

Unspecified: 0

Low: 0    Medium: 0

High: 0

来看一个http折分配置有问题的示例,修改Nginx配置:

server {

…

location ~ /v1/((?<action>[^.]*)/.json)?$ {
add_header X-Action $action;
}
…

}

再次运行Gixy检查配置。

$ gixy /usr/local/nginx/conf/nginx.conf

==================== Results ===================

>> Problem: [http_splitting] Possible HTTP-Splitting vulnerability.
Description: Using variables that can contain “/n” may lead to http injection.
Additional info: https://github.com/yandex/gixy/blob/master/docs/en/plugins/httpsplitting.md
Reason: At least variable “$action” can contain “/n”
Pseudo config:

server {
server_name localhost mike.hi-linux.com;

location ~ /v1/((?<action>[^.]*)/.json)?$ {
add_header X-Action $action;
}
}

==================== Summary ===================
Total issues:
Unspecified: 0
Low: 0
Medium: 0
High: 1

从结果可以看出检测到了一个问题,指出问题类型为http_splitting。原因是$action变量中可以含有换行符。这就是HTTP响应头拆分漏洞,通过CRLFZ注入实现攻击。

如果你要暂时忽略某类错误检查,可以使用--skips参数:

$ gixy –skips http_splitting /usr/local/nginx/conf/nginx.conf
==================== Results ===================
No issues found.

==================== Summary ===================
Total issues:
Unspecified: 0
Low: 0
Medium: 0
High: 0

更多使用方法可以参考gixy --help命令。

原文来自: http://www.linuxprobe.com/file-security-analysis.html

本文转载自:

共有 人打赏支持
上一篇: getsebool命令详解
下一篇: getsebool命令详解
问题终结者
粉丝 18
博文 935
码字总数 145650
作品 0
运维
私信 提问
Nginx 配置分析工具--Gixy

项目简介 Gixy 是一款用来分析 Nginx 配置的工具。 Gixy 的主要目标是防止安全配置错误,并自动进行缺陷检测。 目前支持的 Python 版本是 2.7 和 3.5+ 。 免责声明:Gixy 仅在 GNU / Linux ...

匿名
2017/05/18
2.8K
2
Gixy — Nginx 配置分析工具

Gixy 是一款用来分析 Nginx 配置的工具。它的主要目标是防止安全配置错误,并自动进行缺陷检测。目前支持的 Python 版本是 2.7 和 3.5+。

局长
2017/05/20
18
0
Nginx、tomcat访问日志准实时分析统计--goaccess

需求:及时得到线上用户访问日志分析统计结果,以便给开发、测试、运维、运营人员提供决策! 找了各种工具,最终还是觉得goaccess不仅图文并茂,而且速度快,每秒8W 的日志记录解析速度,web...

yown
2017/02/20
0
0
ELK 日志服务器安装部署

我们的公共号 来自队员 谆谆 拟写 简单介绍: ELK是三个开源工具组成,简单解释如下: Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本...

乌龟运维
2017/06/02
0
0
使用AWSTATS自动分析Nginx日志

环境说明: Nginx安装目录:/usr/local/nginx Nginx配置文件存放目录:/usr/local/nginx/conf/nginx.conf Nginx日志目录:/usr/local/nginx/logs Awstats安装目录:/usr/local/awstats Awst...

liangxiaowei66
2014/03/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

《阿里铁军》的读书笔记和读后感范文2600字

《阿里铁军》的读书笔记和读后感范文2600字: 在中国互联网,有一个流传很广的说法是,百度强在技术,腾讯强在产品,阿里强在运营。虽然发展到今天,已经不能再用这样简单的视角来看待这三个...

原创小博客
27分钟前
2
0
怎样实际项目中运用责任链模式

1 模式概要 1.1 简介 责任链模式为请求创建一个接收者对象链,每个接收者都包含对另一个接收者的引用,如果一个对象不能处理该请求,那么它会把请求传给下一个接收者,依此类推 责任链模式避...

小刀爱编程
42分钟前
2
0
【宇润日常疯测-004】JS 遍历数组如何快!快!快!

首先,我就是一后端全栈,对前端也只是会用罢了。闲的无聊来测测,不深究,只看表面,不喜勿喷! 遍历数组在写 JS 代码时候一定是经常用的,那么怎么遍历能达到最高效率呢,很多人一定没有测...

宇润
46分钟前
11
2
Linux系统如何定制History输出格式

Linux系统使用History命令来查看系统的运行记录,从而找出一些问题。但是History输出的数据中常常没有时间等信息。本文就来教大家Linux系统如何定制History输出格式。   具体方法如下 以r...

linuxprobe16
48分钟前
2
0
(一) pyhon 基础语法(数值 字符串 元组 列表 字典)

1、python的数据类型: 数值 字符串 列表 元组 字典; 数值类型包括; 整型(int) 长整型(long) 浮点型(float) 复数型 字符串; 可以通过type() 来查看是什么类型的; 注释:len()只支持 字符...

芬野de博客
49分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部