Debugging binaries with Python a talk by Pavel Šimerda

Friday, 14 June, 16:40 in Ballroom

I shall speak about using Python in conjunction with some of the Linux operating system APIs. To access the operating system features from a Python process we must be able to run shared library functions as well as Linux system calls. For debugging purposes we can use the standard ptrace system call among others.

There are various existing tools based on the ptrace API including debuggers and tracers and you can build your own in any programming language that is capable of running C library functions or system calls as part of its process execution. There is a python-ptrace library that provide some layer of abstraction for Python developers.

Debugging APIs can be used together with other Linux APIs like kernel namespaces to achieve various test scenarios that you might want to debug or trace. This makes Python a useful tool even for C developers.

This talk is aimed at advanced Pythonistas. While it might be interesting for beginners we recommend them to choose another talk.

Pavel Šimerda

I am an independent C and Python programmer in the open source environment. I help companies and individuals with open source operating systems, development environments and other tools so that they can use them for their advantage.

I have recently extended my knowledge to Ruby and JavaScript so I can fully appreciate how simple and straightforward Python is. I’m also gaining experience with Scratch, Micro:bit, Ozobots and other tools intended for education purposes.

pavlixnet crossdistro