#ptrace — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #ptrace, aggregated by home.social.
-
I've just committed a new manual page to #FreeBSD: tracing(7), an introduction to #tracing and #performance #monitoring facilities.
It'll take a moment before it is available for readers on man.freebsd.org, so for the time being you can grab a copy from here (https://cgit.freebsd.org/src/plain/share/man/man7/tracing.7?id=c29459f901dc73e1ebe1e654da2677cc0b7bd296) and open it with man(1).
#DTrace #dwatch #ktrace #osdev #foss #ptrace #utrace #truss #boottrace #tslog
-
Upcoming features for #tracexec
#Exec backtrace and jump to parent
In next release, the #TUI will support gathering the exec #backtrace of any exec event, which will greatly simply debugging experience.
The exec backtrace shows the history of a specific event and indicates any ancestor spawns or directly tears itself down and becomes the new process.
Jump to parent is a lighter alternative to backtrace, where you just press `U` to jump to the parent exec evt.
-
Process injection shenanigans are dear to my heart - it's one of the first things I ever learned in security.
Inspired by an Akamai blog last month, this blog digs into techniques to tinker with other processes on Linux, and show you how to write a little debugger in C!
https://www.labs.greynoise.io/grimoire/2025-01-28-process-injection/
-
Возвращаясь в IT (админская байка)
Волей-неволей, я оказался в другой стране. Февральский Тбилиси встретил ветрами, доброжелательными людьми, безденежьем и необходимостью (после 6-летнего перерыва) в очередной раз вкатываться в IT. И я подписался админить первый подвернувшийся проект. Основой проекта был сбор данных, который состоял из двух частей. Сначала куча бинарников сливала данные в один текстовый файл, который в процессе распухал до сотен гигабайт. Время от времени аналитик, (когда ему была необходима очередная порция данных, запускал его на разборку, скармливая его ещё одному бинарнику (назовём его "parser" ). Случалось это иногда раз в неделю, а иногда и раз в месяц. Сама система была разработана давно уволившемся программистом и, на удивление, уже лет 5+ работала без обслуживания и, при этом, без сбоев. Картину дополняли бардак в документации (если её таковой можно было назвать) и полное отсутствие исходников парсера. Но для админских задач они, как бы, не требовались. До поры. Уже в конце первой недели от аналитика пришла просьба: "Файл очень большой, разбирается иногда пару дней, а работает парсер абсолютно молчаливо, ничего не выдавая на экран, и, поэтому, нельзя ли отобразить процент выполнения. Желательно видный через progress , так как через него отслеживаются и другие задачи". Упомянутая выше документация заканчивалась одной интересной строчкой: "парсинг переведён в однопоточный режим из-за "гонок"". Из этой, не до конца понятной фразы, я вынес для себя, что раз парсинг идёт однопоточно, то нет никаких сложностей извлечь данные из "/proc" . Поэтому: "Да без проблем," — ответил я."
-
I am very excited to share that #tracexec can now be used as a #debugger launcher.
It's usually not trivial or convenient to debug a program executed by a shell/python script(which can use pipes as stdio for the program).
The video shows how to use tracexec to launch #gdb to debug two simple programs piped together by a shell script.Solves:
- https://stackoverflow.com/questions/5048112/use-gdb-to-debug-a-c-program-called-from-a-shell-script
- https://stackoverflow.com/questions/1456253/gdb-debugging-with-pipe
- https://stackoverflow.com/questions/65936457/debugging-a-specific-subprocess