diff options
Diffstat (limited to 'documentation/content/ru/books/developers-handbook/secure')
| -rw-r--r-- | documentation/content/ru/books/developers-handbook/secure/_index.adoc | 4 | ||||
| -rw-r--r-- | documentation/content/ru/books/developers-handbook/secure/_index.po | 102 |
2 files changed, 54 insertions, 52 deletions
diff --git a/documentation/content/ru/books/developers-handbook/secure/_index.adoc b/documentation/content/ru/books/developers-handbook/secure/_index.adoc index 1631ee018b..4a9f6aae40 100644 --- a/documentation/content/ru/books/developers-handbook/secure/_index.adoc +++ b/documentation/content/ru/books/developers-handbook/secure/_index.adoc @@ -7,7 +7,7 @@ next: books/developers-handbook/l10n params: path: /books/developers-handbook/secure/ prev: books/developers-handbook/tools -showBookMenu: true +showBookMenu: 'true' tags: ["secure programming", "Buffer Overflows", "SetUID issues"] title: 'Глава 3. Безопасное программирование' weight: 4 @@ -198,7 +198,7 @@ ProPolice помогает защититься от переполнений б Суперпользователь в среде клетки имеет возможность: * Управлять учетными данными с помощью `setuid`, `seteuid`, `setgid`, `setegid`, `setgroups`, `setreuid`, `setregid`, `setlogin` -* Установливать ограничений ресурсов с помощью `setrlimit` +* Устанавливать ограничений ресурсов с помощью `setrlimit` * Изменять некоторые узлы sysctl (kern.hostname) * `chroot()` * Устанавливать флаги на vnode: `chflags`, `fchflags` diff --git a/documentation/content/ru/books/developers-handbook/secure/_index.po b/documentation/content/ru/books/developers-handbook/secure/_index.po index c2900d4b7a..d27f806359 100644 --- a/documentation/content/ru/books/developers-handbook/secure/_index.po +++ b/documentation/content/ru/books/developers-handbook/secure/_index.po @@ -5,8 +5,8 @@ msgid "" msgstr "" "Project-Id-Version: FreeBSD Documentation VERSION\n" -"POT-Creation-Date: 2025-10-12 22:16+0300\n" -"PO-Revision-Date: 2025-09-05 04:45+0000\n" +"POT-Creation-Date: 2025-05-01 19:56-0300\n" +"PO-Revision-Date: 2025-10-29 04:45+0000\n" "Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n" "Language-Team: Russian <https://translate-dev.freebsd.org/projects/" "documentation/booksdevelopers-handbooksecure_index/ru/>\n" @@ -18,13 +18,13 @@ msgstr "" "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Generator: Weblate 4.17\n" -#. type: Yaml Front Matter Hash Value: description +#. type: YAML Front Matter: description #: documentation/content/en/books/developers-handbook/secure/_index.adoc:1 #, no-wrap msgid "Secure Programming in FreeBSD" msgstr "Безопасное программирование в FreeBSD" -#. type: Yaml Front Matter Hash Value: title +#. type: YAML Front Matter: title #: documentation/content/en/books/developers-handbook/secure/_index.adoc:1 #, no-wrap msgid "Chapter 3. Secure Programming" @@ -301,7 +301,9 @@ msgstr "" #: documentation/content/en/books/developers-handbook/secure/_index.adoc:150 #, no-wrap msgid " while ((buffer[i++] = getchar()) != '\\n') {};\n" -msgstr " while ((buffer[i++] = getchar()) != '\\n') {};\n" +msgstr "" +" while ((buffer[i++] = getchar()) != '\\n" +"') {};\n" #. type: delimited block . 4 #: documentation/content/en/books/developers-handbook/secure/_index.adoc:157 @@ -317,7 +319,8 @@ msgstr "" " i=1;\n" " manipulate(buffer);\n" " i=2;\n" -" printf(\"The value of i is : %d\\n\",i);\n" +" printf(\"The value of i is : %d\\n" +"\",i);\n" " return 0;\n" "}\n" @@ -330,7 +333,7 @@ msgstr "" "Давайте рассмотрим, как будет выглядеть образ памяти этого процесса, если мы " "введем 160 пробелов в нашу небольшую программу перед нажатием Enter." -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:164 msgid "" "Obviously more malicious input can be devised to execute actual compiled " @@ -345,7 +348,7 @@ msgstr "" msgid "Avoiding Buffer Overflows" msgstr "Избегание переполнения буфера" -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:175 msgid "" "The most straightforward solution to the problem of stack-overflows is to " @@ -372,11 +375,10 @@ msgstr "" "также используется неодинаково между `strncpy` и `strncat`, что может " "сбивать программистов с толку относительно их правильного использования. " "Также наблюдается значительное снижение производительности по сравнению с " -"`strcpy` при копировании короткой строки в большой буфер, поскольку " -"`strncpy` заполняет оставшееся пространство до указанного размера символами " -"NUL." +"`strcpy` при копировании короткой строки в большой буфер, поскольку `strncpy`" +" заполняет оставшееся пространство до указанного размера символами NUL." -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:178 msgid "" "Another memory copy implementation exists to get around these problems. The " @@ -393,7 +395,7 @@ msgstr "" msgid "Compiler based run-time bounds checking" msgstr "Скомпилированная проверка границ во время выполнения" -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:183 msgid "" "Unfortunately there is still a very large assortment of code in public use " @@ -408,7 +410,7 @@ msgstr "" "есть способ помочь предотвратить такие атаки — проверка границ во время " "выполнения, которая реализована в нескольких компиляторах C/C++." -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:186 msgid "" "ProPolice is one such compiler feature, and is integrated into man:gcc[1] " @@ -419,7 +421,7 @@ msgstr "" "man:gcc[1] версий 4.1 и выше. Она заменяет и расширяет более раннее " "расширение StackGuard для man:gcc[1]." -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:190 msgid "" "ProPolice helps to protect against stack-based buffer overflows and other " @@ -440,7 +442,7 @@ msgstr "" "вряд ли увенчается успехом, так как злоумышленнику также необходимо оставить " "псевдослучайные канарейки нетронутыми." -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:192 msgid "" "Recompiling your application with ProPolice is an effective means of " @@ -456,7 +458,7 @@ msgstr "" msgid "Library based run-time bounds checking" msgstr "Библиотечная проверка границ во время выполнения" -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:197 msgid "" "Compiler-based mechanisms are completely useless for binary-only software " @@ -472,22 +474,22 @@ msgstr "" "гарантируют, что эти функции никогда не смогут записать данные за указатель " "стека." -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:199 msgid "libsafe" msgstr "libsafe" -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:200 msgid "libverify" msgstr "libverify" -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:201 msgid "libparanoia" msgstr "libparanoia" -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:206 msgid "" "Unfortunately these library-based defenses have a number of shortcomings. " @@ -510,7 +512,7 @@ msgstr "" msgid "SetUID issues" msgstr "Проблемы с SetUID" -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:212 msgid "" "There are at least 6 different IDs associated with any given process, and " @@ -524,7 +526,7 @@ msgstr "" "seteuid должны отказываться от своих привилегий, как только в них больше нет " "необходимости." -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:215 msgid "" "The real user ID can only be changed by a superuser process. The login " @@ -534,7 +536,7 @@ msgstr "" "процессом с правами суперпользователя. Программа login устанавливает его при " "первоначальном входе пользователя в систему, и он редко изменяется." -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:219 msgid "" "The effective user ID is set by the `exec()` functions if a program has its " @@ -557,7 +559,7 @@ msgstr "" msgid "Limiting your program's environment" msgstr "Ограничение окружения вашей программы" -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:229 msgid "" "The traditional method of restricting a process is with the `chroot()` " @@ -582,7 +584,7 @@ msgstr "" "подключения отладчика к процессу вне окружения man:chroot[8] или многими " "другими творческими способами." -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:234 msgid "" "The behavior of the `chroot()` system call can be controlled somewhat with " @@ -607,7 +609,7 @@ msgstr "" msgid "FreeBSD's jail functionality" msgstr "Функциональность клеток FreeBSD" -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:239 msgid "" "The concept of a Jail extends upon the `chroot()` by limiting the powers of " @@ -620,7 +622,7 @@ msgstr "" "настройки клетки все сетевые взаимодействия должны осуществляться через " "указанный IP-адрес, а привилегии `root` внутри этой клетки сильно ограничены." -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:243 msgid "" "While in a prison, any tests of superuser power within the kernel using the " @@ -634,41 +636,41 @@ msgstr "" "отвечает за распознавание или запрет доступа к правам суперпользователя для " "процессов в клетке." -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:245 msgid "A superuser process within a jailed environment has the power to:" msgstr "Суперпользователь в среде клетки имеет возможность:" -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:247 msgid "" "Manipulate credential with `setuid`, `seteuid`, `setgid`, `setegid`, " "`setgroups`, `setreuid`, `setregid`, `setlogin`" msgstr "" -"Управлять учетными данными с помощью `setuid`, `seteuid`, `setgid`, " -"`setegid`, `setgroups`, `setreuid`, `setregid`, `setlogin`" +"Управлять учетными данными с помощью `setuid`, `seteuid`, `setgid`, `setegid`" +", `setgroups`, `setreuid`, `setregid`, `setlogin`" -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:248 msgid "Set resource limits with `setrlimit`" -msgstr "Установливать ограничений ресурсов с помощью `setrlimit`" +msgstr "Устанавливать ограничений ресурсов с помощью `setrlimit`" -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:249 msgid "Modify some sysctl nodes (kern.hostname)" msgstr "Изменять некоторые узлы sysctl (kern.hostname)" -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:250 msgid "`chroot()`" msgstr "`chroot()`" -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:251 msgid "Set flags on a vnode: `chflags`, `fchflags`" msgstr "Устанавливать флаги на vnode: `chflags`, `fchflags`" -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:252 msgid "" "Set attributes of a vnode such as file permission, owner, group, size, " @@ -677,13 +679,13 @@ msgstr "" "Устанавливать атрибуты vnode, такие как права доступа к файлу, владелец, " "группа, размер, время доступа и время изменения." -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:253 msgid "Bind to privileged ports in the Internet domain (ports < 1024)" msgstr "" "Привязываться к привилегированным портам в домене Интернета (порты < 1024)" -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:257 msgid "" "`Jail` is a very useful tool for running applications in a secure " @@ -706,7 +708,7 @@ msgstr "" msgid "POSIX(R).1e Process Capabilities" msgstr "Возможности процесса в POSIX(R).1e" -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:261 msgid "" "POSIX(R) has released a working draft that adds event auditing, access " @@ -717,16 +719,16 @@ msgstr "" "контроля доступа, детализированные привилегии, маркировку информации и " "обязательный контроль доступа." -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:264 msgid "" "This is a work in progress and is the focus of the http://www.trustedbsd.org/" "[TrustedBSD] project. Some of the initial work has been committed to " "FreeBSD-CURRENT (cap_set_proc(3))." msgstr "" -"Это работа в процессе, и она является основным направлением проекта http://" -"www.trustedbsd.org/[TrustedBSD]. Некоторые первоначальные наработки были " -"добавлены в FreeBSD-CURRENT (cap_set_proc(3))." +"Это работа в процессе, и она является основным направлением проекта " +"http://www.trustedbsd.org/[TrustedBSD]. Некоторые первоначальные наработки " +"были добавлены в FreeBSD-CURRENT (cap_set_proc(3))." #. type: Title == #: documentation/content/en/books/developers-handbook/secure/_index.adoc:266 @@ -734,7 +736,7 @@ msgstr "" msgid "Trust" msgstr "Доверие" -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:270 msgid "" "An application should never assume that anything about the users environment " @@ -748,7 +750,7 @@ msgstr "" "текущую рабочую директорию файловой системы, файловые дескрипторы, " "количество открытых файлов и т.д." -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:275 msgid "" "You should never assume that you can catch all forms of invalid input that a " @@ -767,7 +769,7 @@ msgstr "" "осторожными с путями (\"../\", \"/\"), символическими ссылками и escape-" "символами оболочки." -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:278 msgid "" "Perl has a really cool feature called \"Taint\" mode which can be used to " @@ -789,7 +791,7 @@ msgstr "" msgid "Race Conditions" msgstr "Состояние гонки" -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:284 msgid "" "A race condition is anomalous behavior caused by the unexpected dependence " @@ -801,7 +803,7 @@ msgstr "" "ошибочно предположил, что определенное событие всегда произойдет раньше " "другого." -#. type: XXX figure here! +#. type: Plain text #: documentation/content/en/books/developers-handbook/secure/_index.adoc:290 msgid "" "Some of the common causes of race conditions are signals, access checks, and " |
