Описание тега ld-preload

LD_PRELOAD - это список дополнительных общих объектов ELF, которые должны быть загружены в первую очередь.
1 ответ

Компиляция x32-битного LD_PRELOAD на 64-битной Ubuntu

Я пытаюсь скомпилировать x32 LD_PRELOAD на платформе x64 (Ubuntu), моя команда: g++ -fPIC -m32 -shared -Wl,-soname,test.so -ldl -o test.so test.cpp Но я получаю ошибку: /usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.4.5/libstdc++…
12 июн '12 в 20:45
0 ответов

Ошибка с перекодировкой разделяемой библиотеки malloc

Я пытаюсь реализовать свою собственную версию malloc создание общей библиотеки, но я столкнулся с проблемой. Когда я бегу malloc с LD_PRELOAD это сообщение появляется: Ld.so: dl-load.c: 2325 обнаружено несоответствие: _dl_map_object: утверждение nsi…
10 фев '16 в 16:50
2 ответа

LD_PRELOAD и минимальный пример слабых ссылок не работает

Это, вероятно, будет стыдно: Я использую предварительное кодирование библиотеки в других проектах, но я не могу заставить этот минимальный пример работать: weakref.h: void f_weak() __attribute__((weak)); weakref.c: #include <stdio.h> #include …
14 авг '13 в 09:12
3 ответа

Функция взаиморасположения работает только для malloc и не свободна

Я столкнулся с небольшой проблемой при мониторинге malloc и free через использование функции interposition. При выполнении вставки функции для просто malloc, она работает как исключено. Тем не менее, когда вы пытаетесь вставить свободное, оно оказыв…
21 фев '13 в 09:49
1 ответ

Отправьте сигнал на lighttpd и сигнал может быть обработан библиотекой LD_PRELOAD

Привет!:) Я хочу запустить сервер lighttpd с библиотекой LD_PRELOADed, моя библиотека LD_PRELOADed называется signal.so, и ее код выглядит так: #include <signal.h> struct sigaction sgSA; static void handler(int signo, siginfo_t *si, void *ptr)…
16 янв '17 в 15:11
1 ответ

Работает ли LD_PRELOAD на всех разновидностях Unix/ Linux?

Я написал простой модуль LD_PRELOAD, скомпилированный на сервере Ubuntu. Будет ли эта предварительная загрузка работать на других системах, таких как Solaris, FreeBSD, CentOS и т. Д. Есть ли какие-либо особые проблемы в некоторых ОС?
09 июн '12 в 08:52
1 ответ

Переопределение функций запуска процесса в Linux

Мне любопытно узнать, как переопределить функции запущенного процесса в Linux, чтобы процесс сначала вызывал мои функции. мы можем использовать LD_PRELOAD для переопределения функции в двоичном файле, но она не работает в случае уже запущенного проц…
27 июн '15 в 10:13
1 ответ

LD_PRELOAD несколько взаимозависимых библиотек

У меня есть библиотеки с деревом зависимостей, то есть некоторые зависимости имеют другие зависимости, которые я хочу предварительно загрузить. Как я могу это сделать? LD_PRELOAD \ /opt/yocto/2.5.1/sysroots/core2-64-poky-linux/usr/lib/libicudata.so.…
3 ответа

Вставить статически связанные двоичные файлы

Существует хорошо известная техника для вставки динамически связанных двоичных файлов: создание разделяемой библиотеки и использование переменной LD_PRELOAD. Но это не работает для статически связанных двоичных файлов. Одним из способов является нап…
08 июн '18 в 09:34
0 ответов

Используйте LD_PRELOAD в Ubuntu, чтобы перехватить сетевое взаимодействие mysqld

Я хочу использовать LD_PRELOAD для перехвата сетевого взаимодействия (включая прослушивание, связывание, отправку, запись, чтение, запись, запись, отправка файла libc.so.6) из mysqld, Я могу перехватить сетевое взаимодействие моих собственных програ…
08 янв '17 в 13:22
0 ответов

Переопределить mkdir с помощью LD_PRELOAD

Я пытаюсь изменить syscall mkdir(), чтобы отфильтровать некоторых пользователей, которым я не хочу, чтобы они создавали каталоги, возможно, это не самый элегантный способ сделать это, но я хочу знать, почему он не работает. Код замены mkdir (): #def…
07 авг '13 в 17:05
1 ответ

Перехватывает системный вызов openat() для GNU tar

Я пытаюсь перехватить openat() системный вызов в Linux с использованием пользовательской общей библиотеки, которую я могу загрузить через LD_PRELOAD, Пример intercept-openat.c имеет это содержание: #define _GNU_SOURCE #include <sys/types.h> #i…
06 фев '12 в 13:53
2 ответа

LD_PRELOAD и клон ()

Я использую скрипт для запуска программы с LD_PRELOAD с библиотекой, созданной мной для перехвата некоторых вызовов, она работает хорошо, но в какой-то момент процесс вызывает clone(), и я теряю способность перехватывать то, что дальше (программа за…
17 июл '13 в 13:11
1 ответ

Ошибка LD_PRELOAD в определенной папке

В системе Ubuntu 16.04 пытался использовать ld_preload со специально откомпилированным libpcap.so и запустить tcpdump. компилирование libpcap (1.8.0) ./configure --prefix=`pwd`/inst make install затем при использовании этой команды tcpdump используе…
20 ноя '16 в 21:18
1 ответ

RStudio - LD_PREOAD Issue

Я получаю ошибку RDOBC в RStudio, которая не возникает, когда я использую R на самом сервере. Р - R version 3.1.2 (2014-10-31) -- "Pumpkin Helmet" Copyright (C) 2014 The R Foundation for Statistical Computing Platform: x86_64-unknown-linux-gnu (64-b…
14 сен '15 в 04:46
3 ответа

Функция system() не вызывается из библиотеки LD_PRELOAD

Я пытаюсь использовать LD_PRELOAD на Linux, чтобы обернуть звонки system функция, чтобы добавить некоторую предварительную обработку к аргументу. Вот мой system.cpp: #define _GNU_SOURCE #include <dlfcn.h> #include <string> #include <i…
15 июн '17 в 07:24
2 ответа

Как обернуть ioctl(int d, unsigned long request, ...), используя LD_PRELOAD?

Вот шаблон, который я использую для обертывания функции с использованием LD_PRELOAD: int gettimeofday(struct timeval *tv, struct timezone *tz) { static int (*gettimeofday_real)(struct timeval *tv, struct timezone *tz)=NULL; if (!gettimeofday_real) g…
11 фев '15 в 19:11
1 ответ

Golang LD_PRELOAD для подключения SSL_read и SSL_write

Discalaimer, я очень новичок в Golang, поскольку я использовал следующую статью в качестве основы для этого https://blog.gopheracademy.com/advent-2015/libc-hooking-go-shared-libraries/ Я пытаюсь написать библиотеку LD_PRELOAD, которая будет перехват…
27 май '16 в 13:03
2 ответа

LD_PRELOAD, bash и printf

У меня есть общий объект, который делает некоторые printf()s через атрибут для init; Довольно просто Это просто сообщает мне о некоторых переменных, которые я установил. Когда я делаю LD_PRELOAD=mylib.so ./program.sh -flags program.sh выплевывает ош…
27 окт '11 в 07:44
1 ответ

Почему значение LD_PRELOAD в стеке

Я изучаю переполнение буфера и решаю некоторые варгеймы. Возникла проблема, что для всей стековой памяти над буфером установлено значение 0, кроме адреса возврата main, который будет: buffer [0000000...][RET][000000...] и я могу переписать этот RET.…
20 апр '13 в 14:22