The OpenNET Project

 
Поиск (теги):    НОВОСТИ (+) КОНТЕНТ WIKI MAN'ы ФОРУМ twitter

Отключение LD_PRELOAD в Linux
Для блокирования работы переменной окружения LD_PRELOAD, позволяющей
принудительно загрузить разделяемую библиотеку со своими обработчиками для
функций используемых в программе библиотек, можно использовать следующий скрипт.

ldpreload-disable.sh:

   #!/bin/bash

   if [ $# -lt 1 ];then
	printf "./ldpreload-disable.sh [ld-linux.so] [64|32]\n"
	exit 0
   fi

   ld_linux="$1"
   [ "$2" == "64" ] && xor='\x48' || xor=''

   offset=$((16#$(readelf -s $ld_linux | awk '/do_preload/ {print $2}')))
   printf $xor'\x31\xc0\xc3' | dd conv=notrunc of=$ld_linux bs=1 seek=$offset



Пример использования для 64-разрядной системы:

   $ sudo bash ldpreload-disable.sh $HOME/fedora-chroot/lib64/ld-2.22.so 64

для 32-разрядной системы:

   $ sudo bash ldpreload-disable.sh $HOME/fedora-chroot/lib/ld-2.22.so 32
 
18.09.2016 , Источник: https://github.com/hc0d3r/ldpreload...
Ключи: linux, ld_preload, patch, elf, linker / Лицензия: CC-BY
Раздел:    Корень / Администратору / Система / Linux специфика / Увеличение безопасности Linux

Обсуждение [ Линейный режим | Показать все | RSS ]
 
  • 1.1, cmp, 05:23, 18/09/2016 [ответить] [смотреть все]
  • +/
    Судя по версии glibc это делается для отключения недавнего руткита, и что там, что тут нет никакой инфы о том, имеет ли версия glibc значение, как и другой вспогательной инфы, нахрена такие топики писать?
     
  • 1.2, Нанобот, 19:46, 20/09/2016 [ответить] [смотреть все]
  • +/
    автор применил древнюю чёрную магию для отключения LD_PRELOAD. детки, не пытайтесь повторить это дома.
    З.Ы. имхо, стоило бы упомянуть, что это всё будет работать до первого обновления libc
     
     
  • 2.7, mezoni, 17:02, 02/10/2016 [^] [ответить] [смотреть все]
  • +/
    Ума-то нет вот и пишут всякую чушь.
     
  • 1.3, Василий, 10:40, 21/09/2016 [ответить] [смотреть все]
  • +/
    Отличный способ отстрелить себе голову
     
  • 1.4, Аноним, 00:26, 25/09/2016 [ответить] [смотреть все]
  • +1 +/
    Это что, предлагается хачить бинарник ld so этим стремным скриптом После чего к... весь текст скрыт [показать]
     
  • 1.5, Аноним, 06:28, 27/09/2016 [ответить] [смотреть все]  
  • +/
    Чего только люди не делают, лишь бы LFS не использовать.
     
  • 1.6, Аноним, 13:10, 27/09/2016 [ответить] [смотреть все]  
  • +/
    Ubuntu Xenial 16 04 пустой вывод ... весь текст скрыт [показать]
     
  • 1.8, нет, 10:45, 07/10/2016 [ответить] [смотреть все]  
  • +/
    в этом совете хорошо всё: и содержимое и автор в ксакеповской транскрипции. Очень сочетаемо.
     
  • 1.9, Нониус, 14:27, 24/10/2016 [ответить] [смотреть все]  
  • +/
    [ $# -lt 1 ] && \
    { echo "usage: 'basename $0' blablabla" ; exit 0 ; }

    дальше лень править тупизмы.

     
  • 1.10, pavlinux, 01:26, 25/10/2016 [ответить] [смотреть все]  
  • +/
    pavel@amd64:~$ readonly LD_PRELOAD
    pavel@amd64:~$ export LD_PRELOAD=/tmp/libfake.so
    bash: LD_PRELOAD: доступная только на чтение переменная

    ---
    ессесенно readonly LD_PRELOAD прописывать в /etc/profile

     
     
  • 2.11, freehck, 15:06, 03/11/2016 [^] [ответить] [смотреть все]  
  • +1 +/
    Ага, щас.

    1) можно запустить bash --noprofile, и /etc/profile не будет зачитан
    2) работа с readonly-переменными окружения зависит от shell. bash вот не позволяет снова сделать её доступной на запись, а вот в zsh можно спокойно написать "typeset +r LD_PRELOAD" и задать её любое новое значение.

     
     
  • 3.12, pavlinux, 13:01, 08/11/2016 [^] [ответить] [смотреть все]  
  • +/
    > Ага, щас.
    > 1) можно запустить bash --noprofile, и /etc/profile не будет зачитан

    еще есть /etc/bash.bashrc, еще парсер написать.

     

    Ваш комментарий
    Имя:         
    E-Mail:      
    Заголовок:
    Текст:



     Добавить заметку
     Версия для печати
     
     Поиск заметки:
     

    Последние заметки
    - 24.12 Удалённая работа с GTK-приложениями через браузер
    - 09.12 Обход блокировки трафика провайдером при помощи iptables
    - 28.11 Подключаем PHP 7.1 к Oracle в CentOS 7
    - 08.11 Домашний шлюз на Raspberry Pi
    - 28.10 Настройка двойной загрузки Ubuntu и Windows 10
    - 22.09 Снятие показаний электросчетчика средствами OpenWRT
    - 18.09 Отключение LD_PRELOAD в Linux
    - 13.09 Мониторинг MaxScale в Zabbix
    - 07.09 Методы обнаружения ключей OpenPGP
    - 18.08 Обход ограничения по выполнению только подписанных дополнений в Firefox
    RSS | Следующие 15 записей >>



      Закладки на сайте
      Проследить за страницей
    Created 1996-2016 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    Hosting by Ihor TopList