Articles of 安全

ModSecurity报告重复的exception日志,而不是单一的

这是我第二次使用OWASP规则集configurationModSecurity。 以前我使用过规则集的版本2.2.5,现在在不同的服务器2.2.9上。 我试图configurationexception检测,所以我已经禁用error.loglogging非exception。 一切似乎正在工作,但是当超过exception阈值时,我收到了单个exception的许多日志条目。 以前这只是一个日志条目,多个似乎过多。 我触发了一个简单的XSS攻击, error.log显示如下: [Fri Jul 01 09:25:09.234394 2016] [:error] [pid 17771:tid 139978059269888] [client 81.102.141.69] ModSecurity: Warning. Pattern match "(?i)(<script[^>]*>[\\\\s\\\\S]*?<\\\\/script[^>]*>|<script[^>]*>[\\\\s\\\\S]*?<\\\\/script[[\\\\s\\\\S]]*[\\\\s\\\\S]|<script[^>]*>[\\\\s\\\\S]*?<\\\\/script[\\\\s]*[\\\\s]|<script[^>]*>[\\\\s\\\\S]*?<\\\\/script|<script[^>]*>[\\\\s\\\\S]*?)" at ARGS:p. [file "/etc/apache2/modsecurity-crs/activated_rules/modsecurity_crs_41_xss_attacks.conf"] [line "14"] [id "973336"] [rev "1"] [msg "XSS Filter – Category 1: Script Tag Vector"] [data "Matched Data: <script>alert('simple-xss-test')</script> found within ARGS:p: <script>alert('simple-xss-test')</script>"] [severity "CRITICAL"] [ver "OWASP_CRS/2.2.9"] [maturity […]

如何禁用suhosin只为某个目录

我需要禁用suhosin作为我的moodle目录,将一个.htaccess文件禁用它仅用于该目录或将禁用整个网站?

NAS设置和安全

我们希望为文件的types设置存储: A.工作人员文件(只能从办公室访问)B.pipe理文件(只能从办公室访问)C.graphics文件(可通过SFTP在办公室外访问) 问题: 我们假设在安全性方面使用单一NAS设备是一个坏主意,我们是否正确? 我们的想法是将NAS驱动器#1用于A和B(具有文件夹权限)并将NAS驱动器#2用于C 此外,使用两个防火墙路由器,一个用于NAS#1,另一个用于NAS#2 …基于这样的假设,这将在安全方面将C完全与A和B隔离 SFTP和FTP有多重要? SFTP似乎不是一个常见的select,因为它从布法罗DriveStation和TeraStation丢失。 在防火墙路由器上设置VPN有多重要?

检查安全最佳实践已到位的工具

我想保护我的服务器更多,所以想知道是否有什么好工具来帮助我收紧Linux机器上的安全性(或者更具体的说是debian)。 例如,这个工具(或工具集合,但我宁愿有一些简单的和重点)会: 如果ssh接受密码authentication,则发出警告 如果安装/使用已知具有较大安全漏洞的过期库和程序,则会引发错误… 如果apache / nginx /无论安装,提出警告和/或错误,如果confs不够安全,或build议安装这个或那个模块更好的安全性,… 如果可以使用默认的用户/密码访问普通程序,则会引发错误 可选:列出接收和发送数据的程序,在哪个端口上(方便查找stream氓程序) 可选:根据安装在服务器上的软件提供安全最佳实践build议。 … 服务器安全是一个很大的课题,没有这样的工具,我认为只有最有经验的系统pipe理员才能使服务器真正安全(甚至他们必须不时地忘记一些重要的conf变化)。 理想情况下,这个工具将从命令行运行,并显示清晰的错误和警告,以便我可以做出所需的更改并运行该工具,直到一切正常。

encryption通过以太网电缆“不受信任”段的networkingstream量

假设我在一个多租户大楼里有两个办公室。 房东很友善地给我提供连接两个不相交空间的铜猫6电缆。 我可以只在两端连接networking交换机并创build一个扁平的L2networking。 但我想确保其他租户不能轻易地接入电缆,并窃听我的两个办公室之间的交通。 你会在这里提出什么解决scheme? 理想情况下,它应该提供透明的L2连接并处理几百mbit / s。 我更喜欢现成的设备,可以很容易地更换。 encryption的家用插头设备或提供wpa2-psk的无线接入点 – 似乎可以使用encryption硬件。 我的一些想法: 使用适当的硬件以太网encryption设备是这样的 ; 不幸的是,这些似乎相当昂贵 把两台linux服务器放在连接的两端,然后在其上运行openvpn ,以提供透明的l2网桥,encryption通过“不可信”网段的stream量 感谢您的任何build议!

允许www-data使用另一个用户 – sudo或ssh

我想允许我的PHP脚本(托pipe与Apache2)执行与另一个用户帐户的命令。 我不希望托pipe在服务器上的另一个网站能够连接到另一个用户帐户。 如果我在/ etc / sudoers中添加规则,那么它将允许任何网站使用该用户。 我来的解决scheme是使用ssh,私钥和公钥。 PHP脚本通过所需的用户帐户与其托pipe的服务器build立ssh连接。 有没有比我的解决scheme与ssh的另一种方式? 最好的祝福

如何修改只有一个参数的modsecurity规则动作?

核心规则集有一个modsecurity。 我有3个参数的POST请求:Par1 =“base64编码的XML”&Par2 =“url”&Par3 =“hash”。 我想修改CRS规则base64Decode 仅 Par1和使用Par2&Par3“原样”。 我试图使用SecRuleUpdateActionById指令,但它需要为CRS中的每个规则编写指令。 SecDefaultAction指令不起作用,因为所有的CRS规则都有“t:none”来覆盖默认的动作。 我也发现multiMatch行动,但我认为这将导致base64string大量的误报。 有没有一些方法可以更新多个规则的操作,而不必重写这些规则?

有人试图破解我的服务器

我有一台Linux机器作为testing服务器运行。 我的盒子直接在这台机器上redirect我的端口80。 我创build它来训练所有types的东西(raid,tcp …)。 最近我试图连接到我的机器在VNC,我得到了一个错误“太多authentication失败”,所以我检查日志,我有一个可怕的惊喜; 有人正试图通过在VNC中的蛮力连接到我的机器。 这里是这个日志的简短摘录: 04/01/17 13:53:56 Got connection from client 111.73.46.90 04/01/17 13:53:56 Using protocol version 3.3 04/01/17 13:53:56 Too many authentication failures – client rejected 04/01/17 13:53:56 Client 111.73.46.90 gone 04/01/17 13:53:56 Statistics: 04/01/17 13:53:56 framebuffer updates 0, rectangles 0, bytes 0 04/01/17 13:53:57 Got connection from client 111.73.46.90 04/01/17 13:53:57 […]

自定义shell有没有增加安全风险?

具体来说,我用鱼壳 。 我真的想在我的生产服务器上使用它,并将其设置为root帐户的默认shell,但我想知道是否有任何特定的安全问题,因为它是一个shell,我应该知道之前这样做。 我猜测它不会比服务器上的任何其他应用程序更具安全风险,因为它只在login发生之后运行,不过某种方式将其用作生产服务器上的默认根shell 感觉不太安全。 我的主要问题是:在安装一个非标准的shell并将其设置为root用户的缺省shell比安装任何其他应用程序时有任何额外的安全风险吗? 编辑:目前的答案不解决这个问题,也许是因为我不清楚。 让我试着更准确地解释为什么我觉得答案是不完整的。 当然,当您安装任何新软件时,存在安全漏洞的风险。 某些软件,根据使用情况,需要比其他更多的谨慎 – 例如,安装一个networking服务器引入了一个新的攻击媒介的性质,因此,我们会更加谨慎安装一个不太常见的网页浏览器比一个图像转换工具。 我想知道是否应该更仔细地仔细检查一下贝壳,如果是的话,为什么。 另外,我想知道是否将root用户设置为默认的非标准shell会带来额外的安全隐患。 到目前为止,我的做法,即使在我的家用机器上,已经为我自己的用户默认运行鱼壳,但是根本不能运行它。 这是否值得担忧,如果是的话,为什么呢? 到目前为止,答案已经表明我不应该这样做,但在我看来并没有令人满意地解决这个问题。 实际上没有人只使用服务器上的默认软件,大量额外的程序安装在上面,没有太多的安全问题,那么为什么一个shell,特别是一些更加谨慎的东西呢? 理想情况下,我想顶部看到一个例子的情况下,安装一些非标准的shell作为默认的根将导致一个妥协,否则会发生,如果壳是其他types的程序(例如,一个图像转换程序)。

在软件限制策略中允许位于Thunderbirdconfiguration文件中的DLL

我正在我们的工作站上实施软件限制政策。 该政策是阻止除白名单列表的path列表。 我试图在Thunderbird用户的configuration文件中列出一个目录,以允许Lightning扩展工作。 path是%APPDATA%\Roaming\Thunderbird\Profiles\*\extensions\{e2fda1a4-762b-4020-b5ad-a41df1933103}\components\calbasecomps.dll 。 用户的configuration文件名称是随机生成的,所以我需要一个通配符。 不幸的是,这似乎不工作,因为通配符。 该DLL继续被SRP阻止。 我也尝试白名单上的证书(该DLL是由Mozilla证书签名),但这是行不通的。 也许这只适用于签署.exe? 我白色列出了目前的散列,但这将需要每次发布雷鸟后维护,所以我宁愿白名单path。 Applocker不是一个选项,我们正在使用Windows 10 Pro。 任何想法?