徽标
联盟百科
通讯
下载应用,请到 Google Play
新! 在您的Android™设备上下载联盟百科!
下载
比浏览器更快的访问!
 

缓冲区溢出

指数 缓冲区溢出

缓冲区溢出(buffer overflow),是针对程序设计缺陷,向程序输入缓冲区写入使之溢出的内容(通常是超过缓冲区能保存的最大数据量的数据),从而破坏程序运行、趁著中斷之際并取得程序乃至系统的控制权。 缓冲区溢出原指当某个数据超过了处理程序限制的范围时,程序出现的异常操作。造成此现象的原因有:.

29 关系: 堆疊溢位C语言程序设计程序错误索尼緩衝器C標準函式庫DRM銀行衝擊波蠕蟲高级语言诺基亚黑客边界检查防火墙電腦蠕蟲LinuxMac OSMicrosoft WindowsNX位元OpenBSDPlayStation PortableSymbianUNIX杀毒软件殭屍網絡溢出操作系统智能手机

堆疊溢位

--(stack overflow)在電腦科學中是指使用過多的記憶體时導致呼叫堆疊產生的溢位。堆疊溢位的產生是由於過多的函數呼叫,導致呼叫堆疊無法容納這些呼叫的返回地址,一般在遞迴中產生。堆疊溢位很可能由無限遞迴(Infinite recursion)產生,但也可能僅僅是過多的堆疊層級。 堆疊溢位在核心設計中尤其危險,因此很多入門核心設計教程建議使用者不要嘗試使用遞迴程式;而是基於安全和效能考量,改用迴圈處理問題。 在POSIX相容平台上,堆疊溢位通常會造成作業系統產生SIGSEGV訊號。.

新!!: 缓冲区溢出和堆疊溢位 · 查看更多 »

C语言

C是一种通用的程式語言,广泛用于系统软件与应用软件的开发。于1969年至1973年間,為了移植與開發UNIX作業系統,由丹尼斯·里奇與肯·汤普逊,以B语言为基础,在贝尔实验室設計、开发出來。 C语言具有高效、灵活、功能丰富、表达力强和較高的可移植性等特点,在程式設計中备受青睐,成为最近25年使用最为广泛的编程语言。目前,C语言編譯器普遍存在於各種不同的操作系统中,例如Microsoft Windows、macOS、Linux、Unix等。C語言的設計影響了众多後來的程式語言,例如C++、Objective-C、Java、C#等。 二十世纪八十年代,為了避免各開發廠商用的C語言語法產生差異,由美國國家標準局為C語言訂定了一套完整的國際標準語法,稱為ANSI C,作為C語言的標準。二十世纪八十年代至今的有关程式開發工具,一般都支持符合ANSI C的語法。.

新!!: 缓冲区溢出和C语言 · 查看更多 »

程序设计

电脑程序设计(Computer programming),或稱程式設計(programming),是给出解决特定问题程序的过程,軟體開發過程中的重要步驟。程序设计往往以某种程序设计语言为工具,给出这种语言下的程序。程序设计过程应包括分析、设计、编碼、测试、除错等不同阶段。 在计算机技术发展的早期,軟體開發主要就是程序设计。但随着技术的发展,软件系统越来越复杂,逐渐分化出许多专用的软件系统,如操作系统、数据库系统、应用服务器,而且这些专用的软件系统愈来愈成为普遍的系統環境的一部分。这种情况下軟體開發的内容越来越丰富,不再只是纯粹的程序设计,还包括数据库设计、用户界面设计、通信协议设计和复杂的系统配置过程。 专业的程序设计人员被称为程序员。某种意思上,程序设计的出现甚至早于电子计算机的出现。英国著名诗人拜伦的女儿愛達·勒芙蕾絲曾设计了巴贝奇分析机上計算伯努利數的一个程序。她甚至还建立了循环和子程序的概念。由于她在程序设计上的突破性創新,愛達·勒芙蕾絲被称为世界上第一位程序员。 任何设计工作都是在各种条件限制和相互矛盾的需求之间寻求一种平衡。這種觀點反映在程式設計上,就是硬體儲存空間與程式執行時間的限制。 空間方面,在计算机技术发展的早期,由于机器资源比较昂贵,如何縮小儲存空間往往是设计关心的首要重點;而随着硬件技术的飞速发展,電腦上資料儲存媒體的價格降低,空間不再是考慮的第一要點,一些較耗時的運算也漸漸發展出以空間換取時間的模式。 時間方面,在早期,如何加強程式效率、縮短程式執行時間是程式設計師的共同目標;而在硬體效能進步、效率差距縮小,软件规模與複雜度卻日益增加的現在,程序的结构、可维护性、重複使用性、彈性等因素更顯得重要。在多人合作的程式設計專案裡,程式設計師們會加上各種註解以協助其他參與者理解程式碼,,但卻因能達到較好的溝通並提高程式碼的可維護性,而成為目前的主流。 然而,隨著智慧型手機等攜帶裝置的興起,執行時間的縮短與儲存空間的有效運用再次成為焦點,形成與主機伺服器類型應用程式不同的重點考慮方向。.

新!!: 缓冲区溢出和程序设计 · 查看更多 »

程序错误

程序错误(Bug),是程序设计中的術語,是指在软件运行中因为程序本身有错误而造成的功能不正常、死机、数据丢失、非正常中断等现象。有些程序错误会造成计算机安全隐患,此时叫做漏洞。 一些有趣的隐错有时也会成为一种乐趣。在电脑游戏中,假如一些隐错不令遊戲出現大錯誤的話,经常会变成一种玩游戏时的秘技(秘技有時是遊戲設計人故意造成的,用於程序設計上的檢查,繞過不需要的步驟直接檢驗需要的地方時所使用的代碼)。 有严重后果的程序错误会受到广泛关注。.

新!!: 缓冲区溢出和程序错误 · 查看更多 »

索尼

索尼公司(ソニー株式会社,Sony Corporation)是源自日本的跨國綜合企業,以研製電子產品為主要事業,經營領域橫跨消費性電子產品、專業性電子產品、遊戲、金融、娛樂及養老院等,擁有全世界的品牌知名度。其最早前身為1946年5月創立的「東京通信工業株式會社」,由擁有技術研發背景的井深大與擅長公關、行銷的盛田昭夫共同創辦,目前由遊戲部門出身的平井一夫與其經營團隊共同領導。總部位於東京都港區港南的(Sony City)。 索尼原以「新力」及「新力牌」做為港臺等地的中文譯名,由於臺灣亦有印章公司使用此名稱,因而改為已經於中國大陸通用的「索尼」,並於2009年4月1日統一使用,以更接近原始使用羅馬字拼寫的「SONY」的發音。.

新!!: 缓冲区溢出和索尼 · 查看更多 »

緩衝器

於設置在軌道末端防止列車出軌的鐵路安全裝置,請參見止衝擋。 緩衝器為暫時置放輸出或輸入資料的記憶體。 緩衝器內資料自儲存裝置(如硬碟),放置在緩衝器中,須待機送至CPU或其他運算裝置。.

新!!: 缓冲区溢出和緩衝器 · 查看更多 »

C標準函式庫

C 標準函式庫(C standard library,缩写:libc)是在C語言程式設計中,所有符合標準的头文件(head file)的集合,以及常用的函式庫實作程序(如 I/O 輸入輸出和字串控制)。不像 COBOL、Fortran 和 PL/I等程式語言,在 C 語言的工作任務裡不會包含嵌入的關鍵字,所以幾乎所有的 C 語言程式都是由標準函式庫的函式來建立的。.

新!!: 缓冲区溢出和C標準函式庫 · 查看更多 »

DRM

#重定向 数字版权管理.

新!!: 缓冲区溢出和DRM · 查看更多 »

銀行

銀行是以支付、存款、储蓄 、貸款、电汇等業務,承担信用中介的金融機構。.

新!!: 缓冲区溢出和銀行 · 查看更多 »

衝擊波蠕蟲

衝擊波蠕蟲(Worm.Blaster或Lovesan,也有譯為「疾風病毒」)是一種散播於Microsoft作業系統,Windows XP與Windows 2000的蠕虫病毒,爆發於2003年8月。 本蠕蟲第一次被注意並如燎原火般散佈,是在2003年的8月11日。它不斷繁殖並感染,在8月13日達到高峰,之後藉助ISP與網路上散佈的治療方法阻止了此蠕蟲的散佈。 在2003年8月29日,一個來自美國明尼蘇達州的18歲年輕人Jeffrey Lee Parson由於創造了Blaster.B變種而被逮捕;他在2005年被判處十八個月的有期徒刑。.

新!!: 缓冲区溢出和衝擊波蠕蟲 · 查看更多 »

高级语言

高级编程语言(High-level programming language)是高度封装了的编程语言,与低级语言相对。它是以人類的日常語言為基礎的一種編程語言,使用一般人易於接受的文字來表示,使程序編寫員編寫更容易,亦有較高的可讀性,以方便對電腦認知較淺的人亦可以大概明白其內容。由於早期電腦業的發展主要在美國,因此一般的高階語言都是以英語為藍本。在1980年代,當東亞地區開始使用電腦時,在日本、台灣及中國大陸都曾嘗試開發用各自地方語言編寫的高級語言,當中主要都是改編BASIC或專用於數據庫資料存取的語言,但是隨着編程者的外語能力提升,現時的有關開發很少。 G.

新!!: 缓冲区溢出和高级语言 · 查看更多 »

诺基亚

诺基亚公司(Nokia Oyj;、)是一家總部位於芬蘭埃斯波,主要從事生產行動通訊設備和服務的跨國公司,諾基亞成立於1865年,當時以伐木、造紙為主,後來亦從事生產膠鞋、輪胎、電纜、手機等,目前以通信基礎業務和先进技术研发及授权為主。消費者端行動通訊設備部門則售予微軟公司,其後再度授權Nokia品牌予鴻海集團旗下富智康及HMD Global進行生產製造。.

新!!: 缓冲区溢出和诺基亚 · 查看更多 »

黑客

黑客(Hacker)通常是指对计算机科学、編程和设计方面具高度理解的人,包含了下列人物:.

新!!: 缓冲区溢出和黑客 · 查看更多 »

边界检查

边界检查在程序设计中是指在使用某一个变量前,检查该变量是否处在一个特定范围之内。最常见的是数组的下标检查,防止下标超出数组范围而覆盖其他数据。 若是边界检查未能有效发现错误,最常见的结果是程序出现异常并终止运行,但也可能出现其他现象。 由于每次都进行边界检查非常耗时,而且有些代码确定不会出现越界问题,所以这个操作并不总是需要被执行。一些现代编译器中有称为选择性边界检查的技术,可以略去一些常见的不需要的边界检查,从而提高程序的性能。.

新!!: 缓冲区溢出和边界检查 · 查看更多 »

防火墙

在計算機科學領域中,防火牆(Firewall)是一個架設在網際網路與企業內網之間的資安系統,根據企業預定的策略來監控往來的傳輸。防火牆可能是一台專屬的網路設備或是執行於主機上來檢查各個網路介面上的網路傳輸。它是目前最重要的一種網路防護設備,從專業角度來說,防火牆是位於兩個(或多個)網路間,實行網路間訪問或控制的一組元件集合之硬體或軟體。.

新!!: 缓冲区溢出和防火墙 · 查看更多 »

電腦蠕蟲

電腦蠕蟲(computer worm)与電腦病毒相似,是一种能够自我复制的電腦zh:程式;zh-cn:程序;zh-tw:程式-。 与電腦病毒不同的是,電腦蠕蟲不需要附在别的程序内,可能不用使用者介入操作也能自我複製或執行。電腦蠕蟲未必會直接破壞被感染的系統,卻幾乎都對網路有害。電腦蠕蟲可能會执行垃圾代码以发动分散式阻斷服務攻擊,令到计算机的执行效率极大程度降低,从而影響--的正常使用;可能會損毀或修改目標電腦的檔案;亦可能只是浪費頻寬。(惡意的)電腦蠕蟲可根据其目的分成2類:.

新!!: 缓冲区溢出和電腦蠕蟲 · 查看更多 »

Linux

Linux( )是一種自由和開放源碼的類UNIX作業系統。该操作系统的内核由林纳斯·托瓦兹在1991年10月5日首次发布。,在加上使用者空間的應用程式之後,成為Linux作業系統。Linux也是自由软件和开放源代码软件发展中最著名的例子。只要遵循GNU通用公共许可证(GPL),任何个人和机构都可以自由地使用Linux的所有底层源代码,也可以自由地修改和再发布。大多數Linux系統還包括像提供GUI的X Window之類的程序。除了一部分專家之外,大多數人都是直接使用Linux發行版,而不是自己選擇每一樣組件或自行設置。 Linux嚴格來說是單指作業系統的内核,因作業系統中包含了許多用戶圖形介面和其他实用工具。如今Linux常用来指基于Linux的完整操作系统,內核則改以Linux内核稱之。由于这些支持用户空间的系统工具和库主要由理查德·斯托曼于1983年发起的GNU计划提供,自由软件基金会提议将其组合系统命名为GNU/Linux,但Linux不屬於GNU計劃,這個名稱並沒有得到社群的一致認同。 Linux最初是作为支持英特尔x86架构的个人电脑的一个自由操作系统。目前Linux已经被移植到更多的计算机硬件平台,远远超出其他任何操作系统。Linux可以运行在服务器和其他大型平台之上,如大型主机和超级计算机。世界上500个最快的超级计算机90%以上运行Linux发行版或变种,包括最快的前10名超级电脑运行的都是基于Linux内核的操作系统。Linux也广泛应用在嵌入式系统上,如手机(Mobile Phone)、平板电脑(Tablet)、路由器(Router)、电视(TV)和电子游戏机等。在移动设备上广泛使用的Android操作系统就是建立在Linux内核之上。 通常情况下,Linux被打包成供个人计算机和服务器使用的Linux发行版,一些流行的主流Linux发布版,包括Debian(及其衍生版本Ubuntu、Linux Mint)、Fedora(及其相关版本Red Hat Enterprise Linux、CentOS)和openSUSE等。Linux发行版包含Linux内核和支撑内核的实用程序和库,通常还带有大量可以满足各类需求的应用程序。个人计算机使用的Linux发行版通常包含X Window和一个相应的桌面环境,如GNOME或KDE。桌面Linux操作系统常用的应用程序,包括Firefox网页浏览器、LibreOffice办公软件、GIMP图像处理工具等。由于Linux是自由软件,任何人都可以创建一个符合自己需求的Linux发行版。.

新!!: 缓冲区溢出和Linux · 查看更多 »

Mac OS

#重定向 麦金塔操作系统.

新!!: 缓冲区溢出和Mac OS · 查看更多 »

Microsoft Windows

Microsoft Windows(中文有时譯作微軟--,通常不做翻译)是微軟公司推出的一系列操作系统。它問世於1985年,起初是MS-DOS之下的桌面環境,其後續版本逐漸發展成為主要为個人電腦和服务器用户設計的操作系統,并最终获得了世界个人电脑操作系統的垄断地位。此操作系統可以在几种不同类型的平台上运行,如个人电脑(PC)、移动裝置、服务器(Server)和嵌入式系統等等,其中在个人电脑的领域应用内最为普遍。在2004年國際數據資訊公司一次有关未来发展趋势的会议上,副董事长Avneesh Saxena宣布Windows拥有终端操作系统大约70%的市场份额 www.linuxworld.com.au。 Windows操作系統目前最新的穩定版是於2015年7月29日發佈的 Windows 10。Windows Server目前最新的穩定版是2016年9月26日發佈的Windows Server 2016。.

新!!: 缓冲区溢出和Microsoft Windows · 查看更多 »

NX位元

NX位(全名“No eXecute bit”,即「禁止執行位」,或“執行禁用位元”),是應用在CPU中的一種安全技術。.

新!!: 缓冲区溢出和NX位元 · 查看更多 »

OpenBSD

OpenBSD是一个类Unix计算机操作系统,是加州大学伯克利分校所开发的Unix衍生系统伯克利软件套件(BSD)的一个后继者。它是在1995年尾由荷裔加拿大籍项目领导者西奥·德·若特(Theo de Raadt)从NetBSD分支而出。除了操作系统,OpenBSD项目已为众多子系统编写了可移植版本,其中最值得注意的是PF、OpenSSH和OpenNTPD,作为软件包,它们在其他操作系统中随处可见。 该计划以其对开放源代码的坚持、高质量的文档、坚定的软件许可证和专注于系统安全及代码质量而闻名。该项目由德·若特在加拿大阿尔伯塔省卡尔加里的家中所协调。它的标志和吉祥物是一只河豚,名为普菲(Puffy)。 OpenBSD包含了一些在其他操作系统缺少或是列为选择性的安全特性,至今开发者仍然保有审计源代码以发现程序错误和安全问题的传统。该项目对软件许可证有严格限制,并倾向于使用开源的BSD许可证或其变种——过去还曾对许可证进行了全面的审计,并移除或替换掉以难以接受的许可证发布的代码。 与大多数基于BSD的操作系统一样,OpenBSD的内核和用户空间程序,如shell和cat及ps之类的通用工具,都在同一个源代码库共同开发。第三方软件可从port树中以二进制包的形式得到,或自源代码中编译。亦像大多数的现代BSD操作系统,在兼容的计算机架构中,它能以兼容模式完美运行为Linux编译的二进制代码。 OpenBSD计划维护着20种不同硬件平台的移植版,包括DEC Alpha、英特尔i386、惠普PA-RISC、x86-64及摩托罗拉 68000处理器、苹果PowerPC、Sun SPARC和SPARC64计算机和Sharp Zaurus。OpenBSD基金会被接纳为2014年Google编程之夏的指导组织。.

新!!: 缓冲区溢出和OpenBSD · 查看更多 »

PlayStation Portable

PlayStation Portable(官方縮寫:PSP)是索尼電腦娛樂於2004年12月12日發售的掌上型遊戲機。2007年9月,輕量、薄型化的PSP-2000系列發售。2008年10月,提升液晶螢幕鮮豔及對比度並內建麥克風的PSP-3000系列發售。2009年,PSPgo發售。2014年PSP停產,在十年的全壽命周期中,售出超過8000萬部。PSP停產之後,由2011年開始發售的PlayStation Vita取代。.

新!!: 缓冲区溢出和PlayStation Portable · 查看更多 »

Symbian

Symbian(中国大陆译名为“塞--班”,其他地区则直接使用英文名称“Symbian”),一種移动操作系统,由诺基亚公司擁有,廣泛使用於诺基亚手機上,2013年後停止發展。.

新!!: 缓冲区溢出和Symbian · 查看更多 »

UNIX

UNIX,一种计算机操作系统,具有多任务、多用户的特征。于1969年,在美国AT&T公司的贝尔实验室开发類UNIX(UNIX-like)。.

新!!: 缓冲区溢出和UNIX · 查看更多 »

杀毒软件

杀毒软件(Antivirus software)使用於偵測、移除電腦病毒、電腦蠕蟲、和特洛伊木馬程式。防毒軟體通常含有即時程序監控识别、惡意程式掃描和清除和自動更新病毒資料庫等功能,有的防毒軟體附加損害恢復等功能,是電腦防禦系統(包含防毒軟體,防火牆,特洛伊木馬程式和其他惡意軟體的防護及刪除程序,入侵防禦系統等)的重要組成。.

新!!: 缓冲区溢出和杀毒软件 · 查看更多 »

殭屍網絡

僵尸网络(Botnet,亦譯為喪屍網路、機器人網路)是指骇客利用自己编写的分散式阻斷服務攻擊程序将数万个沦陷的机器,即骇客常说的傀儡機或“肉鸡”(肉机),组织成一个个节点,用来发送伪造包或者是垃圾数据包,使预定攻击目标瘫痪并“拒绝服务”。通常蠕虫病毒也可以被利用组成僵尸网络。 最早的僵尸网络出现在1993年,在IRC聊天网络中出现。1999年后IRC协议的僵尸程序大规模出现。曾有一个新西兰19岁的骇客控制了全球150万台计算机,中国唐山的骇客也控制了6万台中国的计算机对某音乐网站进行分布式拒绝服务(DDoS)攻击,造成该网站不论将服务器转移到台湾还是美国都无法正常提供服务,损失上百万元人民币,河北唐山骇客的僵尸网络规模也是中国目前为止最大的,目前这两位骇客均已被逮捕。 2011年4月13日美國聯邦司法部和聯邦調查局(FBI)宣布破獲大批中毒電腦所組成的「殭屍網路」(botnet), 已全面關閉名為Coreflood伺服器和網路域名,並對13名嫌疑人起訴。該網路運作將近10年,全球有超過200萬台個人電腦被Coreflood惡意程式感染。.

新!!: 缓冲区溢出和殭屍網絡 · 查看更多 »

溢出

溢位可以指:.

新!!: 缓冲区溢出和溢出 · 查看更多 »

操作系统

操作系统(operating system,縮寫作 OS)是管理计算机硬件與软件資源的计算机程序,同时也是计算机系统的核心与基石。操作系统需要处理如管理與配置内存、決定系統資源供需的優先次序、控制輸入與輸出裝置、操作网络與管理文件系统等基本事務。操作系统也提供一個讓使用者與系統互動的操作界面。 操作系统的型態非常多樣,不同機器安裝的操作系统可從簡單到複雜,可從行動電話的嵌入式系统到超級電腦的大型作業系統。許多操作系统製造者對它涵盖范畴的定义也不尽一致,例如有些操作系统整合了图形用户界面,而有些僅使用命令行界面,而將图形用户界面視為一種非必要的應用程式。 操作系统理论在计算机科学中,為歷史悠久的分支;。.

新!!: 缓冲区溢出和操作系统 · 查看更多 »

智能手机

智能手机(Smartphone)是指具有移动操作系统,可透过安装应用软件、游戏等程序来扩充功能的手机。其运算能力及功能均优于传统功能手机。 最初的智能手机功能并不多,而且還有鍵盤,但后来iPhone以後的机型增加了便携式媒体播放器、数码相机和閃光燈(手電筒)、和GPS导航、NFC、重力感應水平儀等功能,使其成为了一种功能多样化的设备,透過這樣的破壞性創新,不只是手機產業被顛覆,而是智慧機徹底成為了電子市場主流硬體,取代或替代了相當多1990到2000年代所推出的各類電子產品。新一代的手機还拥有高分辨率触摸屏和网页浏览器,从而可以显示标准网页以及移动优化网页,--Wi-Fi和移动宽带,智能手机还能实现次世代高速数据访问,雲端存取等。自從具備連網能力後短短幾年內大大增加了手機的實用性,轉變成以網路行動端點為核心的通訊工具。 今日,行動應用程式市场及移动商务、手機遊戲產業、社交即時通訊網路的高速发展,促成了近年来移動網路的概念被實現,互聯網走向即時型態後,人人能夠隨時隨地接入線上,讓智慧手機成為了最重要的資訊產業相關平台,並逐步進駐了現代社會的方方面面,成為了如衣服一般不可或缺的必須品。.

新!!: 缓冲区溢出和智能手机 · 查看更多 »

传出传入
嘿!我们在Facebook上吧! »