山东大学网络攻击与防范2024.1

大四混子选了大三的课混学分,一学期也没上课,下面是我的期末整理

感谢刘同学一学期以来的通风报信

参考了下面这些学长学姐的链接:

山东大学软件学院网络攻击与防范2022-2023林丰波100词详解_林丰波系统安全-CSDN博客

山东大学软件学院网络攻击与防范21年往年题回忆版+答案整理_山大计算机系统网络安全试题-CSDN博客

一、名词解释

1. 74/75破解方法

在汇编指令中,相等则跳转机器码74,不相等则跳转机器码75。在破解中常将74换成75,比如在输入密码是,可能是判断密码正确就跳转74,但是我们输入的都猜不对,就会顺序执行到错误的出口,如果我们改成跳转74,那么输入一个错误密码就能跳转到正确出口,登录成功。

2. CTF

中文一般翻译为夺旗赛,在网络安全领域中指的是网络安全技术人员之间进行技术竞技的一种比赛形式。CTF有答题与攻防两种形式,答题一般有六个方向:MISC, WEB, PWN, REVERSE, CRYPTO,MOBILE。

3. Cookie

Cookie机制指的是在浏览网页的时候,服务器将你的登录信息,浏览信息等发送给客户端并保存一段时间,下次访问时可以读取上一次的记录。

4. CreateRemoteThread

创建在另一个进程的虚拟地址空间中运行的线程,DDL注入后往往拥有另一个进程的访问权限,此时可以通过该函数攻击。

5. DDOS

分布式拒绝服务攻击,DDOS攻击将多个计算机联合起来作为攻击平台,对一个或者多个目标发动攻击,从而成倍的提高拒绝服务攻击的威力。通过大量的请求占用大量网络资源,达到网络瘫痪的目的。

6. DEP

Data Execution Prevention,数据执行保护,简称DEP,是一组在存储器上运行额外检查的硬件和软件技术,有助于防止恶意程序码在系统上运行。

7. DLL inject

DLL注入技术,向一个正在运行的进程注入代码的过程注入的代码以动态链接库(DLL)的形式存在。被注入的动态链接库可以利用它所在的进程权限执行一些特殊任务,比如修改进程内存中的数据,劫持进程的执行流程,监控进程的行为。

8. DLP

Data Leak Prevention,数据防泄漏工具。有时候数据泄露来自于团队内部成员,比如团队成员利用权限进行拖库操作,DLP相关工具可以防止类似情况发生。该工具普及不多,主要依靠制度防范数据泄露,常见软件有OpenDLP与MyDLP等。

9. DRM

Digital Right Management 数字版权管理,目前对网络中传播的数字作品进行版权保护的主要控制手段。DRM是由美国出版商协会定义的,在数字内容交易过程中对知识产权进行保护的技术,工具和处理过程。

基本的工作原理为:利用秘钥将音频、视频等文件进行加密的编码处理,再建立一个证书授权服务中心,加密的数字节目头部存放着key IP和节目授权中心的URL,当用户使用加密文件时,应用软件会根据其包含在头文件中的有关属性自动链接到相应站点获取相应证书。

10. GDPR

General Data Protection Regulation 通用数据保护条例,在欧盟法律中对所有欧盟个人关于数据保护和隐私的规范,涉及了欧盟境外的个人资料出口。违反GDPR将面临高额罚款,GDPR也是以重罚为手段,试图倒逼企业完善个人数据保护的制度。

11. HTTPS

HTTP是明文传输,所以会很有可能产生中间人攻击,HTTPS加密应运而生。

为了解决这个安全问题,HTTPS在HTTP基础上添加了一层安全套接层(SSL)或传输层安全性(TSL)协议,这个安全层使用加密算法保护数据传输,确保在浏览器和服务器之间的通信是安全的和私密的。

12. ICAP

Internet Content Adaptation Protocol(互联网内容适配协议)的缩写,是一种用于在网络流量中应用内容适应和修改的协议主要目的是允许网络中的设备通过外部服务对传输内容进行修改、适应、审查

它在本质上是在HTTP message上执行RPC远程过程调用的一种轻量级的协议, 也就是说, 它让ICAP Client可以把HTTP Message传给ICAP Server,  然后ICAP Server可以对其进行某种变换或者其他处理(“匹配”).被变换的message可以是HTTP请求也可以是HTTP应答. 

13. IDA pro

IDA全称是交互式反汇编器专业版(Interactive Disassembler Professional),简称IDA,目前最棒的静态反编译软件,IDA Pro是一款交互式的,可编程的,多处理器的,被称为最好的花钱可以买到的逆向工程利器。

14. Kerberos

Kerberos是一个网络身份验证协议,它提供了一种安全的身份验证机制,允许在不安全的网络上的用户和服务进行安全通信。步骤如下:

认证请求: 用户向Kerberos认证服务器请求认证,提供自己的身份信息。

  1. 票据颁发: Kerberos服务器验证用户身份,并生成一个加密的票据(Ticket)。这个票据包含有关用户身份和授权信息的加密信息。
  2. 票据传递: 用户向需要验证身份的服务发出请求,同时提供由Kerberos服务器颁发的票据。
  3. 票据验证: 服务使用共享密钥与Kerberos服务器共同解密票据,验证用户的身份和授权信息。
  4. 会话建立: 一旦票据被验证,服务和用户之间建立一个安全的会话,允许双方进行安全通信。

15. Metasploit

MetaSploit Framework是一个开源的渗透测试框架,提供了一组工具和模块,用于网络安全测试、漏洞利用和渗透测试。附带数千个已知的软件漏洞,并保持持续更新。Metasploit可以用来信息收集、漏洞探测、漏洞利用等渗透测试的全流程,被安全社区冠以“可以黑掉整个宇宙”之名。

渗透测试(Penetration Testing)是一种安全性测试方法,目的是模拟恶意黑客攻击,以评估计算机系统、网络或应用程序的安全性。渗透测试旨在识别潜在的漏洞和弱点,以帮助组织加强其安全防御,并保护敏感信息免受未经授权的访问、损害或窃取

16. NAS

Network Attached Storage 网络附加存储,一种专门用于数据存储和共享的设备,通过网络连接提供文件服务。NAS通常是一个独立的硬件设备,也可以是一个运行特定NAS软件的服务器,主要目的是通过网络提供文件访问服务,让多个用户可以方便地共享和访问存储在其中的数据。

17. O-LLVM 

Obfuscator-LLVM基于LLVM的代码混淆工具,代码混淆工具是一种用于混淆源代码以防止反编译的工具。使用各种技术更改代码的结构和语法,使其难以被阅读或理解,一些常用的混淆技术包括重命名变量和函数、添加无用代码、更改代码流程等。

18. PAP

两次握手认证,通过链路建立阶段协商的认证方式进行链路认证

第一次握手,被认证方将配置的用户名和密码信息以明文方式发送给认证方

第二次握手,认证方收到被认证方发送的用户名和密码信息之后,根据本地配置的用户名和密码数据库检查用户名和密码信息是否匹配,如果匹配的话则返回ACK报文,表示认证成功。否则返回NAK报文表示认证失败。

19. PKCS#11

PKCS#11是密码学标准的一部分,全称Public Key Crytography Standard #11,定义了一个应用程序编程接口API,用于在安全硬件设备中执行加密操作、签名和秘钥管理等安全功能。

20. Phishing

钓鱼是一种网络欺诈手段,目的是通过欺骗和诱导用户提供个人敏感信息,如用户名、密码、信用卡号等。攻击者通常伪装成可信赖的实体,如银行、电子邮件服务提供商、社交媒体平台等,以欺骗用户相信他们正在与合法实体进行通信。

21. RADIUS

Remote Authentication Dial-In User Service 远程身份验证拨号用户服务,是一种广泛用于网络访问控制和身份验证的协议。最初设计用于拨号用户通过拨号接入服务进行身份验证,后来也被用于其他类型的网络访问,如无线局域网、虚拟专用网络等。

RADIUS协议主要功能包括,身份验证、授权、计费。

22. SGX

Software Guard Extensions 软件保护扩展,是Intel推出的一种硬件级别的安全技术,主要目标是提供一种安全的执行环境,使得敏感数据和代码在计算机上运行时可以受到保护。

主要特点如下:

    1. 使用安全的执行环境使应用程序在受保护的区域内运行
    2. 通过硬件隔离,使得敏感数据在enclave内部得到保护,防止恶意软件或其他应用程序访问这些数据
    3. 还可以用于保护应用程序的关键代码片段,防止非授权的代码修改
    4. 提供一种可信计算的机制,使得计算过程可以被验证,并且能在运行时保护敏感信息

23. SSO

Single Sign-On 单点登录,一种身份验证和授权机制,允许用户使用一组凭证登录到多个相关但是独立的软件系统或应用程序中,无需为每个系统单独进行身份验证。SSO的主要目标是提供用户友好的身份验证体验,同时减轻用户对多个系统和服务进行独立登录的负担。具体来说,当用户成功登录到一个系统后,他们无需再次输入凭证就可以访问其他受信任的系统,因为这些系统之间实现了共享的身份验证信息。

24. SYN flood

TCP-SYN Flood攻击又称半开式连接攻击,每当我们进行一次标准的TCP连接,都会有一个三次握手的过程,而TCP-SYN Flood在它的实现过程中只有前两个步骤。这样,服务方会在一定时间内处于等待接收请求方ACK消息的状态。由于一台服务器可用的TCP连接是有限的,如果恶意攻击方快速连续的发送此类连接请求,则服务器可用的TCP连接队列将会很快阻塞,系统资源和可用带宽急剧下降,无法提供正常网络服务,从而造成拒绝服务。

25. Shellcode

缓冲区溢出的常用攻击方法,使用shellcode地址覆盖漏洞程序的返回地址,使得漏洞程序去执行存放在栈中的shellcode。为了阻止这种类型的攻击,一些操作系统使得系统管理员具有使栈不可执行的能力。

26. TOR

匿名网络。TOR用户在本机运行一个洋葱代理服务器(onion proxy),这个代理器周期的与其他TOR交流。其中每个路由器的传输都经过对等秘钥来加密,形成具有层次的结构。进入TOR网络后,加密信息在路由器间层层传递,最后到达出口节点,明文数据从这个节点直接发往原来目的地。对于目的主机而言是从出口节点发来信息,要注意的是明文信息即使在TOR网络中是加密的,离开TOR后仍然是明文的。

27. VNC

Virtual Network Computing是一种远程桌面协议,允许用户远距离查看和控制另一台计算机上的桌面。VNC通过网络将远程计算机的屏幕和键盘/鼠标输入传送到本地计算机,从而使用户可以在本地计算机上远程操作。

在网络攻防中,VNC可被黑客用来进行远程攻击和控制,因此使用VNC时应该配置安全性高的密码,并且及时更新软件。

28. Windows更新服务

WSUS(windows server update services)是微软提供的用于管理windows更新的服务,可以让管理员在本地部署一个更新服务器,以便更新组织内的windows计算机,便于管理员进行windows更新补丁管理。WSUS可以通过下载微软的更新补丁,并将其分发到组织内的计算机来提高windows系统的安全性、稳定性。

网络攻防中,WSUS可以帮助防止攻击者利用已知漏洞进入网络,通过使用WSUS,管理员可以确保所有客户端都安装了最新的安全更新,降低被攻击的风险。

29. Wireshark

Wireshark是一个网络封包分析软件,网络封包分析软件的功能是截取网络封包,并尽可能显示出最详细的网络封包资料。使用winPCAP作为接口,直接与网卡进行数据报文交换。

30. WriteProcessMemory()

WriteProcessMemory是C++中的函数,可以写入某一进程的内存区域,直接写入会出现Access violation错误,因此需要此函数入口区必须可以访问,否则将操作失败。

31. XKMS

XML key Management Specification 是一种用于在计算机网络上管理和分发公钥和其他安全令牌的标准,旨在提供一种标准化的方式,使应用程序能够通过XML协议进行密钥管理操作。总的来说,XKMS通过标准化密钥管理服务,使得安全性的实现更加便捷,支持在不同应用和系统之间共享和管理安全令牌。

32. XSS

跨站脚本攻击,允许攻击者在不被授权的情况下将恶意代码注入到网页中,影响到访问该网页的用户。攻击者可以利用XSS漏洞来窃取用户的私人信息,也可以改变网站的外观和行为,以欺骗用户。

33. botnet

僵尸网络是采用一种或多种传播手段,将大量主机感染僵尸程序病毒,从而在控制者和被感染者之间形成一对多的控制网络。

34. chmod 

chmod是Unix和类Unix操作系统中的一个命令,用于更改文件或目录的权限。该命令允许用户定义文件或目录的读、写和执行权限,以及文件的所有者、所属组和其他用户的权限

35. cmd5.com

一个在线MD5加密解密服务网站。cmd5.com 提供了以下服务:

MD5加密: 用户可以在该网站上输入文本,然后网站将生成该文本的MD5哈希值。

MD5解密: 用户可以输入已知的MD5哈希值,然后网站将尝试返回对应的原始文本。这一点有一定的局限性,因为MD5是一种不可逆的哈希函数,但该网站可能通过查找已知的MD5值和其对应的原始文本的数据库来提供服务。

36. curl

curl 是一个用于在命令行下进行数据传输的工具和库。它支持许多协议,包括HTTP、HTTPS、FTP、FTPS、SCP、SFTP等。curl 可以用于从或向服务器传输数据,支持各种不同的操作和选项。

37. dex2jar

将dex文件转换为包含class文件的jar文件,反编译的逆向工程,不一定成功。

38. docker

开源的应用容器引擎,开发者可以打包他们的应用和依赖包到一个可移植的镜像中,发布到任何流行的Linux或Windows操作系统容器中,实现虚拟化。

39. git

开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。

40. heartbeat

通过HeartBeat,可以将资源(IP以及程序服务等资源)从一台已经故障的计算机快速转移到另一台正常运转的机器上继续提供服务,一般称之为高可用的服务。

HeartBeat的工作原理:通过修改Heartbeat的软件的配置文件,可以制定那一台Heartbeat服务器作为主服务器,则另一台将自动成为热备服务器。然后在热备服务器上配置Heartbeat守护程序来监听来自主服务器的心跳消息。如果热备服务器在指定时间内为监听到来自主服务器的心跳,就会启动故障转移程序,并取得主服务器上的相关资源服务的所有权,接替主服务器继续不间断的提供服务,从而达到资源以及服务高可用的目的。

41. heartbleed 

heartbleed 漏洞的产生是由于未能在memcpy( )调用受害用户输入内容作为长度参数之前正确进行边界检查。攻击者可以追踪OpenSSL所分配的64KB缓存,将超出必要范围的字节信息复制到缓存中再返回缓存内容,这样一来受害者的内容就会以64KB的速度进行泄露。

此问题的原因是在实现TLS的心跳扩展时没有对输入进行适当验证,因此漏洞名称为heartbleed 。

42. honeypot

蜜罐技术本质上是一种对攻击方进行欺骗的技术,通过布置一些作为诱饵的主句、网络服务或者信息,诱导攻击方对它们实施攻击。从而可以通过对攻击行为进行捕获和分析,了解攻击方所使用的的工具与方法,推测攻击意图和动机,能够让防御方清晰的了解它们所面对的安全威胁,并且通过技术和管理手段来增强实际系统的安全防护能力。

蜜罐更像是一个情报收集系统,提供一个安全的被攻击环境,以此来收集服务器是怎么被攻击的等信息,还可以通过窃听黑客之间的联系,收集黑客用的工具吗,掌握他们的社交网络。

43. iptables 

集成在Linux内核中的包过滤防火墙系统,是linux防火墙系统的主要组成部分。iptables的主要功能是实现对网络数据包进出设备及转发的控制,当数据报需要进入设备、从设备中流出或者由该设备转发、路由时,都可以使用iptables进行控制。

44. mydlp 

DLP Data Loss Prevention,数据防泄漏工具。有时候数据泄露来自于团队的内部成员,比如团队成员利用权限进行拖库操作,DLP相关工具可以防止类似情况的发生。该类工具普及不多,主要依靠制度防范数据内部泄露,常见软件有OpenDLP和MyDLP等。

45. nmap 

Network Mapper 是一个网络扫描和主机发现工具,可以用来查找网络上的主机、服务和操作系统信息。Nmap可以扫描整个网络或单个主机,并且可以生成详细报告。还可以用于安全评估,帮助识别未修补漏洞和其他安全问题。

46. ntop/ntopng 

  ntopng:ntop next generation是一个开源网络流量监测工具,可以收集、分析、报告网络流量数据,包括IP协议分布、主机流量、应用程序流量等,ntopng还可以用于监测和诊断网络性能问题,提供了web界面和API访问监测数据。

47. ollydbg 

ollydbg常被称为OD,又被称作OllyDebug,是一个常用的反汇编工具,目前最流行的调试解密工具,还支持插件扩展功能。

48. robots.txt 

一种用于网站管理的标准,运行网站管理员指导网络爬虫哪些页面可以被爬取,哪些页面应该被忽略。这个文件通常放在根目录下,由搜索引擎蜘蛛在抓取网站内容之前查看。

robots.txt使用简单的文本格式,包含一系列规则,告诉蜘蛛哪些区域是可以访问的,哪些是禁止访问的。该文件只是建议而不是命令,主要由诚实的网络蜘蛛遵循,一些爬虫可能会忽略这些规则,敏感信息不应该只由robots.txt来守护。

49. rust 

一种系统编程语言,强调安全性、并发性和性能。设计的目标是提供一种能够避免常见的内存安全错误的语言,同时保持高性能和高并发。被广泛应用于系统级编程、嵌入式开发、网络服务等需要高性能和安全性的应用领域,其独特设计和强大功能使其成为一个备受欢迎的编程软件。

50. shadowsocks 

shadowsocks是一种网络代理工具,它使用自定义协议来隐藏用户的互联网流量,绕过防火墙和地域限制,使用加密保护用户隐私,可以在各种平台上使用。

shadowsocksR:SSR,使用更高级的加密方式,支持更多协议。

51. socat 

是一个用于在UNIX系统中建立连接的命令行工具,可以创建两个数据流之间的连接。主要用于处理套接字,应用于多种任务,包括网络调试、端口重定向、加密通信、代理等。其强大之处在于它的灵活性和可配置性,支持多种协议、地址族、及数据传输方式,可以解决各种网络和系统编程任务。

52. sql注入 

SQL注入是一种网络安全漏洞,允许攻击者通过在应用程序的输入中插入恶意的SQL代码,从而执行未经授权的数据库操作,这种攻击常常发生在与数据库交互的web程序中,其中用户提供的输入未经适当验证与处理,导致恶意SQL代码被执行。

53. ssh

Source Shell 安全外壳协议,是一种在不安全网络上用于安全远程登录和其他安全网络服务的协议。是由IEFT小组制定,建立在应用层基础上的安全协议,利用SSH协议可以有效防止远程管理过程中的信息泄露问题。

54. ssh -D 

ssh -D 是使用SSH命令的一个选项,用于创建动态端口转发,也称为SOCKS代理,这个选项允许通过安全的SSH连接,将本地计算机上的数据转发到远程服务器,并且可以通过这个服务器访问互联网。

在使用 ssh -D 后,你可以配置本地计算机上的应用程序,比如浏览器或其他网络工具,以使用创建的 SOCKS 代理。这样,所有通过该应用程序发出的网络请求都将通过 SSH 连接路由到远程服务器,并由远程服务器发起。这提供了一种安全的方式,特别适用于在不受信任的网络上浏览互联网或访问受限制的资源。

55. tcpdump 

tcpdump是一个在UNIX/LINUX系统上用于捕获网络数据包的命令行工具,可以监听网络接口,显示经过该接口的数据包的详细信息,包括源地址、目的地址、协议、端口等信息。tcpdump对于网络故障的排除、网络分析和安全审计等任务非常有用。

56. vulhub 

开源的漏洞靶场项目,可以帮助安全研究人员和渗透测试人员研究和模拟各种漏洞攻击,提供了常见系统和应用的虚拟机镜像。

提供了详细的安装和配置说明,可以帮助用户快速搭建漏洞攻击环境,vulhub还提供了漏洞攻击的详细描述和利用方法,帮助用户更好的理解和模拟漏洞攻击。此外vulhub还支持在Docker中运行,为研究人员和安全工程师提供更快捷的漏洞环境。

57. wget 

是一个用于从web上下载文件的命令工具,支持HTTP、HTTPS和FTP协议下载文件,是许多UNIX/LINUX系统中的常用工具之一。wget提供了许多选项,用于控制下载过程的各个方面。

58. whois 

读作who is,用来查询域名的IP以及所有者等信息的传输协议。简单来说whois就是一个用来查询域名是否已经被注册,以及注册名的详细信息的数据库。

往年题

2021

1. 什么是主动攻击?主动攻击包含哪些?什么是被动攻击?被动攻击包括哪些

主动攻击:导致某些数据流的篡改和虚假数据流的产生,这类攻击可以分为篡改、伪造消息数据和终端服务。

被动攻击:攻击者不对数据信息做任何修改,通常包括窃听、流量分析、破解弱加密的数据流等攻击方式

2. 什么是漏洞?漏洞有哪些特性?画图说明跨站脚本攻击的原理?

漏洞是计算机硬件、软件、系统安全策略上的设计,实现或配置错误导致的缺陷。通过漏洞,攻击者往往具有某些非法权限,可以用来访问或攻击系统。

漏洞的特性:可以被恶意利用,造成各种各样的威胁。来源广泛,可能存在于软件BUG,软件配置错误,输入未检查等情况;漏洞是可以修复的,发现漏洞要及时修复,提高计算机系统的安全性能。

3. 什么是Cookie?Cookie有哪些应用?

Cookie是小型文本文件,设计的初衷是为了辨别用户身份,进行Session追踪而存储在用户客户端的文件。

Cookie本身存在一定的安全隐患,存在Session劫持,XSS攻击等

判断题

1. 计算机安全就是网络安全。(F)

计算机安全涵盖了很多方面,有网络安全,数据安全,终端安全等,甚至包括了对员工的培训,代码审计等等。

2. 实施拒绝服务攻击的前提是系统存在某种安全漏洞。(F)

拒绝服务攻击(DoS)它固然也可以通过安全漏洞实施,但不是必要的,DoS可以直接请求大量数据包从而让系统瘫痪。

3. SYN攻击是一种典型的欺骗攻击。(F)

是DoS攻击的一种手段,SYN—Flood

4. 计算机病毒必须通过感染宿主才能实现自身传播。(F)

显然不是,也可以通过某种媒介传播,比如寄存于U盘或者软件中,同时也可以通过网络传播,比如电子邮件等。

5. 端口扫描和网络嗅探都属于非法网络攻击。(T)

是的,ChatGPT说的,虽然站在我的角度我觉得只是一种网络安全技术。

端口扫描是通过试图连接计算机上的不同端口来检测系统漏洞的一种技术。如果端口是开放的,则可以进一步分析系统的安全性。端口扫描可以帮助攻击者识别可以利用的漏洞,从而进行非法入侵。

网络嗅探是通过监听网络上的数据流来收集敏感信息的一种技术。网络嗅探可以收集到用户名、密码等敏感信息,从而对网络进行非法入侵。

6. 导致缓冲区溢出的根本原因是计算机内存太小。(F)

缓冲区溢出是一种异常现象,当软件向缓冲区中写入数据使缓冲区容量溢出时,会导致相邻存储器位置被覆盖。这显然和计算机内存大小无关,往往是由于调用的函数缺乏边界控制导致的。

7. 关闭Windows系统的139和445端口,可以阻止永恒之蓝的攻击。(T)

445和139端口都是用在局域网内的文件打印和共享,关闭这两个端口,可以在一定程度上阻止永恒之蓝的攻击。

8. 使用交换机可以杜绝黑客的嗅探和窃听。(F)

说杜绝都是不可能的,一定程度上阻止是可以做到的。虽然交换机都有防嗅探和防窃听功能,但黑客可以通过技术手段,利用漏洞等方式绕过防御措施。

因此,使用交换机是保护网络安全的一种有效措施,但不能单靠交换机来保证网络安全。需要与其他安全措施配合使用,如安全软件、防火墙等,以确保网络安全。

9. 物理层安全包括物理量设备安全、通信线路基础设施安全和机房安全等。(T)

10. 网络钓鱼属于一种Web欺骗攻击。(T)

欺骗攻击又叫做社会工程攻击,是一种利用人类误解和信任来破坏网络安全的攻击方式。

简答题

1. 黑客在攻击前,主要收集哪些信息?收集信息的常用工具有哪些?

主要从信息收集和识别漏洞方面回答,常用工具有nmap,whois,nc,MSF

2. 简述网络攻击的一般步骤?每个步骤中攻击者的主要任务是什么?

信息收集、漏洞扫描、漏洞利用、获取控制权限、隐藏并全身而退

3. ARP协议存在的安全问题?

ARP的缓存表的主要问题是后到后得,且更新时不对来源做验证,同时ARP一开始通过广播告知局域网内所有人请求ARP应答,意味着攻击者可以伪装成目标IP,发送虚假MAC地址给请求主机,造成ARP欺骗或ARP攻击。

2018

名词解释

1. 网络安全

网络安全是指保护网络系统、网络设备、网络数据以及网络用户的数字资产和隐私不受恶意软件、攻击者、黑客、数据泄露或其他威胁的行为的过程。网络安全涵盖的技术有很多,比如防火墙、加密技术。

2. 逆向工程

逆向工程是一种产品技术再现的过程,即对一款目标产品进行分析和研究,从而演绎出产品的处理流程,组织结构,功能特性等设计要素,在软件开发领域中,逆向工程表现为反编译技术。

3. 信息安全

信息安全指的是保护信息系统和信息免受不合法访问或毁坏的过程

4. 渗透测试

渗透测试是一种安全评估技术,旨在模拟攻击者行为,以评估系统、网络、应用程序的安全性。这是一种黑盒测试,因为测试人员不需要知道系统内部的工作原理,只需要从外部进行测试。

5. 漏洞

漏洞是指计算机系统硬件,软件,协议,系统安全配置等方面出现缺陷,该缺陷存在多种被利用的方式,会造成各式各样的安全隐患。

6. 列出几种欺骗攻击方法

社会工程、虚假网站、钓鱼攻击等

7. 什么是入侵检测?有什么作用?

入侵检测是一种网络安全技术,通过检查日志文件,分析网络流量等方式,识别潜在入侵威胁,常见的IDS有snort和ntop,帮助安全人员评估是否存在威胁。

作用:提高计算机系统安全性,帮助组织及时识别解决安全漏洞,保护数据不被破坏。

8. 从堆或者栈解释溢出攻击原理,如何防范?

堆栈缓冲区溢出都是一个原理,就是当程序向其缓冲区加载了过量信息,信息覆盖了相邻的存储器。黑客可以通过溢出恶意代码的方式,破坏或者控制计算机程序的运行。

有两个方法防范:防止数据执行和地址随机化ASRL

防止数据执行是用NX位元完成的,防止代码在内存的非法位置执行。但这样不是万能的,有部分代码一定会在内存中,比如libc库中的system函数,这就是return-to-libc攻击。这时我们引入地址随机化ASRL,由于即使是return-to-libc,它也可以依赖于可执行代码的确切位置,ASRL会随机分配排列不同进程的数据区地址,使得可执行代码位置的获取变得不可能。

9. 防火墙种类?会话过滤防火墙原理?

ipTables,Linux下的一个包过滤防火墙系统,是Linux内核的重要组成部分。

10. 以SYN Flood攻击为例,简述分布式拒绝服务攻击产生原因及攻击原理。如何防御?

DDos是控制僵尸网络大规模,有序的对目标机器进行Dos攻击的行为,所以DDos攻击首先要在网络上寻找有漏洞的主机,进行大规模的入侵寻求控制权限,组织自己的僵尸网络。

SYN-Flood是Dos的攻击方式之一,它的攻击原理是利用TCP三次握手中的漏洞,它只进行TCP的前两次握手,对于目标主机的返回的SYN不予以确认,从而大量占用TCP端口,使得目标主机产生拒绝服务,正常TCP请求无法回应

防范:SYN Cache(延缓分配TCB),SYN Cookie(由于TCB分配被延缓,使用该技术来验证后续ACK序号的正确性),综合以上两种,加一层防火墙就是SYN Proxy;

这样最终结果就是无效连接不会消耗任何资源,只有有效连接进入主机

请你对学校网络进行安全分析(可能存在的安全隐患)。并从PPDR模型的角度给出相应的对策。

三、最后一课梳理

名词解释7、8个,问答题5、6个

  1. 泄露案件频发,从各个角度思考(管理员、程序员、用户、执法者)
    1. 管理员角度:加强访问控制、定期审查用户权限、加密存储和传输、实施监测和审计、备份和灾难恢复
    2. 程序员角度:安全编码实践、漏洞扫描和测试、及时更新修复、错误的消息处理
    3. 用户角度:加强密码和账户安全、教育与培训、增强数据隐私意识
    4. 执法者角度:制定法律法规,明确泄露事件的法律责任、调查与打击、国际合作
  1. Post/Service 开/关
    1. 端口(Post)与网络(Service)的开放和关闭涉及到网络安全和系统管理的重要方面。在计算机网络中,端口是与网络通信中特定服务或应用程序相关联的虚拟通道,服务则是在特定端口上运行的软件或功能。
    2. 关闭不需要的端口和服务可以减少系统的攻击面,只有需要公开访问的服务应该处于开启状态,其他服务应该保持关闭,减少潜在攻击风险。
    3. 开启太多服务可能会占用系统资源,降低性能。关闭不必要服务可以提高系统响应速度和资源利用率

  1. 用户与访问控制(access control)
    1. 用户:在计算机系统中,用户通常通过用户名或其他唯一标识符进行识别。每个用户都有一个独特的帐户,用于登录和访问系统
    2. 访问控制:访问控制是一种安全机制,用于管理用户对系统资源的访问权限,有以下几种类型:
      • 强制访问控制(MAC):系统强制执行规则,不受用户个人设置的影响。
      • 自主访问控制(DAC):用户有权决定他们自己的文件和资源的访问权限。
      • 基于角色的访问控制(RBAC):用户被分配到角色,而角色具有特定的权限。
    3. 单点登录(SSO):SSO允许用户使用一组凭据登录,并获得对多个系统或服务的访问权限,而无需为每个系统都提供不同的凭据。

  1. Linux/iptables
    1. iptables是集成在Linux内核中的包过滤防火墙系统,是Linux防火墙系统的重要组成部分。
    2. iptables的主要功能是实现对网络数据包进出设备及转发的控制,当数据包需要进入设备,从设备中流出或者由该设备转发、路由时,都可以用iptables进行控制。

  1. User/group/roles
    1. 在计算机系统和操作系统中,用户(User)、用户组(Group)和角色(Roles)是管理和组织系统访问和权限的基本概念。
    2. 用户:用户是系统中的个体,可以是实际的人或者其他实体,用于登录和访问系统。用户通过唯一的标识符(通常是用户名)来识别。
    3. 用户组:用户组是将一组用户集中在一起的机制,可以简化权限管理和资源访问。将用户组织起来有助于集中管理和分配权限,而不必为每个用户单独分配权限。
    4. 角色是一种更高层次的抽象,它汇集了一组相关的权限,可以分配给用户或用户组。角色的使用可以简化权限管理,特别是在大型组织中,因为可以将一组权限分配给角色,然后将角色分配给用户。

  1. Passwd/enc、hash(salt) 、public key
    1. Passwd:passwd通常指用户的登录密码,用于验证用户的身份。在系统中,密码通常不以明文的形式存储,而是通过哈希加密或哈希算法进行处理,增加安全性
    2. enc:全称encryption,加密。将信息转换为不可读形式,保护其机密性。密码通常通过加密来保护,使得即使在存储或传输过程中被获取,也难以还原为原始明文密码
    3. hash:哈希是将任意长度的输入数据转换为固定长度的输出字符串的过程。对密码进行哈希是常见的安全实践,因为哈希是单向的,难以逆向破解。
    4. salt:在哈希过程中添加的随机字符串,目的是增强密码的安全性,同样的密码在加入不同的盐后会产生不同的哈希值,阻止了一些常见的密码攻击。
    5. public key:公钥是在非对称加密算法中的一个部分,与私钥一起用于加密解密信息。在密码学中,用户可以有一对公钥和私钥。公钥用于加密信息,而私钥用于解密。公钥通常可以公开分享,而私钥必须保持机密。

  1. 网闸/政务网
    1. 网闸指防火墙或网关
      • 网络防火墙指的是一种用于监控和控制网络流量的安全设备,目的是组织未经授权的访问,保护内部网络免受恶意攻击和未经授权的访问
      • 网关是连接两个不同网络之间的设备,负责在这两个网络之间传递数据,网关可以是硬件设备或运行特定软件的计算机系统
    2. 政务网:这可能是指政府网络,专用于政府部门之间的通信和信息共享。政务网的设计通常考虑到安全性、可靠性和隔离性等方面的需求,以确保政府机构之间的信息传输是安全的。

  1. 入侵检测 IDS
    1. 入侵检测是一种计算机安全技术,目标是监测系统或网络中的异常行为,尝试未经授权进入系统的行为。入侵检测主要有两种类型:网络入侵检测(NIDS)和主机入侵检测(HIDS)
    2. 网络入侵检测指的是检测网络流量,识别异常或恶意网络活动。主机入侵检测指的是在单个主机上运行,检测主机系统活动。
    3. 入侵检测的工具有:NetFlow、Snort等
    4. NetFlow是一种网络流量监测技术,用于收集和分析网络流量数据。可以收集来自网络设备的流量数据,如源IP地址、目的IP地址、端口号、协议类型、字节数和包数等。帮助网络管理员识别网络安全威胁,如恶意流量、DDoS攻击和网络入侵等。
    5. Snort已发展成为一个具有多平台、实时流量分析、网络IP数据包记录等特性的强大的网络入侵检测/防御系统。Snort能够对网络上的数据包进行抓包分析,但区别于其它嗅探器的是,它能根据所定义的规则进行响应及处理。Snort在网络攻防中的主要作用是检测和阻止攻击,它可以使用网络数据包进行实时监测,并使用签名和规则来检测潜在的攻击。Snort可以检测多种类型的攻击,如木马、病毒、拒绝服务攻击、端口扫描等。

  1. 流量工程、ntop
    1. 流量工程是指通过有效的规划、管理和优化网络中的数据流量,实现高效、可靠、低延迟和高性能的网络运行。流量工程通常涉及网络资源的动态调整,以适应变化的流量负载和网络拓扑。
    2. ntopng (ntop next generation)是一个开源网络流量监测工具。它可以收集、分析和报告网络流量数据,包括 IP 协议分布、主机流量、应用程序流量等。ntopng 还可以用来监测和诊断网络性能问题,并且提供了web 界面和 API 来访问监测数据。

  1. OS/APP内存问题
    1. 针对操作系统(OS)和应用程序(APP)中的内存问题,特别是像缓冲区溢出(Buffer Overflow)这类安全漏洞,打补丁是一种重要的安全措施。打补丁(Patch)是指应用程序、操作系统或其他软件的更新,用于修复或改进已经存在的问题,包括安全漏洞、错误、性能问题等。打补丁是一种常见的软件维护和安全管理实践,可以确保系统和软件保持最新、安全和可靠
    2. 手动打补丁:更加灵活,可以选择性地应用特定的补丁,避免不必要的风险。需要更多的时间和人力资源,会有应用补丁的延迟,增加系统暴露于潜在威胁的时间
    3. 自动打补丁:及时应用新的补丁,降低系统被攻击的风险,减少了人工干预,提高了效率。不可控因素较多,可能引入问题,需要考虑回滚和应急计划。
    4. 升级:升级操作系统或应用程序,尤其是涉及到容器编排系统如 Kubernetes(k8s)时,也是一种重要的操作,包含了打补丁的一部分。

  1. 自我扫描与检查
    1. 自我扫描和检查是一种主动的安全措施,有助于发现潜在的安全漏洞和弱点
    2. 修复加固:一旦发现漏洞或安全问题,及时修复和加固非常重要。对于扫描工具发现的漏洞,及时修复,应用最新的安全补丁。优化系统和应用程序的配置,关闭不必要的服务,减小攻击面。
    3. 扫描工具有:AppScan、Burp Suite、Nessus、Nmap、OpenVAS、Port scan/TCP scanning、snort等
      • AppScan:是IBM的一款web安全扫描工具,可以利用爬虫技术进行网站安全渗透测试,根据网站入口自动对网页链接进行安全扫描,扫描之后会提供扫描报告和修复建议等。
      • Burp Suite:是一款强大的Web应用程序安全测试工具,旨在帮助安全研究人员、渗透测试人员和Web应用程序开发人员对Web应用程序进行安全评估。
      • Nessus:是一款网络安全扫描器。它可以用来检测网络中存在的安全漏洞和配置问题,并提供关于如何修复这些问题的建议。Nessus支持对多种操作系统和网络设备进行扫描,并提供了丰富的报告和分析功能。
      • Network Mapper (Nmap) :是一个网络扫描和主机发现工具。它可以用来查找网络上的主机、服务和操作系统信息。Nmap 可以扫描整个网络或单个主机,并且可以生成详细的报告。它还可以用于安全评估,帮助识别未修补的漏洞和其他安全问题。Nmap 支持多种操作系统,包括 Windows、Linux 和 macOS。
      • OpenVAS:是一款开源的漏洞扫描工具。它提供了一个强大的漏洞扫描平台,可以扫描各种类型的漏洞,包括网络漏洞、应用程序漏洞等。OpenVAS采用了分层架构,由OpenVAS管理器、OpenVAS库、OpenVAS扫描器三部分组成。OpenVAS管理器负责管理扫描任务和结果,OpenVAS库负责存储漏洞信息和管理漏洞规则,OpenVAS扫描器负责执行扫描任务。
      • Port scan:端口扫描是一种网络安全技术,它可以检测远程主机上的开放端口。当端口被扫描时,扫描器会发送数据包到目标主机的特定端口,如果端口是开放的,目标主机会响应数据包。这样,扫描器就可以确定哪些端口是开放的。
      • TCP scanning:TCP扫描是一种特殊的端口扫描方式,它使用TCP协议来检测端口的状态。扫描器会发送TCP数据包到目标主机的特定端口,如果端口是开放的,目标主机会响应数据包。这样,扫描器就可以确定哪些端口是开放的。
      • Snort:在网络攻防中的主要作用是检测和阻止攻击,它可以使用网络数据包进行实时监测,并使用签名和规则来检测潜在的攻击。Snort可以检测多种类型的攻击,如木马、病毒、拒绝服务攻击、端口扫描等。

  1. MyDlp、Squid、icap
    1. myDLP是一种数据丢失防护系统,用于监控、检测和阻止敏感数据在网络中的不正当传输。功能包括:敏感数据识别、监控和检测、报告和审计、策略和规则。
    2. Squid是一个流行的开源代理服务器,常用于缓存和过滤Web内容。关于Squid和myDLP的集成,可以通过配置Squid作为代理,使其与myDLP协同工作,以增强对敏感数据的控制。一些集成方案可能包括:HTTP代理、访问控制
    3. ICAP(Internet Content Adaptation Protocol):ICAP是一种用于在网络中对HTTP流量进行动态适应的协议。在与Squid和myDLP集成的情况下,ICAP可以用于将Squid连接到myDLP服务,以便对HTTP传输的数据进行更深入的检查和处理。ICAP的一些特点包括:协议适应、内容修改、阻止敏感数据

  1. 社工库

社工库通常指的是社会工程学库,是指用于进行社会工程学攻击的信息数据库。社会工程学是一种攻击手段,攻击者试图通过欺骗、伪装或其他欺诈手段来获取目标系统或个人的敏感信息。社工库可能包含有关个人、组织或公司的信息,以便攻击者更好地执行社会工程学攻击。

  1. 挖矿


挖矿通常指的是加密货币挖矿,是一种通过解决复杂的数学问题来创建新的加密货币、确认交易并维护加密货币网络安全的过程。这个过程通常涉及使用计算机的处理能力来完成所谓的“工作量证明”(Proof-of-Work),从而使得新的区块可以被添加到区块链中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值