精华内容
下载资源
问答
  • 关闭弹出修复模糊应用
    2022-05-10 17:27:57

    1.SQL注入

    漏洞描述

    Web程序中对于用户提交的参数未做过滤直接拼接到SQL语句中执行,导致参数中的特殊字符破坏了SQL语句原有逻辑,攻击者可以利用该漏洞执行任意SQL语句,如查询数据、下载数据、写入webshell、执行系统命令以及绕过登录限制等。

    修复建议

    代码层最佳防御sql漏洞方案:使用预编译sql语句查询和绑定变量。

    (1)使用预编译语句,使用PDO需要注意不要将变量直接拼接到PDO语句中。所有的查询语句都使用数据库提供的参数化查询接口,参数化的语句使用参数而不是将用户输入变量嵌入到SQL语句中。当前几乎所有的数据库系统都提供了参数化SQL语句执行接口,使用此接口可以非常有效的防止SQL注入攻击。

    (2)对进入数据库的特殊字符(’”<>&*;等)进行转义处理,或编码转换。

    (3)确认每种数据的类型,比如数字型的数据就必须是数字,数据库中的存储字段必须对应为int型。

    (4)数据长度应该严格规定,能在一定程度上防止比较长的SQL注入语句无法正确执行。

    (5)网站每个数据层的编码统一,建议全部使用UTF-8编码,上下层编码不一致有可能导致一些过滤模型被绕过。

    (6)严格限制网站用户的数据库的操作权限,给此用户提供仅仅能够满足其工作的权限,从而最大限度的减少注入攻击对数据库的危害。

    (7)避免网站显示SQL错误信息,比如类型错误、字段不匹配等,防止攻击者利用这些错误信息进行一些判断。

    (8)过滤危险字符,例如:采用正则表达式匹配union、sleep、and、select、load_file等关键字,如果匹配到则终止运行。

    2.XSS

    漏洞描述

    1、Web程序代码中对用户提交的参数未做过滤或过滤不严,导致参数中的特殊字符破坏了HTML页面的原有逻辑,攻击者可以利用该漏洞执行恶意HTML/JS代码、构造蠕虫、篡改页面实施钓鱼攻击、以及诱导用户再次登录,然后获取其登录凭证等。

    2、XSS攻击对Web服务器本身虽无直接危害,但是它借助网站进行传播,对网站用户进行攻击,窃取网站用户账号身份信息等,从而也会对网站产生较严重的威胁。

    XSS攻击可导致以下危害:

    1、钓鱼欺骗:最典型的就是利用目标网站的反射型跨站脚本漏洞将目标网站重定向到钓鱼网站,或者通过注入钓鱼JavaScript脚本以监控目标网站的表单输入,甚至攻击者基于DHTML技术发起更高级的钓鱼攻击。

    2、网站挂马:跨站时,攻击者利用Iframe标签嵌入隐藏的恶意网站,将被攻击者定向到恶意网站上、或弹出恶意网站窗口等方式,进行挂马。

    3、身份盗用:Cookie是用户对于特定网站的身份验证标志,XSS攻击可以盗取用户的cookie,从而利用该cookie盗取用户对该网站的操作权限。

    4、盗取网站用户信息:当窃取到用户cookie从而获取到用户身份时,攻击者可以盗取到用户对网站的操作权限,从而查看用户隐私信息。

    5、垃圾信息发送:在社交网站社区中,利用XSS漏洞借用被攻击者的身份发送大量的垃圾信息给特定的目标群。

    6、劫持用户Web行为:一些高级的XSS攻击甚至可以劫持用户的Web行为,从而监视用户的浏览历史、发送与接收的数据等等。

    7、XSS蠕虫:借助XSS蠕虫病毒还可以用来打广告、刷流量、挂马、恶作剧、破坏数据、实施DDoS攻击等。

    【一>所有资源获取<一】
    1、很多已经买不到的绝版电子书
    2、安全大厂内部的培训资料
    3、全套工具包
    4、100份src源码技术文档
    5、网络安全基础入门、Linux、web安全、攻防方面的视频
    6、应急响应笔记 7、 网络安全学习路线
    8、ctf夺旗赛解析
    9、WEB安全入门笔记

    修复建议

    xss漏洞本质上是一种html注入,也就是将html代码注入到网页中。那么其防御的根本就是在将用户提交的代码显示到页面上时做好一系列的过滤与转义

    (1)过滤输入的数据,对例如:“ ‘ ”,“ “ ”,” < “,” > “,” on* “,script、iframe等危险字符进行严格的检查。这里的输入不仅仅是用户可以直接交互的输入接口,也包括HTTP请求中的Cookie中的变量,HTTP请求头部中的变量等。

    (2)不仅验证数据的类型,还要验证其格式、长度、范围和内容。

    (3)不仅在客户端做数据的验证与过滤,关键的过滤步骤在服务端进行。

    (4)对输出到页面的数据进行相应的编码转换,如HTML实体编码、JS编码等。对输出的数据也要检查,数据库里的值有可能会在一个大网站的多处都有输出,即使在输入做了编码等操作,在各处的输出点时也要进行检查。

    3.XXE

    4.CSRF

    漏洞描述:

    CSRF是跨站请求伪造,不攻击网站服务器,而是冒充用户在站内的正常操作。通常由于服务端没有对请求头做严格过滤引起的。CSRF会造成密码重置,用户伪造等问题,可能引发严重后果。绝大多数网站是通过 cookie 等方式辨识用户身份,再予以授权的。所以要伪造用户的正常操作,最好的方法是通过 XSS 或链接欺骗等途径,让用户在本机(即拥有身份 cookie 的浏览器端)发起用户所不知道的请求。CSRF攻击会令用户在不知情的情况下攻击自己已经登录的系统。

    修复建议

    1、验证请求的Referer是否来自本网站,但可被绕过。

    2、在请求中加入不可伪造的token,并在服务端验证token是否一致或正确,不正确则丢弃拒绝服务。

    5.SSRF

    漏洞描述

    SSRF(Server-Side Request Forgery,服务器端请求伪造):通俗的来说就是我们可以伪造服务器端发起的请求,从而获取客户端所不能得到的数据。SSRF漏洞形成的原因主要是服务器端所提供的接口中包含了所要请求的内容的URL参数,并且未对客户端所传输过来的URL参数进行过滤。这个漏洞造成的危害有:

    (1)、可以对外网、服务器所在内网、本地进行端口扫描,获取一些服务的banner信息;
    (2)、攻击运行在内网或本地的应用程序(比如溢出);
    (3)、对内网Web应用进行指纹识别,通过访问默认文件实现;
    (4)、攻击内外网的Web应用,主要是使用Get参数就可以实现的攻击(比如Struts2漏洞利用,SQL注入等);
    (5)、利用File协议读取本地文件。

    修复建议

    1、禁用不需要的协议,只允许HTTP和HTTPS请求,可以防止类似于file://, gopher://, ftp:// 等引起的问题。
    2、白名单的方式限制访问的目标地址,禁止对内网发起请求
    3、过滤或屏蔽请求返回的详细信息,验证远程服务器对请求的响应是比较容易的方法。如果web应用是去获取某一种类型的文件。那么在把返回结果展示给用户之前先验证返回的信息是否符合标准。
    4、验证请求的文件格式
    5、禁止跳转
    6、限制请求的端口为http常用的端口,比如 80、443、8080、8000等
    7、统一错误信息,避免用户可以根据错误信息来判断远端服务器的端口状态。

    6.任意命令/代码执行

    漏洞描述

    命令或代码执行漏洞是指代码未对用户可控参数做过滤,导致直接带入执行命令和代码,通过漏洞执行恶意构造的语句,执行任意命令或代码。攻击者可在服务器上执行任意命令,读写文件操作等,危害巨大。

    修复建议

    1、严格过滤用户输入的数据,禁止执行非预期系统命令。

    2、减少或不使用代码或命令执行函数

    3、客户端提交的变量在放入函数前进行检测

    4、减少或不使用危险函数

    7.任意文件上传

    漏洞描述

    文件上传漏洞通常由于代码中对文件上传功能所上传的文件过滤不严或web服务器相关解析漏洞未修复而造成的,如果文件上传功能代码没有严格限制和验证用户上传的文件后缀、类型等,攻击者可通过文件上传点上传任意文件,包括网站后门文件(webshell)控制整个网站。

    修复建议

    1、对上传文件类型进行验证,除在前端验证外在后端依然要做验证,后端可以进行扩展名检测,重命名文件,MIME类型检测以及限制上传文件的大小等限制来防御,或是将上传的文件其他文件存储服务器中。

    2、严格限制和校验上传的文件,禁止上传恶意代码的文件。同时限制相关上传文件目录的执行权限,防止木马执行。

    3、对上传文件格式进行严格校验,防止上传恶意脚本文件;

    4、严格限制上传的文件路径。

    5、文件扩展名服务端白名单校验。

    6、文件内容服务端校验。

    7、上传文件重命名。

    8、隐藏上传文件路径。

    8.目录穿越/目录遍历

    漏洞描述

    文件下载或获取文件显示内容页面由于未对传入的文件名进行过滤,利用路径回溯符…/跳出程序本身的限制目录,来下载或显示任意文件。

    修复建议

    对传入的文件名参数进行过滤,并且判断是否是允许获取的文件类型,过滤回溯符…/。

    9.文件包含

    漏洞描述

    本地文件包含是指程序在处理包含文件的时候没有严格控制。利用这个漏洞,攻击者可以先把上传的文件、网站日志文件等作为代码执行或直接显示出来,或者包含远程服务器上的恶意文件,进而获取到服务器权限。

    修复建议

    1、严格检查变量是否已经初始化。

    2、对所有输入提交可能包含的文件地址,包括服务器本地文件及远程文件,进行严格的检查,参数中不允许出现./和…/等目录跳转符。

    3、严格检查文件包含函数中的参数是否外界可控。

    10.弱口令

    漏洞描述

    由于网站用户帐号存在弱口令,导致攻击者通过弱口令可轻松登录到网站中,从而进行下一步的攻击,如上传webshell,获取敏感数据。

    另外攻击者利用弱口令登录网站管理后台,可执行任意管理员的操作。

    修复建议

    1、强制用户首次登录时修改默认口令,或是使用用户自定义初始密码的策略;

    2、完善密码策略,信息安全最佳实践的密码策略为8位(包括)以上字符,包含数字、大小写字母、特殊字符中的至少3种。

    3、增加人机验证机制,限制ip访问次数。

    11.暴力破解

    漏洞描述

    由于没有对登录页面进行相关的人机验证机制,如无验证码、有验证码但可重复利用以及无登录错误次数限制等,导致攻击者可通过暴力破解获取用户登录账号和密码。

    修复建议

    1、如果用户登录次数超过设置的阈值,则锁定帐号(有恶意登录锁定帐号的风险)

    2、如果某个 IP登录次数超过设置的阈值,则锁定IP

    3、增加人机验证机制

    4、验证码必须在服务器端进行校验,客户端的一切校验都是不安全的。

    12.越权访问

    漏洞描述

    由于没有对用户访问角色的权限进行严格的检查及限制,导致当前账号可对其他账号进行相关操作,如查看、修改等。对低权限对高权限账户的操作为纵向越权,相同权限账户之间的操作成为横向越权也称水平越权。

    修复建议

    1、对用户访问角色的权限进行严格的检查及限制。
    2、在一些操作时可以使用session对用户的身份进行判断和控制

    13.未授权访问

    漏洞描述

    由于没有对网站敏感页面进行登录状态、访问权限的检查,导致攻击者可未授权访问,获取敏感信息及进行未授权操作。

    修复建议

    1、页面进行严格的访问权限的控制以及对访问角色进行权限检查。
    2、可以使用session对用户的身份进行判断和控制。

    14.列目录

    漏洞描述

    由于web服务器配置不当,开启了目录浏览,攻击者可获得服务器上的文件目录结构,获取敏感文件。

    修复建议

    1、通过修改配置文件,禁止中间件(如IIS、apache、tomcat)的文件目录索引功能
    2、设置目录访问权限

    15.PHP反序列化

    漏洞描述

    php反序列化漏洞也叫PHP对象注入,形成原因为程序未对用户输入的序列化字符串进行检测,导致攻击者可以控制反序列化过程,从而导致代码执行、文件操作、执行数据库操作等不可控后果。这一类攻击在java、python等面向对象语言中均存在。

    修复建议

    1、对传入的对象进行严格的过滤检查

    2、在反序列化过程执行的文件读写、命令或代码执行函数中是否有用户可控的参数。

    16.http slow拒绝服务攻击

    漏洞描述

    按照设计,HTTP协议要求服务器在处理之前完全接收请求。 如果HTTP请求没有完成,或者传输速率非常低,服务器会保持其资源忙于等待其余数据。如果服务器保持太多的资源请求和处理,这将造成一个拒绝服务。严重者一台主机即可让web运行缓慢甚至是崩溃。

    修复建议

    对于 Apache 可以做以下优化(其他服务器原理相同):

    1、设置合适的 timeout 时间(Apache 已默认启用了 reqtimeout 模块),规定了 Header 发送的时间以及频率和 Body 发送的时间以及频率

    2、增大 MaxClients(MaxRequestWorkers):增加最大的连接数。根据官方文档,两个参数是一回事,版本不同,MaxRequestWorkers was called MaxClients before version 2.3.13.Theold name is still supported.

    3、默认安装的 Apache 存在 Slow Attack 的威胁,原因就是虽然设置的 timeoute,但是最大连接数不够,如果攻击的请求频率足够大,仍然会占满Apache的所有连接

    17.CRLF注入

    漏洞描述

    CRLF 是“回车 +换行”(\r\n)的简称。在 HTTP 协议中,HTTPHeader 与 HTTP Body 是用两个 CRLF 符号进行分隔的,浏览器根据这两个 CRLF 符号来获取 HTTP 内容并显示。因此,一旦攻击者能够控制 HTTP 消息头中的字符,注入一些恶意的换行,就能注入一些会话 Cookie 或者 HTML 代码。

    修复建议

    1、过滤 \r 、\n 及其各种编码的换行符,避免输入的数据污染到其他 HTTP 消息头。

    18.LDAP注入

    漏洞描述

    由于Web 应用程序没有对用户发送的数据进行适当过滤和检查,攻击者可修改LDAP 语句的结构,并且以数据库服务器、Web 服务器等的权限执行任意命令,许可权可能会允许查询、修改或除去 LDAP 树状构造内任何数据。

    修复建议

    对用户的输入内容进行严格的过滤。

    19.URL 跳转

    漏洞描述

    有的Web 应用程序中使用URL参数中的地址作为跳转链接的功能 ,攻击者可实施钓鱼、恶意网站跳转等攻击。

    修复建议

    1、在进行页面跳转前校验传入的URL是否为可信域名。

    2、白名单规定跳转链接

    20.明文传输

    漏洞描述

    用户登录过程中使用明文传输用户登录信息,若用户遭受中间人攻击时,攻击者可直接获取该用户登录账户,从而进行进一步渗透。

    修复建议

    1、用户登录信息使用加密传输,如密码在传输前使用安全的算法加密后传输,可采用的算法包括:不可逆hash算法加盐(4位及以上随机数,由服务器端产生);安全对称加密算法,如AES(128、192、256位),且必须保证客户端密钥安全,不可被破解或读出;非对称加密算法,如RSA(不低于1024位)、SM2等。

    2、使用https来保证传输的安全。

    21.网页木马

    漏洞描述

    经渗透测试发现目标站点存在webshell,攻击者可直接爆破口令使用木马,非常低成本的进行恶意操作。

    修复建议

    1、确认并删除木马文件,并进行本地文件漏洞扫描排查是否还存在有其他木马。

    2、发现并及时修复已存在的漏洞。

    3、通过查看日志、服务器杀毒等安全排查,确保服务器未被留下后门

    22.备份文件泄露

    漏洞描述

    网站备份文件或、敏感信息文件存放在某个网站目录下,攻击者可通过文件扫描等方法发现并下载该备份文件,导致网站敏感信息泄露。

    修复建议

    1、不在网站目录下存放网站备份文件或敏感信息的文件。

    2、如需存放该类文件,请将文件名命名为难以猜解的无规则字符串。

    23.敏感信息泄露

    漏洞描述

    在页面中或者返回的响应包中泄露了敏感信息,通过这些信息,给攻击者渗透提供了非常多的有用信息。

    修复建议

    1、如果是探针或测试页面等无用的程序建议删除,或者修改成难以猜解的名字。

    2、不影响业务或功能的情况下删除或禁止访问泄露敏感信息页面。

    3、在服务器端对相关敏感信息进行模糊化处理。

    4、对服务器端返回的数据进行严格的检查,满足查询数据与页面显示数据一致。

    24.短信/邮件轰炸

    漏洞描述

    由于没有对短信或者邮件发送次数进行限制,导致可无限次发送短信或邮件给用户,从而造成短信轰炸,进而可能被大量用户投诉,从而影响公司声誉。

    修复建议

    在服务器限制发送短信或邮件的频率,如同一账号1分钟只能发送1次短信或邮件,一天只能发送3次。
    25.phpinfo信息泄漏

    漏洞描述

    Web站点的某些测试页面可能会使用到PHP的phpinfo()函数,会输出服务器的关键信息,造成服务器信息泄露,为攻击提供有利的信息。

    修复建议

    1、删除phpinfo 函数。

    2、若文件无用可直接删除。

    26.IIS短文件名泄露漏洞

    漏洞描述

    Internet Information Services(IIS,互联网信息服务)是由微软公司提供的基于运行Microsoft Windows的互联网基本服务。 Microsoft IIS在实现上存在文件枚举漏洞,攻击者可利用此漏洞枚举网络服务器根目录中的文件。危害:攻击者可以利用“~”字符猜解或遍历服务器中的文件名,或对IIS服务器中的.Net Framework进行拒绝服务攻击。

    攻击者可通过该漏洞尝试获取网站服务器文件的文件名,达到获取更多信息来入侵服务器的目的。

    修复建议

    修改Windows配置,关闭短文件名功能。

    1.关闭NTFS 8.3文件格式的支持。该功能默认是开启的,对于大多数用户来说无需开启。

    2.如果是虚拟主机空间用户,可采用以下修复方案:

    1)修改注册列表HKLM\SYSTEM\CurrentControlSet\Control\FileSystem\NtfsDisable8dot3NameCreation的值为1(此修改只能禁止NTFS8.3格式文件名创建,已经存在的文件的短文件名无法移除)。

    2)如果你的web环境不需要asp.net的支持你可以进入Internet 信息服务(IIS)管理器 — Web 服务扩展 - ASP.NET 选择禁止此功能。

    3)升级net framework 至4.0以上版本。

    3.将web文件夹的内容拷贝到另一个位置,比如D:\www到D:\www.back,然后删除原文件夹D:\www,再重命名D:\www.back到D:\www。如果不重新复制,已经存在的短文件名则是不会消失的。

    27.应用程序错误信息泄露

    漏洞描述

    攻击者可通过特殊的攻击向量,使web服务器出现500、403等相关错误,导致信息泄漏如绝对路径、webserver版本、源代码、sql语句等敏感信息,恶意攻击者很有可能利用这些信息实施进一步的攻击。

    修复建议

    1、自定义错误页面或使用统一的错误页面提示。

    28.Apache Tomcat默认文件

    漏洞描述

    Apache Tomcat默认样例文件没有删除或限制访问,可能存在cookie、session伪造,进行后台登录操作

    修复建议

    1、删除样例文件

    2、限制文件访问权限

    29.Crossdomain.xml 配置不当

    漏洞描述

    网站根目录下的 crossdomain.xml 文件指明了远程Flash 是否可以加载当前网站的资源(图片、网页内容、Flash等)。如果配置不当,可能导致遭受跨站请求伪造(CSRF)攻击。

    修复建议

    对于不需要从外部加载资源的网站,在 crossdomain.xml 文件中更改allow-access-from的domain属性为域名白名单。
    30.目标服务器启用了不安全 HTTP 方法

    漏洞描述

    目标服务器启用了不安全的传输方法,如PUT、TRACE、DELETE、MOVE等,这些方法表示可能在服务器上使用了 WebDAV,由于dav方法允许客户端操纵服务器上的文件,如上传、修改、删除相关文件等危险操作,如果没有合理配置dav,有可能允许未授权的用户对其进行利用,修改服务器上的文件。

    修复建议

    1、关闭不安全的传输方法,只开启POST、GET方法。

    2、如果服务器不使用 WebDAV 可直接禁用,或为允许webdav的目录配置严格的访问权限,如认证方法,认证需要的用户名,密码。

    31.weblogic SSRF服务器请求伪造

    漏洞描述

    目标存在weblogic SSRF服务器请求伪造漏洞。WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。SSRF(Server-Side Request Forgery:服务器端请求伪造) 是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。一般情况下,SSRF攻击的目标是从外网无法访问的内部系统。(正是因为它是由服务端发起的,所以它能够请求到与它相连而与外网隔离的内部系统)。Weblogic中间件默认带有“UDDI 目录浏览器”且为未授权访问,通过该应用,可进行无回显的SSRF请求。攻击者可利用该漏洞对企业内网进行大规模扫描,了解内网结构,并可能结合内网漏洞直接获取服务器权限。

    修复建议

    1、若不影响业务则可删除uddiexplorer文件夹

    2、限制uddiexplorer应用只能内网访问

    32.Apache Struts2 远程代码执行漏洞(S2-019)

    漏洞描述

    Apache Struts2的“Dynamic MethodInvocation”机制是默认开启的,仅提醒用户如果可能的情况下关闭此机制,如果未关闭此机制将导致远程代码执行漏洞,远程攻击者可利用此漏洞在受影响应用上下文中执行任意代码。

    修复建议

    1、目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载。

    2、或者手工设置struts.xml文件<constantname="struts.enable.DynamicMethodInvocation"value=“false”/>

    33.Apache Struts2 远程代码执行漏洞(S2-037)

    漏洞描述

    Apache Struts2在使用REST插件时,攻击者可以绕过动态方法执行的限制,调用恶意表达式执行远程代码。

    修复建议

    建议用户到官方获取最新补丁或者最新版本程序。

    34.Apache Struts2 DevMode 远程代码执行漏洞

    漏洞描述

    为了便于开发人员调试程序,Struts2提供了一个devMode模式,可以方便查看程序错误以及日志等信息。当Struts2中的devMode模式设置为true时,存在严重远程代码执行漏洞。如果WebService 启动权限为最高权限时,可远程执行任意命令,包括关机、建立新用户、以及删除服务器上所有文件等等。

    修复建议

    建议用户到官方获取最新补丁或者最新版本程序。

    或者将struts.properties中的devMode设置为false,或是在struts.xml中添加如下代码: <constant name="struts.devMode"value=“false”/>。

    35.Apache Struts2 远程代码执行漏洞(S2-045)

    漏洞描述

    Apache Struts2的Jakarta Multipartparser插件存在远程代码执行漏洞,漏洞编号为CVE-2017-5638。攻击者可以在使用该插件上传文件时,修改HTTP请求头中的Content-Type值来触发该漏洞,导致远程执行代码。

    修复建议

    检测方式查看web目录下/WEB-INF/lib/目录下的struts-core.x.x.jar ,如果这个版本在Struts2.3.5 到 Struts2.3.31 以及 Struts2.5 到 Struts2.5.10之间则存在漏洞。

    1、建议用户到官方获取最新补丁或者最新版本程序。

    2、更新至Strusts2.3.32或者Strusts2.5.10.1,或使用第三方的防护设备进行防护。

    3、临时解决方案:删除commons-fileupload-x.x.x.jar文件(会造成上传功能不可用)。

    4、修改WEB-INF/classes目录下的配置

    在WEB-INF/classes目录下的struts.xml中的struts 标签下添加

    <constantname=”struts.custom.i18n.resources”value=”global”/>;

    在WEB-INF/classes/目录下添加global.properties,文件内容如下:

    struts.messages.upload.error.InvalidContentTypeException=1

    36.Apache Struts2 远程代码执行漏洞(S2-033)

    漏洞描述

    Apache Struts2在开启动态方法调用(DynamicMethod Invocation)的情况下,攻击者使用REST插件调用恶意表达式可以远程执行代码。

    修复建议

    1、用户到官方获取最新补丁或者最新版本程序。

    2、或者在允许的情况下禁用动态方法调用(Dynamic Method Invocation),修改Struts2的配置文件struts.xml,将struts.enable.DynamicMethodInvocation设置为“false”。

    37.redis相关漏洞修复

    漏洞描述

    redis默认没有口令可能会造成未授权访问造成信息泄露,若redis为高权限账户运行,可能导致服务器权限丢失等。

    安全建议

    1.禁用一些高危命令

    常见如:flushdb,flushall,config,keys 等

    2.以低权限运行 Redis 服务

    3.为 Redis 添加密码验证

    4.禁止外网访问 Redis

    5.保证 authorized_keys 文件的安全

    更多相关内容
  • 现在拍照都是超高的清晰度,可在上世纪并不是这样,上世纪很多的照片都是模模糊糊的,所以为了让大家看见最真实的老照片,有人就用AI及时来修复这些照片。最近,一组「AI 修复的林青霞」的照片上了微博热搜,让不少...

    现在拍照都是超高的清晰度,可在上世纪并不是这样,上世纪很多的照片都是模模糊糊的,所以为了让大家看见最真实的老照片,有人就用AI及时来修复这些照片。

    最近,一组「AI 修复的林青霞」的照片上了微博热搜,让不少人惊呼第一次这么清晰地看到女神!

    以往当然也有人使用 PS 等软件修复旧照,但毕竟 PS 的操作较为复杂,不少想修复老照片的朋友因此望而却步。如果有一个能够「一键修图」的工具,你想不想把自己的老照片翻出来修一修,给偶像的昔日美照修一修呢?

    你应该猜到我们要推荐怎样的小程序了吧?

    今天,知晓给大家推荐一款小程序「你我当年」,拥有电影级后期 AI 视觉技术,堪称「一键修复旧照」的神器哦。我们来看看如何使用吧!

    打开小程序「你我当年」,首页上有三种类型的示例——老旧照片示例,低分辨率示例,模糊照片示例。点击其中一张,在上方的大框内会显示原图,可以看到,这几张都是画质较差的。在大图的右下角有一个「放大镜」,按住它上下左右轻移,是不是明显看到「增强后」的照片,摇身变成一张高清大图了呢?

    效果真有这么好吗?我们现在一起来检验一下。

    首先,我们要选择一张照片。点击「选择照片」可以打开手机相册选图,点击「翻拍照片」会打开摄像头,可以用来翻拍旧照。

    确认上传图片后,我们的修图任务就创建成功了。然后,小程序会自动弹出这样的「温馨提示」……

    什么?要等待 1923160 小时?大约是 219.5 年!掐指一算,这辈子是不可能看到这张图片处理后的样子了。这是真的吗?

    当然不是!这只是作者跟大家开的一个玩笑。由于图片处理时间较长,你没必要盯着这个小程序看,现在我们可以把它关闭一段时间。

    大约等待两个多钟后,再次打开「你我当年」,点击最下方的「历史照片」,可以看到已上传的照片列表。每张照片左上角会显示状态「处理中」或「已完成」。

    点击一张照片,可以滑动查看图片的原件和修复后的效果。你有没有被惊艳到呢?不仅锐化了原先模糊的图片,提升了分辨率,还有一种雾面哑光的效果,不愧是电影级后期视觉技术。

    展开全文
  • 渗透测试常见的漏洞以及修复建议

    1、Apache样例文件泄漏

    漏洞描述

    apache一些样例文件没有删除,可能存在cookie、session伪造,进行后台登录操作

    修复建议

    1、删除样例文件

    2、对apache中web.xml进行相关设置

    2、弱口令

    漏洞描述

    由于系统中存在有弱口令,导致攻击者通过弱口令可轻松登录系统中,从而进行下一步的攻击,如上传webshell,获取敏感数据!
    另外攻击者利用弱口令登录网站管理后台,可任意增删改等操作,从而造成负面影响!

    修复建议

    1、建议强制用户首次登录时修改默认口令,或是使用用户自定义初始密码的策略;
    2、 完善密码策略,信息安全最佳实践的密码策略为8位(包括)以上字符,包含数字、大小写字母、特殊字符中的至少3种。
    3、对管理后台进行访问控制,修改后台弱口令,加强口令强度并定期修改。
    4、增加验证机制,防爆破机制,限制ip+cookie访问次数。

    3、明文传输登录口令

    漏洞描述

    用户登录过程中使用明文传输用户登录信息,若用户遭受中间人攻击时,攻击者可直接获取该用户登录账户,从而进行进一步渗透。

    修复建议

    1、用户登录信息使用加密传输,如密码在传输前使用安全的算法加密后传输,可采用的算法包括:不可逆hash算法加盐(4位及以上随机数,由服务器端产生);安全对称加密算法,如AES(128、192、256位),且必须保证客户端密钥安全,不可被破解或读出;非对称加密算法,如RSA(不低于1024位)、SM2等。
    2、使用https来保证传输的安全。

    4、暴力破解

    漏洞描述

    由于没有对登录页面进行相关的防暴力破解机制,如无验证码、有验证码但验证码未在服务器端校验以及无登录错误次数限制等,导致攻击者可通过暴力破解获取用户登录账户及口令,从而获取网站登录访问权限!

    修复建议

    1、添加验证码机制,加入图片(验证码动态生成且满足随机性)或者短信验证码(验证码具备超时时限一般为1分钟,且在该时限内错误次数超过3次则进行锁定1分钟后方能重新获取验证码,超时后验证码自动失效)!
    2、验证码必须在服务器端进行校验,客户端的一切校验都是不安全的!

    5、SQL注入漏洞

    漏洞描述

    Web程序代码中对于用户提交的参数未做过滤就直接放到SQL语句中执行,导致参数中的特殊字符打破了SQL语句原有逻辑,黑客可以利用该漏洞执行任意SQL语句,如查询数据、下载数据、写入webshell、执行系统命令以及绕过登录限制等。

    修复建议

    代码层最佳防御sql漏洞方案:采用sql语句预编译和绑定变量,是防御sql注入的最佳方法。
    (1)所有的查询语句都使用数据库提供的参数化查询接口,参数化的语句使用参数而不是将用户输入变量嵌入到SQL语句中。当前几乎所有的数据库系统都提供了参数化SQL语句执行接口,使用此接口可以非常有效的防止SQL注入攻击。
    (2)对进入数据库的特殊字符(’”<>&*;等)进行转义处理,或编码转换。
    (3)确认每种数据的类型,比如数字型的数据就必须是数字,数据库中的存储字段必须对应为int型。
    (4)数据长度应该严格规定,能在一定程度上防止比较长的SQL注入语句无法正确执行。
    (5)网站每个数据层的编码统一,建议全部使用UTF-8编码,上下层编码不一致有可能导致一些过滤模型被绕过。
    (6)严格限制网站用户的数据库的操作权限,给此用户提供仅仅能够满足其工作的权限,从而最大限度的减少注入攻击对数据库的危害。
    (7)避免网站显示SQL错误信息,比如类型错误、字段不匹配等,防止攻击者利用这些错误信息进行一些判断。

    6、跨站脚本攻击(xss)漏洞

    漏洞描述

    1、Web程序代码中把用户提交的参数未做过滤或过了不严就直接输出到页面,参数中的特殊字符打破了HTML页面的原有逻辑,黑客可以利用该漏洞执行恶意HTML/JS代码、构造蠕虫传播、篡改页面实施钓鱼攻击、诱以及导用户再次登录,然后获取其登录凭证等。
    2、XSS攻击对Web服务器本身虽无直接危害,但是它借助网站进行传播,对网站用户进行攻击,窃取网站用户账号信息等,从而也会对网站产生较严重的危害。XSS攻击可导致以下危害:
    3、钓鱼欺骗:最典型的就是利用目标网站的反射型跨站脚本漏洞将目标网站重定向到钓鱼网站,或者通过注入钓鱼JavaScript脚本以监控目标网站的表单输入,甚至攻击者基于DHTML技术发起更高级的钓鱼攻击。
    4、网站挂马:跨站时,攻击者利用Iframe标签嵌入隐藏的恶意网站,将被攻击者定向到恶意网站上、或弹出恶意网站窗口等方式,进行挂马攻击。
    5、身份盗用:Cookie是用户对于特定网站的身份验证标志,XSS攻击可以盗取用户的cookie,从而利用该cookie盗取用户对该网站的操作权限。如果一个网站管理员用户的cookie被窃取,将会对网站引发巨大的危害。
    6、盗取网站用户信息:当窃取到用户cookie从而获取到用户身份时,攻击者可以盗取到用户对网站的操作权限,从而查看用户隐私信息。
    7、垃圾信息发送:在社交网站社区中,利用XSS漏洞借用被攻击者的身份发送大量的垃圾信息给特定的目标群。
    8、劫持用户Web行为:一些高级的XSS攻击甚至可以劫持用户的Web行为,从而监视用户的浏览历史、发送与接收的数据等等。
    9、XSS蠕虫:借助XSS蠕虫病毒还可以用来打广告、刷流量、挂马、恶作剧、破坏网上数据、实施DDoS攻击等。

    修复建议

    xss漏洞本质上是一种html注入,也就是将html代码注入到网页中。那么其防御的根本就是在将用户提交的代码显示到页面上时做好一系列的过滤与转义
    (1)假定所有输入都是可疑的,必须对所有输入中的script、iframe等字样进行严格的检查。这里的输入不仅仅是用户可以直接交互的输入接口,也包括HTTP请求中的Cookie中的变量,HTTP请求头部中的变量等。
    (2)不仅要验证数据的类型,还要验证其格式、长度、范围和内容。
    (3)不要仅仅在客户端做数据的验证与过滤,关键的过滤步骤在服务端进行。
    (4)对输出的数据也要检查,数据库里的值有可能会在一个大网站的多处都有输出,即使在输入做了编码等操作,在各处的输出点时也要进行安全检查。

    7、目标服务器启用了不安全HTTP方法

    漏洞描述

    目标服务器启用了不安全的传输方法,如PUT、TRACE、DELETE、MOVE等,这些方法表示可能在服务器上使用了 WebDAV,由于dav方法允许客户端操纵服务器上的文件,如上传、修改、删除相关文件等危险操作,如果没有合理配置dav,有可能允许未授权的用户对其进行利用,修改服务器上的文件。

    修复建议

    1、关闭不安全的传输方法,推荐只使用POST、GET方法!
    2、如果服务器不需要支持 WebDAV,请务必禁用它。
    或者为允许webdav的目录配置严格的访问权限,如认证方法,认证需要的用户名,密码。

    8、任意文件上传

    漏洞描述

    文件上传漏洞通常由于网页代码中的文件上传路径变量过滤不严或webserver相关解析漏洞未修复而造成的,如果文件上传功能实现代码没有严格限制用户上传的文件后缀以及文件类型,攻击者可通过 Web 访问的目录上传任意文件,包括网站后门文件(webshell),进而远程控制网站服务器。
    攻击者可通过此漏洞上传恶意脚本文件,对服务器的正常运行造成安全威胁!

    修复建议

    1、对上传文件类型进行限制,并且不能只做前端的限制,而要前端和后端一起限制,后端可以进行扩展名检测,重命名文件,MIME类型检测以及限制上传文件的大小,或是将上传的文件放在安全的路径下,尽量放于webserver之外的远程服务器等。
    2、严格限制和校验上传的文件,禁止上传恶意代码的文件。同时限制相关目录的执行权限,防范webshell攻击。
    3、对上传文件格式进行严格校验及安全扫描,防止上传恶意脚本文件;
    4、设置权限限制,禁止上传目录的执行权限;
    5、严格限制可上传的文件类型;
    6、严格限制上传的文件路径。
    7、文件扩展名服务端白名单校验。
    8、文件内容服务端校验。
    9、上传文件重命名。
    10、隐藏上传文件路径。

    9、测试页面泄漏在外网

    漏洞描述

    一些测试页面泄漏到外网,导致外界误传公司被黑客入侵,影响公司声誉。

    修复建议

    删除测试页面以及无用文件,例如test.cgi,phpinfo.php,info.pho, .svn/entries等。

    10、目录浏览

    漏洞描述

    由于服务器端配置不当,开启了目录浏览,黑客可获得服务器上的文件目录结构,从而下载敏感文件。

    修复建议

    1. 通过修改配置文件,去除中间件(如IIS、apache、tomcat)的文件目录索引功能
    2. 设置目录权限
    3. 在每个目录下创建一个空的index.html页面。

    11、phpinfo信息泄漏

    漏洞描述

    Web站点的某些测试页面可能会使用到PHP的phpinfo()函数,会输出服务器的关键信息,从而造成信息泄露,通过获取的信息可进行下一步的攻击计划!

    修复建议

    删除该PHP文件!

    12、未授权访问

    漏洞描述

    由于没有对相关敏感页面进行访问权限的检查,导致攻击者可未授权访问,从而获取敏感信息及进行未授权操作等!

    修复建议

    对相关页面进行严格的访问权限的控制以及对访问角色进行权限检查!

    13、越权访问

    漏洞描述

    由于没有对用户访问角色的权限进行严格的检查及限制,导致当前账号可对其他账号进行相关操作,如查看、修改等!

    修复建议

    对用户访问角色的权限进行严格的检查及限制!

    14、命令执行漏洞

    漏洞描述

    命令执行漏洞是指代码未对用户可控参数做过滤,导致直接带入执行命令的代码中,对恶意构造的语句,可被用来执行任意命令。黑客可在服务器上执行任意命令,写入后门,从而入侵服务器,获取服务器的管理员权限,危害巨大。

    修复建议

    严格过滤用户输入的数据,禁止执行非预期系统命令!

    15、应用程序错误信息泄露

    漏洞描述

    黑客可通过特殊的攻击向量,使web服务器出现500、404等相关错误,导致信息泄漏如绝对路径、webserver版本、源代码、sql语句等敏感信息,恶意攻击者很有可能利用这些信息实施进一步的攻击。

    修复建议

    1、自定义错误页面或归一化错误页面信息提示!
    2、修正代码!

    16、LDAP注入

    漏洞描述

    由于Web 应用程序没有对用户提供的输入进行适当过滤和检查,攻击者便有可能修改LDAP 语句的结构,并且以(例如:数据库服务器、Web 应用程序服务器、Web 服务器)的权限执行任意命令,许可权可能会允许查询、修改或除去 LDAP 树状构造内任何数据。

    修复建议

    对用户的输入进行严格的过滤及检查,并且对类型也进行检查!

    17、文件包含漏洞

    漏洞描述

    本地文件包含是指程序代码在处理包含文件的时候没有严格控制。利用这个漏洞,攻击者可以先把上传的静态文件,或网站日志文件作为代码执行,或者包含远程服务器上的恶意文件,进而获取到服务器权限。

    修复建议

    1、严格检查变量是否已经初始化。
    2、对所有输入提交可能包含的文件地址,包括服务器本地文件及远程文件,进行严格的检查,参数中不允许出现../之类的目录跳转符。
    3、严格检查include类的文件包含函数中的参数是否外界可控。
    4、不要仅仅在客户端做数据的验证与过滤,关键的过滤步骤在服务端进行。

    18、网站敏感压缩文件泄露

    漏洞描述

    误将网站备份文件或是敏感信息文件存放在某个网站目录下,外部黑客可通过暴力破解文件名等方法下载该备份文件,导致网站敏感信息泄露。

    修复建议

    1、不要在网站目录下存放网站备份文件或敏感信息的文件。
    2、如需存放该类文件,请将文件名命名为难以猜解的字符串。

    19、CRLF HTTP 头部注入漏洞

    漏洞描述

    CRLF 是“回车 +换行”(\r\n)的简称。在 HTTP 协议中,HTTPHeader 与 HTTP Body 是用两个 CRLF 符号进行分隔的,浏览器根据这两个 CRLF 符号来获取 HTTP 内容并显示。因此,一旦攻击者能够控制 HTTP 消息头中的字符,注入一些恶意的换行,就能注入一些会话 Cookie 或者 HTML 代码。

    修复建议

    过滤 \r 、\n 之类的换行符,避免输入的数据污染到其他 HTTP 消息头。

    20、URL 跳转漏洞

    漏洞描述

    Web 程序直接跳转到参数中的 URL ,或页面引入任意的开发者 URL,被攻击者利用可实施钓鱼攻击等操作。

    修复建议

    在控制页面转向的地方校验传入的URL是否为可信域名。

    21、Crossdomain.xml 配置不当

    漏洞描述

    网站根目录下的 crossdomain.xml 文件指明了远程Flash 是否可以加载当前网站的资源(图片、网页内容、Flash等)。如果配置不当,可能导致遭受跨站请求伪造(CSRF)攻击。

    修复建议

    对于不需要从外部加载资源的网站,在 crossdomain.xml 文件中更改allow-access-from的domain属性为域名白名单。

    22、敏感信息泄露

    漏洞描述

    在页面中或者返回的响应包中泄露了敏感信息,通过这些信息,攻击者可进一步渗透。

    修复建议

    1、如果是探针或测试页面等无用的程序建议删除,或者修改不易被猜到的名字。
    2、禁用泄露敏感信息的页面或应用。
    3、对相关敏感信息进行模糊化处理,在服务器端进行!
    4、对服务器端返回的数据进行严格的检查,满足查询数据与页面显示数据一致,切勿返回多于的数据!

    23、任意文件下载

    漏洞描述

    文件下载处由于未对下载路径进行过滤,利用路径回溯符../跳出程序本身的限制目录实现来下载任意文件,如下载系统密码文件等!

    修复建议

    对下载路径进行过滤,如下载前对传入的参数进行过滤,并且对下载文件类型进行检查,是否是允许下载的类型,另外禁止使用回溯符../!

    24、weblogic SSRF服务器请求伪造

    漏洞描述

    目标存在weblogic SSRF服务器请求伪造漏洞。WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。SSRF(Server-Side Request Forgery:服务器端请求伪造) 是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。一般情况下,SSRF攻击的目标是从外网无法访问的内部系统。(正是因为它是由服务端发起的,所以它能够请求到与它相连而与外网隔离的内部系统)。Weblogic中间件默认带有“UDDI 目录浏览器”且为未授权访问,通过该应用,可进行无回显的SSRF请求。攻击者可利用该漏洞对企业内网进行大规模扫描,了解内网结构,并可能结合内网漏洞直接获取服务器权限。

    修复建议

    1. 删除uddiexplorer文件夹
    2. 限制uddiexplorer应用只能内网访问

    25、恶意代码漏洞

    漏洞描述

    经渗透测试发现目标站点存在有webshell,攻击者可进行远程连接操作,进行恶意操作!

    修复建议

    删除可疑文件,并进行本地文件漏洞扫描排查是否还存在有其他木马!
    使用相关手段发现并及时修复已存在的漏洞!

    26、IIS短文件名泄露漏洞

    漏洞描述

    Internet Information Services(IIS,互联网信息服务)是由微软公司提供的基于运行Microsoft Windows的互联网基本服务。 Microsoft IIS在实现上存在文件枚举漏洞,攻击者可利用此漏洞枚举网络服务器根目录中的文件。危害:攻击者可以利用“~”字符猜解或遍历服务器中的文件名,或对IIS服务器中的.Net Framework进行拒绝服务攻击。
    黑客可通过该漏洞尝试获取网站服务器下存放文件的文件名,达到获取更多信息来入侵服务器的目的。

    修复建议

    修改Windows配置,关闭短文件名功能。
    1.关闭NTFS 8.3文件格式的支持。该功能默认是开启的,对于大多数用户来说无需开启。
    2.如果是虚拟主机空间用户,可采用以下修复方案:
    1)修改注册列表HKLM\SYSTEM\CurrentControlSet\Control\FileSystem\NtfsDisable8dot3NameCreation的值为1(此修改只能禁止NTFS8.3格式文件名创建,已经存在的文件的短文件名无法移除)。
    2)如果你的web环境不需要asp.net的支持你可以进入Internet 信息服务(IIS)管理器 --- Web 服务扩展 - ASP.NET 选择禁止此功能。
    3)升级net framework 至4.0以上版本。
    3.将web文件夹的内容拷贝到另一个位置,比如D:\www到D:\www.back,然后删除原文件夹D:\www,再重命名D:\www.back到D:\www。如果不重新复制,已经存在的短文件名则是不会消失的。

    27、Apache Struts2 远程代码执行漏洞(S2-019)

    漏洞描述

    Apache Struts2的“Dynamic MethodInvocation”机制是默认开启的,仅提醒用户如果可能的情况下关闭此机制,如果未关闭此机制将导致远程代码执行漏洞,远程攻击者可利用此漏洞在受影响应用上下文中执行任意代码。

    修复建议

    1、目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载!
    2、或者手工设置struts.xml文件<constantname="struts.enable.DynamicMethodInvocation"value="false"/>

    28、Apache Struts2 远程代码执行漏洞(S2-037)

    漏洞描述

    Apache Struts2在使用REST插件时,攻击者可以绕过动态方法执行的限制,调用恶意表达式执行远程代码。

    修复建议

    建议用户到官方获取最新补丁或者最新版本程序!

    29、Apache Struts2 DevMode 远程代码执行漏洞

    漏洞描述

    为了便于开发人员调试程序,Struts2提供了一个devMode模式,可以方便查看程序错误以及日志等信息。当Struts2中的devMode模式设置为true时,存在严重远程代码执行漏洞。如果WebService 启动权限为最高权限时,可远程执行任意命令,包括关机、建立新用户、以及删除服务器上所有文件等等。

    修复建议

    建议用户到官方获取最新补丁或者最新版本程序!
    或者将struts.properties中的devMode设置为false,或是在struts.xml中添加如下代码: <constant name="struts.devMode"value="false"/>。

    30、Apache Struts2 远程代码执行漏洞(S2-045)

    漏洞描述

    Apache Struts2的Jakarta Multipartparser插件存在远程代码执行漏洞,漏洞编号为CVE-2017-5638。攻击者可以在使用该插件上传文件时,修改HTTP请求头中的Content-Type值来触发该漏洞,导致远程执行代码。

    修复建议

    检测方式查看web目录下/WEB-INF/lib/目录下的struts-core.x.x.jar ,如果这个版本在Struts2.3.5 到 Struts2.3.31 以及 Struts2.5 到 Struts2.5.10之间则存在漏洞!
    1、建议用户到官方获取最新补丁或者最新版本程序!
    2、更新至Strusts2.3.32或者Strusts2.5.10.1,或使用第三方的防护设备进行防护。
    3、临时解决方案:删除commons-fileupload-x.x.x.jar文件(会造成上传功能不可用)。
    4、修改WEB-INF/classes目录下的配置
    在WEB-INF/classes目录下的struts.xml中的struts 标签下添加

    <constantname=”struts.custom.i18n.resources”value=”global”/>
    在WEB-INF/classes/目录下添加global.properties,文件内容如下:
    struts.messages.upload.error.InvalidContentTypeException=1

    31、Apache Struts2 远程代码执行漏洞(S2-033)

    漏洞描述

    Apache Struts2在开启动态方法调用(DynamicMethod Invocation)的情况下,攻击者使用REST插件调用恶意表达式可以远程执行代码。

    修复建议

    1、用户到官方获取最新补丁或者最新版本程序!
    2、或者在允许的情况下禁用动态方法调用(Dynamic Method Invocation),修改Struts2的配置文件struts.xml,将struts.enable.DynamicMethodInvocation设置为“false”。

    32、目标URL存在httphost头攻击漏洞

    漏洞描述

    为了方便的获得网站域名,开发人员一般依赖于HTTP Host header,但是这个header是不可信赖的,如果应用程序没有对host header值进行处理,就有可能造成恶意代码的传入。

    修复建议

    web应用程序应该使用SERVER_NAME而不是host header。
    在Apache和Nginx里可以通过设置一个虚拟机来记录所有的非法host header。在Nginx里还可以通过指定一个SERVER_NAME名单,Apache也可以通过指定一个SERVER_NAME名单并开启UseCanonicalName选项。

    33、登录绕过漏洞

    漏洞描述

    由于对登录的账号及口令校验存在逻辑缺陷,或再次使用服务器端返回的相关参数作为最终登录凭证,导致可绕过登录限制,如服务器返回一个flag参数作为登录是否成功的标准,但是由于代码最后登录是否成功是通过获取这个flag参数来作为最终的验证,导致攻击者通过修改flag参数即可绕过登录的限制!

    修复建议

    修改验证逻辑,如是否登录成功服务器端返回一个参数,但是到此就是最终验证,不需要再对返回的参数进行使用并作为登录是否成功的最终判断依据!

    34、短信/邮件轰炸

    漏洞描述

    由于没有对短信或者邮件发送次数进行限制,导致可无限次发送短信或邮件给用户,从而造成短信轰炸,进而可能被大量用户投诉,从而影响公司声誉!

    修复建议

    对发送短信或邮件的次数进行限制,如1分钟只能发送1次短信或邮件,并且需要在服务器进行限制!

    35、slow http Dos拒绝服务

    漏洞描述

    按照设计,HTTP协议要求服务器在处理之前完全接收请求。 如果HTTP请求没有完成,或者传输速率非常低,服务器会保持其资源忙于等待其余数据。如果服务器保持太多的资源忙,这将造成一个拒绝服务。严重者一台主机即可让web运行缓慢甚至是崩溃!

    修复建议

    对于 Apache 可以做以下优化:
    设置合适的 timeout 时间(Apache 已默认启用了 reqtimeout 模块),规定了 Header 发送的时间以及频率和 Body 发送的时间以及频率
    增大 MaxClients(MaxRequestWorkers):增加最大的连接数。根据官方文档,两个参数是一回事,版本不同,MaxRequestWorkers was called MaxClients before version 2.3.13.Theold name is still supported.
    默认安装的 Apache 存在 Slow Attack 的威胁,原因就是虽然设置的 timeoute,但是最大连接数不够,如果攻击的请求频率足够大,仍然会占满Apache的所有连接

    36、web服务测试页面信息泄露

    漏洞描述

    由于没有删除默认的且与业务无关的页面,导致信息泄露,如:webserver版本信息、中间件类型及版本信息等,通过对这类信息的收集,攻击者可制定具有针对性的攻击计划!

    修复建议

    删除与业务无关的页面,如果是必须需要使用的中间件管理页面,建议对该页面进行访问权限的控制!

    展开全文
  • 常见漏洞的漏洞描述与修复建议/安全建议

    弱口令

    漏洞描述
    由于系统中存在有弱口令,导致攻击者通过弱口令可轻松登录系统中,从而进行下一步的攻击,如上传webshell,获取敏感数据!
    另外攻击者利用弱口令登录网站管理后台,可任意增删改等操作,从而造成负面影响!
    修复建议
    1、建议强制用户首次登录时修改默认口令,或是使用用户自定义初始密码的策略;
    2、 完善密码策略,信息安全最佳实践的密码策略为8位(包括)以上字符,包含数字、大小写字母、特殊字符中的至少3种。
    3、对管理后台进行访问控制,修改后台弱口令,加强口令强度并定期修改。
    4、增加验证机制,防爆破机制,限制ip+cookie访问次数。

    未授权访问

    漏洞描述
    由于没有对相关敏感页面进行访问权限的检查,导致攻击者可未授权访问,从而获取敏感信息及进行未授权操作等!
    修复建议
    1、页面进行严格的访问权限的控制以及对访问角色进行权限检查。
    2、可以使用session对用户的身份进行判断和控制。

    越权访问

    漏洞描述
    由于没有对用户访问角色的权限进行严格的检查及限制,导致当前账号可对其他账号进行相关操作,如查看、修改等!
    修复建议
    1、对用户访问角色的权限进行严格的检查及限制。
    2、在一些操作时可以使用session对用户的身份进行判断和控制

    SQL注入漏洞

    漏洞描述
    Web程序代码中对于用户提交的参数未做过滤就直接放到SQL语句中执行,导致参数中的特殊字符打破了SQL语句原有逻辑,黑客可以利用该漏洞执行任意SQL语句,如查询数据、下载数据、写入webshell、执行系统命令以及绕过登录限制等。
    修复建议
    代码层最佳防御sql漏洞方案:采用sql语句预编译和绑定变量,是防御sql注入的最佳方法。
    (1)使用预编译语句,使用PDO需要注意不要将变量直接拼接到PDO语句中。所有的查询语句都使用数据库提供的参数化查询接口,参数化的语句使用参数而不是将用户输入变量嵌入到SQL语句中。当前几乎所有的数据库系统都提供了参数化SQL语句执行接口,使用此接口可以非常有效的防止SQL注入攻击。
    (2)对进入数据库的特殊字符(’”<>&*;等)进行转义处理,或编码转换。
    (3)确认每种数据的类型,比如数字型的数据就必须是数字,数据库中的存储字段必须对应为int型。
    (4)数据长度应该严格规定,能在一定程度上防止比较长的SQL注入语句无法正确执行。
    (5)网站每个数据层的编码统一,建议全部使用UTF-8编码,上下层编码不一致有可能导致一些过滤模型被绕过。
    (6)严格限制网站用户的数据库的操作权限,给此用户提供仅仅能够满足其工作的权限,从而最大限度的减少注入攻击对数据库的危害。
    (7)避免网站显示SQL错误信息,比如类型错误、字段不匹配等,防止攻击者利用这些错误信息进行一些判断。
    (8)过滤危险字符,例如:采用正则表达式匹配union、sleep、and、select、load_file等关键字,如果匹配到则终止运行。

    跨站脚本攻击(xss)漏洞

    漏洞描述
    1、Web程序代码中把用户提交的参数未做过滤或过了不严就直接输出到页面,参数中的特殊字符打破了HTML页面的原有逻辑,黑客可以利用该漏洞执行恶意HTML/JS代码、构造蠕虫传播、篡改页面实施钓鱼攻击、诱以及导用户再次登录,然后获取其登录凭证等。
    2、XSS攻击对Web服务器本身虽无直接危害,但是它借助网站进行传播,对网站用户进行攻击,窃取网站用户账号信息等,从而也会对网站产生较严重的危害。XSS攻击可导致以下危害:
    3、钓鱼欺骗:最典型的就是利用目标网站的反射型跨站脚本漏洞将目标网站重定向到钓鱼网站,或者通过注入钓鱼JavaScript脚本以监控目标网站的表单输入,甚至攻击者基于DHTML技术发起更高级的钓鱼攻击。
    4、网站挂马:跨站时,攻击者利用Iframe标签嵌入隐藏的恶意网站,将被攻击者定向到恶意网站上、或弹出恶意网站窗口等方式,进行挂马攻击。
    5、身份盗用:Cookie是用户对于特定网站的身份验证标志,XSS攻击可以盗取用户的cookie,从而利用该cookie盗取用户对该网站的操作权限。如果一个网站管理员用户的cookie被窃取,将会对网站引发巨大的危害。
    6、盗取网站用户信息:当窃取到用户cookie从而获取到用户身份时,攻击者可以盗取到用户对网站的操作权限,从而查看用户隐私信息。
    7、垃圾信息发送:在社交网站社区中,利用XSS漏洞借用被攻击者的身份发送大量的垃圾信息给特定的目标群。
    8、劫持用户Web行为:一些高级的XSS攻击甚至可以劫持用户的Web行为,从而监视用户的浏览历史、发送与接收的数据等等。
    9、XSS蠕虫:借助XSS蠕虫病毒还可以用来打广告、刷流量、挂马、恶作剧、破坏网上数据、实施DDoS攻击等。
    修复建议
    xss漏洞本质上是一种html注入,也就是将html代码注入到网页中。那么其防御的根本就是在将用户提交的代码显示到页面上时做好一系列的过滤与转义
    (1)假定所有输入都是可疑的,必须对所有输入中的script、iframe等字样进行严格的检查。这里的输入不仅仅是用户可以直接交互的输入接口,也包括HTTP请求中的Cookie中的变量,HTTP请求头部中的变量等。
    (2)不仅要验证数据的类型,还要验证其格式、长度、范围和内容。
    (3)不要仅仅在客户端做数据的验证与过滤,关键的过滤步骤在服务端进行。
    (4)对输出的数据也要检查,数据库里的值有可能会在一个大网站的多处都有输出,即使在输入做了编码等操作,在各处的输出点时也要进行安全检查。

    CSRF

    ** 漏洞描述**
    CSRF是跨站请求伪造,不攻击网站服务器,而是冒充用户在站内的正常操作。通常由于服务端没有对请求头做严格过滤引起的。CSRF会造成密码重置,用户伪造等问题,可能引发严重后果。绝大多数网站是通过 cookie 等方式辨识用户身份,再予以授权的。所以要伪造用户的正常操作,最好的方法是通过 XSS 或链接欺骗等途径,让用户在本机(即拥有身份 cookie 的浏览器端)发起用户所不知道的请求。CSRF攻击会令用户在不知情的情况下攻击自己已经登录的系统。
    修复建议
    1、验证请求的Referer是否来自本网站,但可被绕过。
    2、在请求中加入不可伪造的token,并在服务端验证token是否一致或正确,不正确则丢弃拒绝服务。

    SSRF

    漏洞描述
    SSRF(Server-Side Request Forgery,服务器端请求伪造):通俗的来说就是我们可以伪造服务器端发起的请求,从而获取客户端所不能得到的数据。SSRF漏洞形成的原因主要是服务器端所提供的接口中包含了所要请求的内容的URL参数,并且未对客户端所传输过来的URL参数进行过滤。这个漏洞造成的危害有:
    (1)、可以对外网、服务器所在内网、本地进行端口扫描,获取一些服务的banner信息;
    (2)、攻击运行在内网或本地的应用程序(比如溢出);
    (3)、对内网Web应用进行指纹识别,通过访问默认文件实现;
    (4)、攻击内外网的Web应用,主要是使用Get参数就可以实现的攻击(比如Struts2漏洞利用,SQL注入等);
    (5)、利用File协议读取本地文件。
    修复建议
    1、禁用不需要的协议,只允许HTTP和HTTPS请求,可以防止类似于file://, gopher://, ftp:// 等引起的问题。
    2、白名单的方式限制访问的目标地址,禁止对内网发起请求
    3、过滤或屏蔽请求返回的详细信息,验证远程服务器对请求的响应是比较容易的方法。如果web应用是去获取某一种类型的文件。那么在把返回结果展示给用户之前先验证返回的信息是否符合标准。
    4、验证请求的文件格式
    5、禁止跳转
    6、限制请求的端口为http常用的端口,比如 80、443、8080、8000等
    7、统一错误信息,避免用户可以根据错误信息来判断远端服务器的端口状态。

    Apache样例文件泄漏

    漏洞描述
    apache一些样例文件没有删除,可能存在cookie、session伪造,进行后台登录操作
    修复建议
    1、删除样例文件
    2、对apache中web.xml进行相关设置

    明文传输登录口令

    漏洞描述
    用户登录过程中使用明文传输用户登录信息,若用户遭受中间人攻击时,攻击者可直接获取该用户登录账户,从而进行进一步渗透。
    修复建议
    1、用户登录信息使用加密传输,如密码在传输前使用安全的算法加密后传输,可采用的算法包括:不可逆hash算法加盐(4位及以上随机数,由服务器端产生);安全对称加密算法,如AES(128、192、256位),且必须保证客户端密钥安全,不可被破解或读出;非对称加密算法,如RSA(不低于1024位)、SM2等。
    2、使用https来保证传输的安全。

    暴力破解

    漏洞描述
    由于没有对登录页面进行相关的防暴力破解机制,如无验证码、有验证码但验证码未在服务器端校验以及无登录错误次数限制等,导致攻击者可通过暴力破解获取用户登录账户及口令,从而获取网站登录访问权限!
    修复建议
    1、如果用户登录次数超过设置的阈值,则锁定帐号(有恶意登录锁定帐号的风险)
    2、如果某个IP登录次数超过设置的阈值,则锁定IP
    3、增加人机验证机制,加入图片(验证码动态生成且满足随机性)或者短信验证码(验证码具备超时时限一般为1分钟,且在该时限内错误次数超过3次则进行锁定1分钟后方能重新获取验证码,超时后验证码自动失效)!
    4、验证码必须在服务器端进行校验,客户端的一切校验都是不安全的。

    目标服务器启用了不安全HTTP方法

    漏洞描述
    目标服务器启用了不安全的传输方法,如PUT、TRACE、DELETE、MOVE等,这些方法表示可能在服务器上使用了 WebDAV,由于dav方法允许客户端操纵服务器上的文件,如上传、修改、删除相关文件等危险操作,如果没有合理配置dav,有可能允许未授权的用户对其进行利用,修改服务器上的文件。
    修复建议
    1、关闭不安全的传输方法,推荐只使用POST、GET方法!
    2、如果服务器不需要支持 WebDAV,请务必禁用它。
    或者为允许webdav的目录配置严格的访问权限,如认证方法,认证需要的用户名,密码。

    网页木马

    漏洞描述
    经渗透测试发现目标站点存在webshell,攻击者可直接爆破口令使用木马,非常低成本的进行恶意操作。
    修复建议
    1、确认并删除木马文件,并进行本地文件漏洞扫描排查是否还存在有其他木马。
    2、发现并及时修复已存在的漏洞。
    3、通过查看日志、服务器杀毒等安全排查,确保服务器未被留下后门

    任意文件上传

    漏洞描述
    文件上传漏洞通常由于网页代码中的文件上传路径变量过滤不严或webserver相关解析漏洞未修复而造成的,如果文件上传功能实现代码没有严格限制用户上传的文件后缀以及文件类型,攻击者可通过 Web 访问的目录上传任意文件,包括网站后门文件(webshell),进而远程控制网站服务器。
    攻击者可通过此漏洞上传恶意脚本文件,对服务器的正常运行造成安全威胁!
    修复建议
    1、对上传文件类型进行限制,并且不能只做前端的限制,而要前端和后端一起限制,后端可以进行扩展名检测,重命名文件,MIME类型检测以及限制上传文件的大小,或是将上传的文件放在安全的路径下,尽量放于webserver之外的远程服务器等。
    2、严格限制和校验上传的文件,禁止上传恶意代码的文件。同时限制相关目录的执行权限,防范webshell攻击。
    3、对上传文件格式进行严格校验及安全扫描,防止上传恶意脚本文件;
    4、设置权限限制,禁止上传目录的执行权限;
    5、严格限制可上传的文件类型;
    6、严格限制上传的文件路径。
    7、文件扩展名服务端白名单校验。
    8、文件内容服务端校验。
    9、上传文件重命名。
    10、隐藏上传文件路径。

    测试页面泄漏在外网

    漏洞描述
    一些测试页面泄漏到外网,导致外界误传公司被黑客入侵,影响公司声誉。
    修复建议
    删除测试页面以及无用文件,例如test.cgi,phpinfo.php,info.pho, .svn/entries等。

    目录浏览

    漏洞描述
    由于服务器端配置不当,开启了目录浏览,黑客可获得服务器上的文件目录结构,从而下载敏感文件。
    修复建议
    1、通过修改配置文件,禁止中间件(如IIS、apache、tomcat)的文件目录索引功能
    2、设置目录访问权限
    3.在每个目录下创建一个空的index.html页面。

    目录穿越/目录遍历

    漏洞描述
    文件下载或获取文件显示内容页面由于未对传入的文件名进行过滤,利用路径回溯符…/跳出程序本身的限制目录,来下载或显示任意文件。
    修复建议
    对传入的文件名参数进行过滤,并且判断是否是允许获取的文件类型,过滤回溯符…/。

    PHP反序列化

    漏洞描述
    php反序列化漏洞也叫PHP对象注入,形成原因为程序未对用户输入的序列化字符串进行检测,导致攻击者可以控制反序列化过程,从而导致代码执行、文件操作、执行数据库操作等不可控后果。这一类攻击在java、python等面向对象语言中均存在。
    可参考:https://www.freebuf.com/articles/web/167721.html
    修复建议
    1、对传入的对象进行严格的过滤检查
    2、在反序列化过程执行的文件读写、命令或代码执行函数中是否有用户可控的参数。

    phpinfo信息泄漏

    漏洞描述
    Web站点的某些测试页面可能会使用到PHP的phpinfo()函数,会输出服务器的关键信息,从而造成信息泄露,通过获取的信息可进行下一步的攻击计划!
    修复建议
    删除该PHP文件!

    任意命令/代码执行

    漏洞描述
    命令或代码执行漏洞是指代码未对用户可控参数做过滤,导致直接带入执行命令和代码,通过漏洞执行恶意构造的语句,执行任意命令或代码。攻击者可在服务器上执行任意命令,读写文件操作等,危害巨大。
    修复建议
    1、严格过滤用户输入的数据,禁止执行非预期系统命令。
    2、减少或不使用代码或命令执行函数
    3、客户端提交的变量在放入函数前进行检测
    4、减少或不使用危险函数

    应用程序错误信息泄露

    漏洞描述
    黑客可通过特殊的攻击向量,使web服务器出现500、404等相关错误,导致信息泄漏如绝对路径、webserver版本、源代码、sql语句等敏感信息,恶意攻击者很有可能利用这些信息实施进一步的攻击。
    修复建议
    1、自定义错误页面或归一化错误页面信息提示!
    2、修正代码!

    LDAP注入

    漏洞描述
    由于Web 应用程序没有对用户提供的输入进行适当过滤和检查,攻击者便有可能修改LDAP 语句的结构,并且以(例如:数据库服务器、Web 应用程序服务器、Web 服务器)的权限执行任意命令,许可权可能会允许查询、修改或除去 LDAP 树状构造内任何数据。
    修复建议
    对用户的输入进行严格的过滤及检查,并且对类型也进行检查!

    文件包含漏洞

    漏洞描述
    本地文件包含是指程序代码在处理包含文件的时候没有严格控制。利用这个漏洞,攻击者可以先把上传的静态文件,或网站日志文件作为代码执行,或者包含远程服务器上的恶意文件,进而获取到服务器权限。
    修复建议
    1、严格检查变量是否已经初始化。
    2、对所有输入提交可能包含的文件地址,包括服务器本地文件及远程文件,进行严格的检查,参数中不允许出现…/之类的目录跳转符。
    3、严格检查include类的文件包含函数中的参数是否外界可控。
    4、不要仅仅在客户端做数据的验证与过滤,关键的过滤步骤在服务端进行。

    网站敏感压缩文件/备份文件泄露

    漏洞描述
    误将网站备份文件或是敏感信息文件存放在某个网站目录下,外部黑客可通过暴力破解文件名等方法下载该备份文件,导致网站敏感信息泄露。
    修复建议
    1、不要在网站目录下存放网站备份文件或敏感信息的文件。
    2、如需存放该类文件,请将文件名命名为难以猜解的无规则字符串。

    Http slow拒绝服务攻击/慢速HTTP 拒绝服务攻击

    漏洞描述
    按照设计,HTTP协议要求服务器在处理之前完全接收请求。 如果HTTP请求没有完成,或者传输速率非常低,服务器会保持其资源忙于等待其余数据。如果服务器保持太多的资源请求和处理,这将造成一个拒绝服务。严重者一台主机即可让web运行缓慢甚至是崩溃。
    修复建议
    对于 Apache 可以做以下优化(其他服务器原理相同):
    1、设置合适的 timeout 时间(Apache 已默认启用了 reqtimeout 模块),规定了 Header 发送的时间以及频率和 Body 发送的时间以及频率
    2、增大 MaxClients(MaxRequestWorkers):增加最大的连接数。根据官方文档,两个参数是一回事,版本不同,MaxRequestWorkers was called MaxClients before version 2.3.13.Theold name is still supported.
    3、默认安装的 Apache 存在 Slow Attack 的威胁,原因就是虽然设置的 timeoute,但是最大连接数不够,如果攻击的请求频率足够大,仍然会占满Apache的所有连接

    CRLF HTTP 头部注入漏洞

    漏洞描述
    CRLF 是“回车 +换行”(\r\n)的简称。在 HTTP 协议中,HTTPHeader 与 HTTP Body 是用两个 CRLF 符号进行分隔的,浏览器根据这两个 CRLF 符号来获取 HTTP 内容并显示。因此,一旦攻击者能够控制 HTTP 消息头中的字符,注入一些恶意的换行,就能注入一些会话 Cookie 或者 HTML 代码。
    修复建议
    过滤 \r 、\n 之类的换行符,避免输入的数据污染到其他 HTTP 消息头。

    URL 跳转漏洞

    漏洞描述
    Web 程序直接跳转到参数中的 URL ,或页面引入任意的开发者 URL,被攻击者利用可实施钓鱼攻击等操作。
    修复建议
    在控制页面转向的地方校验传入的URL是否为可信域名。

    Crossdomain.xml 配置不当

    漏洞描述
    网站根目录下的 crossdomain.xml 文件指明了远程Flash 是否可以加载当前网站的资源(图片、网页内容、Flash等)。如果配置不当,可能导致遭受跨站请求伪造(CSRF)攻击。
    修复建议
    对于不需要从外部加载资源的网站,在 crossdomain.xml 文件中更改allow-access-from的domain属性为域名白名单。

    敏感信息泄露

    漏洞描述
    在页面中或者返回的响应包中泄露了敏感信息,通过这些信息,攻击者可进一步渗透。
    修复建议
    1、如果是探针或测试页面等无用的程序建议删除,或者修改不易被猜到的名字。
    2、禁用泄露敏感信息的页面或应用。
    3、对相关敏感信息进行模糊化处理,在服务器端进行!
    4、对服务器端返回的数据进行严格的检查,满足查询数据与页面显示数据一致,切勿返回多于的数据!

    任意文件下载

    漏洞描述
    文件下载处由于未对下载路径进行过滤,利用路径回溯符…/跳出程序本身的限制目录实现来下载任意文件,如下载系统密码文件等!
    修复建议
    对下载路径进行过滤,如下载前对传入的参数进行过滤,并且对下载文件类型进行检查,是否是允许下载的类型,另外禁止使用回溯符…/!

    weblogic SSRF服务器请求伪造

    漏洞描述
    目标存在weblogic SSRF服务器请求伪造漏洞。WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。SSRF(Server-Side Request Forgery:服务器端请求伪造) 是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。一般情况下,SSRF攻击的目标是从外网无法访问的内部系统。(正是因为它是由服务端发起的,所以它能够请求到与它相连而与外网隔离的内部系统)。Weblogic中间件默认带有“UDDI 目录浏览器”且为未授权访问,通过该应用,可进行无回显的SSRF请求。攻击者可利用该漏洞对企业内网进行大规模扫描,了解内网结构,并可能结合内网漏洞直接获取服务器权限。
    修复建议
    删除uddiexplorer文件夹
    2.限制uddiexplorer应用只能内网访问

    HTTP.sys远程代码执行漏洞

    漏洞描述
    HTTP 协议堆栈 (HTTP.sys) 中存在一个远程代码执行漏洞,当 HTTP.sys 错误地解析特制 HTTP请求时,会导致该漏洞。成功利用此漏洞的攻击者可以在系统帐户的上下文中执行任意代码。
    修复建议
    1、升级补丁。
    2、禁用IIS内核缓存。

    目标站点存在网马

    漏洞描述
    经渗透测试发现目标站点存在有webshell,攻击者可进行远程连接操作,进行恶意操作!
    修复建议
    删除可疑文件,并进行本地文件漏洞扫描排查是否还存在有其他木马!
    使用相关手段发现并及时修复已存在的漏洞!

    用户名枚举漏洞

    漏洞描述
    存在于系统登陆页面,利用登陆时后系统不同的返回信息,从而可枚举出系统中存在的账号信息与密码。
    修复建议
    1、增加验证码校验机制。
    2、 对登陆次数超过设置阈值的IP,锁定IP
    3、 登陆失败返回统一信息。
    4、进行传输加密。

    IIS短文件名泄露漏洞

    漏洞描述
    Internet Information Services(IIS,互联网信息服务)是由微软公司提供的基于运行Microsoft Windows的互联网基本服务。 Microsoft IIS在实现上存在文件枚举漏洞,攻击者可利用此漏洞枚举网络服务器根目录中的文件。危害:攻击者可以利用“~”字符猜解或遍历服务器中的文件名,或对IIS服务器中的.Net Framework进行拒绝服务攻击。
    黑客可通过该漏洞尝试获取网站服务器下存放文件的文件名,达到获取更多信息来入侵服务器的目的。
    修复建议
    修改Windows配置,关闭短文件名功能。
    1.关闭NTFS 8.3文件格式的支持。该功能默认是开启的,对于大多数用户来说无需开启。
    2.如果是虚拟主机空间用户,可采用以下修复方案:
    1)修改注册列表HKLM\SYSTEM\CurrentControlSet\Control\FileSystem\NtfsDisable8dot3NameCreation的值为1(此修改只能禁止NTFS8.3格式文件名创建,已经存在的文件的短文件名无法移除)。
    2)如果你的web环境不需要asp.net的支持你可以进入Internet 信息服务(IIS)管理器 — Web 服务扩展 - ASP.NET 选择禁止此功能。
    3)升级net framework 至4.0以上版本。
    3.将web文件夹的内容拷贝到另一个位置,比如D:\www到D:\www.back,然后删除原文件夹D:\www,再重命名D:\www.back到D:\www。如果不重新复制,已经存在的短文件名则是不会消失的。

    Apache Struts2 远程代码执行漏洞(S2-019)

    漏洞描述
    Apache Struts2的“Dynamic MethodInvocation”机制是默认开启的,仅提醒用户如果可能的情况下关闭此机制,如果未关闭此机制将导致远程代码执行漏洞,远程攻击者可利用此漏洞在受影响应用上下文中执行任意代码。
    修复建议
    1、目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载!
    2、或者手工设置struts.xml文件<constantname="struts.enable.DynamicMethodInvocation"value=“false”/>

    Apache Struts2 远程代码执行漏洞(S2-037)

    漏洞描述
    Apache Struts2在使用REST插件时,攻击者可以绕过动态方法执行的限制,调用恶意表达式执行远程代码。
    修复建议
    建议用户到官方获取最新补丁或者最新版本程序!

    Apache Struts2 DevMode 远程代码执行漏洞

    漏洞描述
    为了便于开发人员调试程序,Struts2提供了一个devMode模式,可以方便查看程序错误以及日志等信息。当Struts2中的devMode模式设置为true时,存在严重远程代码执行漏洞。如果WebService 启动权限为最高权限时,可远程执行任意命令,包括关机、建立新用户、以及删除服务器上所有文件等等。
    修复建议
    建议用户到官方获取最新补丁或者最新版本程序!
    或者将struts.properties中的devMode设置为false,或是在struts.xml中添加如下代码: <constant name="struts.devMode"value=“false”/>。

    Apache Struts2 远程代码执行漏洞(S2-045)

    漏洞描述
    Apache Struts2的Jakarta Multipartparser插件存在远程代码执行漏洞,漏洞编号为CVE-2017-5638。攻击者可以在使用该插件上传文件时,修改HTTP请求头中的Content-Type值来触发该漏洞,导致远程执行代码。
    修复建议
    检测方式查看web目录下/WEB-INF/lib/目录下的struts-core.x.x.jar ,如果这个版本在Struts2.3.5 到 Struts2.3.31 以及 Struts2.5 到 Struts2.5.10之间则存在漏洞!
    1、建议用户到官方获取最新补丁或者最新版本程序!
    2、更新至Strusts2.3.32或者Strusts2.5.10.1,或使用第三方的防护设备进行防护。
    3、临时解决方案:删除commons-fileupload-x.x.x.jar文件(会造成上传功能不可用)。
    4、修改WEB-INF/classes目录下的配置
    在WEB-INF/classes目录下的struts.xml中的struts 标签下添加
    <constantname=”struts.custom.i18n.resources”value=”global”/>;
    在WEB-INF/classes/目录下添加global.properties,文件内容如下:
    struts.messages.upload.error.InvalidContentTypeException=1

    Apache Struts2 远程代码执行漏洞(S2-033)

    漏洞描述
    Apache Struts2在开启动态方法调用(DynamicMethod Invocation)的情况下,攻击者使用REST插件调用恶意表达式可以远程执行代码。
    修复建议
    1、用户到官方获取最新补丁或者最新版本程序!
    2、或者在允许的情况下禁用动态方法调用(Dynamic Method Invocation),修改Struts2的配置文件struts.xml,将struts.enable.DynamicMethodInvocation设置为“false”。

    目标URL存在httphost头攻击漏洞

    漏洞描述
    为了方便的获得网站域名,开发人员一般依赖于HTTP Host header,但是这个header是不可信赖的,如果应用程序没有对host header值进行处理,就有可能造成恶意代码的传入。
    修复建议
    web应用程序应该使用SERVER_NAME而不是host header。
    在Apache和Nginx里可以通过设置一个虚拟机来记录所有的非法host header。在Nginx里还可以通过指定一个SERVER_NAME名单,Apache也可以通过指定一个SERVER_NAME名单并开启UseCanonicalName选项。

    登录绕过漏洞

    漏洞描述
    由于对登录的账号及口令校验存在逻辑缺陷,或再次使用服务器端返回的相关参数作为最终登录凭证,导致可绕过登录限制,如服务器返回一个flag参数作为登录是否成功的标准,但是由于代码最后登录是否成功是通过获取这个flag参数来作为最终的验证,导致攻击者通过修改flag参数即可绕过登录的限制!
    修复建议
    修改验证逻辑,如是否登录成功服务器端返回一个参数,但是到此就是最终验证,不需要再对返回的参数进行使用并作为登录是否成功的最终判断依据!

    短信/邮件轰炸

    漏洞描述
    由于没有对短信或者邮件发送次数进行限制,导致可无限次发送短信或邮件给用户,从而造成短信轰炸,进而可能被大量用户投诉,从而影响公司声誉!
    修复建议
    对发送短信或邮件的次数进行限制,如1分钟只能发送1次短信或邮件,并且需要在服务器进行限制!

    slow http Dos拒绝服务

    漏洞描述
    按照设计,HTTP协议要求服务器在处理之前完全接收请求。 如果HTTP请求没有完成,或者传输速率非常低,服务器会保持其资源忙于等待其余数据。如果服务器保持太多的资源忙,这将造成一个拒绝服务。严重者一台主机即可让web运行缓慢甚至是崩溃!
    修复建议
    对于 Apache 可以做以下优化:
    设置合适的 timeout 时间(Apache 已默认启用了 reqtimeout 模块),规定了 Header 发送的时间以及频率和 Body 发送的时间以及频率
    增大 MaxClients(MaxRequestWorkers):增加最大的连接数。根据官方文档,两个参数是一回事,版本不同,MaxRequestWorkers was called MaxClients before version 2.3.13.Theold name is still supported.
    默认安装的 Apache 存在 Slow Attack 的威胁,原因就是虽然设置的 timeoute,但是最大连接数不够,如果攻击的请求频率足够大,仍然会占满Apache的所有连接

    web服务测试页面信息泄露

    漏洞描述
    由于没有删除默认的且与业务无关的页面,导致信息泄露,如:webserver版本信息、中间件类型及版本信息等,通过对这类信息的收集,攻击者可制定具有针对性的攻击计划!
    修复建议
    删除与业务无关的页面,如果是必须需要使用的中间件管理页面,建议对该页面进行访问权限的控制!

    redis相关漏洞修复

    补充来自博客园:@梦猩魂
    完善来自博客园:@我超怕的
    漏洞描述
    redis默认没有口令可能会造成未授权访问造成信息泄露,若redis为高权限账户运行,可能导致服务器权限丢失等。
    安全建议
    1.禁用一些高危命令
    常见如:flushdb,flushall,config,keys 等
    2.以低权限运行 Redis 服务
    3.为 Redis 添加密码验证
    4.禁止外网访问 Redis
    5.保证 authorized_keys 文件的安全

    网页篡改

    漏洞描述
    网页篡改是恶意破坏或更改网页内容,使网站无法正常工作或出现黑客插入的非正常网页内容。
    安全建议
    1.设置合适的网站权限
    2.合理设计网站程序并编写安全代码
    3.网站后台设置复杂的登陆账号和密码
    4.关闭未使用但开放的网络服务端口以及未使用的服务
    5.服务器升级最新的安全补丁程序

    SpringBoot Actuator未授权访问漏洞

    漏洞描述
    Actuator是Spring Boot提供的服务监控和管理中间件,默认配置会出现接口未授权访问,部分接口会泄露网站流量信息和内存信息等,使用Jolokia库特性甚至可以远程执行任意代码,获取服务器权限。
    安全建议
    1、禁用所有接口,将配置改成:endpoints.enabled = false。
    2、引入spring-boot-starter-security依赖。

    druid监控页面未授权访问

    漏洞描述
    目标druid监控页面存在未授权访问漏洞,该页面存在数据库连接信息、url路径监控、session监控等敏感数据,攻击者可以通过该页面获取大量WEB系统敏感信息、获取其他用户session信息,从而对系统进行进一步攻击。
    安全建议
    SpringBoot项⽬修改配置⽂件application.properties
    1、直接禁⽌页⾯访问(或者不配置,此配置默认为false)
    spring.datasource.druid.stat-view-servlet.enabled=false
    2、增加账号密码登录
    账号密码可⾃定义配置,与数据库⽆关
    spring.datasource.druid.stat-view-servlet.enabled=true
    spring.datasource.druid.stat-view-servlet.login-username=root
    spring.datasource.druid.stat-view-servlet.login-password=123

    Apache shiro反序列化命令执行

    漏洞危害
    Apache Shiro 存在高危代码执行漏洞。该漏洞是由于Apache Shiro cookie中通过 AES-128-CBC 模式加密的rememberMe字段存在问题,用户可通过Padding Oracle 加密生成的攻击代码来构造恶意的rememberMe字段,并重新请求网站,进行反序列化攻击,最终导致任意代码执行。
    修复建议
    1、升级框架版本;
    2、 修改Key的编码,修改Shiro源代码中的Key值,然后替换到jar包里,不公开;
    3、 生成随机编码,在Shiro配置文件中把SecurityManage加入rememberMeManager的配置,然后调用生成Key值得方法,随机生成。

    参考链接:

    https://blog.csdn.net/qq_32434307/article/details/82148546
    http://www.51testing.com/html/92/n-3723692.html
    https://www.cnblogs.com/iAmSoScArEd/p/10651947.html#auto_id_2

    展开全文
  • 修复建议 代码层最佳防御sql漏洞方案:使用预编译sql语句查询和绑定变量。 (1)使用预编译语句,使用PDO需要注意不要将变量直接拼接到PDO语句中。所有的查询语句都使用数据库提供的参数化查询接口,参数化的语句...
  • 博主介绍 ‍ 博主介绍:大家好,我是_PowerShell,很高兴认识大家~ ✨主攻领域:【渗透领域】【数据通信】 【通讯安全】 【web...修复建议 2. 弱口令 漏洞描述 修复建议 3. 暴力破解 漏洞描述 修复建议 ...
  • 最近在B站听伍佰的时候,发现有不少UP主制作了4K画质修复版 Live 视频???? 这些二十多年前的视频,在4K画质下,似乎多了一份莫名的感动… 我后来突然就很好奇,他们是怎么制作的这些视频?毕竟我也收藏有不少老片??...
  •  修复建议 代码层最佳防御sql漏洞方案:使用预编译sql语句查询和绑定变量。  (1)使用预编译语句,使用PDO需要注意不要将变量直接拼接到PDO语句中。所有的查询语句都使用数据库提供的参数化查询接口,参数化的...
  • PopUpOFF是一种工具,我亲爱的潜在用户可以让您忘记关闭无数弹出窗口,这些弹出窗口会打扰您阅读/观看或在互联网的广阔空间中进行任何操作。我怀疑您没有遇到过网站,您只是来阅读文章而现在离开的,因为到处都是...
  • 常规WEB渗透测试漏洞描述及修复 (1)Apache样例文件泄漏(2)弱口令(3)明文传输登录口令(4)暴力破解(5)SQL注入漏洞(6)跨站脚本攻击(xss)漏洞(7)目标服务器启用了不安全HTTP方法(8)任意文件上传(9)...
  • Simple Reddit-crx插件

    2021-03-23 01:36:10
    如果单击灯箱背景,它将关闭灯箱-对弹出式窗口中“回复”通知的链接的小修正,因为它们无处发送给您-修正了弹出式v.1.0.8中的utf-8字符-添加了一个显示您最新的弹出式窗口登录后的收件箱,帖子和评论-修复了更改的...
  • 常见漏洞知识库(原理/场景/修复

    千次阅读 2020-04-30 12:08:38
    SQL注入漏洞产生的原因是网站应用程序在编写时未对用户提交至服务器的数据进行合法性校验(类型、长度、业务参数合法性等),同时没有对用户输入数据进行有效地特殊字符过滤,使得用户的输入直接带入数据库执行,...
  • 有很多用户反馈在安装了win10系统之后出现字体发虚,模糊不清楚的问题,使用起来非常的难受,那么如何解决呢?下面小编和大家分享一下测试有效的正确方法。原因分析:Win10系统字体发虚模糊主要是由于这几个方面引起...
  • 修复建议 1、删除样例文件 2、对apache中web.xml进行相关设置、 2、弱口令 漏洞描述 由于系统中存在有弱口令,导致攻击者通过弱口令可轻松登录系统中,从而进行下一步的攻 击,如上传webshell,获取敏感数据! 另外...
  • 修复建议 代码层最佳防御sql漏洞方案:使用预编译sql语句查询和绑定变量。 (1)使用预编译语句,使用PDO需要注意不要将变量直接拼接到PDO语句中。所有的查询语句都使用数据库提供的参数化查询接口,参数化的语句...
  • 实际上,Web应用程序安全联盟(WASC)在2009年初估计,所有网站中有87%容易受到攻击(请参阅参考资料 ,以获得更多信息的链接)。 尽管有些公司可以聘请外部安全分析师来测试漏洞,但并不是每个人都有资源花费20,...
  • 联想电脑专家远程修复工具包,用过的都说好! 下面这个网页是我从官方扒的,原网址在文章末尾, 如果需要打包下载,也可以下载这个压缩包(网络收集,安全性自测), 解压密码1234: 链接:...
  • 新版特性#2021.01.061、修复导航栏不透明的问题。#2020.12.251、修复Android 11设备无法安装的问题。...2、优化编辑应用时复选框的布局效果;3、优化多项UI细节;4、优化多项动画手势效果。#2020.9.261、调整...
  • 渗透测试-Web常见漏洞描述及修复建议
  • 信息技术选修知识点(一) 一、多媒体技术的定义: 所谓多媒体技术是计算机交互式综合处理多种媒体信息--- 文本、图形、图像和声音,使多种... 软件:多媒体操作系统(windows)、创作系统(photoshop)和应用系统(po
  • 常规36个WEB渗透测试漏洞描述及修复方法----很详细

    万次阅读 多人点赞 2018-08-28 15:57:16
    常规WEB渗透测试漏洞描述及修复   --转自:http://www.51testing.com/html/92/n-3723692.html   (1)、 Apache样例文件泄漏  漏洞描述  apache一些样例文件没有删除...
  • 新手必备中文版Adobe_Photoshop_CS4学习教程
  • 中文版Adobe_Photoshop_CS4学习教程
  • photoshop学习大全.doc

    2022-06-28 21:13:55
    photoshop学习大全
  • Photoshop基础培训教程模拟测试题(1)卷
  • Android 应用和系统优化V1.2

    千次阅读 2017-09-15 22:29:47
    UI可谓是一个应用的脸,所以每一款应用在开发阶段我们的交互、视觉、动画工程师都拼命的想让它变得自然大方美丽,可是现实总是不尽人意,动画和交 互总会觉得开发做出来的应用用上去感觉不自然,没有达到他们心目中...
  • pdf变清晰工具.zip

    2022-03-17 08:08:19
    pdf变清晰工具.zip

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,368
精华内容 947
关键字:

关闭弹出修复模糊应用

友情链接: jdy_general.rar