python网络安全面试题_网络安全经典面试题(二)

1.简述常见的非对称加密算法和对称加密算法?

常见的非对称加密算法有;RSA、Diffie-Hellman(DH) 、椭圆曲线算法(ECC). 其中使用最广泛的是RSA算法。

常见的对称加密算法有:DES算法,3DES算法,TDEA算法,Blowfish算法,RC5算法,IDEA算法

2.简述生成树协议及其原理?

生成树协议(英语:Spanning Tree Protocol,STP),是一种工作在OSI网络模型中的第二层(数据链路层)的通信协议,基本应用是防止交换机冗余链路产生的环路.用于确保以太网中无环路的逻辑拓扑结构.从而避免了广播风暴,大量占用交换机的资源.

生成树协议工作原理:任意一交换机中如果到达根网桥有两条或者两条以上的链路.生成树协议都根据算法仅仅保留一条,把其他切断,从而保证任意两个交换机之间只有一条单一的活动链路。因为这种生成的这种拓扑结构,很像是以根交换机为树干的树形结构.故为生成树协议。

3.详述后台开发语言分哪些种类及其优缺点?

一般公司的后台用的开发语言大概有以下几种:java,python,php,http://asp.net,c++,rubyon rails 等等

java

优点:性能好,适合大中项目,跨平台,安全性高,稳定可靠,运行效率高(尤其是JIT的出现之后差距更大了),不容易犯错(强类型、预编译、必须拦截异常等等),能有效的提高复用度,提升性能和吞吐能力,能规避安全问题。

缺点:开发复杂,开发和发布的效率相对较低,维护成本高,开发人员费用高

python

优点:简单易学,开发快,语言简洁,易于维护,开源,可移植,可扩展

缺点: 速度慢,格式强制,容易犯错

php:

优点:灵活,上手快,易修改,发布快捷,环境好部署

缺点:容易犯错,行效率不高,缺乏全局缓存

ruby on rails

优点:快速开发,使用者多,开发控件非常丰富

缺点:性能差,第三方包少

http://asp.net

优点:跨语言, 中小型项目上性能好,开发快,适合windows平台,维护成本低

缺点:代码逻辑混乱,难于管理,代码的可重用性差

国内的大公司偏业务的一般都用 Java 做后台开发比如淘宝,网易,美团等. Python国内一般是一些体量不是这么大的公司使用,例如豆瓣,知乎等。其实,各种语言都有优缺点,没有哪一种是绝对好的。各公司也不是单单只使用一种后台语言,都是结合起来开发的。上述的各种语言的优缺点也是相对的,并不是说明哪种语言多么好多么不好,而且,技术是发展的。

不同公司用不同后台开发语言也有各自的原因。比如,要看需求是重展现还是重业务逻辑,重展现就用php等,重业务逻辑就用python等,也有原因是由于技术积累,比如腾讯一直用c++。

4.Android有些APP会为了安全,禁止录屏和截屏,例如:金融、银行相关的。它们怎么实现?

禁止录屏和截屏并不难,只需要在 Activity 的onCreate() 方法中添加一行代码即可:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE);

添加这行代码后,当截屏的时候,系统会弹出一个Toast提示“禁止屏幕抓取”;当录屏的时候,看似能够正常录制,但是保存后的视频,都是一片黑色,并没有APP的相关界面。

5.入侵检测分哪几种?分别介绍下

分为两种,HIDS和NIDS

基于主机型入侵检测系统HIDS全称是Host-based Intrusion Detection System。作为计算机系统的监视器和分析器,它并不作用于外部接口,而是专注于系统内部,监视系统全部或部分的动态的行为以及整个计算机系统的状态。

由于HIDS动态地检查网络数据包这一特性,它可以检测到哪一个程序访问了什么资源以及确保文字处理器(Word-Processor)不会突然的、无缘无故的启动并修改系统密码数据库。同样的,不管是往内存、文件系统、日志文件还是其它地方存储信息,HIDS会一直监控系统状态,并且核对他们是否和预期相同。

HIDS运行依赖于这样一个原理:一个成功的入侵者一般而言都会留下他们入侵的痕迹。这样,计算机管理员就可以察觉到一些系统的修改,HIDS亦能检测并报告出检测结果。

一般而言,HIDS使用一个它们所监视的目标系统以及文件系统(非必需)的数据库,HIDS也可以核对内存中未被非法修改的区域。对于每一个正被处理的目标文件来说,HIDS会记录下他们的属性(如权限、大小、修改时间等)然后,如果该文件有其文件内容的话,HIDS将会创建一个校验码(如SHA1,MD5或类似)。这个校验码信息将储存在一个安全的数据库中,即校验码数据库,以便将来的核对。

网络入侵检测系统(network intrusion detection system,NIDS),是指对收集漏洞信息、造成拒绝访问及获取超出合法范围的系统控制权等危害计算机系统安全的行为,进行检测的软件与硬件的组合。

NIDS的目的是从网络上的TCP/IP消息流中识别出潜在的攻击行为。

6.Hydra参数有哪些,各什么意义?

使用 “-l” 选项指定单个登录名,使用 “-p” 选项指定单个密码。使用 “-L” 选项指定一个文件来指定多个登录名,使用 “-P” 选项指定一个文件来指定多个密码,“-t”表示使用线程.

7.什么是端口敲门?

如果你有一台公众可访问的服务器,黑客可以轻松扫描其IP地址,查找服务器上的开放端口(尤其是用于SSH的端口22)。将服务器隐藏起来、不让黑客看见的一种方法是使用knockd。knockd是一种端口试探服务器工具。它侦听以太网或其他可用接口上的所有流量,等待特殊序列的端口命中(port-hit)。telnet或Putty等客户软件通过向服务器上的端口发送TCP或数据包来启动端口命中。

端口敲门服务,即:knockd服务。该服务通过动态的添加iptables规则来隐藏系统开启的服务,使用自定义的一系列序列号来“敲门”,使系统开启需要访问的服务端口,才能对外访问。不使用时,再使用自定义的序列号来“关门”,将端口关闭,不对外监听。进一步提升了服务和系统的安全性。

8.什么是堡垒机?

堡垒机其从功能上讲,它综合了核心系统运维和安全审计管控两大主干功能,从技术实现上讲,通过切断终端计算机对网络和服务器资源的直接访问,而采用协议代理的方式,接管了终端计算机对网络和服务器的访问。形象地说,终端计算机对目标的访问,均需要经过运维安全审计的翻译。打一个比方,运维安全审计扮演着看门者的工作,所有对网络设备和服务器的请求都要从这扇大门经过。因此运维安全审计能够拦截非法访问和恶意攻击,对不合法命令进行命令阻断,过滤掉所有对目标设备的非法访问行为,并对内部人员误操作和非法操作进行审计监控,以便事后责任追踪

9.什么是selinux?

安全增强型 Linux(Security-Enhanced Linux)简称 SELinux,它是一个 Linux 内核模块,也是 Linux 的一个安全子系统。SELinux 主要作用就是最大限度地减小系统中服务进程可访问的资源(最小权限原则)。

设想一下,如果一个以 root 身份运行的网络服务存在 0day 漏洞,黑客就可以利用这个漏洞,以 root 的身份在您的服务器上为所欲为了。是不是很可怕?SELinux 就是来解决这个问题的。

信息安全评估级别:四类7等级,D,C1,C2,B1,B2,B3,A 其中,selinux属于B1级别,相当于军事级别

MAC(强制访问模式)

在使用了 SELinux 的操作系统中,决定一个资源是否能被访问的因素除了某个资源是否拥有对应用户的权限(读、写、执行)之外,还需要判断每一类进程是否拥有对某一类资源的访问权限。

这样一来,即使进程是以 root 身份运行的,也需要判断这个进程的类型以及允许访问的资源类型才能决定是否允许访问某个资源。进程的活动空间也可以被压缩到最小。

即使是以 root 身份运行的服务进程,一般也只能访问到它所需要的资源。即使程序出了漏洞,影响范围也只有在其允许访问的资源范围内。安全性大大增加。

这种权限管理机制的主体是进程,也称为强制访问控制(MAC)。

而 MAC 又细分为了两种方式,一种叫类别安全(MCS)模式,另一种叫多级安全(MLS)模式。

SELinux 有三种工作模式,分别是:

1. enforcing:强制模式。违反 SELinux 规则的行为将被阻止并记录到日志中。

2. permissive:宽容模式。违反 SELinux 规则的行为只会记录到日志中。一般为调试用。

3. disabled:关闭 SELinux。

SELinux 工作模式可以在 /etc/selinux/config 中设定。

如果想从 disabled 切换到 enforcing 或者 permissive 的话,需要重启系统。反过来也一样。

enforcing 和 permissive 模式可以通过 setenforce 1|0 命令快速切换。

需要注意的是,如果系统已经在关闭 SELinux 的状态下运行了一段时间,在打开 SELinux 之后的第一次重启速度可能会比较慢。因为系统必须为磁盘中的文件创建安全上下文。

SELinux 日志的记录需要借助 auditd.service 这个服务,请不要禁用它。

10.永恒之蓝漏洞原理及防御方法?

恶意代码会扫描开放445文件共享端口的Windows机器,无需用户任何操作,只要开机上网,不法分子就能在电脑和服务器中植入勒索软件、远程控制木马、虚拟货币挖矿机等恶意程序。

微软已于2017 年 发布MS17-010补丁,修复了“永恒之蓝”攻击的系统漏洞,一定要及时更新Windows系统补丁;务必不要轻易打开doc、rtf等后缀的附件;内网中存在使用相同账号、密码情况的机器请尽快修改密码,未开机的电脑请确认口令修改完毕、补丁安装完成后再进行联网操作,可以下载“永恒之蓝”漏洞修复工具进行漏洞修复。

11.如果你单位有一台打印机需要445开启服务,而服务器有永恒之蓝漏洞,你怎样确保安全打印?

做补丁,做流量监控,做防火墙入站规则设置

12.CSRF漏洞原理?如何防御?

跨站请求伪造(Cross Site Request Forgery,CSRF) 。CSRF 是⼀种欺骗受害者提交恶意请求的攻击。它继承了受害者的身份和特权,代表受害者执⾏⾮本意的、恶意的操作。

CSRF 攻击的重点在于更改状态的请求,⽽不是盗取数据,因为攻击者⽆法查看伪造请求的响应。

借助于社⼯的⼀些帮助,例如,通过电⼦邮件或聊天发送链接,攻击者可以诱骗⽤户执⾏攻击者选择的操作。如果受害者是普通⽤户,则成功的CSRF 攻击可以强制⽤户执⾏更改状态的请求,例如转移资⾦、修改密码等操作。如果受害者是管理账户,CSRF 攻击会危及整个Web 应⽤程序。

通过 标签构造GET 请求。这个GET 请求来⾃于受害者,是⽤户发起的转账请求。受害者访问⽹站的时候加载了 标签。浏览器会根据 标签中的SRC 属性,请求服务器资源(GET ),会⾃动带上身份认证信息(Cookie)。

alt='宝⼑在⼿,谁与争锋'>

post方式也同样会

meta charset='utf-8'>

method='post'>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值