DDOS多线程攻击是什么意思?希望各位高手回答详细点,非常感谢
DDOS全名是Distributed Denial of service (分布式拒绝服务攻击),很多DOS攻击源一起攻击某台服务器就组成了DDOS攻击,DDOS 最早可追溯到1996年最初,在中国2002年开始频繁出现,2003年已经初具规模。 DoS的攻击方式有很多种,最基本的DoS攻击就是利用合理的服务请求来占用过多的服务资源,从而使服务器无法处理合法用户的指令。DDoS攻击手段是在传统的DoS攻击基础之上产生的一类攻击方式。单一的DoS攻击一般是采用一对一方式的,当被攻击目标CPU速度低、内存小或者 *** 带宽小等等各项性能指标不高时,它的效果是明显的。随 着计算机与 *** 技术的发展,计算机的处理能力迅速增长,内存大大增加,同时也出现了千兆级别的 *** ,这使得DoS攻击的困难程度加大了 - 目标对恶意攻击包的"消化能力"加强了不少,例如你的攻击软件每秒钟可以发送3,000个攻击包,但我的主机与 *** 带宽每秒钟可以处理10,000个攻击包,这样一来攻击就不会产生什么效果。这时候分布式的拒绝服务攻击手段(DDoS)就应运而生了。你理解了DoS攻击的话,它的原理就很简单。如果说计算机与 *** 的处理能力加大了10倍,用一台攻击机来攻击不再能起作用的话,攻击者使用10台攻击机同时攻击呢?用100台呢?DDoS就是利用更多的傀儡机来发起进攻,以比从前更大的规模来进攻受害者。高速广泛连接的 *** 给大家带来了方便,也为DDoS攻击创造了极为有利的条件。在低速 *** 时代时,黑客占领攻击用的傀儡机时,总是会优先考虑离目标 *** 距离近的机器,因为经过路由器的跳数少,效果好。而现在电信骨干节点之间的连接都是以G为级别的,大城市之间更可以达到2.5G的连接,这使得攻击可以从更远的地方或者其他城市发起,攻击者的傀儡机位置可以在分布在更大的范围,选择起来更灵活了
个人电脑怎么防止黑客攻击
个人防止黑客攻击的技术分为被动防范技术与主动防范技术两类。
被动防范技术主要包括:防火墙技术、 *** 隐患扫描技术、查杀病毒技术、分级限权技术、重要数据加密技术、数据备份和数据备份恢复技术等。主动防范技术主要包括:数字签名技术、入侵检测技术、黑客攻击事件响应(自动报警、阻塞和反击)技术、服务器上关键文件的抗毁技术、设置陷阱 *** 技术、黑客入侵取证技术等。
扩展资料:
利用Windows自带工具杀毒:
1、当你感觉电脑中毒而杀毒软件无能为力而且也不知道所中毒的名称时,你首先想到的应该是查看进程。按住“Ctrl+Alt+Del”打开“windows任务管理器”,检查其中是否有可疑的进程。
2、当系统运行非常缓慢,而在进程中你又可发现某个进程的 CPU 占用率非常高,而在你打开的相应程序中又没有可与其对应的,那么很有可能就是木马。找到可疑进程后,我们就要找出它的位置了并停止该进程。事实上,以上 *** 对于新的病毒木马一般是无效的,因为目前的木马或病毒的进程和线程都是互相挂钩的。因此我们需要更强大的工具,推荐两个:tasklist和taskill。
利用第三方工具查杀:
1、Hijackthis + killbox。Hijackthis和Icesword可以对系统的整体状况进行查看Killbox可以对进程,线程及各种文件进行修改或删除。
2、i ceSword。I cesword还能对进程等进行监控,能有效防止木马进程反复生成。I cesword可以对进程,线程及各种文件进行修改或删除。
3、aut or uns。Aut or uns则对于注册表的查看与修改有很大帮助。
参考资料来源:百度百科-黑客攻击
黑客CC是什么意思
就是 黑客 进行CC攻击
CC主要是用来攻击页面的.大家都有这样的经历,就是在访问论坛时,如果这个论坛比较大,访问的人比较多,打开页面的速度会比较慢,对不?!一般来说,访问的人越多,论坛的页面越多,数据库就越大,被访问的频率也越高,占用的系统资源也就相当可观,现在知道为什么很多空间服务商都说大家不要上传论坛,聊天室等东西了吧。
一个静态页面不需要服务器多少资源,甚至可以说直接从内存中读出来发给你就可以了,但是论坛就不一样了,我看一个帖子,系统需要到数据库中判断我是否有读读帖子的权限,如果有,就读出帖子里面的内容,显示出来——这里至少访问了2次数据库,如果数据库的体积有200MB大小,系统很可能就要在这200MB大小的数据空间搜索一遍,这需要多少的CPU资源和时间?如果我是查找一个关键字,那么时间更加可观,因为前面的搜索可以限定在一个很小的范围内,比如用户权限只查用户表,帖子内容只查帖子表,而且查到就可以马上停止查询,而搜索肯定会对所有的数据进行一次判断,消耗的时间是相当的大。
CC就是充分利用了这个特点,模拟多个用户(多少线程就是多少用户)不停的进行访问(访问那些需要大量数据操作,就是需要大量CPU时间的页面)。很多朋友问到,为什么要使用 *** 呢?因为 *** 可以有效地隐藏自己的身份,也可以绕开所有的防火墙,因为基本上所有的防火墙都会检测并发的TCP/IP连接数目,超过一定数目一定频率就会被认为是Connection-Flood。
使用 *** 攻击还能很好的保持连接,我们这里发送了数据, *** 帮我们转发给对方服务器,我们就可以马上断开, *** 还会继续保持着和对方连接(我知道的记录是有人利用2000个 *** 产生了35万并发连接)。
可能很多朋友还不能很好的理解,我来描述一下吧.我们假设服务器A对Search.asp的处理时间需要0.01S(多线程只是时间分割,对结论没有影响),也就是说他一秒可以保证100个用户的Search请求,服务器允许的更大连接时间为60s,那么我们使用CC模拟120个用户并发连接,那么经过1分钟,服务器的被请求了7200次,处理了6000次,于是剩下了1200个并发连接没有被处理.有的朋友会说:丢连接!丢连接!问题是服务器是按先来后到的顺序丢的,这1200个是在最后10秒的时候发起的,想丢?!还早,经过计算,服务器满负开始丢连接的时候,应该是有7200个并发连接存在队列,然后服务器开始120个/秒的丢连接,我们发动的连接也是120个/秒,服务器永远有处理不完的连接,服务器的CPU 100%并长时间保持,然后丢连接的60秒服务器也判断处理不过来了,新的连接也处理不了,这样服务器达到了超级繁忙状态。
当然,CC也可以利用这里 *** 对FTP进行攻击,也可以实现TCP-FLOOD,这些都是经过测试有效的。
为什么说黑客都用LINUX
1、Linux的安全性极高,一般情况下是不用安装安全软件,如:杀毒软件。同时,很多高级黑客工具是以Linux为核心代码写出来的。在编程当面,Linux系统自带高级编程语言,其内核使得它本身就是一种编程语言。另外,高级语言编写出来的程序具有移植性强特点,可以运行于WIN里面。
2、开源,它是一种自由和开放源代码的类UNIX操作系统,任何人都可以自由使用、完全不受任何限制。
3、在Linux社区里内核的开发被认为是真正的编程.由于一批高水平黑客的加入,使Linux发展迅猛,到1993年底94年初,Linux 1.0终于诞生了! Linux 1.0已经是一个功能完备的操作系统,而且内核写得紧凑高效,可以充分发挥硬件的性能,在4M内存的80386机器上也表现得非常好。
4.Linux具有良好的兼容性和可移植性,大约在1.3版本之后,开始向其他硬件平台上移植,包括号称最快的CPU---Digital Alpha(至少目前主频是更高的).所以不要总把Linux与低档硬件平台联系 到一块,Linux发展到今天,这是一个误区,它只是将硬件的性能充分发挥 出来而已,Linux必将从低端应用横扫到高端应用。
5、通过计算机 *** 加入了Linux的内核开发,Linux倾向于成为一个黑客的系统----直到今天,在Linux社区里内核的开发被认为是真正的编程.由于一批高水平黑客的加入,使Linux发展迅猛,到1993年底94年初,Linux 1.0终于诞生了! Linux 1.0已经是一个功能完备的操作系统,而且内核写得紧凑高效,可以充分发挥硬件的性能,在4M内存的80386机器上也表现得非常。
1、Linux是一套 *** 和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和 *** 协议。它支持32位和64位硬件。Linux继承了Unix以 *** 为核心的设计思想,是一个性能稳定的多用户 *** 操作系统。
2、Linux操作系统诞生于1991 年10 月5 日(这是之一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。
3、严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。
黑客通常如何入侵?
我们自然先来看看“黑客”常用的攻击 *** 。“黑客”的攻击 *** 可以是你所接触到的任何东西:从键盘到硬盘,从诈骗到轰炸。下面我们就逐一列举这些问题。
1. 键盘
是不是感觉到很奇怪,为什么把键盘放在之一位呢?键盘也会遭到攻击吗?很简单,键盘是我们与外界进行沟通的重要桥梁,我们要通过它输入大量的信息,所以许多“黑客”软件都把这只“黑暗中的眼睛”放在了这里。通过记录键盘的活动,可以很容易地得到很多有价值的东西,例如密码、谈话内容。 解决办法:对付这些东西,更好的办法还是使用杀毒软件。如果杀毒软件带有病毒防火墙,需要注意下载最新的防火墙的版本。
2.浏览器
我们上网肯定离不开浏览器,这也是泄漏秘密的“好地方”。浏览器的漏洞主要是IE缓存的问题以及cookie的问题,尤其是cookie,有的cookie里面包含了你的登录网站名称、登录时间甚至登录密码。“踏雪无痕”这类软件就是专门查看cookie的“黑客”软件。
解决办法:点“internet选项”、“删除文件”把缓存彻底删除掉.
3. 腾讯OICQ.
现在哪家网吧会把腾讯OICQ拒之门外呢?正因为腾讯OICQ的广泛使用,腾讯OICQ每一个新版本的发布都受到众多的“黑客”的关注。从嗅探器、键盘记录器、轰炸器到偷看聊天记录等攻击方式,让人防不胜防。
解决办法:腾讯OICQ的更新速度非常快,所以要注意下载使用最新版本;在OICQ中点“系统参数”、“ *** 安全设置”、“拒绝陌生人信息”就可以对付OICQ的轰炸;还应该设置“使用本地信息加密”。
4. 网页浏览
浏览网页是我们获取网上信息的重要 *** 之一,对于网页浏览需要注意以下几点:登录免费信箱的时候尽量到指定的网站上去登录,不要在个人主页上登录,因为该网站很可能会记录下你的用户名和口令。对付无限制弹出窗口的网页(这是网页浏览时的恶作剧,可以让你的机器死机),可以先按住“Crtl+Alt+Del”键,把“EXPLORER”窗口关闭,然后再修改“Internet”选项,禁止执行Java。对于网页中插入的ActiveX,当提示下载安装的时候一定要看清除是否签名,如果没有签名就存在包含木马的可能性。尽量到知名的下载网站去下载软件,对下载的软件更好先杀毒。
5. 硬盘共享
网吧等于一个局域网,所以对于 *** 硬盘的共享一定要注意,尤其是硬盘的写权限千万开不得。更好把所有的硬盘全部设置为不共享。
6. 拷贝粘贴
我们有时候会大量地使用拷贝粘贴功能来复制文件和文字。当离开机器的时候更好把剪贴板清空,尤其要注意是否使用了某些剪贴板增强工具,这些工具通常会自动记录你所拷贝的文件数量和内容,即便是非正常关机都不会消失。
7.遗留文件
不要随便打开别人遗留下来的文件。好奇心并非总是好事。“黑客”为了使普通用户去掉戒备之心,总是利用大家最常见或者喜好的东西来骗人上当。一个图标是WINZIP的文件实际上却可能是一个木马;一款漂亮的FLASH动画背后可能隐藏了许多不为人所知的“勾当”。
8.异常变化
最后,注意计算机的异常变化。当你正在聊天的时候,突然鼠标不听你指挥了,或者计算机突然重新启动了,又或者突然出现一个新的窗口等,这些迹象表明你使用的计算机遭到了别人的控制。更好的防范办法,是下载天网个人防火墙,切断与 *** 的连接,天网同时也会自动记录下入侵者的IP。
9.端口
你在 *** 上冲浪,别人和你聊天,你发电子邮件,必须要有共同的协议,这个协议就是TCP/IP协议,任何 *** 软件的通讯都基于TCP/IP协议。如果把互联网比作公路网,电脑就是路边的房屋,房屋要有门你才可以进出,TCP/IP协议规定,电脑可以有256乘以256扇门,即从0到65535号“门”,TCP/IP协议把它叫作“端口”。当你发电子邮件的时候,E-mail软件把信件送到了邮件服务器的25号端口,当你收信的时候,E-mail软件是从邮件服务器的110号端口这扇门进去取信的,你现在看到的我写的东西,是进入服务器的80端口。新安装好的个人电脑打开的端口号是139端口,你上网的时候,就是通过这个端口与外界联系的。黑客不是神仙,他也是通过端口进入你的电脑.
黑客是怎么样进入你的电脑的呢?当然也是基于TCP/IP协议通过某个端口进入你的个人电脑的。如果你的电脑设置了共享目录,那么黑客就可以通过139端口进入你的电脑,注意!WINDOWS有个缺陷,就算你的共享目录设置了多少长的密码,几秒钟时间就可以进入你的电脑,所以,你更好不要设置共享目录,不允许别人浏览你的电脑上的资料。除了139端口以外,如果没有别的端口是开放的,黑客就不能入侵你的个人电脑。那么黑客是怎么样才会进到你的电脑中来的呢?答案是通过特洛伊木马进入你的电脑。如果你不小心运行了特洛伊木马,你的电脑的某个端口就会开放,黑客就通过这个端口进入你的电脑。举个例子,有一种典型的木马软件,叫做netspy.exe。如果你不小心运行了netspy.exe,那么它就会告诉WINDOWS,以后每次开电脑的时候都要运行它,然后,netspy.exe又在你的电脑上开了一扇“门”,“门”的编号是7306端口,如果黑客知道你的7306端口是开放的话,就可以用软件偷偷进入到你的电脑中来了。特洛伊木马本身就是为了入侵个人电脑而做的,藏在电脑中和工作的时候是很隐蔽的,它的运行和黑客的入侵,不会在电脑的屏幕上显示出任何痕迹。WINDOWS本身没有监视 *** 的软件,所以不借助软件,是不知道特洛伊木马的存在和黑客的入侵。接下来,rylxk11就让你利用软件如何发现自己电脑中的木马
再以netspy.exe为例,现在知道netspy.exe打开了电脑的7306端口,要想知道自己的电脑是不是中netspy.exe,只要敲敲7306这扇“门”就可以了。你先打开C:WINDOWSWINIPCFG.EXE程序,找到自己的IP地址(比如你的IP地址是10.10.10.10),然后打开浏览器,在浏览器的地址栏中输入 ,如果浏览器告诉你连接不上,说明你的电脑的7306端口没有开放,如果浏览器能连接上,并且在浏览器中跳出一排英文字,说的netspy.exe的版本,那么你的电脑中了netspy.exe木马了。这是最简单最直接的办法,但是需要你知道各种木马所开放的端口,rylxk11已知下列端口是木马开放的:7306、7307、7308、12345、12345、12346、31337、6680、8111、9910。但是就算你熟悉了所有已知木马端口,也还是不能完全防范这些木马的,我们需要进一步查找木马.
rylxk11曾经做了一个试验:我知道netspy.exe开放的是7306端口,于是我用工具把它的端口修改了,经过修改的木马开放的是7777端口了,你现在再用老办法是找不到netspy.exe木马了。于是我们可以用扫描自己的电脑的办法看看电脑有多少端口开放着,并且再分析这些开放的端口.
前面讲了电脑的端口是从0到65535为止,其中139端口是正常的,首显灰个端口扫描器,rylxk11推荐“ *** 猎手”,你上网以后,找到自己的IP地址,现在请关闭正在运行的 *** 软件,因为可能开放的端口会被误认为是木马的端口,然后让 *** 猎手对0到65535端口扫描,如果除了139端口以外还有其他的端口开放,那么很可能是木马造成的。
排除了139端口以外的端口,你可以进一步分析了,用浏览器进入这个端口看看,它会做出什么样的反映,你可以根据情况再判断了。
扫描这么多端口是不是很累,需要半个多小时傻等了,现在好了Tcpview.exe可以看电脑有什么端口是开放的,除了139端口以外,还有别的端口开放,你就可以分析了,如果判定自己的电脑中了木马,那么,你就得----在硬盘上删除木马
最简单的办法当然是用杀毒软件删除木马了,Netvrv病毒防护墙可以帮你删除netspy.exe和bo.exe木马,但是不能删除netbus木马。
下面就netbus木马为例讲讲删除的经过.
简单介绍一下netbus木马,netbus木马的客户端有两种,开放的都是12345端口,一种以Mring.exe为代表(472,576字节),一种以SysEdit.exe为代表(494,592字节)。
Mring.exe一旦被运行以后,Mring.exe就告诉WINDOWS,每次启动就将它运行,WINDOWS将它放在了注册表中,你可以打开C:WINDOWSREGEDIT.EXE进入HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRun找到Mring.exe然后删除这个健值,你再到WINDOWS中找到Mring.exe删除。注意了,Mring.exe可能会被黑客改变名字,字节长度也被改变了,但是在注册表中的位置不会改变,你可以到注册表的这个位置去找。
另外,你可以找包含有“netbus”字符的可执行文件,再看字节的长度,我查过了,WINDOWS和其他的一些应用软件没有包含“netbus”字符的,被你找到的文件多半就是Mring.exe的变种。
SysEdit.exe被运行以后,并不加到WINDOWS的注册表中,也不会自动挂到其他程序中,于是有人认为这是傻瓜木马,rylxk11倒认为这是最最可恶、最最阴险的木马。别的木马被加到了注册表中,你就有痕迹可查了,就连专家们认为最最凶恶的BO木马也可以轻而易举地被我们从注册表中删除。
而SysEdit.exe要是挂在其他的软件中,只要你不碰这个软件,SysEdit.exe也就不发作,一旦运行了被安装SysEdit.exe的程序,SysEdit.exe也同时启动了。rylxk11在自己的电脑中做了这样一个实验,将SysEdit.exe和C:WINDOWSSYSTEMAbcwin.exe捆绑起来,Abcwin.exe是智能ABC输入法,当我开启电脑到上网,只要没有打开智能ABC输入法打字聊天,SysEdit.exe也就没有被运行,你就不能进入我的12345端口,如果我什么时候想打字了,一旦启动智能ABC输入法(Abcwin.exe),那么捆绑在Abcwin.exe上的SysEdit.exe也同时被运行了,我的12345端口被打开,别人就可以黑到我的电脑中来了。同样道理,SysEdit.exe可以被捆绑到 *** 传呼机、信箱工具等 *** 工具上,甚至可以捆绑到拨号工具上,电脑中的几百的程序中,你知道会在什么地方发现它吗?所以我说这是最最阴险的木马,让人防不胜防。
有的时候知道自己中了netbus木马,特别是SysEdit.exe,能发现12345端口被开放,并且可以用netbus客户端软件进入自己的电脑,却不知道木马在什么地方。这时候,你可以检视内存,请打开C:WINDOWSDRWATSON.EXE,然后对内存拍照,查看“高级视图”中的“任务”标签,“程序”栏中列出的就是正在运行的程序,要是发现可疑的程序,再看“路径”栏,找到这个程序,分析它,你就知道是不是木马了。SysEdit.exe虽然可以隐藏在其他的程序后面,但是在C:WINDOWSDRWATSON.EXE中还是暴露了。
好了,来回顾一下,要知道自己的电脑中有没有木马,只要看看有没有可疑端口被开放,用 *** 猎手、Tcpview.exe都可以知道。要查找木马,一是可以到注册表的指定位置去找,二是可以查找包含相应的可执行程序,比如,被开放的端口是7306,就找包含“netspy”的可执行程序,三是检视内存,看有没有可以的程序在内存中.
你的电脑上的木马,来源有两种,一种是你自己不小心,运行了包含有木马的程序,另一种情况是,“网友”送给你“好玩”的程序。所以,你以后要小心了,要弄清楚了是什么程序再运行,安装容易排除难呀。?nbsp;
排除了木马以后,你就可以监视端口,悄悄等待黑客的来临
介绍两个软件,首先是NukeNabber,它是端口监视器,你告诉NukeNabber需要监视7306端口,如果有人接触这个端口,就马上报警。在别人看来,你的电脑的7306端口是开放的,但是7306不是由netspy控制了,当NukeNabber发现有人接触7306端口或者试图进入你的7306端口,马上报警,你可以在NukeNabber上面看到黑客对你做了些什么,黑客的IP地址是哪里,然后,你就可以反过来攻击黑客了。当NukeNabber监视139的时候,你就可以知道谁在用IP炸弹炸你。另外提一下,如果NukeNabber告诉你不能监视7306端口,说这个端口已经被占用了,那么说明你的电脑中存在netspy了。第二个软件就是Tcpview.exe,这个软件是线程监视器,你可以用它来查看有多少端口是开放的,谁在和你通讯,对方的IP地址和端口分别是什么。
一篇让你明白进程与线程之间的区别与联系
前言
本章主要介绍进程与线程的区别与联系相关知识点,也是我们面试过程中,经常会问到的了一个问题。希望通过这篇文章,能让大家理解相关知识点~
涉及面试题:
1. 小栗子:
进程(Process) 是计算机中的程序关于某数据 *** 上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。 在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其组织形式的描述,进程是程序的实体。是计算机中的程序关于某数据 *** 上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。程序是指令、数据及其组织形式的描述,进程是程序的实体。
线程(thread) 是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。
进程:指在系统中正在运行的一个应用程序;程序一旦运行就是进程;进程——资源分配的最小单位。
线程:系统分配处理器时间资源的基本单元,或者说进程之内独立执行的一个单元执行流。线程——程序执行的最小单位。
2. 深入理解:
2.1 进程(线程+内存+文件/ *** 句柄)
我们通过上面的图片进行进一步理解:
“内存”: 我们通常所理解的内存是我们所见到的(2G/4G/8G/16G)物理内存,它为什么会在进程之中呢? 实际上,这里的内存是逻辑内存。指的是内存的寻址空间。每个进程的内存是相互独立的。 否则的话会出现一个问题:我们把指针的值改一改就指向其他进程的内存了,通过这样我们岂不是就可以看到其他进程中"微信"或者是"网上银行"的信息, 这样的话,那我们的微信聊天记录或者是银行账户的信息就都被别人找到了,这是一个很危险的信号!显然这样是不可能的。
“文件/ *** 句柄”: 它们是所有的进程所共有的,例如打开同一个文件,去抢同一个 *** 的端口这样的操作是被允许的。
“线程”: 接下来,我们就要介绍一下我们的“线程”有关知识
2.2 线程(栈+PC+TLS)
2.2.1 栈:
我们通常都是说调用堆栈,其实这里的堆是没有含义的,调用堆栈就是调用栈的意思。 那么我们的栈里面有什么呢? 我们从主线程的入口main函数,会不断的进行函数调用, 每次调用的时候,会把所有的参数和返回地址压入到栈中。
2.2.2 PC:
Program Counter 程序计数器,操作系统真正运行的是一个个的线程, 而我们的进程只是它的一个容器。PC就是指向当前的指令,而这个指令是放在内存中。 每个线程都有一串自己的指针,去指向自己当前所在内存的指针。 计算机绝大部分是存储程序性的,说的就是我们的数据和程序是存储在同一片内存里的 这个内存中既有我们的数据变量又有我们的程序。所以我们的PC指针就是指向我们的内存的。
2.2.2.1 缓冲区溢出
例如我们经常听到一个漏洞: 缓冲区溢出 这是什么意思呢? 例如:我们有个地方要输入用户名,本来是用来存数据的地方。 然后黑客把数据输入的特别长。这个长度超出了我们给数据存储的内存区,这时候跑到了 我们给程序分配的一部分内存中。黑客就可以通过这种办法将他所要运行的代码 写入到用户名框中,来植入进来。我们的解决 *** 就是,用用户名的长度来限制不要超过 用户名的缓冲区的大小来解决。
2.3 TLS:
全称:thread local storage 之前我们看到每个进程都有自己独立的内存,这时候我们想,我们的线程有没有一块独立的内存呢?答案是有的,就是TLS。 可以用来存储我们线程所独有的数据。 可以看到:线程才是我们操作系统所真正去运行的,而进程呢,则是像容器一样他把需要的一些东西放在了一起,而把不需要的东西做了一层隔离,进行隔离开来。
3. 进程之间的是怎么进行交互的呢?
通过TCP/IP的端口来实现
在后续的文章中我们将一一详细介绍!
4. 线程之间又是怎样进行交互?
线程的通信就比较简单,有一大块共享的内存,只要大家的指针是同一个就可以看到各自的内存。
在后续的文章中我们将一一详细介绍!
5.小结:
1.进程要分配一大部分的内存,而线程只需要分配一部分栈就可以了. 2.一个程序至少有一个进程,一个进程至少有一个线程. 3.进程是资源分配的最小单位,线程是程序执行的最小单位。 4.一个线程可以创建和撤销另一个线程,同一个进程中的多个线程之间可以并发执行.
文末