-
2021-01-22 09:30:01
2020年9月23日,银保监会印发《监管数据安全管理办法(试行)》(以下简称《办法》)。该办法将监管数据定义为:“银保监会在履行监管职责过程中,依法定期采集,经监管信息系统记录、生成和存储的,或经银保监会各业务部门认定的数字、指标、报表、文字等各类信息。”
监管信息系统则是指以满足监管需求为目的开发建设的,具有数据采集、处理、存储等功能的信息系统。目前主要包括非现场监管信息系统(1104)、现场检查分析系统(EAST)、客户风险统计系统等,其中的定期上班的数据属于监管数据。
监管数据外延可能会包括非定期上报,为满足现场检查或非现场监管收集的相应数字、指标、报表、文字等信息。
《办法》要求监管数据安全管理实行归口管理,统计信息部门负责统筹,业务部门发现重大安全风险事项48小时上报至归口管理部门。
《办法》对监管数据采集、存储、加工处理和使用均提出明确而规范的要求,如数据脱敏。此外,还规定了监管数据委托服务管理的准入要求。
中国银保监会关于印发监管数据安全管理办法(试行)的通知
各银保监局,机关各部门,各会管单位:
为切实加强监管数据安全管理,防范监管数据安全风险,我会制定了《中国银保监会监管数据安全管理办法(试行)》,现予以印发,请遵照执行。
2020年9月23日
中国银保监会监管数据安全管理办法(试行)
第一章 总 则
第一条 为规范银保监会监管数据安全管理工作,提高监管数据安全保护能力,防范监管数据安全风险,依据《中华人民共和国网络安全法》《中华人民共和国银行业监督管理法》《中华人民共和国保险法》《工作秘密管理暂行办法》等法律法规及有关规定,制定本办法。
第二条 本办法所称监管数据是指银保监会在履行监管职责过程中,依法定期采集,经监管信息系统记录、生成和存储的,或经银保监会各业务部门认定的数字、指标、报表、文字等各类信息。
本办法所称监管信息系统是指以满足监管需求为目的开发建设的,具有数据采集、处理、存储等功能的信息系统。
第三条 本办法所称监管数据安全是指监管数据在采集、处理、存储、使用等活动(以下简称监管数据活动)中,处于可用、完整和可审计状态,未发生泄露、篡改、损毁、丢失或非法使用等情况。
第四条 银保监会及受托机构开展监管数据活动,适用本办法。
本办法所称受托机构是指受银保监会委托或委派,为银保监会提供监管数据采集、处理或存储服务的企事业单位。
第五条 开展监管数据活动,必须遵守相关法律和行政法规。任何单位和个人对在监管数据活动中知悉的国家秘密、工作秘密、商业秘密和个人信息,应当依照相关规定予以保密。
第六条 银保监会建立健全监管数据安全协同管理体系,推动银保监会有关业务部门、各级派出机构、受托机构等共同参与监管数据安全保护工作,加强培训教育,形成共同维护监管数据安全的良好环境。
第二章 工作职责
第七条 监管数据安全管理实行归口管理,建立统筹协调、分工负责的管理机制。
银保监会统计信息部门是归口管理部门,负责统筹监管数据安全管理工作。银保监会各业务部门负责本部门监管数据安全管理工作。
第八条 归口管理部门具体职责包括:
(一)制定监管数据安全工作规则和管理流程;
(二)制定监管数据安全技术防护措施;
(三)组织实施监管数据安全评估和监督检查。
第九条 各业务部门具体职责包括:
(一)规范本部门监管数据安全使用,明确具体工作要求,落实相关责任;
(二)组织开展本部门监管数据安全管理工作;
(三)协助归口管理部门实施监管数据安全监督检查。
第三章 监管数据采集、存储和加工处理
第十条 监管数据的采集应按照安全、准确、完整和依法合规的原则进行,避免重复、过度采集。
第十一条 监管数据应通过监管工作网或金融专网进行传输。因客观条件限制需要通过物理介质、互联网或其它网络传输的,应经归口管理部门评估同意。
第十二条 监管数据应存储在银保监会机房,并具有完备的备份措施。确有必要存储在受托机构机房的,应经归口管理部门评估同意。
第十三条 监管数据存储期限、存储介质管理应按照国家和银保监会有关规定执行。
第十四条 监管数据的加工处理应在监管工作权限或受托范围内进行。未经归口管理部门同意,任何单位和个人不得将代码、接口、算法模型和开发工具等接入监管信息系统。
第十五条 监管数据采集、传输、存储、加工处理、转移交换、销毁,以及用于系统开发测试等活动,应根据监管数据类型和管理要求采取分级分类安全技术防护措施。
第四章 监管数据使用
第十六条 监管数据仅限于银保监会履行监管工作职责使用。纪检监察、司法、审计等党政机关为履行工作职责需要使用监管数据时,按照有关规定办理。
第十七条 监管数据的使用行为应通过管理和技术手段确保可追溯。监管数据用于信息系统开发测试以及对外展示时,应经过脱敏处理。
第十八条 使用未公开披露的监管数据,原则上应在不可连接互联网的台式机或笔记本等银保监会工作机中进行。因客观条件限制需采取虚拟专用网络等方式使用监管数据时,应经归口管理部门评估同意。
第十九条 因工作需要下载的监管数据,仅可存储于银保监会的工作机中。承载监管数据的使用介质应妥善保管,防止数据泄露。
第二十条 在使用监管数据过程中产生的加工数据、汇总结果等信息应视同监管数据进行安全管理。
第二十一条 监管数据对外披露应由指定业务部门按照有关规定和流程实施。
第二十二条 各业务部门因工作需要向非党政机关单位、个人提供监管数据时,应充分评估数据安全风险,经本部门主要负责人同意后实施,必要时与对方签订备忘录和保密协议并报归口管理部门备案。
与境外监管机构或国际组织共享监管数据时,应由国际事务部门依照银保监会签署的监管合作谅解备忘录、合作协议等约定或其他有关工作安排进行管理。
法律法规另有规定的,从其规定。
第二十三条 各业务部门因工作需要和系统下线停用监管数据时,应及时对其采取封存或销毁措施。
第五章 监管数据委托服务管理
第二十四条 各业务部门监管数据采集涉及受托机构提供服务时,应事先与归口管理部门沟通并会签同意。受托机构的技术服务方案,应通过归口管理部门的安全评估。技术服务方案发生变更的,应事先报归口管理部门进行安全评估。
安全评估不通过的,不得开展委托服务或建立委派关系。
第二十五条 为银保监会提供监管数据服务的受托机构,应满足以下基本条件:
(一)具备从事监管数据工作所需系统的自主研发及运维能力;
(二)具备相关信息安全管理资质认证;
(三)拥有自主产权或已签订长期租赁合同的机房;
(四)网络和信息系统具备有效的安全保护和稳定运行措施,三年内未发生网络安全重大事件;
(五)具备有效的监管数据安全管理措施,能够保障银保监会各部门对监管数据的访问和控制;
(六)具有监管数据备份体系、应急组织体系和业务连续性计划。
第二十六条 银保监会通过与受托机构签订协议,确立监管数据委托服务关系。协议应明确服务项目、期限、安全管理责任和终止事由等内容。
银保监会通过委派方式确立监管数据服务关系的,应下达委派任务书。
第二十七条 因有关政策调整导致原委托或委派事项无需继续履行,或发现受托机构监管数据服务出现重大安全问题的,银保监会有权终止委托或委派关系。
委托或委派关系终止时,受托机构应及时、完整地移交监管数据,并销毁因委托或委派事项而获取的监管数据,不得保留相关数据备份等内容。
第六章 监督管理
第二十八条 各业务部门及受托机构应按照监管数据安全工作规则定期开展自查,发现监管数据安全缺陷、漏洞等风险时,应立即采取补救措施。
第二十九条 归口管理部门应定期对各业务部门及受托机构开展监管数据安全管理评估检查工作。
各业务部门及受托机构对于评估和检查中发现的问题应制定整改措施,及时整改,并向归口管理部门报送整改报告。
第三十条 各业务部门及受托机构发生以下监管数据重大安全风险事项时,应立即采取应急处置措施,及时消除安全隐患,防止危害扩大,并于48小时内向归口管理部门报告。
(一)监管数据发生泄露或非法使用;
(二)监管数据发生损毁或丢失;
(三)承载监管数据的信息系统或网络发生系统性故障造成服务中断4小时以上;
(四)承载监管数据的信息系统或网络遭受非法入侵、发生有害信息或计算机病毒的大规模传播等破坏;
(五)监管数据安全事件引发舆情;
(六)《网络安全重大事件判定指南》列明的其他影响监管数据安全的网络安全重大事件。
辖区发生以上监管数据重大安全风险事项时,各银保监局应立即采取补救措施,并于48小时内向银保监会归口管理部门报告。
第三十一条 归口管理部门应建立监管数据安全事件通报工作机制,及时通报监管数据安全事件。
第七章 附 则
第三十二条 涉密监管数据按照国家和银保监会保密管理有关规定进行管理。
第三十三条 各银保监局承担辖区监管数据安全管理责任,参照本办法制定辖区监管数据安全管理办法,明确职责和管理要求,强化监管数据安全保护。
第三十四条 本办法自印发之日起施行。
更多相关内容 -
理解什么是线程安全性、原子性
2019-12-29 11:56:30加锁机制 •写在前面 进程想要执行任务需要依赖线程,换句话说就是进程中的最小执行单位就是线程,并且一个进程中至少有一个线程。提到多线程这里要说两个概念,就是串行和并行,搞清楚这个我们才能更好的理解多...目录
•写在前面
进程想要执行任务需要依赖线程,换句话说就是进程中的最小执行单位就是线程,并且一个进程中至少有一个线程。提到多线程这里要说两个概念,就是串行和并行,搞清楚这个我们才能更好的理解多线程。所谓串行其实是相对于单条线程来执行多个任务来说的,我们就拿下载文件来举个例子,我们下载多个文件,在串行中它是按照一定的顺序去进行下载的,也就是说必须等下载完A之后,才能开始下载B,它们在时间上是不可能发生重叠的。
要编写线程安全的代码,其核心在于要对状态访问操作进行管理,特别是对共享的和可变的状态的访问。要是的对象是线程安全的,需要采用同步机制来协同对对象可变状态的访问,如果无法实现协同,那么可能会导致数据破坏以及其他不该出现的结果。java中的同步机制是关键字synchronized,它提供了独占式的加锁方式,不仅如此还包括volatile类型变量,显式锁Lock以及原子变量。
单线程近似定义为“所见即所知”,那么定义线程安全性,则当多个线程访问某个类时,这个类始终都能表现出正确的行为,那么就称这个类是线程安全的。一个类在单线程中运行都不正确,那么它肯定是不会是线程安全的。如果正确的实现了某个对象,那么在任何操作中(包括调用对象的公有方法或者对其公有域进行读写操作)都不会违背不变性条件或后验条件。在线程安全类的对象实例上执行的任何串行或并行操作都不会处于无效状态。
无状态的对象一定是安全的,啥是无状态?这个类既不包括任何域,也不包括任何对其他类中域的引用。举个例子,大多数Servlet都是无状态的,从而极大的降低了在实现Servlet线程安全性时的复杂性,只有当Servlet在处理请求时需要保存一些信息,线程安全性才会成为一个问题。
•原子性
其实原子性就是一个不可分割的,我们怎么理解呢?举个例子,当我们在无状态对象中增加一个状态时,会发生什么情况?比我们要计算一个类调用了多少次(这个类可以是Servlet),我们定义一个私有的Long类型的域(命名为count),在方法中没调用一次就将这个值加一(即count++),如下。
Integer count = 0; public void getCount() { count ++; System.out.println(count); }
由于我们没有对这个类进行任何的同步机制操作,所以这个类是非线程安全的,虽然在单线程环境中能正确运行,但在多线程情况下就会出现问题。我们注意到count++这个操作,这个操作看上去是一个操作,其实这个操作并非原子性的,因为它并不会作为一个不可分割的操作来执行,实际上count++ 包含了三个独立的操作,分为读取count的值,将值加1,然后计算结构写入count中,这是一个“读取-修改-写入”的操作序列,并且其结果依赖于之前的状态。在并发下就会出现问题,我再多线程下跑了上面那段代码,结果如下
我们可以看到,这里出现了两个26,为什么会出现这种情况,出现这种情况显然表明我们这个方法根本就不是线程安全的,出现这种问题的原因有很多,我们说最常见的一种,就是我们A线程在进入方法后,拿到了count的值,刚把这个值读取出来还没有改变count的值的时候,结果线程B也进来的,那么导致线程A和线程B拿到的count值是一样的。
在并发编程中,这种由于不恰当的执行时序而出现不正确的结果是一种非常重要的情况,它有一个正式的名字,叫“竞态条件”。竞态条件是啥?当某个计算的正确性取决于多个线程的交替执行时序时,那么就会发生竞态条件,最常见的竞态条件类型就是“先检查后执行”操作,即通过一个可能失效的观察结果来决定下一步的动作。比如首先观察到某个条件为真(例如文件X不存在),然后根据这个观察结果采用相应的动作(创建文件X),但事实上,在你观察到这个结果以及开始创建文件之间,观察结果可能变得无效(另一个线程在这个期间创建了文件X),从而导致各种问题(未预期的异常、数据覆盖、文件被破坏等)。
与大多数并发错误一样,竞态条件并不总是会产生错误,还需要某种不恰当的执行时序。原子操作是对于访问同一个状态的所有操作(包括该操作本身)来说,这个操作是一个以原子方式执行的操作。而我们前面提到的类似count++的这种操作,叫做复合操作,即包含了一组必须以原子方式执行的操作以确保线程安全性。在实际情况中,应该尽可能的使用现有的线程安全对象来管理类的状态,与非线程安全的对象相比,判断线程安全对象的可能状态及其状态转换情况要更为容易,从而也更容易维护和验证线程安全性。这里值得一提的是,java中给我们弄好了很多原子操作的类型,在这个包下java.util.concurrent.atomic。
加锁机制
上面我们说了,我们可以对单个类进行原子性操作,这样可以保证我们程序的安全性,但是,我们想一想,如果当多个原子性的操作同时进行时,而且各个原子性操作之间都存在相互依赖的关系,这种情况下,我们怎么保证程序运行正确(线程安全)?如果还是使用原子性操作的方法,那么我们要保持状态的一致性,就需要在单个原子操作中更新所有相关的状态变量。
说到这里,我们就不得不提一下java提供的一种内置的锁机制来支持原子性,即同步代码块(synchronized block),同步代码快包括两部分,一个作为锁的对象引用,一个作为由这个锁保护的代码块。以关键字synchronized来修饰的方法就是一种横跨整个方法体的同步代码块,其中该同步代码块的锁就是方法调用所在的对象。每个Java对象都可以用作一个实现同步的锁,这些所被称为内置锁或监视器锁。线程在进入同步代码块之前会自动获得锁,并且在退出同步代码块时自动释放锁,这里要说,获得内置锁的唯一途径就是进入由这个锁保护的同步代码块或方法。值得一提的是,内置锁相当于一种互斥锁,意味着最多只有一个线程能持有这种锁。要注意了,任何一个执行同步代码块的线程,都不能看到有其他线程正在执行由同一锁保护的同步代码块(这里涉及到可见性的问题)。synchronized直接加在方法上,虽然能很方便的解决线程安全的问题,但是也会带来性能低下的问题,所以synchronized怎么使用,也是值得学习的。
可重入函数可以由多于一个任务并发使用,而不必担心数据错误。相反,不可重入函数不能由超过一个任务所共享,除非能确保函数的互斥(或者使用信号量,或者在代码的关键部分禁用中断)。可重入函数可以在任意时刻被中断,稍后再继续运行,不会丢失数据。可重入函数要么使用本地变量,要么在使用全局变量时保护自己的数据。
当某个线程请求一个由其他线程持有的锁时,发出请求的线程就会被阻塞,然而,由于内置锁是可重入的,因此如果某个线程试图获得一个已经由它自己持有的锁,那么这个请求就会成功。“重入”意味着获取锁的操作的粒度是线程,而不是调用。重入的一种实现方式是,为每一个锁关联一个获取计数值和一个所有者线程,当计数值为0时,这个锁就被认为是没有被任何线程持有。当线程请求一个未被持有的锁时,JVM将记下锁的持有者,并且将获取计数值置为1,如果同一个线程再次请求获取这个锁,计数值将递增,而当线程退出同步代码块时,计数器会相应的递减,当计数值为0时,这个锁将被释放。
到此我们就可以将多个复合操作封装到一个同步代码块中,但是这样是不够的,如果用同步代码块来协调对某个变量的访问,那么在访问这个变量的所有位置上都需要使用同步。而且,当使用锁来协调对某个变量的访问是,在访问变量的所有位置上都要使用同一个锁。而且,并不是只有在写入共享变量时才需要使用同步,对于可能被多个线程同时访问的可变状态变量,在访问它时都需要有同一个锁,这种情况下,我们成状态变量时由这个锁保护的。
在这里值得一提的是,当使用锁时,你应该清楚代码块中实现的功能,以及在执行该代码块时是否需要很长的时间。无论是执行计算密集的操作,还是在执行某个可能阻塞的操作,如果持有锁的时间过长,那么都会带来活跃性或性能的问题。当执行时间较长的计算或者可能无法快速完成的操作时(例如网络IO或控制台IO),一定不要持有锁。
-
什么是安全测试
2021-05-28 14:38:11安全测试概述,安全漏洞,安全测试特性,加密算法,安全测试常用工具一、安全测试概述
1.1.定义
安全测试是在软件产品开发基本完成时,验证产品是否符合安全需求定义和产品质量标准的过程
1.2.概念
安全测试是检查系统对非法侵入渗透的防范能力
1.3.准则
理论上来讲,只要有足够的时间和资源,没有无法进入的系统。因此,系统安全设计的准则是使非法侵入的代价超过被保护信息的价值
1.4.目标
通过对系统进行全面的脆弱性安全测试,发现系统未知的安全隐患并提出相关建议,确保系统的安全性。安全性一般分为应用程序级别和系统级别,区别如下:
- 应用程序级别:包括对应数据或业务功能的访问,核实应用程序的用户权限只能操作被授权访问的那些功能或数。
- 系统级别:包括对操作系统的目录或远程访问,主要核实具备系统和应用程序访问权限的操作者才能访问系统和应用程序
二、安全漏洞
细分流程图,安全漏洞根据客户端与服务器端的分布
2.1.钓鱼
黑客构造一个跟知名网站很相似的网站,吸引用户登录,输入敏感信息,或通过邮件等验证方式,不知不觉中获得用户的登录密码之类的
2.2.暗链
其实“暗链”就是看不见的网站链接,“暗链”在网站中的链接做的非常隐蔽,短时间内不易被搜索引擎察觉。它和友情链接有相似之处,可以有效地提高PR值。但要注意一点PR值是对单独页面,而不是整个网站
2.3.xss
跨站脚本攻击。恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意用户的特殊目的
2.4.点击劫持
是一种视觉上的欺骗手段。大概有两种方式,一是攻击者使用一个透明的iframe,覆盖在一个网页上,然后诱使用户在该页面上进行操作,此时用户将在不知情的情况下点击透明的iframe页面;二是攻击者使用一张图片覆盖在网页,遮挡网页原有位置的含义
2.5.CSRF
简单说, 攻击者盗用了你的身份,以你的名义发送恶意请求
限制的方式可以包括:
1)referer的限制
2)加入有效性验证Token
3、对跳转的地址没有做严格的校验2.6.sql注入
所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令,比如很多影视网站泄露VIP会员密码大多就是通过WEB表单递交查询字符暴出的,这类表单特别容易受到SQL注入式攻击
2.7.文件上传/文件包含
上传的附件没有进行过滤,当上传的文件为危险文件时,依然可以上传成功。 这样很容易服务器的后台被控制
2.8.暴力破解
使用一个好的字典,利用工具,暴力破解网站的登录名和密码
三、安全测试流程
提交申请
准备测试环境
收集基础信息
执行渗透测试
测试结果分析
编写测试报告四、 测试特性
安全特性:操作系统安全、数据库安全、WEB安全、软件的发布和安装安全、协议与接口攻防、敏感数据保护、手机端安全、静态代码分析
4.1.操作系统安全
操作系统安全我们可以把它分为以下几块:
系统漏洞(操作系统补丁)、系统配置(安全加固)
工具Nessus,开源的工具可以使用OpenVAS。4.2.数据库
数据库安全我们可以把它分为以下几块:
数据库漏洞(补丁)、数据库配置特产(安全加固)
工具可以使用Ngs4.3.web安全
web安全我们可以把它分为以下几块:
身份验证、验证码、会话管理、权限管理、敏感信息传输、安全审计、信息泄露、输入校验、输出编码、上传下载、异常处理、注释代码等
容器的安全(tomcat)
应用软件安全(nginx、负载均衡软件、jquery等)
扫描工:appScan、awvs1.身份验证
复杂度要求,必须由大写、小写、数字等组成
时效性要求,建议用户3个月更改一次口令
密码长度要求,最小8位,最大?位
管理员重置密码后密码必须在下次登录更改
强度要求,不能跟原密码一致,不能与用户名相似
必须要有验证码机制
手机验证码超时机制2.弱密码
3.验证码
验证码字符生成算法的安全随机数
验证码字符不能被验证码识别工具识别
验证码必须是一次性的
验证码超时4.会话管理
登录前后会话要有变化
安全退出会话注销
会话超时机制
会话标识的传输和存储5.敏感信息传输及存储
敏感信息不能以get方式提交
传输通道使用https
严格安全传输HSTS
对用户保密的信息不能传输到客户端
含有敏感信息的页面需要设置不缓存4.4.软件的发布与安装安全
发布件的完整性校验(签名、哈希)
防病毒:需要安装的软件需要经过常用的杀毒软件(如360、金山毒霸等)的扫描,保证没有病毒特种码,以免被杀软处理掉4.5.协议与接口攻防
业务交互数据在网络中使用的协议安全性测试
协议测试工具:codenomical
对外开放的端口:系统对外开放的端口必须是必要的,禁止开放无用端口
端口扫描工具:Nmap,近端可以直接在服务器上使用命令查看
接口:接口接受的数据需要做严格的处理4.6.敏感数据保护
识别敏感数据:密码、秘钥、会话标识;个人信息、商业机密、客户信息等
保护:加密、存储位置、传输方式;获取数据脱敏、匿名化4.7.手机端安全
app的签名、反逆向,用户隐私,文件权限,网络通讯,升级
1、app的签名、反逆向2、用户隐私
本地保存用户密码、无论加密与否,敏感信息隐私信息,如聊天记录、关系链、银行卡号等是否加密保存
配置文件等是否保存到外部设备上
保存到外部设备的信息加载前判断是否被篡改3、文件权限
App所在目录不允许其他组成员读写
4、网络通讯
重要敏感数据传输加密
5、运行时解释保护
嵌有解释器的软件XSS、SQL注入等
外部连接的是否有URL欺骗等漏洞6、组件权限保护
禁止App内部组件被任意第三方程序调用
调用外部组件先验证签名7、升级
升级包完整性、合法性校验,避免被劫持
8、3rd库
跟进第三方库的更新
4.8.静态代码分析(纯白盒)
白盒测试主要是通过对代码的浏览来发现问题
1、危险函数
2、工具检测
3、逻辑漏洞4.9.灰盒
需要的地方对代码进行动态调试查看。审计中思路可以考虑如下部分
1、涉及敏感数据的时候,检查是get、post哪种形式发送数据2、提交铭感数据的时候是否有防止csrf的token、refer、验证码
3、sql注入
4、XSS
我们用的antisamy只能过滤基于标签的XSS伪造,其他的无法过滤,需要做二次过滤5、权限校验、越权
6、session会话管理
常规cookie及session形式,把token作为session的形式,特别注入登录用户和token的绑定关系7、代码中使用的第三方插件、开源软件是否是最新、是否有安全漏洞
8、代码中所使用的加密算法,是否是安全的
9、跳转中的redirect(Spring MVC中redirect重定向)形式中不要带敏感信息,会被发回客户端重新请求的,相当于把这些参数放在了get请求中
10、SSRF服务端请求伪造,注意url中含有另外一个url的请求
11、加密算法的使用,是否使用的是不合场景的弱算法
五、 加密算法
5.1.弱算法
md2,md4,md5(2004年的国际密码学会议(Crypto’2004)王小云证明了MD5可以被碰撞,至此,MD5不再安全) ,sha1,blowfish
5.2. 推荐算法
sha256,aes128
5.3. 可逆的加密算法
des 3des aes128
5.4. 可逆加密算法 “对称式”和“非对称式”
对称式加密特点
加密和解密使用同一个密钥,通常称之为“Session Key ”
DES、3DES、DESX、Blowfish、IDEA、RC4、RC5、RC6和AES非对称式加密特点
加密和解密所使用的不是同一个密钥,而是两个密钥:一个称为“公钥”,另一个称为“私钥”;它们两个必须配对使用,否则不能打开加密文件。这里的“公钥”是指可以对外公布的,“私钥”则只能由持有人本人知道。常见的非对称加密算法:RSA、ECC(移动设备用)、Diffie-Hellman、El Gamal、DSA(数字签名用)
不可逆加密算法:sha256 sha512 md5
不可逆加密算法的特征是,加密过程中不需要使用密钥,输入明文后由系统直接经过加密算法处理成密文。这种加密后的数据是无法被解密的,只有重新输入明文
常见的Hash算法:MD2、MD4、MD5、HAVAL、SHA、SHA-1、HMAC、HMAC-MD5、HMAC-SHA1
MD5输出128bit
SHA1输出160bit
SHA256输出256bit
另外还有SHA244,SHA512
分别输出244bit,512bit六、 常用工具
6.1. Burpsuit
一个用于攻击web应用程序的集成平台,包含大量的安全测试工具,并为这些工具设计了对外访问接口,以加快攻击应用程序的过程
6.2.Wireshark
适用于Windows和Linux的网络协议分析工具,也是一个很出名的数据包分析工具,可以检查网络流量,是观察TCP/IP异常流量的很好的工具,Wireshark是个抓包工具,或者更确切的说,它是一个有效的分析数据包的开源平台
6.3.Metasploit
漏洞监测工具
Metasploit本质上是一个为用户提供已知安全漏洞主要信息的计算机安全项目(框架),并且Metasploit帮助指定渗透测试和IDS监测计划、战略以及利用计划6.4.Maltego
取证,证书
Maltego跟其他取证工具不同,因为它在数字取证范围内工作。Maltego被设计用来把一个全面的网络威胁图片传给企业或者其他进行取证的组织的局部环境,它是一个平台6.5.Appscan
一个领先的web应用安全工具,可自动进行安全漏洞评估、扫描和检测所有常见的web应用安全漏洞,如:SQL注入、跨站点脚本攻击(CSS)、缓冲区溢出等
涵盖 XML 和 JSON 基础架构的 SOAP 和 REST Web 服务测试支持 WSSecurity 标准、 XML 加密和 XML 签名。详细的漏洞公告和修复建议6.6.Awvs
AWVS ( Acunetix Web Wulnerability Scanner)是一个自动化的Web 应用程序安全测试工具,它可以扫描任何可通过Web 浏览器访问的和遵循 HTTP/HTTPS 规则的 Web站点和 Web应用程序、国内普遍简称WVS
6.7.Nmap
端口扫描器
Nmap被用于发现网络和安全审计。据数据统计,全世界成千上万的系统管理员使用nmap发现网络、检查开放端口、管理服务升级计划,以及监视主机或服务的正常运行时间。Nmap是一种使用原始IP数据包的工具,以非常创新的方式决定网络上有哪些主机,主机上的哪些服务(应用名称和版本)提供什么数据、什么操作系统、什么类型、什么版本的包过滤/防火墙正在被目标使用6.8.kail Linux
目前比较流行的安全渗透测试平台,包含了最新的安全测试工具,允许用户从CD或者U盘启动,通过U盘来实施安全渗透测试
6.9.Acunetix
网络漏洞扫描器
Acunetix是一款非常受欢迎并且非常使用的自动漏洞扫描器,Acunetix通过抓取和扫描网站和Web应用的SQL注入、XSS、XXE、SSRF和主机头攻击和其他500多个web漏洞大家如果还有更实用厉害的工具,可以告诉我,我来补充哈,谢谢大家
-
什么是沙箱机制
2020-02-20 17:07:251.为什么需要沙箱机制? 默认情况下,一个应用程序是可以访问机器上的所有资源的,比如CPU、内存、文件系统、网络等等。 但是这是不安全的,如果随意操作资源,有可能破坏其他应用程序正在使用的...2.什么是沙箱机...1.为什么需要沙箱机制?
默认情况下,一个应用程序是可以访问机器上的所有资源的,比如CPU、内存、文件系统、网络等等。
但是这是不安全的,如果随意操作资源,有可能破坏其他应用程序正在使用的资源,或者造成数据泄漏。为了解决这个问题,一般有下面两种解决方案:
(1) 为程序分配一个限定权限的账号:利用操作系统的权限管理机制进行限制
(2) 为程序提供一个受限的运行环境:这就是沙箱机制2.什么是沙箱机制?
如上所述,沙箱就是一个限制应用程序对系统资源的访问的运行环境。沙箱很多情况下都是实现在虚拟机(VM)中,比如Java的虚拟机JVM、Javascript的虚拟机V8引擎、Android中的虚拟机Dalvik/ART,以及以太坊的虚拟机EVM等等。具体的实现方式各有不同,本文重点分析一下JVM和EVM的沙箱机制实现。
3.JVM的沙箱机制
JVM的沙箱机制大致可以分为三层:
什么是沙箱机制
第一层:类加载器
采用双亲委派模型,低层类加载器在收到类加载请求时,需要先委派给高层类加载器区完成,只有在高层类加载器无法完成该请求时,才会再重新委派给低层类加载器。通过这一机制,确保了系统的核心类不会被篡改,恶意代码无法访问关键资源。
第二层:字节码校验器
类字节码被加载后,需要在字节码层面进行检验,具体包括以下内容:
(1) 变量要在使用之前进行初始化
(2) 方法调用与对象引用类型之前要匹配
(3) 访问私有数据和方法的规则没有被违背
(4) 对本地变量的访问落在运行时堆栈内
(5) 运行时堆栈没有溢出通过这一机制,可以确保字节码符合Java语言规范,避免访问无效访问或越界访问。第三层:安全管理器
这一层是交由应用开发者来维护的,开发者可以根据自身需求,制定对应的安全策略。默认的安全策略配置位于以下两个配置文件中:· $JAVA_HOME/conf/security/java.security
· $JAVA_HOME/conf/security/java.policy默认情况下安全管理器是不开启的,可以在命令行增加一个参数来开启它:
java -Djava.security.manager SandboxTest
默认的安全策略配置不允许应用程序对文件的读写操作,所以如果你试图写一个文件,运行时会报如下错误:
如果你希望开放这个权限,可以编写自己的安全策略文件,比如我们写一个my.policy:
然后在运行时指定这个策略配置就可以了:
java -Djava.security.manager -Djava.security.policy=。/my.policy SandboxTest
应用开发者可以针对不同的应用场景进行精细化定制,控制程序对网络、文件、属性等内容的访问权限。4.EVM的沙箱机制
EVM本身是一个相对封闭的环境,不支持对网络和文件系统的直接访问,从这个层面来说已经起到一部分沙箱的功能了:
另外,在智能合约之间互相调用时,EVM会重新分配堆栈和内存空间,在一个全新的环境中运行新合约,即使出现问题也不会破坏原有执行环境,从而为智能合约的执行提供了一个沙箱环境。
最后,每个智能合约的存储也是相互独立的,开发者可以根据需求,限制合约可以访问的存储空间,避免未授权的访问或修改。举例来说,下图就描述了CALL和CALLCODE指令对存储空间访问的区别:
-
Hadoop集群的webUI监控界面设置Simple安全机制
2019-06-10 15:13:19Hadoop集群配置完成,web监控界面的50070和50030端口不需用户验证即可访问,对生产环境是不容许的,需要加上安全机制。 1、修改core-site.xml,增加如下内容,配置完成后拷贝到其他节点上。 <property> &... -
java中bean是什么意思?有什么作用 | 学步园
2021-02-28 17:58:29Bean的中文含义是“豆子”,... Bean也有持续性,持续性就是一种把一个组件的状态存在一个安全处的机制。有了这种持续性,它能使,比如说,一个组件(bean)“记住”某个特定用户在早些时候的用户对话中所输入的数据。 -
Hadoop安全机制
2016-05-25 17:42:51Hadoop集群安全 Hadoop自带两种安全机制:Simple机制、Kerberos机制 -
Kubernetes 集群安全机制详解
2019-08-22 13:25:38本文主要介绍 Kubernetes 的安全机制,如何使用一系列概念、技术点、机制确保集群的访问是安全的,涉及到的关键词有:api-server,认证,授权,准入控制,RBAC,Service Account,客户端证书认证,Kubernetes 用户,... -
RPA中, COE是什么意思? 它的职责是什么?
2020-08-16 12:37:23风险和安全控制管理 负责预先制定机器人运营风险控制指南,拟定RPA的安全操作手册,并建立安全风险监控和预警机制;制定机器人的应急处理方案。在架构层面,CoE负责搭建具有高可用性和灾难恢复的RPA机器人技术框架。... -
AD域是什么意思?有什么用?
2021-09-16 13:46:27但很多少数人,不清楚AD域是什么意思?AD域有什么用?今天我们小编就跟大家一起聊聊。 AD域是什么意思? AD域是Windows网络中独立运行的单位,域之间相互访问则需要建立信任关系(即Trust Relation)。信任关系是... -
什么是线程安全?如何保证线程安全?
2019-05-27 23:22:44什么是线程安全 参考: 《Java并发编程实践》中对线程安全的定义: 当多个线程访问一个对象时,如果不用考虑这些线程在运行时环境下的调度和交替执行,也不需要进行额外的同步,或者在调用方进行任何其他的协调操作... -
数据库管理系统(DBMS)是用来做什么的?
2021-01-20 03:21:13展开全部数据库管理系统(database management system)是一种操纵和...它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过dbms访问数据库中的数据,数据库管理员也通过dbms进行... -
HTTPS协议加密是什么?深入解析HTTPS机制
2019-06-13 10:51:07HTTPS基础知识:HTTPS (Secure Hypertext Transfer Protocol)安全超文本传输协议,是一个安全通信通道,它基于HTTP开发用于在客户计算机和服务器之间交换信息。它使用安全套接字层进行信息交换,简单来说它是HTTP的... -
SSL是什么?其含义和机制最易理解的解说!
2020-07-31 17:29:12在建立SSL通信之前 在层次结构中验证有效性 防篡改和防冒充 什么是防篡改? 什么是防冒充? 由受信任的第三方“证书颁发机构”保证 SSL限制 总结 参考 SSL负责Internet通信的加密(https转换),我们将以浅显易懂的... -
ukey证书是什么意思_什么是证书?
2020-07-12 15:45:19但是什么是证书,为什么它们会过期,又为什么会产生如此大的影响? 要回答这些问题,让我们退后一步,看看为什么首先需要证书。 让我们假设两个人,爱丽丝和鲍勃,想要交换秘密信息。 让我们进一步说,鲍勃实际上... -
什么是TOKEN?Token小号的理解运用,拼多多,知乎,快手,抖音的Token是什么意思
2020-12-19 04:43:14对于初学者来说,可能很难会理解Token,经常会在互联网上看到出售各种渠道的token,那么token到底是什么?其原理又是什么?首先和Token相对应的有一个Session, what?怎么又懵逼了?Session又是什么?当我们理解完Session的... -
什么是反射机制?反射机制的应用场景有哪些?
2020-03-28 19:39:33反射机制介绍 JAVA 反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为 java ... -
什么是SLA?SLA管理包括哪些内容?
2021-12-10 12:50:59一、什么是SLA? 二、影响SLA的定义因素有哪些? 2.1客户的特征是影响SLA定义的重要因素。 2.2服务的重要程度也是一个定义SLA的关键因素。 2.3提供商和消费者之间的交互类型也是一个定义SLA的关键因素。 三、... -
网络安全专业名词解释
2022-03-04 16:02:18Bypass就是绕过的意思,渗透测试人员通过特殊语句的构建或者做混淆等进行渗透测试,然后达到绕过WAF的手法。 C2全称为Command and Control,命令与控制,常见于APT攻击场景中。作动词解释时理解为恶意软件与攻击者... -
功能安全学习笔记002-功能安全的定义
2018-04-07 21:52:591,功能安全的定义1.1 本质安全与功能安全为了了解功能安全的概念,先得熟悉下 和“本质安全”和“功能安全”的概念。假如以铁道的路口为例,比较一下基于两种安全概念的避免路口事故的方法。这里避免路口事故就是... -
安全机制 - 白名单
2017-04-21 15:28:51安全机制 - 白名单 -
区块链是什么意思?
2018-05-31 10:52:02区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法 。 区块链(Blockchain)是比特币的一个重要概念,... -
什么是域?域的相关概念
2021-08-03 02:50:241.什么是域域是由网络上的用户和计算机组成的一个逻辑组或逻辑集合。域中所有的对象都存储在活动目录下。一个网络可以建立一个或多个域,每个域都是一个安全界限,这意味着各种权限的设置不能跨越不同的域。简单地说... -
什么是SSH
2019-10-05 15:37:28一、什么是远程连接服务器 1、远程连接服务器通过文字或图形接口方式来远程登录系统,让你在远程终端前登录linux主机以取得可操作主机接口(shell),而登录后的操作感觉就像是坐在系统前面一样。 2、远程连接... -
人工智能安全学习笔记
2022-03-20 15:08:51网络安全技术涉及法律法规、政策、策略、规范、标准、机制、措施、管理和技术等方面,是网络安全的重要保障。 信息、物资、能源已经成为人类社会赖以生存与发展的三大支柱和重要保障,信息技术的快速发展为人类社会... -
个人信息安全规范----8、组织的个人信息安全管理要求
2021-12-13 10:21:53个人信息安全规范 -
学习笔记:FW内容安全概述
2020-03-05 20:08:46内容安全概述信息安全概述主要威胁关于防护简介内容安全威胁应用层威胁内容安全技术WEB安全应用安全入侵防御检测邮件安全数据安全网络安全反病毒全局环境感知沙箱检测 信息安全概述 • 信息安全是对信息和信息系统... -
java和python是什么
2020-12-01 17:08:02展开全部java是什么?Java源自C,拥有跨平台、面向对象62616964757a686964616fe58685...同时,Java对通过网络下载的类具有一个安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检... -
什么是LoRaWAN
2021-12-01 11:27:33LoRaWAN是一种开放式网络协议,可提供由LoRa联盟标准化和维护的安全双向通信,移动性和本地化服务。 2 LoRaWAN网络 下图是端到端的典型LoRaWAN网络实现,主要包括4个部分: 终端设备 LoRaWAN网关 网络服务器 ... -
网络安全术语表(英文-缩写-中文-定义)
2022-03-22 15:36:02Authentication Authorization Accounting 3A 认证、授权、计帐 Authentication Authorization Accounting Audit 4A 统一安全管理平台解决方案 Back-End System 后端系统 Bad Rabbit 狡兔勒索病毒 Bad Rabbit 是一...