[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
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 "
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>