Revisited my #OverTheWire solutions because they apparently adjusted the flags and machines and figured out two things in the process:

- When using #pwnlib, it's very tempting to use their gdb helpers to programmatically interact with gdb and extract program state from it. This turns out not to be intended, it's merely assistance so that you can have gdb running alongside with your exploit for easy debugging of a process. I ended up launching a regular process querying gdb for information about register/memory state.
- The #Emacs markdown-mode has a useful `TAB` command that either cycles visibility of headlines or toggles between indenting the current line (which can be used to quickly indent/unindent code)

🌘 將Python和Pwnlib移植到Ronin的新指南 | Ronin
➤ Python和Pwnlib移植到Ronin的快速參考指南
https://ronin-rb.dev/blog/2023/06/16/new-guides-porting-python-and-pwnlib-to-ronin.html
這篇文章介紹了兩個新的快速參考指南,旨在幫助Python開發人員將其代碼移植到Ronin。如果您對Ruby或Ronin感興趣,可以考慮在GitHub或Open Collective上捐贈Ronin,以便我們可以繼續建立高質量的免費和開源安全工具和Ruby庫。
+ 這是一個很好的工具,我很高興看到有人為Python開發人員提供了這樣的支持。
+ 我從未聽說過Ronin,但是這篇文章讓我對它產生了興趣。
#Python #Pwnlib #Ronin #安全工具
New Guides: Porting Python and Pwnlib to Ronin | Ronin

Are you a Python developer interested in Ruby? Are you tired of writing the same old code over and over again in Python or with Pwnlib? Interested in what Ruby or Ronin can do? Well two new Python and Pwnlib to Ronin quick reference guides were added to the porting section:
https://ronin-rb.dev/blog/2023/06/16/new-guides-porting-python-and-pwnlib-to-ronin.html
#ronin #pwnlib #python #ruby #infosec #security
New Guides: Porting Python and Pwnlib to Ronin | Ronin

How many of the CRC algorithms in pwnlib have people actually needed to use? Many of these seem very fringe, compared to what's provided by pycrc.
http://docs.pwntools.com/en/stable/util/crc.html
#pwnlib #pwntools #crc
pwnlib.util.crc — Calculating CRC-sums — pwntools 4.10.0 documentation

pwnlib.tubes.sock — Sockets — pwntools 4.10.0 documentation

I've picked up #microcorruption, again. Last time I touched it was when the servers went offline and that inspired me to look into ways to play it outside the browser. The necessary parts of the equation:

- An emulator implementing the "syscalls"/callgate
- A debugger/disassembler/assembler toolchain
- All level files

There's several emulators available, along with a matching toolchain. The level files can be copy-pasted from the browser and the hex dump translated to a binary for the emulator. I've been given the remaining level files on #milliways and started translating my solutions so far to Python scripts that automatically solve each level with #pwnlib.

In case you wonder why to bother, this might be the gentlest introduction into binary exploitation, which I consider the black magic discipline in #infosec.

https://github.com/cemeyer/msp430-emu-uctf
https://aur.archlinux.org/packages/msp430-gdb
https://depp.brause.cc/uctf/

GitHub - cemeyer/msp430-emu-uctf: msp430 emulator for uctf (with remote GDB debugging, reverse debugging, and optional symbolic execution)

msp430 emulator for uctf (with remote GDB debugging, reverse debugging, and optional symbolic execution) - GitHub - cemeyer/msp430-emu-uctf: msp430 emulator for uctf (with remote GDB debugging, rev...

GitHub