ロゴ
ユニオンペディア
コミュニケーション
Google Play で手に入れよう
新しい! あなたのAndroid™デバイスでユニオンペディアをダウンロードしてください!
インストール
ブラウザよりも高速アクセス!
 

バッファオーバーラン

索引 バッファオーバーラン

バッファオーバーラン(buffer overrun)、バッファオーバーフロー(buffer overflow)とは、コンピュータのプログラムにおける、設計者が意図していないメモリ領域の破壊が起こされるバグのひとつ、またはそれにより引き起こされた現象を言う。 バッファオーバーランはコンピュータセキュリティ上の深刻なセキュリティホールとなりうるため、バッファオーバーランが起こる可能性のあるコンピュータプログラムはすぐに修正する必要がある。 バッファオーバーランは、現在もっとも重大なセキュリティホールのひとつと考えられている。あるプログラムでバッファオーバーランの脆弱性が発見されると、一般に高い優先度で修正作業が行われ、更新バージョンのプログラムや修正パッチの公開・配布などが行われる。.

112 関係: AdaASCII実行保護不正アクセス行為の禁止等に関する法律仮想記憶侵入防止システム侵入検知システム例外処理ページング方式ペイロード (コンピュータ)マイクロソフトバッファバッファアンダーランバイト (情報)バグポリモルフィックコードポートスキャンメモリアドレスメールアドレスレジスタ (コンピュータ)ワームワーム (コンピュータ)ヌル終端文字列ヌル文字プロプライエタリ・ソフトウェアプログラム (コンピュータ)ヒューリスティクスヒープ領域データデータ実行防止ファジングダイナミックリンクライブラリアプリケーションソフトウェアアドレス空間配置のランダム化インターネットバックグラウンドノイズインタプリタエンディアンエクスプロイトオペレーティングシステムオペコードクラッカー (コンピュータセキュリティ)コンピュータコンピュータ・アーキテクチャコンピュータウイルスコンピュータセキュリティコールスタックコードシェルコードシステムアドミニストレータスタックオーバーフロー...セキュリティホールセグメンテーション違反ゼルダの伝説 トワイライトプリンセスサブルーチンBillion laughs攻撃BugtraqC++C言語Code RedD言語DoS攻撃EiffelEnd Of FileExec Shield静的コード解析記憶装置自己書き換えコード英数字電子メールFgetsFingerプロトコルForthGetsGNUコンパイラコレクションGraphics Device InterfaceIntel 80386Internet Information ServicesJavaプラットフォームLISPMacOSMallocMetasploitMicrosoft SQL ServerMicrosoft WindowsModula-2Morris wormNOPNXビットOCamlOpenBSDPaXPhrackPing of deathPlayStation 2Return-to-libc攻撃ScanfSendmailSmalltalkSQL SlammerStrcpyStrlcatStrlcpyUNIXWiiWinnyXbox標準Cライブラリ書式文字列攻撃.NET Framework2003年64ビット8月 インデックスを展開 (62 もっと) »

Ada

Ada(エイダ)は、強力な言語機能を豊富に持ち、高度な型の体系をもつ、プログラミング言語の一つである。構文はAlgol系である。 史上初のプログラマとされるエイダ・ラブレスの名前にちなんでAdaと命名されているため、ADAと表記するのは誤り。 フリーのコンパイラとしては、GNATなどがある。.

新しい!!: バッファオーバーランとAda · 続きを見る »

ASCII

ASCII(アスキー、American Standard Code for Information Interchange)は、現代英語や西ヨーロッパ言語で使われるラテン文字を中心とした文字コード。これはコンピュータその他の通信機器において最もよく使われているものである。.

新しい!!: バッファオーバーランとASCII · 続きを見る »

実行保護

実行保護(じっこうほご、ESP:Executable space protection)とは、意図しないコードの実行を阻止するためのコンピュータセキュリティ上の機能の1つ。.

新しい!!: バッファオーバーランと実行保護 · 続きを見る »

不正アクセス行為の禁止等に関する法律

不正アクセス行為の禁止等に関する法律(ふせいアクセスこういのきんしとうにかんするほうりつ、平成11年8月13日法律128号)は、インターネット等のコンピュータネットワーク等での通信において、不正アクセス行為とその助長行為を規制する日本の法律。略称は不正アクセス禁止法など。 1999年(平成11年)8月13日公布、2000年(平成12年)2月13日施行。最近改正は2013年(平成25年)5月31日で、施行も同日。以下、本法については条数のみを記載する。.

新しい!!: バッファオーバーランと不正アクセス行為の禁止等に関する法律 · 続きを見る »

仮想記憶

仮想記憶(かそうきおく、Virtual Memory、バーチャルメモリ)とは、コンピュータ分野におけるメモリ管理の仮想化技法の一種であり、オペレーティングシステムなどが物理的なメモリを、アプリケーション・ソフトウェア(プロセスなど)に対して、専用の連続した主記憶装置に見えるように提供する。 この技術により、物理的な主記憶装置に加えてハードディスク装置等の補助記憶装置を併用すれば、物理的な主記憶装置よりも大きな仮想メモリを提供する事ができる。またアプリケーション・プログラム側は、物理メモリ上のアドレスを意識しなくて良いため、マルチタスクの実現が容易である。このため現代のオペレーティングシステムの多くが仮想記憶をサポートしている。 仮想的に与えられたアドレスを仮想アドレス (virtual address) または論理アドレス (logical address)、実記憶上で有効なアドレスを物理アドレス (physical address) または実アドレス (real address) という。仮想アドレスの範囲を仮想アドレス空間、物理アドレスの範囲を物理アドレス空間という。.

新しい!!: バッファオーバーランと仮想記憶 · 続きを見る »

侵入防止システム

侵入防止システム(しんにゅうぼうしシステム、Intrusion prevention system 略称: IPS)とは、コンピュータネットワークにおいて、特定のネットワーク及びコンピュータへ不正に侵入されるのを防御するシステムである。.

新しい!!: バッファオーバーランと侵入防止システム · 続きを見る »

侵入検知システム

侵入検知システム(しんにゅうけんちシステム)は、別名 Intrusion Detection System 略して IDS とも呼ばれ、コンピュータセキュリティ用語の上で、「ネットワーク上などへの不正なアクセスの兆候を検知し、ネットワーク管理者に通報する」機能を持つソフトウェア、またはハードウェアである。.

新しい!!: バッファオーバーランと侵入検知システム · 続きを見る »

例外処理

例外処理(れいがいしょり)とは、プログラムの上位の処理から呼び出されている下位の処理で継続不能、または継続すれば支障をきたす異常事態に陥ったとき、制御を呼び出し元の上位の処理に返し安全な状態になるよう回復処理をすること。その際に発生した異常のことを例外と呼ぶ。 継続不能や継続すると問題になる様な状態としては、次のようなものが挙げられる。.

新しい!!: バッファオーバーランと例外処理 · 続きを見る »

ページング方式

ページング方式 (Paging) とは、コンピュータのオペレーティングシステムにおいて記憶装置をページと呼ばれる小さな単位に分割して割り当てを行うアルゴリズム群である。仮想記憶のベースとなる設計の一つ。 物理メモリ空間および論理メモリ空間を、基本的に一定サイズのページと呼ばれる単位に分割して管理を行う。論理メモリから物理メモリ空間への対応づけはページテーブルと呼ばれる構造体で実現され、この構造体はオペレーティングシステム (OS) によって管理される。物理メモリ空間に対応づけられていない論理メモリを参照した時にはページフォルトという例外によってOS側の例外処理ルーチンに制御が移行し、OS側の管理によって適宜対応したページを二次記憶等から読み込み、テーブルを更新してその参照した命令の実行に戻る。 これを実現するハードウエアであるメモリ管理ユニット (MMU) の中にはトランスレーション・ルックアサイド・バッファ (Translation Lookaside Buffer:TLB) と呼ばれる一種のキャッシュがあり、ユニット内部ではこの対応表に基づいてメモリアドレスの対応づけを行っている。このテーブルから参照出来なかったときをTLBミスと呼ぶ。このときの処理はMMUの設計によって異なり、MMU内にはTLBのみを持ちTLBミスが即例外を起こし、OSがページテーブルを引いてTLBに追加することによってTLBミスを解決するアーキテクチャや、ページテーブル自体のフォーマットがOSが使えるビットを含めた形でMMUによって定義されていて、TLBミス時にMMU自身が与えられた物理アドレスにあるページテーブルを参照するアーキテクチャもある。.

新しい!!: バッファオーバーランとページング方式 · 続きを見る »

ペイロード (コンピュータ)

ンピュータネットワークのペイロード(payload)とは、データ伝送における正味のデータ部分を指す。.

新しい!!: バッファオーバーランとペイロード (コンピュータ) · 続きを見る »

マイクロソフト

マイクロソフト()は、アメリカ合衆国ワシントン州に本社を置く、ソフトウェアを開発・販売する会社である。1975年4月4日にビル・ゲイツとポール・アレンらによって設立された。.

新しい!!: バッファオーバーランとマイクロソフト · 続きを見る »

バッファ

バッファ(buffer、バッファー)とは、元々は物理的な衝撃を吸収して和らげる緩衝器の意味である。この言葉がコンピュータなど情報処理機器の中で電気的に似たような働きをする部分に対して用いられる。.

新しい!!: バッファオーバーランとバッファ · 続きを見る »

バッファアンダーラン

バッファアンダーラン (buffer underrun) またはバッファアンダーフロー (buffer underflow) とは、コンピュータシステムにおける例外動作の1つで、あるバッファ領域に対して必要とされる分より書き込まれるデータが不足することである。類似の用語にスタックアンダーフローがあり、これはスタックの限度を超えたポップのことであるが、バッファアンダーフローの用語においてもバッファ領域外の下位アドレスへの不正アクセスの意を含むとする意見もある。 プログラムに適切な防止/検出の例外処理が施されていない場合には、バッファオーバーランと同様にコンピュータセキュリティ上の深刻なセキュリティホールとなりうる。またリアルタイム性を要求される処理で発生した場合はセッションが失敗することもある。 バッファオーバーラン同様種類によってスタックアンダーラン、ヒープアンダーランに大別され、スタック、ヒープのいずれもプログラムの実行に不可欠なデータ(例えばサブルーチンのリターンアドレスや、ヒープ内のコード)を内包することがあり、そのようなデータを意図的に排除させることにより、意図的なコードを実行させることが可能になる。.

新しい!!: バッファオーバーランとバッファアンダーラン · 続きを見る »

バイト (情報)

バイト (byte) は、「複数ビット」を意味する、データ量あるいは情報量の単位である。 1980年頃から1バイトは8ビット (bit) であることが一般的であったが、 正式に定義されたのは2008年発行のIEC_80000-13である。 8ビットは、256個の異なる値(たとえば整数であれば、符号無しで0から255、符号付きで−128から+127、など)を表すことができる。.

新しい!!: バッファオーバーランとバイト (情報) · 続きを見る »

バグ

バグ (bug) とは、英語で「虫」の意であり、転じてコンピュータプログラムの誤りや欠陥を表す。 ソフトウェア・ハードウェア開発における契約文書など、法的な文書ではバグのことを「瑕疵」と記述する。原因や責任の所在などが不明なものを特定性の低い表現の「不具合」と呼ぶことがある。また、セキュリティ上に関わるバグや欠陥は「セキュリティホール」などと呼ばれることもある(正確には、バグはこれらの原因(のひとつ)である)。 多くのバグが含まれ、機能的に正常な役割を果たさないものを、バギー・プログラム (Buggy Program) と呼ぶことがある。 なお、発生したバグを探して取り除く作業はデバッグと呼ばれる。.

新しい!!: バッファオーバーランとバグ · 続きを見る »

ポリモルフィックコード

ポリモルフィックコード(英: Polymorphic code)とは、本来のアルゴリズムを保ったまま変化していくコード(プログラム)である。この技法はコンピュータウイルス、シェルコード、ワームが自身の存在を隠すために使われる。 アンチウイルスソフトウェアや侵入検知システムの多くは、ファイルやコンピュータネットワーク上のパケットを調べ、悪意あるコードがないか調べる。これにおける検出方法はもっぱらパターンマッチであるため、ポリモルフィック手法によりコードを絶えず変化させることで、検出を難しくすることができる。 ポリモルフィックコードを実現する手段としてよく使われるのは暗号である。しかし、コード全体を暗号化してしまうと実行不可能となるので、それはできない。したがって、一部のコードは暗号化せずに残しておく。アンチウイルスソフトウェアは、その暗号化されない一部分をターゲットとして探索する。 悪意あるプログラマは、暗号化できない復号エンジン部をウイルスやワームが伝播するたびに書き換えることでセキュリティソフトウェアから逃れようとする。また、アンチウイルスソフトウェア側もマルウェアを確実に検出するため、復号エンジン部の突然変異によっても変化しないパターンを見つけ出そうとする。 世界初のポリモルフィックコード方式のウイルスを作ったのは Mark Washburn である。そのウイルス 1260 は1990年に書かれた。もっとよく知られているポリモルフィックコード方式のウイルスとしては、1992年にブルガリアのクラッカー Dark Avenger(:en:Dark Avenger)が作った、ミューテーションエンジン(Dark Avenger Mutation Engineを略してDAME、あるいはMtEと略される)がある。MtEの著しい特徴は、それ自身は厳密にはウイルスではなく、他のウイルスにとりつき、そのウイルスのコードを暗号化する「エンジン」である点である。.

新しい!!: バッファオーバーランとポリモルフィックコード · 続きを見る »

ポートスキャン

ポートスキャンはコンピュータ用語であり、すべてのポートに信号を送り通信に利用可能なポートを探すこと。有名なポートスキャナーにはnmapがある。.

新しい!!: バッファオーバーランとポートスキャン · 続きを見る »

メモリアドレス

メモリアドレス(memory address)は、コンピュータの主記憶装置にアクセスするためにソフトウェアおよびハードウェアによって様々なレベルで使用されるデータ概念である。通常、メモリアドレスは、整数として表示・処理される固定長の数字の列である。メモリアドレスの数値の意味は、CPUの機能(やなど)や様々なプログラミング言語で採用されている配列のようなメモリの使用法に基づいている。.

新しい!!: バッファオーバーランとメモリアドレス · 続きを見る »

メールアドレス

電子メールアドレス(でんしメールアドレス、英語:Electronic mail address)、Eメールアドレス(イーメールアドレス、英語:email address、e-mail address)は電子メールにおける送信先や発信元を表す。略称としてメールアドレス、アドレス、メルアド、メアドなどがある。漢字で言うと電子郵便住所である。.

新しい!!: バッファオーバーランとメールアドレス · 続きを見る »

レジスタ (コンピュータ)

レジスタ(register)はコンピュータのプロセッサなどが内蔵する記憶回路で、制御装置や演算装置や実行ユニットに直結した、操作に要する速度が最速の、比較的少量のものを指す。.

新しい!!: バッファオーバーランとレジスタ (コンピュータ) · 続きを見る »

ワーム

ワーム (worm) は、英語でミミズやサナダムシなど細長い虫の俗称。蠕虫(ぜんちゅう)。.

新しい!!: バッファオーバーランとワーム · 続きを見る »

ワーム (コンピュータ)

ワームとは、独立したプログラムであり、自身を複製して他のシステムに拡散する性質を持ったマルウェアである。宿主となるファイルを必要としない点で、狭義のコンピュータウイルスとは区別される。しかし、ネットワークを介して他のコンピュータに伝染していく点では共通しており、同一視されることもある。.

新しい!!: バッファオーバーランとワーム (コンピュータ) · 続きを見る »

ヌル終端文字列

プログラミングにおいて、ヌル終端文字列(ヌルしゅうたんもじれつ、null-terminated string)とは、文字を配列に格納し、ヌル文字('\0'、ASCIIコードではNUL)でその終端(番兵)を表した文字列である。C言語等で用いられることからC文字列(C string)とも言い、ASCIIコードの後にゼロ(zero)があることからASCIIZとも呼ばれる。 ヌル終端文字列の長さは、文字列の先頭から見て最初のヌル文字を発見することでしかわからない。その計算量は文字列長に比列する(O(n))。また、ヌル文字そのものは文字列に含めることはできず、ヌル文字は終端に1つだけ存在する。.

新しい!!: バッファオーバーランとヌル終端文字列 · 続きを見る »

ヌル文字

ヌル文字(または「ヌル終端文字」)とは、値0の制御文字である。NULと表記される場合もある。 多くの文字集合にはヌル文字の定義がある。ISO/IEC 646(ASCII)、C0制御コード、C1制御コード、ISO/IEC 10646(Unicode)、EBCDICなどの文字集合は全てヌル文字を含んでいる。一方で、JIS X 0208などのように、これを収録しない文字集合もある。ASCII、Unicode、EBCDICなどではヌル文字はコードポイント0に当てられている。多くのプログラミング言語ではヌル文字を使用できる。C言語などでは、ヌル文字のコードは0であると定義されている。.

新しい!!: バッファオーバーランとヌル文字 · 続きを見る »

プロプライエタリ・ソフトウェア

プロプライエタリ・ソフトウェア(英: proprietary software)または私有ソフトウェア(しゆう-)とは、ソフトウェアの入手、使用、改変、複製などに関する権利を議論する文脈で用いられるソフトウェアの種類についての用語。プロプライエタリ・ソフトウェアとは、ソフトウェアの配布者が、利用者の持つ権利を制限的にすることで自身や利用者の利益およびセキュリティを保持しようとするソフトウェアを指す。制限には法的手法や技術的手法など様々な方法がある。技術的制限手法としては、バイナリ実行コードのみを使用者に提供し、ソースコードは公開しないというソフトウェア流通の方法がある。法的制限手法としては、著作権や特許権、不正競争防止法、国家機密及びそれに基づくソフトウェアライセンス許諾といった方法がある。.

新しい!!: バッファオーバーランとプロプライエタリ・ソフトウェア · 続きを見る »

プログラム (コンピュータ)

ンピュータプログラム(英:computer programs)とは、コンピュータに対する命令(処理)を記述したものである。コンピュータが機能を実現するためには、CPUで実行するプログラムの命令が必要である。 コンピュータが、高度な処理を人間の手によらず遂行できているように見える場合でも、コンピュータは設計者の意図であるプログラムに従い、忠実に処理を行っている。実際には、外部からの割り込み、ノイズなどにより、設計者の意図しない動作をすることがある。また設計者が、外部からの割り込みの種類を網羅的に確認していない場合もある。.

新しい!!: バッファオーバーランとプログラム (コンピュータ) · 続きを見る »

ヒューリスティクス

ヒューリスティック(heuristic, Heuristik)とは、必ず正しい答えを導けるわけではないが、ある程度のレベルで正解に近い解を得ることができる方法である。ヒューリスティックスでは、答えの精度が保証されない代わりに、回答に至るまでの時間が少ないという特徴がある。主に計算機科学と心理学の分野で使用される言葉であり、どちらの分野での用法も根本的な意味は同じであるが、指示対象が異なる。すなわち、計算機科学ではプログラミングの方法を指すが、心理学では人間の思考方法を指すものとして使われる。なお、論理学では仮説形成法と呼ばれている。.

新しい!!: バッファオーバーランとヒューリスティクス · 続きを見る »

ヒープ領域

ヒープ領域(heap memory)はコンピュータープログラミングにおいて、動的に確保可能なメモリの領域。ヒープ (heap) とは、『山積み』という言葉の中の『山』をさす英単語である。 データ構造のヒープと直接的な関係があるかどうかは、ヒープ領域の構造の設計、保守にデータ構造のヒープの技術を使うかどうかに依る(あらゆるデータ構造とヒープ領域の関係について「直接的な関係があるかどうかは、ヒープ領域の構造の設計、保守にそのデータ構造の技術を使うかどうかに依る」ということが言えるので、データ構造のヒープについても、こう主張することが絶対的な間違いだとは言い切れない)。 ヒープ領域は、2種類のラベルを持つ双方向リストによって構成されている。初期状態では、リストはひとつの「未使用」ノードが全体を占めていて、メモリ確保関数(C言語のmalloc, C++のnew等)によって、「未使用」ノードから必要な分を切り取って「使用中」ノードと「未使用」ノードに分ける。確保したメモリが不要になった場合には、メモリ解放関数(C言語のfree, C++のdelete等)によってノードのラベルを「未使用」に書き換える。解放のつど、あるいはカウンタによって一定水準に達した時、連続した個々の「未使用」ノードを結合し、大きな「未使用」ノードに還元する。「未使用」ノードが不足した場合には、オペレーティングシステムに領域拡大を要求しヒープ領域を拡大するか、飛び飛びの未使用領域を連続な未使用領域に統合する。これをごみ集め(garbage collection)という。 ヒープ領域により、変数を動的に確保できる利点がある。欠点としては領域の確認・確保の時間にばらつきがあり処理時間の見積もりが困難になることと、領域の確保と解放の繰り返しによりヒープ上にどこからも参照しない領域が発生することがある。この領域を塵(garbage)という。 「未使用ノード」と「使用中」ノードが混在、つまり塵によりヒープの未使用領域がバラバラに分断された状態をフラグメンテーション状態と呼ぶ。.

新しい!!: バッファオーバーランとヒープ領域 · 続きを見る »

データ

データ(data)とは、事実や資料をさす言葉。言語的には複数形であるため、厳密には複数の事象や数値の集まりのことを指し、単数形は datum(データム)である。.

新しい!!: バッファオーバーランとデータ · 続きを見る »

データ実行防止

データ実行防止(Data Execution Prevention, DEP)は、Microsoft Windowsに搭載されているセキュリティ機能である。この機能の目的は、アプリケーションやサービスが実行不可能なメモリ領域からコードを実行することの防止である。これはある種の攻撃 (たとえばバッファオーバーフローを経由してコードを格納するもの) を防止する効果がある。DEPには2つの動作モードがある: メモリページを実行不可能とマークできるCPUのためのハードウェアDEPと、ハードウェアサポートがないCPUのためのソフトウェアDEPで、後者の防御はより限られている。ソフトウェアDEPはコードがデータページから実行されることを防がないが、代わりに他の攻撃 (SEH オーバーライト) を防止する。 DEPはWindows XP Service Pack 2で導入され、Windows XP Tablet PC Edition 2005、Windows Server 2003 Service Pack 1以降、Windows Vista、Windows Server 2008、およびそれ以降のすべてのバージョンのWindowsに含まれている。.

新しい!!: バッファオーバーランとデータ実行防止 · 続きを見る »

ファジング

ファジングとは、ソフトウェアの不具合(とくに脆弱性を意図することが多い)を発見するためのテスト手法の一つである。ファズ(英:fuzz)(予測不可能な入力データ)を与えることで意図的に例外を発生させ、その例外の挙動を確認するという方法を用いる。ファズテストと呼ばれることもある。.

新しい!!: バッファオーバーランとファジング · 続きを見る »

ダイナミックリンクライブラリ

ダイナミックリンクライブラリ (Dynamic Link Library: DLL、動的リンクライブラリ)は、ソフトウェアの一種。動的リンクを使ったライブラリのこと。あるいは、Windowsで使用されるファイル形式を特に意図して、この語が用いられる場合もある。 複数のプログラムから共通に利用できるように種々の機能をプログラムとは分離させた、シェアードライブラリ(共有ライブラリ)でもあることが多い。.

新しい!!: バッファオーバーランとダイナミックリンクライブラリ · 続きを見る »

アプリケーションソフトウェア

アプリケーションスイートである。 アプリケーションソフトウェア(application software, 応用ソフトウェア)は、アプリケーション(応用)プログラムともいい、ワープロや表計算などといった、コンピュータを「応用」する目的に応じた、コンピュータ・プログラムである。なお、それに対してシステムプログラムは、アプリケーションプログラムに対して処理実行のための計算機資源を抽象化して提供する、などのインフラとしての役割のプログラムであり、ユーザーが要求する情報処理を直接実行するものではなく、ユーザーが普段は意識することはない裏方的な存在がシステムプログラムである。.

新しい!!: バッファオーバーランとアプリケーションソフトウェア · 続きを見る »

アドレス空間配置のランダム化

アドレス空間配置のランダム化(address space layout randomization, ASLR)とは、重要なデータ領域 の位置(通常、プロセスのアドレス空間における実行ファイルの基底とライブラリ、ヒープ、およびスタックの位置が含まれる)を無作為に配置するコンピュータセキュリティの技術である。.

新しい!!: バッファオーバーランとアドレス空間配置のランダム化 · 続きを見る »

インターネットバックグラウンドノイズ

インターネットバックグラウンドノイズ(Internet background noise: IBN)またはインターネット背景放射(Internet background radiation)とは、インターネット上を流れる、受け取り手がない(宛先となっているIPアドレスやポートが実在しない)パケットのことである。 これらのパケットには、迷惑な宣伝やネットワーク制御メッセージが含まれており、ポートスキャンやワーム活動の結果であることが多い。 例えば、一部のDSLモデムは、正しい時刻を取得するためにハードコードされたNTPサーバのIPアドレスを持っており、たとえそのNTPサーバが存在しなくなっても、そのIPアドレス宛にリクエストを送り続ける。.

新しい!!: バッファオーバーランとインターネットバックグラウンドノイズ · 続きを見る »

インタプリタ

インタプリタ(interpreter)とは、プログラミング言語で書かれたソースコードないし中間表現を逐次解釈しながらするプログラムのこと。.

新しい!!: バッファオーバーランとインタプリタ · 続きを見る »

エンディアン

ンディアン(endianness)は、複数のバイトなどを並べる順序の種類である。一般的な用語による表現ではバイトオーダ(byte order)、ないしそれを一部訳して日本語ではバイト順とも言う。 英語の「endian」という単語自体には元々は「配置方式」「並び順」といった意味はなかった(#語源を参照)。日本では総称として「エンディアン」と呼ぶことが多いが、英語でそれに相当する語はendianness(エンディアンネス)である。.

新しい!!: バッファオーバーランとエンディアン · 続きを見る »

エクスプロイト

プロイト(exploit)とは、コンピュータのセキュリティ用語。もともとは、脆弱性を利用したソースコードを指し、そこから広まった複数の意味を持つ。.

新しい!!: バッファオーバーランとエクスプロイト · 続きを見る »

オペレーティングシステム

ペレーティングシステム(Operating System、OS、オーエス)とは、コンピュータのオペレーション(操作・運用・運転)のために、ソフトウェアの中でも基本的、中核的位置づけのシステムソフトウェアである。通常、OSメーカーが組み上げたコンピュータプログラムの集合として、作成され提供されている。 オペレーティングシステムは通常、ユーザーやアプリケーションプログラムとハードウェアの中間に位置し、ユーザーやアプリケーションプログラムに対して標準的なインターフェースを提供すると同時に、ハードウェアなどの各リソースに対して効率的な管理を行う。現代のオペレーティングシステムの主な機能は、ファイルシステムなどの補助記憶装置管理、仮想記憶などのメモリ管理、マルチタスクなどのプロセス管理、更にはGUIなどのユーザインタフェース、TCP/IPなどのネットワーク、などがある。オペレーティングシステムは、パーソナルコンピュータからスーパーコンピュータまでの各種のコンピュータや、更にはスマートフォンやゲーム機などを含む各種の組み込みシステムで、内部的に使用されている。 製品としてのOSには、デスクトップ環境やウィンドウシステムなど、あるいはデータベース管理システム (DBMS) などのミドルウェア、ファイル管理ソフトウェアやエディタや各種設定ツールなどのユーティリティ、基本的なアプリケーションソフトウェア(ウェブブラウザや時計などのアクセサリ)が、マーケティング上の理由などから一緒に含められていることもある。 OSの中で、タスク管理やメモリ管理など特に中核的な機能の部分をカーネル、カーネル以外の部分(シェルなど)をユーザランドと呼ぶ事もある。 現代の主なOSには、Microsoft Windows、Windows Phone、IBM z/OS、Android、macOS(OS X)、iOS、Linux、FreeBSD などがある。.

新しい!!: バッファオーバーランとオペレーティングシステム · 続きを見る »

オペコード

ペコード (operation code, opcode) とは、機械語の1個の命令の部分で、実行する操作 (operation) の種類を指定する部分のこと、およびそのコード(符号)のことである。数式における演算子に相当する。命令のもうひとつの主要部分は、操作される対象を指定するオペランド(被演算子)である。.

新しい!!: バッファオーバーランとオペコード · 続きを見る »

クラッカー (コンピュータセキュリティ)

ラッカーは、コンピュータネットワークに不正に侵入したり、破壊・改ざんなどの悪意を持った行為、すなわちクラッキング(悪意を持ったハッキング)を行う者のこと。.

新しい!!: バッファオーバーランとクラッカー (コンピュータセキュリティ) · 続きを見る »

コンピュータ

ンピュータ(Computer)とは、自動計算機、とくに計算開始後は人手を介さずに計算終了まで動作する電子式汎用計算機。実際の対象は文字の置き換えなど数値計算に限らず、情報処理やコンピューティングと呼ばれる幅広い分野で応用される。現代ではプログラム内蔵方式のディジタルコンピュータを指す場合が多く、特にパーソナルコンピュータやメインフレーム、スーパーコンピュータなどを含めた汎用的なシステムを指すことが多いが、ディジタルコンピュータは特定の機能を実現するために機械や装置等に組み込まれる組み込みシステムとしても広く用いられる。電卓・機械式計算機・アナログ計算機については各項を参照。.

新しい!!: バッファオーバーランとコンピュータ · 続きを見る »

コンピュータ・アーキテクチャ

ンピュータ・アーキテクチャ(computer architecture)は、コンピュータ(特にハードウェア)における基本設計や設計思想などを意味する。アーキテクチャ(建築)には、単に「建築物」以外に、設計や様式という意味があるが、それから転じて、コンピュータ分野においても使われるようになった。「設計思想」などと意訳されることもある。技術者や研究者の用語としては(企業ごとの用語の違いにもよるが)「方式」という語が使われることもある。 1964年のSystem/360で最初に使われた用語で、その際の意味としては、入出力インタフェースを含むコンピュータシステムのハードウェア全体(周辺機器自体は含まない)の、ユーザー(プログラマ、OSを設計するプログラマも含む)から見たインタフェースの定義であり、具体的には使用できるレジスタの構成、命令セット、入出力(チャネルコントロールワード)などであり、実装は含まない。このアーキテクチャが同一のコンピュータ間や、上位互換のアーキテクチャを持つコンピュータへの移行や、上位互換の周辺機器への移行などは、ソフトウェアの互換性が原則として保証される。またハードウェアの内部設計や実装は、定義されたアーキテクチャを守る限り、技術の進歩に応じて自由に更新できる。この結果、コンピュータ・ファミリー(シリーズ)が形成可能となる。現在で言えばレイヤー定義であり仮想化の一種でもある。 また、システムアーキテクチャ、エンタープライズアーキテクチャ、ソフトウェアアーキテクチャ、ARMアーキテクチャなどの用語も増えている。.

新しい!!: バッファオーバーランとコンピュータ・アーキテクチャ · 続きを見る »

コンピュータウイルス

ンピュータウイルス (computer virus) とは、マルウェア(コンピュータに被害をもたらすプログラム)の一種で、自立せず、動的に活動せず、プログラムファイルからプログラムファイルへと静的に感染するものを指す。.

新しい!!: バッファオーバーランとコンピュータウイルス · 続きを見る »

コンピュータセキュリティ

ンピュータセキュリティ(英語:Computer Security)は、情報セキュリティの一部で、コンピュータシステムを災害、誤用および不正アクセスなどから守ることである。また、ハードウェア、ソフトウェア、データ、ネットワークのいずれについてもその機密性、完全性、可用性を維持することである。 不正な利用とは、第三者による秘密情報へのアクセス、許可されていない操作の実行、ネットを介した詐欺(架空請求、ワンクリック詐欺など)が含まれる。この語は、しばしばコンピュータセキュリティ(安全性)を保つための仕組みや技術を指すために用いられる。また、コンピュータセキュアとも呼ばれる場合もある。.

新しい!!: バッファオーバーランとコンピュータセキュリティ · 続きを見る »

コールスタック

ールスタック (Call Stack)は、プログラムに実行中にサブルーチンに関する情報を格納するスタックである。実行中のサブルーチンとは、呼び出されたが処理を完了していないサブルーチンを意味する。実行スタック (Execution Stack)、制御スタック (Control Stack)、関数スタック (Function Stack)などとも呼ばれる。また、単に「スタック」と言ったときにコールスタックを指していることが多い。コールスタックを正しく保つことは多くのソフトウェアが正常動作するのに重要であるが、その詳細は高水準言語からは透過的である。.

新しい!!: バッファオーバーランとコールスタック · 続きを見る »

コード

ード.

新しい!!: バッファオーバーランとコード · 続きを見る »

シェルコード

ェルコード(英: Shellcode)とは、コンピュータセキュリティにおいて、ソフトウェアのセキュリティホールを利用するペイロードとして使われるコード断片である。侵入したマシンを攻撃者が制御できるようにするため、シェルを起動することが多いことから「シェルコード」と呼ぶ。シェルコードは機械語で書かれることが多いが、機械語でなくとも同様のタスクを実行できるコード断片はシェルコードと呼ばれる。シェルコードは単にシェルを起動するだけとは限らないため、シェルコードという名称は不十分だとも言われている。しかし、他の用語は今のところ定着していない。.

新しい!!: バッファオーバーランとシェルコード · 続きを見る »

システムアドミニストレータ

テムアドミニストレータ(英語:systems administrator、略称:シスアド)とは、情報システム及びそれらを構成するコンピュータシステムの管理者のことである。システム管理者とも呼ばれる。.

新しい!!: バッファオーバーランとシステムアドミニストレータ · 続きを見る »

スタックオーバーフロー

タックオーバーフロー (stack overflow) は、プログラム中での関数呼び出しが多すぎる時に発生する、バッファオーバーフローの一種である。.

新しい!!: バッファオーバーランとスタックオーバーフロー · 続きを見る »

セキュリティホール

ュリティホール は、脆弱性についての俗表現である。 脆弱性は、コンピュータソフトウェアの欠陥(バグ、不具合、あるいはシステム上の盲点)の一つで、本来操作できないはずの操作(権限のないユーザが権限を超えた操作を実行するなど)ができてしまったり、見えるべきでない情報が第三者に見えてしまうような不具合をいう。ハードウェアおよびそれを含めたシステム全般の欠陥を指すこともある。 このような欠陥は古くから存在したが、特に問題視されるようになったのはインターネットの発展に伴って脆弱性がネットワークを介して容易に攻撃されうる状態になっているからである。 原因としては、プログラムのコーディング間違いや、システムの設定間違い、システム設計上の考慮不足、故意に作られ秘密にされた機能の漏洩などがある。.

新しい!!: バッファオーバーランとセキュリティホール · 続きを見る »

セグメンテーション違反

メンテーション違反(英語:segmentation fault)はソフトウェアの実行時に起きる特定のエラー条件である。segfault(セグフォールト)と略される場合がある。 セグメンテーション違反はアクセスが許可されていないメモリ上の位置、もしくは許可されていない方法(例えばリードオンリーの位置へ書き込みをしようとする、もしくはオペレーティングシステムの部分を上書きしようとする)でメモリ上の位置にアクセスしようとするときに起こる。MC68000のようなプロセッサに基づくシステムはこれらのイベントをアドレスエラーもしくはバスエラーとして参照しようとする傾向にある。 セグメント方式はメモリ管理とオペレーティングシステムを保護する方法の一つである。大部分の用途のためにページング方式に置き換えられつつあるが、セグメンテーションの専門用語はまだ多く使用されている。セグメンテーション違反はその一例である。オペレーティングシステムの中にはメインメモリ管理の方針としてページング方法が使用されているがいくつかの論理レベルでまだセグメンテーションを持つものがある。 UNIXライクのオペレーティングシステム上では、不正なメモリにアクセスをするプロセスはSIGSEGVシグナルを受け取る。Microsoft Windows上では、不正なメモリにアクセスするプロセスはSTATUS_ACCESS_VIOLATION例外を受け取る。.

新しい!!: バッファオーバーランとセグメンテーション違反 · 続きを見る »

ゼルダの伝説 トワイライトプリンセス

『ゼルダの伝説 トワイライトプリンセス』(ゼルダのでんせつ トワイライトプリンセス、英題:The Legend of Zelda: Twilight Princess)は、任天堂より発売された、Wii・ニンテンドーゲームキューブ用のアクションアドベンチャーゲーム。略称は「トワプリ」。.

新しい!!: バッファオーバーランとゼルダの伝説 トワイライトプリンセス · 続きを見る »

サブルーチン

ブルーチン(subroutine)は、コンピュータプログラミングにおいて、プログラム中で意味や内容がまとまっている作業をひとつの手続きとしたものである。繰り返し利用されるルーチン作業をモジュールとしてまとめたもので、呼び出す側の「主」となるもの(メインルーチン)と対比して「サブルーチン」と呼ばれる。サブプログラム (subprogram) と呼ばれることもある。また、「サブ」をつけずに「ルーチン」と呼ぶこともある。 プログラムのソース中で、繰り返し現れる作業をサブルーチン化することで、可読性や保守性を高く保つことができる。繰り返し現れる作業でなくても、意味的なまとまりを示すためにサブルーチン化することもある。また、キャッシュのような階層的メモリの設計を持つコンピュータ(現在のパソコンやワークステーションなどほぼすべて)では、よく使われるサブルーチンがキャッシュに格納されることで高速な動作を期待できる。.

新しい!!: バッファオーバーランとサブルーチン · 続きを見る »

Billion laughs攻撃

ンピュータセキュリティにおいて、Billion laughs攻撃とはXMLドキュメントのパーサーを対象としたDoS攻撃の一種である。 XML爆弾や指数的エンティティ膨張攻撃(exponential entity expansion attack)とも呼ばれる。.

新しい!!: バッファオーバーランとBillion laughs攻撃 · 続きを見る »

Bugtraq

Bugtraq(バグトラック)は、コンピュータセキュリティに関するメーリングリストである。脆弱性に関する議論(攻撃方法やそのexploit、回避方法や解決方法も含まれる)、脆弱性を持つ製品情報などが主な議題として挙げられる。.

新しい!!: バッファオーバーランとBugtraq · 続きを見る »

C++

C++(シープラスプラス)は、汎用プログラミング言語の一つである。日本語では略してシープラプラ、シープラなどとも呼ばれる。.

新しい!!: バッファオーバーランとC++ · 続きを見る »

C言語

C言語(シーげんご)は、1972年にAT&Tベル研究所のデニス・リッチーが主体となって開発したプログラミング言語である。英語圏では単に C と呼んでおり、日本でも文書や文脈によっては同様に C と呼ぶことがある。.

新しい!!: バッファオーバーランとC言語 · 続きを見る »

Code Red

Code Red(コードレッド)は、2001年7月13日にインターネットで発見されたワームである。マイクロソフトの IIS Webサーバが動作するコンピュータを攻撃した。このワームについて最も深く調査したのは、eEye Digital Security のプログラマ達であった。彼らはワームの名称も決めたが、その由来はソフトドリンク「マウンテンデュー」のチェリー味の商品名(CODE RED)と、このワームに攻撃されたWebサイトで見られた "Hacked By Chinese!" という文字列からの連想である(赤狩り参照)。このワームが出現したのは7月13日だが、被害が拡大したのは2001年7月19日のことだった。この日感染したホスト数は359,000に達した。当日は、世界中のネットワークのトラフィックの急増により、どのサイトへもつながりにくい状態が発生し、唯一インターネットが麻痺した日とされる。.

新しい!!: バッファオーバーランとCode Red · 続きを見る »

D言語

D言語(ディーげんご、D programming language)は、プログラミング言語のひとつ。C言語をベースとしABI互換を保ちつつも、テンプレートによるジェネリックプログラミングやオブジェクト指向プログラミング、関数型プログラミングなどをサポートするマルチパラダイムプログラミング言語である。.

新しい!!: バッファオーバーランとD言語 · 続きを見る »

DoS攻撃

DoS攻撃(ドスこうげき)(英:Denial of Service attack)は、情報セキュリティにおける可用性を侵害する攻撃手法のひとつ。 ウェブサービスを稼働しているサーバやネットワークなどのリソース(資源)に意図的に過剰な負荷をかけたり脆弱性をついたりする事でサービスを妨害する。.

新しい!!: バッファオーバーランとDoS攻撃 · 続きを見る »

Eiffel

Eiffel(アイフェル、エッフェル)は頑健なソフトウェアの生産に注力したオブジェクト指向プログラミング言語である。.

新しい!!: バッファオーバーランとEiffel · 続きを見る »

End Of File

End Of File(略称EOF)とはファイルの終端のこと。使い方にはいくつかの種類がある。.

新しい!!: バッファオーバーランとEnd Of File · 続きを見る »

Exec Shield

Exec Shield はレッドハットが2002年後半に開始したプロジェクトであり、Linuxシステムに対するワームなどの自動化された攻撃の危険性を低減することを目的としている。最初の成果は、Linuxカーネル用セキュリティパッチであり、NXビットがハードウェアで実装されていないx86系マイクロプロセッサでNXビットをエミュレートするものだった。Exec Shield には他にも多数のコンポーネントがあるが、この最初のパッチだけを Exec Shield と呼ぶ人もいる。.

新しい!!: バッファオーバーランとExec Shield · 続きを見る »

静的コード解析

静的コード解析 (static code analysis) または静的プログラム解析 (static program analysis)とは、コンピュータのソフトウェアの解析手法の一種であり、実行ファイルを実行することなく解析を行うこと。逆にソフトウェアを実行して行う解析を動的プログラム解析と呼ぶ。静的コード解析はソースコードに対して行われることが多く、少数ながらオブジェクトコードに対して行う場合もある。また、この用語は以下に列挙するツールを使用した解析を意味することが多い。人間が行う作業はインスペクション、コードレビューなどと呼ぶ。.

新しい!!: バッファオーバーランと静的コード解析 · 続きを見る »

記憶装置

GB SDRAM。一次記憶装置の例 GB ハードディスクドライブ(HDD)。コンピュータに接続すると二次記憶装置として機能する SDLT テープカートリッジ。オフライン・ストレージの例。自動テープライブラリで使う場合は、三次記憶装置に分類される 記憶装置(きおくそうち)は、コンピュータが処理すべきデジタルデータをある期間保持するのに使う、部品、装置、電子媒体の総称。「記憶」という語の一般的な意味にも対応する英語としてはメモリ(memory)である。記憶装置は「情報の記憶」を行う。他に「記憶装置」に相当する英語としてはストレージ デバイス(Storage Device)というものもある。.

新しい!!: バッファオーバーランと記憶装置 · 続きを見る »

自己書き換えコード

自己書き換えコード(じこかきかえコード、self-modifying code)とは、目的を問わず実行時に自分自身の命令を書き換えるコードを指す。 自己書き換えコードはアセンブリ言語を使用すると簡単に記述できる(CPUのキャッシュを考慮する必要がある)。 また、SNOBOL4やLISPのようなインタプリタ型の高級言語でもサポートされている。また、COBOLには ALTER という命令が存在していた。 コンパイラで実装するのは難しいが、CLIPPERとSPITBOLではその試みが行われている。 バッチスクリプトも自己書き換えコードを頻繁に使用する。 再構成可能コンピューティングは、言ってみれば「自己書き換えハードウェア」である。 再構成可能コンピューティングはソフトウェアとハードウェアの境界を曖昧にする概念である。.

新しい!!: バッファオーバーランと自己書き換えコード · 続きを見る »

英数字

英数字(英: alphanumeric)とは、アルファベット (alphabetic) と数字 (numeric) をまとめた概念であり、通常西洋でよく使われるラテン文字とアラビア数字の集合を指す。大文字・小文字を区別しない場合は36文字、区別する場合は62文字が含まれる。英数字は 0 から 9 の数字と、A から Z の文字から成る。 日本では、さらにいわゆる半角カナを加えた英数カナあるいは ANK (Alpha-Numeric Kana) という言葉もある。.

新しい!!: バッファオーバーランと英数字 · 続きを見る »

電子メール

電子メール(でんしメール、英: Electronic mail、E-mail、Eメール)は、コンピュータネットワークを使用して、郵便のように情報等を交換する手段である。電子郵便(でんしゆうびん)とも言う。.

新しい!!: バッファオーバーランと電子メール · 続きを見る »

Fgets

fgets はC言語の標準Cライブラリにおける、標準入出力ヘッダー()で宣言されている FILEポインタから1行分の文字列を取り出す入力関数である。.

新しい!!: バッファオーバーランとFgets · 続きを見る »

Fingerプロトコル

Name/Fingerプロトコル(ネームフィンガープロトコル)および Finger ユーザー情報プロトコルは、ユーザー情報など人間に纏わるステータスを交換するための通信プロトコル。.

新しい!!: バッファオーバーランとFingerプロトコル · 続きを見る »

Forth

Forth(フォース)は、スタック指向のプログラミング言語およびそのプログラミング環境である。Forth はしばしば、かつての習慣に従ってすべて大文字で綴られることもあるが、頭字語ではない。.

新しい!!: バッファオーバーランとForth · 続きを見る »

Gets

gets は、C言語における標準入力から1行分の文字列を取り出す関数である。この関数はバッファオーバーランを防ぐことが不可能という致命的な脆弱性を持っており、2011年の改定のC11の標準CライブラリやC++14の標準C++ライブラリより廃止された。.

新しい!!: バッファオーバーランとGets · 続きを見る »

GNUコンパイラコレクション

GNU Compiler Collection(グニューコンパイラコレクション)は、GNUのコンパイラ群である。略称は「GCC(ジーシーシー)」。GNUツールチェーンの中核コンポーネント。.

新しい!!: バッファオーバーランとGNUコンパイラコレクション · 続きを見る »

Graphics Device Interface

Graphics Device Interface (グラフィックス・デバイス・インターフェイス、GDI)とは、カーネル及びユーザー(ウィンドウマネージャ)と協調する Windows の3つの主要コンポーネント(サブシステム)の1つ。 GDI はグラフィカルオブジェクトの表示と、ディスプレイやプリンターのような出力機器への転送のための Windows 規格である。.

新しい!!: バッファオーバーランとGraphics Device Interface · 続きを見る »

Intel 80386

Intel 80386(またはi386)はインテルの32ビットマイクロプロセッサ(CPU)である。1985年10月に発表され、x86アーキテクチャを32ビットに拡張し、レジスタを強化した。インテルが現在使用している名称はIntel386TMプロセッサ (Intel386TM Processor) である。互換CPUにも386の型番が付くものがある。 後にIA-32と呼ばれる、インテルの32ビットCPUのベースとなる命令セットアーキテクチャは、このCPUで確定した。アーキテクチャとしてのi386については、x86およびIA-32の項目も参照のこと。.

新しい!!: バッファオーバーランとIntel 80386 · 続きを見る »

Internet Information Services

Microsoft Internet Information Services (IIS) は、Microsoft Windowsの標準Webサーバー(アプリケーションサーバー)サービスである。HTTP/HTTPS、FTP、SMTP、NNTP等の基本的なプロトコルはサポートしている。クライアント版に付属するIISでは機能制限が行われている。 もともとInternet Information Serverという名称で、Windows NT Server上で稼働するアドオンソフトウェアという位置付けであったが、Windows 2000 Server登場時にシステムの標準サービスに位置付けられ、現名称に改められた。.

新しい!!: バッファオーバーランとInternet Information Services · 続きを見る »

Javaプラットフォーム

Javaプラットフォーム(ジャバプラットフォーム、英: Java Platform)は、Javaで記述されたプログラムの開発および実行を行うことのできるソフトウェア群の総称である。.

新しい!!: バッファオーバーランとJavaプラットフォーム · 続きを見る »

LISP

LISPは、プログラミング言語である。 によって記述される。-->前置記法などが特徴である。 1958年にはじめて設計されたLISPは、現在広範囲に使用されている高水準プログラミング言語の中でもFORTRANに次いで2番目に古い。ただし、FORTRANと同様に、現在のLISPは初期のものから非常に大きく変化している。 これまでに多数の方言が存在してきたが、今日最も広く知られるLISP方言は、Common LispとSchemeである。 元々、LISPは、アロンゾ・チャーチのラムダ計算表記法に影響を受け、コンピュータープログラムのための実用的かつ数学的な表記法として作られた。そして、すぐに人工知能研究に好まれるプログラミング言語になった。最初期のプログラミング言語として、LISPは計算機科学にて、木構造、ガベージコレクション、動的型付け、条件分岐、高階関数、再帰、セルフホスティング、コンパイラを含む多くのアイディアを切り開いた。 LISPの名前は、「list processor」に由来している。リストはLISPの主要なデータ構造であり、LISPソースコードはそれ自体がリストからできている。その結果、LISPプログラムはソースコードをデータとして操作することができ、プログラマーは、マクロ・システムで新しい構文やLISP埋め込みの新しいDSLを作成できる。 コードとデータの互換性は、LISPにそのすぐに認識できる構文を与える。すべてのプログラム・コードはS式または入れ子のリストとして書かれる。関数呼び出しまたは構文は先頭が関数または演算子の名前で、その続きが引数であるリストとして書かれる。具体的には、3つの引数を取る関数fは、(f arg1 arg2 arg3)として呼び出される。.

新しい!!: バッファオーバーランとLISP · 続きを見る »

MacOS

macOS(マックオーエス)は、アップルが開発・販売する、Macのオペレーティングシステムである。かつての名称はOS X、Mac OS Xであった(後述)。 技術的に直系ではないが、Classic Mac OS (Mac OS、System) の後継として、新たにBSD系UNIXをベースに開発された。.

新しい!!: バッファオーバーランとMacOS · 続きを見る »

Malloc

malloc(マロック, エムアロック)、free、calloc、reallocは、動的メモリ確保を行うC言語の標準ライブラリの関数である。 mallocが使用する実際のメモリ確保機構には様々な実装がある。それらの性能は、実行時間と要求されるメモリの両面で様々である。.

新しい!!: バッファオーバーランとMalloc · 続きを見る »

Metasploit

Metasploitは、オープンソースなコンピュータセキュリティに関するプロジェクトで、脆弱性、ペネトレーションテスト、侵入検知システム、シェルコードのアーカイブ、アンチフォレンジクス(コンピュータ・フォレンジクスによる解析への対抗技術)などを主な守備範囲としたプロジェクトの名称である。また、本プロジェクトのその成果ソフトウェアとしてよく知られるMetasploit Frameworkの省略名としてもしばしば用いられる。本項では、Metasploit Frameworkを中心に説明する。.

新しい!!: バッファオーバーランとMetasploit · 続きを見る »

Microsoft SQL Server

Microsoft SQL Server (マイクロソフト エスキューエル サーバ)とは、マイクロソフトが開発している、関係データベース管理システム (RDBMS) である。略称は「SQL Server」または「MS SQL」などと呼ばれている。主要な問い合わせ言語 (クエリ言語)は、T-SQLとANSI SQLである。 企業サーバ向けの高機能なシステムから、組み込み系の小規模なシステムまで幅広く対応する。またMicrosoft Windowsと親和性が高く、ADOやADO.NETを経由して最適なバックエンドデータベースを構築できるようになっている。.

新しい!!: バッファオーバーランとMicrosoft SQL Server · 続きを見る »

Microsoft Windows

Microsoft Windows(マイクロソフト ウィンドウズ)は、マイクロソフトが開発・販売するオペレーティングシステム (OS) の製品群。グラフィカルユーザインタフェース (GUI)を採用している。.

新しい!!: バッファオーバーランとMicrosoft Windows · 続きを見る »

Modula-2

Modula-2(モジュラ・ツー)は、コンピュータのプログラミング言語の一種で、1978年頃にチューリッヒ工科大学のニクラウス・ヴィルトにより、先立って構想されたプログラミング言語「Modula」の後継として創案されたものである。汎用手続き型言語で、構文の多くは同様にヴィルトの手掛けたPascal言語に基いたものとなっている。名前「Modula-2」は「モジュールの」を意味する英語「modular」に由来する。.

新しい!!: バッファオーバーランとModula-2 · 続きを見る »

Morris worm

Morris worm(モリスワーム)とは、インターネット上で拡散した初期のワームの1つ。単にインターネットワームと呼ばれることもある。 数千台のマシンをサービス不能に追い込み、報道によって注目された世界初のワームと見なされている。当時、コーネル大学の学生であったロバート・T・モリスによって作られ、マサチューセッツ工科大学(MIT)から1988年11月2日に放たれた。MITから放たれたのは、コーネル大学が起源であることを隠すためであった。ちなみにロバート・T・モリスは現在 MIT の准教授である。.

新しい!!: バッファオーバーランとMorris worm · 続きを見る »

NOP

NOP(ノップ)あるいは NOOP(ノープ)とは no operation (何もしない)を意味する。プログラミングやネットワーク通信と言ったコンピュータ関連の技術用語として使用される。.

新しい!!: バッファオーバーランとNOP · 続きを見る »

NXビット

NXビット (No eXecute bit) は、ノイマン型アーキテクチャのコンピュータにおいて特定のメモリ領域(に置かれたデータ)に付与する実行不可属性、またはその属性付与機能を指す。.

新しい!!: バッファオーバーランとNXビット · 続きを見る »

OCaml

OCaml( 、オーキャムル、オーキャメル)は、フランスの INRIA が開発したプログラミング言語MLの方言とその実装である。MLの各要素に加え、オブジェクト指向的要素の追加が特長である。かつては Objective Caml という名前で、その略として OCaml と広く呼ばれていたが、正式に OCaml に改名された。.

新しい!!: バッファオーバーランとOCaml · 続きを見る »

OpenBSD

OpenBSD(オープンビーエスディー)は、オープンソースのUnix系オペレーティングシステム。NetBSD や FreeBSD と同じく、BSDの子孫である。1995年、NetBSD の主要開発者だったテオ・デ・ラート (Theo de Raadt) により 、NetBSD から分岐する形で開発が始まった。.

新しい!!: バッファオーバーランとOpenBSD · 続きを見る »

PaX

PaX は、メモリに関する最小特権保護を実装したLinuxカーネル向けコンピュータセキュリティパッチである。最小特権の手法により、プログラムは正しい動作以外は何もできなくなる。PaX は2000年にリリースされた。 PaX はデータ用メモリページを実行不可とし、コード用メモリページを書き込み不可にすると共に無作為な配置を行う。これによりセキュリティを危険にさらす様々な動作が不可能になる(バッファオーバーランの一種など)。データページの実行不可設定により、データをコードとして実行できなくなる。コードページの書き込み不可設定により、不正なライブラリ実行が難しくなる。ただし、変数やポインタの書き換えは防げない。 PaX は The PaX Team が保守しているが、個々の開発者は匿名である。 Linuxのマスコット、タックスの PaX.

新しい!!: バッファオーバーランとPaX · 続きを見る »

Phrack

Phrack(フラック)は、アンダーグラウンド系のオンラインマガジンである。.

新しい!!: バッファオーバーランとPhrack · 続きを見る »

Ping of death

ping of death(しばしばPoDと略記)とは規格外や悪意のあるpingを送りつけることによる、アタックの一つである。通常であればpingパケットのサイズは64バイトであり、また、多くのコンピュータはIPパケットの最大サイズである65,535バイトより大きなpingを受け付けられない。これを利用し、このサイズより大きなpingを送ることで対象のコンピュータをクラッシュさせる手法である。 このバグは古いシステムにおいて比較的簡単に利用された。一般的に、65,536バイト以上のpingを送ることはネットワークプロトコルに違反する。しかし、IPパケットは分割可能であり、結合後のサイズが65,536バイト以上であることは合法である。そのようなパケットは受け取られなければならないが、多くの実装でそれを想定していなかったために、分割されているパケットを組み立てている時にバッファオーバフローを起こす可能性があり、それがしばしばクラッシュの引き金となる。 この脆弱性はLinuxをはじめ、MacintoshやWindows、更にはプリンターやルーターといった幅広いシステムに潜在していた。1996年頃にping of deathが明らかとなり問題となったが、多くのものでは1997年以降修正され、既に過去のものとなっている。 興味深いのは、自分自身が65,536バイトを超えるpingを受信できないにも関わらず、逆に送付する際には、簡単に65,536バイトを超えるpingのパケットを作成、送付できるようになっていたシステムがある点である。 近年、これとは異なる、ping floodと呼ばれるpingアタックが広まっている。これは単純に多量のpingを送りつけられることで通常のトラフィックが阻害されるもので、ping of deathとは異なりDoS攻撃の一種である。.

新しい!!: バッファオーバーランとPing of death · 続きを見る »

PlayStation 2

PlayStation 2(プレイステーションツー、略称: PS2)は、2000年3月4日に発売された家庭用ゲーム機。発売元はソニー・コンピュータエンタテインメント(略: SCE、現: ソニー・インタラクティブエンタテインメント)。 全ての機能が活用された訳ではないが、最先端の仕様(DVDを主要なメディアとして採用・サラウンド環境に対応・インターネットに接続できる・ハードディスクを搭載可能等)を集約し、極端にマルチメディア化を推し進め、1990年代までの家庭用ゲーム機の枠を打ち破った上、21世紀に出現するマルチメディア・プラットフォームとしてのゲーム機のプロトタイプとなった。発売前から、アーケードゲーム並のグラフィックの美しさと、当時は高価な専用プレーヤーが必要とされたDVD再生機能の搭載に関して、全世界的に大きな注目を集めており、更なる次世代ゲーム機が登場した2000年代中盤までは世界1位の人気を誇っていた。.

新しい!!: バッファオーバーランとPlayStation 2 · 続きを見る »

Return-to-libc攻撃

Return-to-libc攻撃とは、バッファオーバーランによってコールスタック上のリターンアドレスを別のサブルーチンへのアドレスへ書き換え、さらにスタック上の引数に当たる位置も書き換えることで、サブルーチンを呼び出させるコンピュータセキュリティの攻撃手法である。攻撃者は、悪意あるコードをプログラムに注入することなく、単に既存の関数を呼び出すだけで攻撃を行う。 Unix系システムでは、C言語ランタイムとして "libc" という共有ライブラリが使われる(Windows でも該当するライブラリが存在する)。バッファオーバーランでは攻撃者は任意のコードに戻るように細工できるが、常にリンクされていて攻撃に使い易い機能が多く存在する libc をターゲットとすることが多い(例えば、system() は引数さえ正しく指定すれば、任意のプログラムを実行できる)。このため、全く別の場所を呼び出すようになっていても総称として "return-to-libc" と呼ぶ。.

新しい!!: バッファオーバーランとReturn-to-libc攻撃 · 続きを見る »

Scanf

scanf(スキャンエフ)は、C言語の標準関数。stdio.h で定義されている、書式付き入力関数である。 標準入力(大抵はキーボード)からの入力を、書式に従って変数へ読み込む機能を持つ。「printf()の入力版」と考えると、わかりやすい。 ユーザからの入力を受ける機能を持つにもかかわらず、後述するようにエラーに対する考慮を何もしていないため、テストプログラムや入門書を除いてはあまり使われない。 このファミリーの関数には、入力ストリームを指定できる fscanf() や メモリ上のオブジェクトを入力対象とする sscanf() などがある。.

新しい!!: バッファオーバーランとScanf · 続きを見る »

Sendmail

Sendmail は UNIX で古くから使われてきたメールサーバソフトウェアである。 Sendmail プログラム本体は、パターンマッチルールによって動作するオートマトンと、MTA動作を支援するユーティリティである。 MTA としての動作そのものは、sendmail.cf に記述された複雑で莫大な量のパターンマッチルールによって実現している。.

新しい!!: バッファオーバーランとSendmail · 続きを見る »

Smalltalk

Smalltalk(スモールトーク)は、Simula のオブジェクト(およびクラス)、LISPの徹底した動的性、LOGO のタートル操作や描画機能に、アラン・ケイの「メッセージング」というアイデアを組み合わせて作られたクラスベースの純粋オブジェクト指向プログラミング言語、および、それによって記述構築された統合化プログラミング環境の呼称。 Smalltalk で一語であり、「Small Talk」「SmallTalk」などは誤りである。 大規模な開発実績としてはCargill Lynx Projectがあり、国産製品の開発実績としてはMCFrameがある。.

新しい!!: バッファオーバーランとSmalltalk · 続きを見る »

SQL Slammer

SQL Slammer(えすきゅーえる すらまー)は、コンピュータウイルスのワームの一種。2003年1月25日5時30分 (UTC) に確認されてから、爆発的に感染台数を増やし、感染台数は確認後僅か10分で7万5000台以上に達した。また、このワームの出すパケットにより、世界的にネットワーク障害が発生した。別名 W32.SQLExp.Worm、DDOS.SQLP1434.A、the Sapphire Worm、SQL_HEL、W32/SQLSlammer、Helkern。.

新しい!!: バッファオーバーランとSQL Slammer · 続きを見る »

Strcpy

strcpyは、指定したアドレスに指定した文字列をコピーするはたらきをする関数である。 C言語の標準Cライブラリ、(文字列操作関数群)で定義されている。ストリングコピーなどと呼ばれることが多い。.

新しい!!: バッファオーバーランとStrcpy · 続きを見る »

Strlcat

strlcat はC言語で文字列を安全に結合するための関数である。ISO で規定された関数ではないが、BSD libc などに含まれている。危険な使い方をしてしまいがちな関数strcatやstrncatの代替として、Todd C. Millerおよびテオ・デ・ラート (Theo de Raadt) が開発した。.

新しい!!: バッファオーバーランとStrlcat · 続きを見る »

Strlcpy

strlcpy はC言語で文字列を安全にコピーするための関数である。ISO で規定された関数ではないが、BSD libc などに含まれている。危険な使い方をしてしまいがちな関数 strcpy や strncpy の代替として、Todd C. Miller およびテオ・デ・ラート (Theo de Raadt) が開発した。.

新しい!!: バッファオーバーランとStrlcpy · 続きを見る »

UNIX

UNIX (ユニックス、Unix、)は、コンピュータ用のマルチタスク・マルチユーザーのオペレーティングシステムの一種である。公式な商標は「UNIX」だが、商標以外の意味として「Unix」、またはスモールキャピタルを使用して「Unix」などとも書かれる。Unixは1969年、AT&Tのベル研究所にて、ケン・トンプソン、デニス・リッチーらが開発を開始した。 当初はアセンブリ言語のみで開発されたが、1973年にほぼ全体をC言語で書き直した。このため、Unixは歴史上、初めて高水準言語で書かれたOSであると言われる。 1973年の段階ではPDP-11に依存したコードが多く、移植性は低かったが、その後徐々にPDP-11に依存したコードを減少させ、1978年にInterdata 8/32への移植に成功して以降、徐々に他のプラットフォームにも移植されていった。 現在では「Unix」という語は、Unix標準に準拠するあらゆるオペレーティングシステムの総称でもある。現在ではUnixシステムは多数の系統に分かれており、AT&Tの開発停止後も、多数の商用ベンダーや非営利組織などによって開発が続けられている。 1970年代から1980年代の初期にかけて、Unixは大学や研究所などの教育機関で広範囲に採用され、特にカリフォルニア大学バークレー校をオリジナルとするBSD系統が誕生した。また Version 7 Unix や UNIX System V の特徴を持つオペレーティングシステムは「伝統的なUNIX」(traditional Unix)とも呼ばれる。 2007年に、「UNIX」の商標の所有者である標準化団体のThe Open Groupは、Single UNIX Specificationを完全に満たすと認証を受けたシステムのみが「UNIX」の商標を得られるとした。このためそれ以外のシステムは(ずっと以前から、AT&T版およびBSD以外を指して使われていた用語だが)「Unixシステムライク」または「Unixライク(Unix系)」と呼ばれるようになった。ただし The Open Groupはその呼称を気に入っていない。 現在では多く使われているUnixとしてはmacOS、AIX、HP-UX、Solarisなどがある(いずれも商用)。また認証を受けていないUnix系としてはLinux(派生OSにAndroid他)やMINIX、BSDの派生OS(FreeBSD、NetBSD、OpenBSD、DragonFly BSDなど)がある。.

新しい!!: バッファオーバーランとUNIX · 続きを見る »

Wii

Wii(ウィー)は、任天堂が開発し2006年(平成18年)に発売した家庭用ゲーム機である。.

新しい!!: バッファオーバーランとWii · 続きを見る »

Winny

Winny(ウィニー)とは、P2P技術を応用したファイル共有ソフトである。.

新しい!!: バッファオーバーランとWinny · 続きを見る »

Xbox

Xbox(エックスボックス)は、マイクロソフトが開発および販売を行った家庭用ゲーム機である。「Xbox」と小文字で表記されることが多いが、ロゴ等は「XBOX」とすべて大文字で表記されている。 Xboxは固定されたゲームプラットフォームだったが、Windows 8ではエンターテインメントブランド、Windows 10では「Xbox Play Anywhere」といったゲームをコアとしたサービスプラットフォームへと広がりを見せている。.

新しい!!: バッファオーバーランとXbox · 続きを見る »

標準Cライブラリ

標準Cライブラリ(ひょうじゅんシーライブラリ)は、C言語の標準規格で定められた、型・マクロ・関数の集合からなるライブラリである。.

新しい!!: バッファオーバーランと標準Cライブラリ · 続きを見る »

書式文字列攻撃

書式文字列攻撃(しょしきもじれつこうげき、Format string attack)は、1999年ごろ発見された(それまでは無害と考えられていた)セキュリティホールを利用した攻撃のクラスである。書式文字列攻撃は、プログラムをクラッシュさせたり、不正なコードを実行させたりできる。.

新しい!!: バッファオーバーランと書式文字列攻撃 · 続きを見る »

.NET Framework

Microsoft.NET Framework(マイクロソフト ドットネット フレームワーク)は、マイクロソフトが開発したアプリケーション開発・実行環境である。 Windowsアプリケーションだけでなく、XML WebサービスやウェブアプリケーションなどWebベースのアプリケーションなども包括した環境となっている。一般に.NETという場合、.NET全体の環境を指す。.

新しい!!: バッファオーバーランと.NET Framework · 続きを見る »

2003年

この項目では、国際的な視点に基づいた2003年について記載する。.

新しい!!: バッファオーバーランと2003年 · 続きを見る »

64ビット

主な64ビットのプロセッサには以下がある。.

新しい!!: バッファオーバーランと64ビット · 続きを見る »

8月

8月(はちがつ)は、グレゴリオ暦で年の第8の月に当たり、31日ある。 日本では、旧暦8月を葉月(はづき)と呼び、現在では新暦8月の別名としても用いる。葉月の由来は諸説ある。木の葉が紅葉して落ちる月「葉落ち月」「葉月」であるという説が有名である。他には、稲の穂が張る「穂張り月(ほはりづき)」という説や、雁が初めて来る「初来月(はつきづき)」という説、南方からの台風が多く来る「南風月(はえづき)」という説などがある。また、「月見月(つきみづき)」の別名もある。 英語名 August は、ローマ皇帝アウグストゥスに由来する。アウグストゥスは紀元前1世紀、誤って運用されていたユリウス暦の運用を修正するとともに、8月の名称を「6番目の月」を意味する "Sextilis" から自分の名に変更した。よく見かけられる通説に、彼がそれまで30日であった8月の日数を31日に増やし、その分を2月の日数から減らしたため2月の日数が28日となったというものがある。これは11世紀の学者ヨハネス・ド・サクロボスコが提唱したものであり、8月の名称変更以前からすでに2月は短く、8月は長かった事を示す文献が複数発見されているため、この通説は現在では否定されている(詳細はユリウス暦を参照)。.

新しい!!: バッファオーバーランと8月 · 続きを見る »

ここにリダイレクトされます:

バッファーオーバーランバッファーオーバーフローバッファオーバランバッファオーバーフローバッファオーバフローバッファ溢れ攻撃

出ていきます入ってきます
ヘイ!私たちは今、Facebook上です! »