[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

dpkg man page 査読依頼 (20111030)



たかはしもとのぶです。

> From: Kenshi Muto <kmuto@xxxxxxxx>
> Date: Sun, 30 Oct 2011 22:01:14 +0900
> 
> > 武藤@Debianぷろじぇくとです。
> > 
> > なんか9/30にpotのほうが更新されてるんですが、大丈夫かな……
> 
> ちょっと見ておきます。

上記について、翻訳を更新しましたので、以下査読願います。

※単なる誤字脱字の修正系は省略しています。

-----
#. type: Plain text
#: dpkg-buildflags.1:165
msgid ""
"This variable can be used to disable/enable various hardening build flags "
"through the B<hardening> option. See the B<HARDENING> section for details."
msgstr ""
"この変数は、B<hardening> オプションによるビルドフラグの様々な要塞化の有効化、無効化を"
"行うために使用される。詳細は B<要塞化> セクションを参照のこと。"

#. type: SH
#: dpkg-buildflags.1:166
#, no-wrap
msgid "HARDENING"
msgstr "要塞化"

#. type: Plain text
#: dpkg-buildflags.1:171
msgid ""
"Several compile-time options (detailed below) can be used to help harden a "
"resulting binary against memory corruption attacks, or provide additional "
"warning messages during compilation. Except as noted below, these are "
"enabled by default for architectures that support them."
msgstr ""
"幾つかのコンパイルタイムオプションを (以下で説明する) 使用することで、"
"生成されるバイナリをメモリ破壊攻撃から保護したり、コンパイル時に追加の警告"
"メッセージを表示させたりすることができる。以下で注記されていない限り、"
"これらのオプションは、サポートされているアーキテクチャにおいて、デフォルトで"
"有効化される。"

#. type: Plain text
#: dpkg-buildflags.1:177
msgid ""
"Each hardening feature can be enabled and disabled in the "
"B<DEB_BUILD_MAINT_OPTIONS> environment variable's B<hardening> value with "
"the \"+\" and \"-\" modifier. For example, to enable the \"pie\" feature and "
"disable the \"fortify\" feature you can do this in B<debian/rules>:"
msgstr ""
"各要塞化機能は、B<DEB_BUILD_MAINT_OPTIONS> 環境変数の B<hardening> 値において"
" \"+\" や \"-\" をつけることで有効化/無効化できる。例えば、\"pie\" 機能を"
"有効化して \"fortify\" 機能を無効化する場合、B<debian/rules> で次のように"
"設定する:"

#. type: Plain text
#: dpkg-buildflags.1:179
#, no-wrap
msgid "  export DEB_BUILD_MAINT_OPTIONS=\"hardening=+pie,-fortify\"\n"
msgstr "  export DEB_BUILD_MAINT_OPTIONS=\"hardening=+pie,-fortify\"\n"

#. type: Plain text
#: dpkg-buildflags.1:183
msgid ""
"The special feature B<all> can be used to enable or disable all hardening "
"features at the same time. Thus disabling everything and enabling only "
"\"format\" and \"fortify\" can be achieved with:"
msgstr ""
"特別な機能 B<all> により、すべての要塞化機能を一度に有効化、無効化することが"
"できる。次のようにして、すべての機能を無効化した上で \"format\" と"
" \"fortify\" のみを有効化することができる:"

#. type: Plain text
#: dpkg-buildflags.1:185
#, no-wrap
msgid "  export DEB_BUILD_MAINT_OPTIONS=\"hardening=-all,+format,+fortify\"\n"
msgstr "  export DEB_BUILD_MAINT_OPTIONS=\"hardening=-all,+format,+fortify\"\n"

#. type: TP
#: dpkg-buildflags.1:186
#, no-wrap
msgid "B<format>"
msgstr "B<format>"

#. type: Plain text
#: dpkg-buildflags.1:198
msgid ""
"This setting (enabled by default) adds B<-Wformat -Wformat-security -"
"Werror=format-security> to B<CFLAGS> and B<CXXFLAGS>. This will warn about "
"improper format string uses, and will fail when format functions are used in "
"a way that that represent possible security problems. At present, this warns "
"about calls to B<printf> and B<scanf> functions where the format string is "
"not a string literal and there are no format arguments, as in B<printf(foo);"
"> instead of B<printf(\"%s\", foo);> This may be a security hole if the "
"format string came from untrusted input and contains \"%n\"."
msgstr ""
"この設定 (デフォルト有効) により、B<CFLAGS> および B<CXXFLAGS> に"
" B<-Wformat -Wformat-security -Werror=format-security> が追加される。"
"これにより、不適切なフォーマット文字列の使用に関する警告が行われ、"
"フォーマット関数が潜在的にセキュリティ問題を引き起こすような使用をされて"
"いる場合に処理を失敗させる。"

#. type: TP
#: dpkg-buildflags.1:199
#, no-wrap
msgid "B<fortify>"
msgstr "B<fortify>"

#. type: Plain text
#: dpkg-buildflags.1:210
msgid ""
"This setting (enabled by default) adds B<-D_FORTIFY_SOURCE=2> to B<CFLAGS> "
"and B<CXXFLAGS>. During code generation the compiler knows a great deal of "
"information about buffer sizes (where possible), and attempts to replace "
"insecure unlimited length buffer function calls with length-limited ones. "
"This is especially useful for old, crufty code.  Additionally, format "
"strings in writable memory that contain '%n' are blocked. If an application "
"depends on such a format string, it will need to be worked around."
msgstr ""
"この設定 (デフォルト有効) により、B<CFLAGS> および B<CXXFLAGS> に"
" B<-D_FORTIFY_SOURCE=2> が追加される。コード生成の際に、コンパイラは"
"バッファサイズに関して (可能な場所では) 多くの情報を収集し、安全でない"
"バッファ長の制限のない関数の呼び出しを、制限のある関数の呼び出しに置換する。"
"これは、古い汚いコードには特に有用である。これに加えて、'%n' を含む、"
"メモリに書き込みを行うフォーマット文字列が抑止される。アプリケーションが"
"こうしたフォーマット文字列に依存している場合は、個別に対処する必要がある。"

#. type: Plain text
#: dpkg-buildflags.1:213
msgid ""
"Note that for this option to have any effect, the source must also be "
"compiled with B<-O1> or higher."
msgstr ""
"このオプションが効果を発揮するためには、ソースコードは B<-O1> 以上で"
"コンパイルされている必要がある。"

#. type: TP
#: dpkg-buildflags.1:213
#, no-wrap
msgid "B<stackprotector>"
msgstr "B<stackprotector>"

#. type: Plain text
#: dpkg-buildflags.1:222
msgid ""
"This setting (enabled by default) adds B<-fstack-protector --param=ssp-"
"buffer-size=4> to B<CFLAGS> and B<CXXFLAGS>. This adds safety checks against "
"stack overwrites. This renders many potential code injection attacks into "
"aborting situations. In the best case this turns code injection "
"vulnerabilities into denial of service or into non-issues (depending on the "
"application)."
msgstr ""
"この設定 (デフォルト有効) により、B<CFLAGS> および B<CXXFLAGS> に"
" B<-fstack-protector --param=ssp-buffer-size=4> が追加される。"
"これにより、スタックの上書きに対する安全性チェックが追加され、多くの"
"潜在的なコードインジェクション攻撃が抑止される。(アプリケーションにも"
"よるが) 最良のケースでは、コードインジェクションの脆弱性を単なる"
"サービス拒否に留めたり、問題の発生を抑止したりすることができる。"

#. type: Plain text
#: dpkg-buildflags.1:226
msgid ""
"This feature requires linking against glibc (or another provider of "
"B<__stack_chk_fail>), so needs to be disabled when building with B<-"
"nostdlib> or B<-ffreestanding> or similar."
msgstr ""
"この機能は、glibc (もしくは B<__stack_chk_fail> を提供する他の実装) への"
"リンクが必要であるため、B<-nostdlib> や B<-ffreestanding> といった"
"オプションでビルドする際には、無効にする必要がある。"

#. type: TP
#: dpkg-buildflags.1:227
#, no-wrap
msgid "B<relro>"
msgstr "B<relro>"

#. type: Plain text
#: dpkg-buildflags.1:235
msgid ""
"This setting (enabled by default) adds B<-Wl,-z,relro> to B<LDFLAGS>.  "
"During program load, several ELF memory sections need to be written to by "
"the linker. This flags the loader to turn these sections read-only before "
"turning over control to the program. Most notably this prevents GOT "
"overwrite attacks."
msgstr ""
"この設定 (デフォルト有効) は、B<LDFLAGS> に B<-Wl,-z,relro> を追加する。"
"プログラムがロードされる際、ELF メモリセクションの幾つかは、リンカから"
"書き込まれる必要がある。この設定により、ローダはプログラムに制御を"
"引き渡す前に、こうしたセクションを読み取り専用にする。これにより、"
"GOT を上書きする攻撃の大半が抑止される。"

#. type: TP
#: dpkg-buildflags.1:236
#, no-wrap
msgid "B<bindnow>"
msgstr "B<bindnow>"

#. type: Plain text
#: dpkg-buildflags.1:243
msgid ""
"This setting (disabled by default) adds B<-Wl,-z,now> to B<LDFLAGS>. During "
"program load, all dynamic symbols are resolved, allowing for the entire PLT "
"to be marked read-only (due to B<relro> above)."
msgstr ""
"この設定 (デフォルト無効) は B<LDFLAGS> に B<-Wl,-z,now> を追加する。"
"これにより、プログラムがロードされる時点ですべての動的なシンボルが解決される"
"ため、PLT 全体を読み取り専用とすることが可能となる (上の <relro> を参照の"
"こと)。"

#. type: TP
#: dpkg-buildflags.1:244
#, no-wrap
msgid "B<pie>"
msgstr "B<pie>"

#. type: Plain text
#: dpkg-buildflags.1:256
msgid ""
"This setting (disabled by default) adds B<-fPIE> to B<CFLAGS> and "
"B<CXXFLAGS>, and B<-fPIE -pie> to B<LDFLAGS>. Position Independent "
"Executable are needed to take advantage of Address Space Layout "
"Randomization, supported by some kernel versions. While ASLR can already be "
"enforced for data areas in the stack and heap (brk and mmap), the code areas "
"must be compiled as position-independent. Shared libraries already do this (-"
"fPIC), so they gain ASLR automatically, but binary .text regions need to be "
"build PIE to gain ASLR. When this happens, ROP (Return Oriented Programming) "
"attacks are much harder since there are no static locations to bounce off of "
"during a memory corruption attack."
msgstr ""
"この設定 (デフォルト無効) は B<CFLAGS> および B<CXXFLAGS> に B<-fPIE> を"
"追加し、B<LDFLAGS> に B<-fPIE -pie> を追加する。PIE (位置独立実行形式) "
"は、幾つかのカーネルバージョンでサポートされるアドレス空間配置のランダム化"
" (ASLR) を行う上で必要となる。スタックとヒープ (brk とmmap) 内のデータ領域"
"では、ASLR が既に必須となっているが、コード領域も位置独立でコンパイル"
"される必要がある。共有ライブラリでは、(-fPIC) によりこれが既に行われて"
"いるので、自動的に ASLR が行われるが、バイナリの .text 領域は ASLR を行う"
"ために、PIE でビルドされる必要がある。これが実現すると、メモリ破壊攻撃を"
"行う際にリターンさせる先のアドレスが静的ではなくなるため、ROP "
"(Return Oriented Programming) 攻撃が、より困難となる。"

#. type: Plain text
#: dpkg-buildflags.1:259
msgid ""
"This is not compatible with B<-fPIC> so care must be taken when building "
"shared objects."
msgstr ""
"これは B<-fPIC> と互換性がないため、共有ライブラリをビルドする際は、"
"設定を行わないよう注意すること"

#. type: Plain text
#: dpkg-buildflags.1:265
msgid ""
"Additionally, since PIE is implemented via a general register, some "
"architectures (most notably i386) can see performance losses of up to 15% in "
"very text-segment-heavy application workloads; most workloads see less than "
"1%. Architectures with more general registers (e.g. amd64)  do not see as "
"high a worst-case penalty."
msgstr ""
"加えて、PIE は汎用レジスタにより実装されているため、幾つかのアーキテクチャ"
" (特に注意すべきは i386) では、text セグメントの負荷が高いアプリケーションに"
"おいて最大 15% 程度のパフォーマンス低下が見込まれる。もっとも、大半の場合、"
"パフォーマンス低下は 1% 未満である。多くの汎用レジスタを有するアーキテクチャ"
" (amd64 など) では、前述した最悪の場合であっても問題は発生しない。"

#. type: Plain text
#: dpkg-deb.1:145
msgid ""
"Is like B<--extract> (B<-x>)  with B<--verbose> (B<-v>)  which prints a "
"listing of the files extracted as it goes."
msgstr ""
"B<--extract> (B<-x>) に B<--verbose> (B<-v>) を付加したオプションと同様だが、"
"実際にファイルを展開して一覧を表示する。"

#. type: Plain text
#: dpkg-deb.1:150
msgid ""
"Extracts the filesystem tree from a package archive into a specified "
"directory, and the control information files into a DEBIAN subdirectory of "
"the specified directory."
msgstr ""
"パッケージアーカイブから、ファイルシステムツリーを指定したディレクトリに展開"
"し、制御情報ファイルを、DEBIAN サブディレクトリに展開する。"

#. type: Plain text
#: dpkg-deb.1:228
msgid ""
"Enables verbose output. This currently only affects B<--extract> making it "
"behave like B<--vextract>."
msgstr ""
"詳細な出力を有効にする。現在のところ、これは B<--extract> に B<--vextract> "
"と同様の挙動をさせる場合のみ有効である。"

#. type: Plain text
#: dpkg-source.1:451
msgid ""
"All original tarballs found in the current directory are extracted in a "
"temporary directory by following the same logic as for the unpack, the "
"debian directory is copied over in the temporary directory, and all patches "
"except the automatic patch (B<debian-changes->I<version> or B<debian-"
"changes>, depending on B<--single-debian-patch>) are applied. The temporary "
"directory is compared to the source package directory. When the diff is non-"
"empty, the build fails unless B<--single-debian-patch> or B<--auto-commit> "
"has been used, in which case the diff is stored in the automatic patch.  If "
"the automatic patch is created/deleted, it's added/removed from the series "
"file and from the quilt metadata."
msgstr ""
"カレントディレクトリにあるオリジナルの tar アーカイブが、展開の際と同じロジッ"
"クで一時ディレクトリに展開され、debian ディレクトリが一時ディレクトリからコ"
"ピーされる。さらに、自動パッチ (B<--single-debian-patch> の指定により、"
"B<debian-changes->I<version> もしくは B<debian-changes>) を除くすべてのパッチ"
"が適用される。一時ディレクトリはソースパッケージのディレクトリと比較される。"
"diff が空でない場合、B<--single-debian-patch> もしくは B<--auto-commit> が指"
"定され、diff が自動パッチの中に保存されていない限り、ビルドは失敗す。"
"る。自動パッチが作成/削除される場合は、series ファイルと quilt のメタデー"
"タからも追加/削除される。"

※英文 8-10 行目が変更
-----

---
TAKAHASHI Motonobu <monyo@xxxxxxxxx>