服务器安全检查表 服务器安全检查表怎么看
区块链钱包安全吗?
近年来,数字钱包安全事件频发。
目前创新互联建站已为1000多家的企业提供了网站建设、域名、虚拟空间、绵阳服务器托管、企业网站设计、靖宇网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
2019年11月19日,Ars Technica报道称两个加密货币钱包数据遭泄露,220万账户信息被盗。安全研究员Troy Hunt证实,被盗数据来自加密货币钱包GateHub和RuneScape机器人提供商EpicBot的账户。
这已经不是Gatehub第一次遭遇数据泄露了。据报道,去年6月,黑客入侵了大约100 个XRP Ledger钱包,导致近1000万美元的资金被盗。
2019年3月29日,Bithumb失窃事件闹得沸沸扬扬。据猜测,这次事件起因为Bithumb拥有的g4ydomrxhege帐户的私钥被黑客盗取。
随即,黑客将窃取的资金分散到各个交易所,包括火币,HitBTC,WB和EXmo。根据非官方数据和用户估计,Bithumb遭受的损失高达300万个EOS币(约1300万美元)和2000万个XRP币(约600万美元)以上。
由于数字货币的匿名性及去中心化,导致被盗资产在一定程度上难以追回。因此,钱包的安全性至关重要。
2020年8月9日,CertiK的安全工程师在DEF CON区块链安全大会上发表了演讲主题为:Exploit Insecure Crypto Wallet(加密钱包漏洞利用与分析)的主题报告,分享了对于加密钱包安全的见解。
加密钱包是一种帮助用户管理帐户和简化交易过程的应用程序。
有些区块链项目发布加密钱包应用程序来支持本链的发展——比如用于CertiK Chain的Deepwallet。
此外,还有像Shapeshift这样的公司,其构建了支持不同区块链协议的钱包。
从安全的角度来看,加密钱包最需重视的问题是防止攻击者窃取用户钱包的助记词和私钥等信息。
近一年来,CertiK技术团队对多个加密钱包进行了测试和研究,并在此分享针对基于软件不同类型的加密钱包进行安全评估的方法及流程。
加密钱包基础审计清单
要对一个应用程序进行评估,首先需要了解其工作原理→代码实现是否遵循最佳安全标准→如何对安全性不足的部分进行修正及提高。
CertiK技术团队针对加密钱包制作了一个基础审计清单,这份清单反映了所有形式的加密钱包应用(手机、web、扩展、桌面),尤其是手机和web钱包是如何生产和储存用户私钥的。
应用程序如何生成私钥?
应用程序如何以及在何处存储原始信息和私钥?
钱包连接到的是否是值得信任的区块链节点?
应用程序允许用户配置自定义区块链节点吗?如果允许,恶意区块链节点会对应用程序造成什么影响?
应用程序是否连接了中心化服务器?如果是,客户端应用会向服务器发送哪些信息?
应用程序是否要求用户设置一个安全性高的密码?
当用户试图访问敏感信息或转账时,应用程序是否要求二次验证?
应用程序是否使用了存在漏洞且可被攻击的第三方库?
有没有秘密(比如:API密钥,AWS凭证)在源代码存储库中泄漏?
有没有明显的不良代码实现(例如对密码学的错误理解)在程序源代码中出现?
应用服务器是否强制TLS连接?
手机钱包
相比于笔记本电脑,手机等移动设备更容易丢失或被盗。
在分析针对移动设备的威胁时,必须考虑攻击者可以直接访问用户设备的情况。
在评估过程中,如果攻击者获得访问用户设备的权限,或者用户设备感染恶意软件,我们需要设法识别导致账户和密码资产受损的潜在问题。
除了基础清单以外,以下是在评估手机钱包时要增加检查的审计类目:
应用程序是否警告用户不要对敏感数据进行截屏——在显示敏感数据时,安卓应用是否会阻止用户截屏?iOS应用是否警告用户不要对敏感数据进行截屏?
应用程序是否在后台截图中泄漏敏感信息?
应用程序是否检测设备是否越狱/root?
应用程序是否锁定后台服务器的证书?
应用程序是否在程序的log中记录了敏感信息?
应用程序是否包含配置错误的deeplink和intent,它们可被利用吗?
应用程序包是否混淆代码?
应用程序是否实现了反调试功能?
应用程序是否检查应用程序重新打包?
(iOS)储存在iOS Keychain中的数据是否具有足够安全的属性?
应用程序是否受到密钥链数据持久性的影响?
当用户输入敏感信息时,应用程序是否禁用自定义键盘?
应用程序是否安全使用“webview”来加载外部网站?
Web钱包
对于一个完全去中心化的钱包来说,Web应用程序逐渐成为不太受欢迎的选择。MyCrypto不允许用户在web应用程序中使用密钥库/助记词/私钥访问钱包,MyEtherWallet也同样建议用户不要这样做。
与在其他三种平台上运行的钱包相比,以web应用程序的形式对钱包进行钓鱼攻击相对来说更容易;如果攻击者入侵了web服务器,他可以通过向web页面注入恶意的JavaScript,轻松窃取用户的钱包信息。
然而,一个安全构建并经过彻底测试的web钱包依旧是用户管理其加密资产的不二之选。
除了上面常规的基础审计类目之外,我们在评估客户端web钱包时,还列出了以下需要审计的类目列表:
应用程序存在跨站点脚本XSS漏洞吗?
应用程序存在点击劫持漏洞吗?
应用程序有没有有效的Content Security Policy?
应用程序存在开放式重定向漏洞吗?
应用程序存在HTML注入漏洞吗?
现在网页钱包使用cookie的情况很少见,但如果有的话,应检查:
Cookie属性
跨站请求伪造(CSRF)
跨域资源共享(CORS)配置错误
该应用程序是否包含除基本钱包功能之外的其他功能? 这些功能存在可被利用的漏洞吗?
OWASP Top 10中未在上文提到的漏洞。
扩展钱包
Metamask是最有名和最常用的加密钱包之一,它以浏览器扩展的形式出现。
扩展钱包在内部的工作方式与web应用程序非常相似。
不同之处在于它包含被称为content script和background script的独特组件。
网站通过content script和background script传递事件或消息来与扩展页面进行交流。
在扩展钱包评估期间,最重要的事情之一就是测试一个恶意网站是否可以在未经用户同意的情况下读取或写入属于扩展钱包的数据。
除了基础清单以外,以下是在评估扩展钱包时要增加检查的审计类目:
扩展要求了哪些权限?
扩展应用如何决定哪个网站允许与扩展钱包进行交流?
扩展钱包如何与web页面交互?
恶意网站是否可以通过扩展中的漏洞来攻击扩展本身或浏览器中其他的页面?
恶意网站是否可以在未经用户同意的情况下读取或修改属于扩展的数据?
扩展钱包存在点击劫持漏洞吗?
扩展钱包(通常是background script)在处理消息之前是否已检查消息来源?
应用程序是否实现了有效的内容安全策略?
Electron桌面钱包
在编写了web应用程序的代码之后,为什么不用这些代码来建造一个Electron中桌面应用程序呢?
在以往测试过的桌面钱包中,大约80%的桌面钱包是基于Electron框架的。在测试基于Electron的桌面应用程序时,不仅要寻找web应用程序中可能存在的漏洞,还要检查Electron配置是否安全。
CertiK曾针对Electron的桌面应用程序漏洞进行了分析,你可以点击访问此文章了解详情。
以下是基于Electron的桌面钱包受评估时要增加检查的审计类目:
应用程序使用什么版本的Electron?
应用程序是否加载远程内容?
应用程序是否禁用“nodeIntegration”和“enableRemoteModule”?
应用程序是否启用了“contextisolation”, “sandbox” and “webSecurity”选项?
应用程序是否允许用户在同一窗口中从当前钱包页面跳转到任意的外部页面?
应用程序是否实现了有效的内容安全策略?
preload script是否包含可能被滥用的代码?
应用程序是否将用户输入直接传递到危险函数中(如“openExternal”)?
应用程序会使不安全的自定义协议吗?
服务器端漏洞检查列表
在我们测试过的加密钱包应用程序中,有一半以上是没有中心化服务器的,他们直接与区块链节点相连。
CertiK技术团队认为这是减少攻击面和保护用户隐私的方法。
但是,如果应用程序希望为客户提供除了帐户管理和令牌传输之外的更多功能,那么该应用程序可能需要一个带有数据库和服务器端代码的中心化服务器。
服务器端组件要测试的项目高度依赖于应用程序特性。
根据在研究以及与客户接触中发现的服务器端漏洞,我们编写了下文的漏洞检查表。当然,它并不包含所有可能产生的服务器端漏洞。
认证和授权
KYC及其有效性
竞赛条件
云端服务器配置错误
Web服务器配置错误
不安全的直接对象引用(IDOR)
服务端请求伪造(SSRF)
不安全的文件上传
任何类型的注入(SQL,命令,template)漏洞
任意文件读/写
业务逻辑错误
速率限制
拒绝服务
信息泄漏
总结
随着技术的发展,黑客们实施的欺诈和攻击手段也越来越多样化。
CertiK安全技术团队希望通过对加密钱包安全隐患的分享让用户更清楚的认识和了解数字货币钱包的安全性问题、提高警惕。
现阶段,许多开发团队对于安全的问题重视程度远远低于对于业务的重视程度,对自身的钱包产品并未做到足够的安全防护。通过分享加密钱包的安全审计类目,CertiK期望加密钱包项目方对于产品的安全标准拥有清晰的认知,从而促进产品安全升级,共同保护用户资产的安全性。
数字货币攻击是多技术维度的综合攻击,需要考虑到在数字货币管理流通过程中所有涉及到的应用安全,包括电脑硬件、区块链软件,钱包等区块链服务软件,智能合约等。
加密钱包需要重视对于潜在攻击方式的检测和监视,避免多次受到同一方式的攻击,并且加强数字货币账户安全保护方法,使用物理加密的离线冷存储(cold storage)来保存重要数字货币。除此之外,需要聘请专业的安全团队进行网络层面的测试,并通过远程模拟攻击来寻找漏洞。
如何应对虚拟化的三种安全风险
1、虚拟化项目最初并未涉及信息安全。有一项权威的研究发现,在最初创建以及策划时,少于一半的科研项目是不符合安全规定的。有时团体工作时会刻意地把安全问题忘记,可是虚拟化过程中带来的问题是不容忽视的,多个虚拟化服务器工作时带来的弊端比未被虚拟化时带来的问题更为严重。所以研究这些问题时也更为繁琐。
2、底层虚拟化平台的隐患影响所有托管虚拟机。将服务器虚拟化就像在电脑上运行程序一样,都需要借助一个平台。而该平台或多或少会有一些bug而被人们疏忽。最近一些大型虚拟化厂商多次传出虚拟化生产线存在安全隐患,这些隐患尚未得到解决。所以一些人想要攻击时都会选择进攻底层虚拟化平台,通过控制住中枢系统,逃脱安全检测。进而将病毒带入各个服务器中,攻击其弊端,获得了阅览所有信息的权限,导致信息的泄露。
3、虚拟机之间的虚拟网络使现有的安全策略失效。一些知名的虚拟化生产厂商使用建立虚拟机和虚拟网卡的办法使各虚拟机之间能相互关联以此来实现信息发送与接受的能力。一些主流的保护系统的保护范围都只能保护常规服务器的进出流量,却无法看到各个虚拟机之间的流量传输,无法对虚拟化的流量传输提供保障。
4、将不同安全等级的虚拟机未进行有效隔离。一些虚拟化生产厂商正在尝试将服务器全部虚拟化,这样既减少了经费又加快了生产速度。这些服务器包括许多隐私等级较高的系统,所以就要求虚拟机足够安全。而如果未将安全指数不同的服务器分离开,它们由相同的服务器支配,高等级的虚拟机的安全性也会降低并被较低的所控制。
如需了解更多,请访问蛙云官网wwwwayuncn
专业领域十余载,倾情奉献
一次沟通,终生陪伴
SQL Server 如何查询最后一条记录
SQL Server 查询最后一条记录有两种方法,一种是使用TOP命令,一种是使用LIMIT命令,具体方法如下:
1、使用TOP
SELECT TOP 1 * FROM user;
SELECT TOP 1 * FROM user order by id desc;
2、 使用LIMIT
SELECT * FROM user LIMIT 1;
SELECT * FROM user ORDER BY id ASC LIMIT 1;
SELECT * FROM user ORDER BY id DESC LIMIT 1;
扩展资料:
Sqlserver一些基本命令:
1、查询数据库是否存在:
if DB_ID("testDB")is not null;
2、检查表是否存在:
if OBJECT_ID(“textDB”,“U”) is not null ;其中U代表用户表
3、创建数据库:
create database+数据名
SQL是英文Structured Query Language的缩写,意思为结构化查询语言。SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。
SQL Server是由Microsoft开发和推广的关系数据库管理系统(DBMS)。
参考资料:百度百科-SqlServer
Wazuh用例分析
一、用例总览
Wazuh通常用于满足合规要求(如PCI DSS或HIPAA)和配置标准(CIS强化指南)。它在IaaS (eg. Amazon AWS, Azure or Google cloud) 用户中也很流行,在运行的实例中部署基于主机的IDS可以与基础设施事件分析(直接从云提供商API提取)相结合。
以下是一些常见的用例:
(1)基于签名的日志分析
(2)文件完整性监测
(3)rootkit检测
(4)安全政策监控
二、基于签名的日志分析
自动日志分析和管理加速了威胁检测。在许多情况下,攻击证据可以在设备、系统和应用程序的日志中找到。Wazuh可以用于自动聚合和分析日志数据。
运行在监控主机上的Wazuh代理通常负责读取操作系统和应用程序日志消息,并将这些消息转发到分析发生的Wazuh服务器。当没有部署代理时,服务器还可以通过syslog从网络设备或应用程序接收数据。
Wazuh使用解码器识别日志消息的源应用程序,然后使用特定于应用程序的规则分析数据。下面是一个用于检测SSH身份验证失败事件的规则示例:
规则包括一个match字段,用于定义规则将要寻找的模式。它还有一个level字段,用于指定生成的警报优先级。
每当某个代理或通过syslog收集的事件与级别大于零的规则匹配时,管理器将生成一个警报。
下面是/var/ossec/logs/alerts/alerts.json中的一个例子:
一旦由管理器生成,警报就被发送到Elastic Stack组件,在该组件中,通过存储和索引地理位置信息丰富警报。然后,Kibana可以用来搜索、分析和可视化数据。如下界面显示的警告:
Wazuh提供了一个定期更新的默认规则集,为不同的应用程序提供了超过1600条规则。
三、文件完整性监控
当操作系统和应用程序文件被修改时,文件完整性监视(FIM)组件会检测并发出警报。此功能通常用于检测对敏感数据的访问或更改。如果您的服务器在PCI DSS的范围内,那么需求11.5说明您必须安装一个文件完整性监控解决方案才能通过您的审计。
下面是在更改受监视文件时生成警告的示例。元数据包括MD5和SHA1校验和、文件大小(更改之前和之后)、文件权限、文件所有者、内容更改以及进行这些更改的用户(who-data)。文件完整性监测
FIM仪表板提供了向下钻取功能,以查看触发警报的所有细节,可以在其中找到文件更改的良好摘要。
四、rootkit检测
Wazuh代理定期扫描监控系统,以在内核和用户级别检测rootkit。这类恶意软件通常替换或改变现有的操作系统组件,以改变系统的行为。rootkit可以隐藏其他进程、文件或网络连接,就像它自己一样。
Wazuh使用不同的检测机制来查找系统异常或已知的入侵。这是由Rootcheck组件定期完成的:
下面是发现隐藏进程时生成的警报示例。在本例中,受影响的系统正在运行Linux内核级rootkit(名为 Diamorphine):
五、安全策略监控
SCAP是企业级基础设施的标准化遵从性检查解决方案。它是由美国国家标准与技术研究所(NIST)维护的一套规范,旨在维护企业系统安全。
OpenSCAP是一种审计工具,它利用了可扩展配置检查表描述格式(XCCDF)。XCCDF是一种表示检查表内容和定义安全检查表的标准方法。它还与其他规范(如CPE、CVE、CCE和OVAL)相结合,创建可由经过scap验证的产品处理的scap表示的检查列表。
Wazuh代理在内部使用OpenSCAP来验证系统是否符合CIS强化标准。下面是一个SCAP规则示例,用于检查SSH守护进程是否配置为允许空密码:
SCAP检查定期运行(默认情况是一天一次),结果被设置到Wazuh服务器,在那里通过OpenSCAP解码器和规则进行处理。下面是一个警告的例子,当Linux审计策略(auditd)没有配置为监视用户操作时生成的警告:
此外,Wazuh WUI还可以用于可视化和分析策略监视扫描结果。例如,以下是使用服务器基线和PCI DSS v3预定义概要文件扫描CentOS系统时收集的数据的屏幕截图:
当前名称:服务器安全检查表 服务器安全检查表怎么看
转载源于:http://azwzsj.com/article/ddjsgsg.html