|
11 | 11 | In general, everything magic happens "behind the scenes", and pwntools
|
12 | 12 | attempts to make your life easier.
|
13 | 13 |
|
14 |
| -When using :class:`.process.process`, pwntools will attempt to blindly |
| 14 | +When using :class:`.process`, pwntools will attempt to blindly |
15 | 15 | execute the binary, in case your system is configured to use ``binfmt-misc``.
|
16 | 16 |
|
17 | 17 | If this fails, pwntools will attempt to manually launch the binary under
|
|
38 | 38 | architectures.
|
39 | 39 |
|
40 | 40 | First, install the QEMU emulator itself. If your binary is statically-linked,
|
41 |
| -thsi is sufficient. |
| 41 | +this is sufficient. :: |
42 | 42 |
|
43 | 43 | $ sudo apt-get install qemu-user
|
44 | 44 |
|
45 | 45 | If your binary is dynamically linked, you need to install libraries like libc.
|
46 | 46 | Generally, this package is named ``libc6-$ARCH-cross``, e.g. ``libc-mips-cross``.
|
47 |
| -ARM comes in both soft-float and hard-float variants, e.g. ``armhf``. |
| 47 | +ARM comes in both soft-float and hard-float variants, e.g. ``armhf``. :: |
48 | 48 |
|
49 | 49 | $ sudo apt-get install libc6-arm64-cross
|
50 | 50 |
|
51 | 51 | If your binary relies on additional libraries, you can generally find them
|
52 | 52 | easily with ``apt-cache search``. For example, if it's a C++ binary it
|
53 |
| -may require ``libstdc++``. |
| 53 | +may require ``libstdc++``. :: |
54 | 54 |
|
55 | 55 | $ apt-cache search 'libstdc++' | grep arm64
|
56 | 56 |
|
|
65 | 65 | If you try to run your library now, you'll probably see an error about ``libc.so.6`` missing.
|
66 | 66 |
|
67 | 67 | Create the ``/etc/qemu-binfmt`` directory if it does not exist, and create a symlink to
|
68 |
| -the appropriate path. |
| 68 | +the appropriate path. :: |
69 | 69 |
|
70 | 70 | $ sudo mkdir /etc/qemu-binfmt
|
71 | 71 | $ sudo ln -s /usr/aarch64-linux-gnu /etc/qemu-binfmt/aarch64
|
|
0 commit comments