AIDE на AIX. Проблема сборки.

Главная Форумы POWER Systems AIX/Hardware AIDE на AIX. Проблема сборки.

Просмотр 13 веток ответов
  • Автор
    Сообщения
    • #5224
      Oleg
      Участник

      Я хочу установить AIDE на AIX 5.3L (http://www.cs.tut.fi/~rammer/aide.html)

      # oslevel -qs | head
      Known Service Packs
      ——————-
      5300-09-02-0849
      5300-09-01-0847
      5300-09-00-0000
      5300-08-05-0846
      5300-08-04-0844
      5300-08-03-0831
      5300-08-02-0822
      5300-08-01-0819
      5300-07-07-0846
      5300-07-06-0844

      # rpm -qa
      cdrecord-1.9-7
      mkisofs-1.13-4
      bash-3.0-1
      libgcc-4.2.0-3
      bison-1.875-3
      make-3.80-1
      unzip-5.51-1
      zip-2.3-3
      gcc-4.2.0-3
      flex-2.5.4a-6
      AIX-rpm-5.3.9.0-7

      Ok, идем далее. Я скачал последнюю версию AIDE с офиц. сайта. Далее:

      # cd /home/kripton/aide-0.13.1
      # ./configure
      checking for a BSD-compatible install… ./install-sh -c
      checking whether build environment is sane… yes
      checking for gawk… no
      checking for mawk… no
      checking for nawk… nawk
      checking whether make sets $(MAKE)… yes
      checking for gcc… gcc
      checking for C compiler default output file name… a.out
      checking whether the C compiler works… yes
      checking whether we are cross compiling… no
      checking for suffix of executables…
      checking for suffix of object files… o
      checking whether we are using the GNU C compiler… yes
      checking whether gcc accepts -g… yes
      checking for gcc option to accept ISO C89… none needed
      checking for style of include used by make… GNU
      checking dependency style of gcc… gcc3
      checking whether make sets $(MAKE)… (cached) yes
      checking for ranlib… ranlib
      checking for bison… bison -y
      checking for flex… flex
      checking lex output file root… lex.yy
      checking lex library… -lfl
      checking whether yytext is a pointer… yes
      checking for pkg-config… no
      checking whether to enable maintainer-specific portions of Makefiles… no
      checking for library containing syslog… no
      checking for vsyslog… no
      checking how to run the C preprocessor… gcc -E
      checking for grep that handles long lines and -e… /usr/bin/grep
      checking for egrep… /usr/bin/grep -E
      checking for ANSI C header files… no
      checking for sys/types.h… yes
      checking for sys/stat.h… yes
      checking for stdlib.h… yes
      checking for string.h… yes
      checking for memory.h… yes
      checking for strings.h… yes
      checking for inttypes.h… yes
      checking for stdint.h… yes
      checking for unistd.h… yes
      checking whether byte ordering is bigendian… yes
      checking for byte… no
      checking for ushort… yes
      checking for ulong… yes
      checking for u16… no
      checking for u32… no
      checking for u64… no
      checking for unsigned short… yes
      checking size of unsigned short… configure: error: cannot compute sizeof (unsigned short)
      See `config.log’ for more details.

      Лог файл в аттаче.
      В чем может быть проблема не пойму. Google молчит 🙁
      Пакеты gcc, make обновлены. Есть идеи ? [file name=config.txt size=75084]https://www.aixportal.ru/media/kunena/attachments/legacy/files/config.txt[/file]

      Attachments:
    • #5226
      Nikolay Logvinov
      Участник

      Проблема в том, что AIDE пытается воспользоваться статической линковкой. Если Вы внимательно посмотрите на config.log, то увидите, что обычная команда выглядит как:
      gcc -o conftest -g -O2 -static conftest.c
      Вот в ключе ‘-static’ и есть проблема. Возьмите хоть helloworld.c и попробуйте собрать данной командой, получите как раз следующие ошибки:
      ld: 0711-317 ERROR: Undefined symbol: encrypted_pw_passlen
      ld: 0711-317 ERROR: Undefined symbol: max_history_size
      ld: 0711-317 ERROR: Undefined symbol: crypt_r
      ld: 0711-317 ERROR: Undefined symbol: getpass_auto
      ld: 0711-317 ERROR: Undefined symbol: max_pw_passlen
      постоянно встречающиеся в config.log.
      Стоит только убрать ‘-static’ как всё прекрасно собирается.

      Не знаю почему, но aide настырно хочет собираться статически. Посмотрите на строки 3804 по 3819 файла configure.

    • #5254
      kir
      Хранитель

      Logvinon писал(а):

      Проблема в том, что AIDE пытается воспользоваться статической линковкой.

      Никакой проблемы. ./configure –disable-static

      Не знаю почему, но aide настырно хочет собираться статически.

      Это вы настырно не желаете README читать.

      Please note that dynamic linking introduces a security risk and is not recommended.

    • #5261
      Nikolay Logvinov
      Участник

      Хех, во-первых, я описывал проблемы,а решение человек мог и сам найти. Если Вы любите все разжеванное, то что ж.
      Во-вторых, откуда такие эмоции? Давайте поговорим про статическую линковку под AIX’ом:
      “Any application that is statically linked is NOT binary portable from any fix or release level to any other fix or release level”
      выдержка из ‘man ld’

    • #5265
      critic critic
      Участник

      pisch, вы так ярко упомянули про security risk… Пару примеров из реальной жизни пожалуйста. Из реальной. Или это “теоретические рассуждения о сферической лошади в вакууме”?

    • #5273
      kir
      Хранитель

      Logvinon писал(а):

      откуда такие эмоции?

      Нет никаких эмоций.

      Давайте поговорим про статическую линковку под AIX’ом

      Давайте без давайте.

      Статическая линковка aide никакого отношения именно конкретно к AIX не имеет.

      “Any application that is statically linked is NOT binary portable from any fix or release level to any other fix or release level”
      выдержка из ‘man ld’

      Майнготт, как прекрасно, когда люди читают man.

      И что дальше? Чего вы этой цитатой хотели сказать?

    • #5274
      kir
      Хранитель

      critic писал(а):

      pisch, вы так ярко упомянули про security risk

      Про security risk ярко упомянуто в readme.

      Пару примеров из реальной жизни пожалуйста.

      Вас забанили на google?

      Из реальной. Или это “теоретические рассуждения о сферической лошади в вакууме”?

      Вы вот вместо так заливаться соловушкой о лошадках в безвоздушном пространстве могли бы немножко в общем и подумать почему же это вдруг авторы Advanced Intrusion Detection Environment прозрачно намекают на наличие секьюрити рисков в случае динамической линковки.

    • #5275
      critic critic
      Участник

      pisch, судя по всем вашим постам вы большой “теоретик труда”. Именно теоретик, т.к. ни одного сообщения по делу, от вас, я на этом форуме не увидел. Нет, нет, не утруждайте себя ответом на этот пост. Вам ещё теорию изучать надо…
      PS: Admin, можно меня забанить на пару недель. Я согласен. Не люблю пустую болтовню. А этот теоретик…

    • #5277
      Nikolay Logvinov
      Участник

      Эээ, извините, забыл, что Вам надо всё разжёвывать.

      Итак, AIX не использует статическую линковку. Авторы AIDE вместе с Вами утверждают, что динамическая линковка наносит удар по секурности. Далаем вывод: АIX – абсолютно несекурная система. Что, увы, противоречит международной сертификации.

      Далее, если авторы в своём configure предусматривают использование своей системы под AIX, но, по-умолчанию, задают статическую линковку, то, IMHO, они никогда не собирали свой продукт под AIX.

      Далее, посмотрим на tripwire (как более мощную прогу, на неё ссылаются авторы), там ключи для конфигурации прямо обратные:
      $ ./configure –help

      –enable-static compile static binaries

      Читаем их INSTALL:

      If you want statically linked binaries, throw the –enable-static for
      configure. Note that statically linked binaries are not possible on all
      platforms.

      Значительно честнее и без экивоков в сторону нарушения секурности.

    • #5280
      kir
      Хранитель

      Logvinon писал(а):

      Эээ, извините, забыл, что Вам надо всё разжёвывать.

      Уж разжевал так разжевал. Лучше б сплюнул или проглотил.

      Посмотрим.

      Итак, AIX не использует статическую линковку.

      FAIL.
      В AIX можно слинковать бинарник статически. О чем, кстати, явно и очевидно свидетельствует все тот же man ld.

      [code]When -dy is specified, ld uses dynamic
      linking; this option is equivalent to the -b
      so option. When -dn is specified, ld uses
      static linking; this option is equivalent to
      the -b nso option[/code]

      Авторы AIDE вместе с Вами утверждают, что динамическая линковка наносит удар по секурности.

      Авторы AIDE как бы намекают, что система обнаружения проникновения скорее не должна зависеть, от, к примеру, динамически подключаемых библиотек. Помимо зависимости от возможно скомпрометированной библиотеки есть еще всякие LDR_PRELOAD, что также чревато.

      Далаем вывод: АIX – абсолютно несекурная система. Что, увы, противоречит международной сертификации.

      Вывод абсолютно беспочвенный и к делу отношения не имеет.

      Далее, если авторы в своём configure предусматривают использование своей системы под AIX, но, по-умолчанию, задают статическую линковку, то, IMHO, они никогда не собирали свой продукт под AIX.

      Во-первых автор на странице программы честно и не таясь прямо указывает, что в известные ему платформы, на которых крутится AIDE – AIX 5L и AIX 6 не входят.

      Во-вторых почему автор треда начал тащить AIDE на AIX он как бы не пояснял. Замечу, что помимо данной проблемы на этапе конфигурирования aide он должен поймать еще кое-какие.

      В-третьих вы обратно немножко лоханулись ( см. FAIL ) сделав поспешные и непродуманные выводы.

      Статическая сборка у автора треда накрылась медным тазиком совершенно не из-за неподдержки AIX-ом статических бинарников, а всего-то из-за того, что configure подразумевает использование GNU ld. Естественно, что ключи у GNU ld и ld немного разные. Чинится это счастье секунд за 8.

    • #5283
      Nikolay Logvinov
      Участник

      Ну, что ж, проблемы с логикой оставим в стороне.

      Чтобы не вводить людей в заблуждение, укажите, пожалуйста, где Вы нашли информацию, что в AIX используется переменная окружения LD_PRELOAD?

    • #5285
      kir
      Хранитель

      Logvinon писал(а):

      Ну, что ж, проблемы с логикой оставим в стороне.

      Что ж, ну оставим.

      Чтобы не вводить людей в заблуждение, укажите, пожалуйста, где Вы нашли информацию, что в AIX используется переменная окружения LD_PRELOAD?

      Факт существования переменных LDR_PRELOAD и LDR_PRELOAD64 и механизм их действия описан ( surprise, surprise ) в документации по AIX.

    • #5286
      Nikolay Logvinov
      Участник

      Если бы Вы упомянули, что это верно до AIX версии 5.3 включительно, то это была бы твердая пятерка. А чтобы это работало в версии AIX 6.1 надо отключить RBAC (и перегрузиться):
      # chdev -l sys0 -a enhanced_RBAC=false

    • #5287
      kir
      Хранитель

      Logvinon писал(а):

      Если бы Вы упомянули, что это верно до AIX версии 5.3 включительно, то это была бы твердая пятерка.

      Да что вы говорите. Вам не кажется, что в свете ваших перманентных фейлов раздавать оценки как-то преждевременно?

      А чтобы это работало в версии AIX 6.1 надо отключить RBAC (и перегрузиться):
      # chdev -l sys0 -a enhanced_RBAC=false

      Молодец, нашел.

Просмотр 13 веток ответов
  • Для ответа в этой теме необходимо авторизоваться.