{"id":24794,"date":"2022-05-28T09:16:00","date_gmt":"2022-05-28T09:16:00","guid":{"rendered":"https:\/\/kalilinuxtutorials.com\/?p=24794"},"modified":"2022-05-23T06:17:04","modified_gmt":"2022-05-23T06:17:04","slug":"maat","status":"publish","type":"post","link":"https:\/\/kalilinuxtutorials.com\/maat\/","title":{"rendered":"Maat : Open-source Symbolic Execution Framework"},"content":{"rendered":"\n<p><strong>Maat <\/strong>is an open-source Dynamic Symbolic Execution and Binary Analysis framework. It provides various functionalities such as symbolic execution, taint analysis, constraint solving, binary loading, environment simulation, and leverages Ghidra&#8217;s sleigh library for assembly lifting:&nbsp;https:\/\/maat.re<\/p>\n\n\n\n<h2 class=\"has-text-align-center has-vivid-green-cyan-background-color has-background wp-block-heading\">Key Features<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Fast &amp; Portable<\/strong>: Designed to scale to real-world applications. Fully written in C++ for good runtime performance. There are hardly any runtime dependencies, and most of them are optional<\/li><li><strong>User-friendly<\/strong>: Maat has a flexible debugger-like API, and its features are configurable to adapt to many different use-cases. As any self-respecting modern framework, it comes with&nbsp;<em>Python bindings<\/em><\/li><li><strong>Multi-arch<\/strong>: With lifting and emulation based on Ghidra&#8217;s awesome&nbsp;<em>sleigh<\/em>&nbsp;library, Maat has the potential to emulate many architectures, including exotic ones<\/li><\/ul>\n\n\n\n<h1 class=\"has-text-align-center has-vivid-green-cyan-background-color has-background wp-block-heading\">Installation<\/h1>\n\n\n\n<p>To install Maat&#8217;s python module:<\/p>\n\n\n\n<p class=\"has-vivid-green-cyan-color has-black-background-color has-text-color has-background\"><strong>python3 -m pip install pymaat<\/strong><\/p>\n\n\n\n<p>To install Maat&#8217;s native SDK and use the C++ API, check out&nbsp;BUILDING.md<\/p>\n\n\n\n<h1 class=\"has-text-align-center has-vivid-green-cyan-background-color has-background wp-block-heading\"><a href=\"https:\/\/github.com\/trailofbits\/maat#example\"><\/a>Example<\/h1>\n\n\n\n<p class=\"has-vivid-green-cyan-color has-black-background-color has-text-color has-background\"><strong>from maat import *<br>Create a symbolic engine for Linux X86-32bits<br>engine = MaatEngine(ARCH.X86, OS.LINUX)<br>Load a binary with one command line argument<br>engine.load(&#8220;.\/some_binary&#8221;, BIN.ELF32, args=[engine.vars.new_symbolic_buffer(&#8220;some_arg&#8221;, 20)])<br>Get current eax value<br>engine.cpu.eax<br>Read 4 bytes at the top of the stack<br>engine.mem.read(engine.cpu.esp, 4)<br>Set a callback displaying every memory read<br>def show_mem_access(engine):<br>mem_access = engine.info.mem_access<br>print(f&#8221;Instruction at {engine.info.addr} reads {mem_access.size} bytes at {mem_access.addr}&#8221;)<br>engine.hooks.add(EVENT.MEM_R, WHEN.BEFORE, callbacks=[show_mem_access])<br>Take and restore snapshots<br>snap = engine.take_snapshot()<br>engine.restore_snapshot(snap)<br>Run the binary<br>engine.run()<\/strong><\/p>\n\n\n\n<div class=\"wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-16018d1d wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button is-style-outline is-style-outline--1\"><a class=\"wp-block-button__link has-vivid-cyan-blue-background-color has-background\" href=\"https:\/\/github.com\/trailofbits\/maat\"><strong>Download<\/strong><\/a><\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Maat is an open-source Dynamic Symbolic Execution and Binary Analysis framework. It provides various functionalities such as symbolic execution, taint analysis, constraint solving, binary loading, environment simulation, and leverages Ghidra&#8217;s sleigh library for assembly lifting:&nbsp;https:\/\/maat.re Key Features Fast &amp; Portable: Designed to scale to real-world applications. Fully written in C++ for good runtime performance. There [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":24800,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiHuuKsX7VNZe2suL6QjpFftnd5_yfcJ-OZe0O0FYz0yUD9YuZ3SM61rHjBukPHRRwiJv54wVBnVHe8VZR8q2pTDY7Wk_smeP1p_g_aBw9cYK1SSvZtiimYarRkiODnBOUUqqkdTc343Sndb6wIXOtJCwYB85QoMhwH5e26UhReVzFtpox53Lbts3YN\/s728\/maat_logo%20(1).png","fifu_image_alt":"","_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[28],"tags":[1255,5204,2330,3292],"class_list":["post-24794","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-kali","tag-framework","tag-maat","tag-open-source","tag-symbolic-execution"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Maat : Open-source Symbolic Execution Framework<\/title>\n<meta name=\"description\" content=\"Maat is an open-source Dynamic Symbolic Execution and Binary Analysis framework. It provides various functionalities.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kalilinuxtutorials.com\/maat\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Maat : Open-source Symbolic Execution Framework\" \/>\n<meta property=\"og:description\" content=\"Maat is an open-source Dynamic Symbolic Execution and Binary Analysis framework. It provides various functionalities.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kalilinuxtutorials.com\/maat\/\" \/>\n<meta property=\"og:site_name\" content=\"Kali Linux Tutorials\" \/>\n<meta property=\"article:published_time\" content=\"2022-05-28T09:16:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiHuuKsX7VNZe2suL6QjpFftnd5_yfcJ-OZe0O0FYz0yUD9YuZ3SM61rHjBukPHRRwiJv54wVBnVHe8VZR8q2pTDY7Wk_smeP1p_g_aBw9cYK1SSvZtiimYarRkiODnBOUUqqkdTc343Sndb6wIXOtJCwYB85QoMhwH5e26UhReVzFtpox53Lbts3YN\/s728\/maat_logo%20(1).png\" \/>\n<meta name=\"author\" content=\"R K\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiHuuKsX7VNZe2suL6QjpFftnd5_yfcJ-OZe0O0FYz0yUD9YuZ3SM61rHjBukPHRRwiJv54wVBnVHe8VZR8q2pTDY7Wk_smeP1p_g_aBw9cYK1SSvZtiimYarRkiODnBOUUqqkdTc343Sndb6wIXOtJCwYB85QoMhwH5e26UhReVzFtpox53Lbts3YN\/s728\/maat_logo%20(1).png\" \/>\n<meta name=\"twitter:creator\" content=\"@CyberEdition\" \/>\n<meta name=\"twitter:site\" content=\"@CyberEdition\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"R K\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kalilinuxtutorials.com\/maat\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kalilinuxtutorials.com\/maat\/\"},\"author\":{\"name\":\"R K\",\"@id\":\"https:\/\/kalilinuxtutorials.com\/#\/schema\/person\/69444b58b9e267a4cf08fceb34b6f6ad\"},\"headline\":\"Maat : Open-source Symbolic Execution Framework\",\"datePublished\":\"2022-05-28T09:16:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kalilinuxtutorials.com\/maat\/\"},\"wordCount\":275,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kalilinuxtutorials.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/kalilinuxtutorials.com\/maat\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiHuuKsX7VNZe2suL6QjpFftnd5_yfcJ-OZe0O0FYz0yUD9YuZ3SM61rHjBukPHRRwiJv54wVBnVHe8VZR8q2pTDY7Wk_smeP1p_g_aBw9cYK1SSvZtiimYarRkiODnBOUUqqkdTc343Sndb6wIXOtJCwYB85QoMhwH5e26UhReVzFtpox53Lbts3YN\/s728\/maat_logo%20(1).png\",\"keywords\":[\"Framework\",\"Maat\",\"Open-source\",\"Symbolic Execution\"],\"articleSection\":[\"Kali Linux\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kalilinuxtutorials.com\/maat\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kalilinuxtutorials.com\/maat\/\",\"url\":\"https:\/\/kalilinuxtutorials.com\/maat\/\",\"name\":\"Maat : Open-source Symbolic Execution Framework\",\"isPartOf\":{\"@id\":\"https:\/\/kalilinuxtutorials.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kalilinuxtutorials.com\/maat\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kalilinuxtutorials.com\/maat\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiHuuKsX7VNZe2suL6QjpFftnd5_yfcJ-OZe0O0FYz0yUD9YuZ3SM61rHjBukPHRRwiJv54wVBnVHe8VZR8q2pTDY7Wk_smeP1p_g_aBw9cYK1SSvZtiimYarRkiODnBOUUqqkdTc343Sndb6wIXOtJCwYB85QoMhwH5e26UhReVzFtpox53Lbts3YN\/s728\/maat_logo%20(1).png\",\"datePublished\":\"2022-05-28T09:16:00+00:00\",\"description\":\"Maat is an open-source Dynamic Symbolic Execution and Binary Analysis framework. It provides various functionalities.\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kalilinuxtutorials.com\/maat\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/kalilinuxtutorials.com\/maat\/#primaryimage\",\"url\":\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiHuuKsX7VNZe2suL6QjpFftnd5_yfcJ-OZe0O0FYz0yUD9YuZ3SM61rHjBukPHRRwiJv54wVBnVHe8VZR8q2pTDY7Wk_smeP1p_g_aBw9cYK1SSvZtiimYarRkiODnBOUUqqkdTc343Sndb6wIXOtJCwYB85QoMhwH5e26UhReVzFtpox53Lbts3YN\/s728\/maat_logo%20(1).png\",\"contentUrl\":\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiHuuKsX7VNZe2suL6QjpFftnd5_yfcJ-OZe0O0FYz0yUD9YuZ3SM61rHjBukPHRRwiJv54wVBnVHe8VZR8q2pTDY7Wk_smeP1p_g_aBw9cYK1SSvZtiimYarRkiODnBOUUqqkdTc343Sndb6wIXOtJCwYB85QoMhwH5e26UhReVzFtpox53Lbts3YN\/s728\/maat_logo%20(1).png\",\"width\":\"728\",\"height\":\"380\"},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kalilinuxtutorials.com\/#website\",\"url\":\"https:\/\/kalilinuxtutorials.com\/\",\"name\":\"Kali Linux Tutorials\",\"description\":\"Kali Linux Tutorials\",\"publisher\":{\"@id\":\"https:\/\/kalilinuxtutorials.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kalilinuxtutorials.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kalilinuxtutorials.com\/#organization\",\"name\":\"Kali Linux Tutorials\",\"url\":\"https:\/\/kalilinuxtutorials.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/kalilinuxtutorials.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kalilinuxtutorials.com\/wp-content\/uploads\/2025\/07\/Kali.png\",\"contentUrl\":\"https:\/\/kalilinuxtutorials.com\/wp-content\/uploads\/2025\/07\/Kali.png\",\"width\":272,\"height\":90,\"caption\":\"Kali Linux Tutorials\"},\"image\":{\"@id\":\"https:\/\/kalilinuxtutorials.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/CyberEdition\",\"https:\/\/www.threads.com\/@cybersecurityedition\",\"https:\/\/www.linkedin.com\/company\/cyberedition\",\"https:\/\/www.instagram.com\/cybersecurityedition\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/kalilinuxtutorials.com\/#\/schema\/person\/69444b58b9e267a4cf08fceb34b6f6ad\",\"name\":\"R K\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/kalilinuxtutorials.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/d3937c9687f2da11bc0a716404ff91779fe19ca115208dbf66167ad353aca5aa?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/d3937c9687f2da11bc0a716404ff91779fe19ca115208dbf66167ad353aca5aa?s=96&d=mm&r=g\",\"caption\":\"R K\"},\"url\":\"https:\/\/kalilinuxtutorials.com\/author\/ranjith\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Maat : Open-source Symbolic Execution Framework","description":"Maat is an open-source Dynamic Symbolic Execution and Binary Analysis framework. It provides various functionalities.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kalilinuxtutorials.com\/maat\/","og_locale":"en_US","og_type":"article","og_title":"Maat : Open-source Symbolic Execution Framework","og_description":"Maat is an open-source Dynamic Symbolic Execution and Binary Analysis framework. It provides various functionalities.","og_url":"https:\/\/kalilinuxtutorials.com\/maat\/","og_site_name":"Kali Linux Tutorials","article_published_time":"2022-05-28T09:16:00+00:00","og_image":[{"url":"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiHuuKsX7VNZe2suL6QjpFftnd5_yfcJ-OZe0O0FYz0yUD9YuZ3SM61rHjBukPHRRwiJv54wVBnVHe8VZR8q2pTDY7Wk_smeP1p_g_aBw9cYK1SSvZtiimYarRkiODnBOUUqqkdTc343Sndb6wIXOtJCwYB85QoMhwH5e26UhReVzFtpox53Lbts3YN\/s728\/maat_logo%20(1).png","type":"","width":"","height":""}],"author":"R K","twitter_card":"summary_large_image","twitter_image":"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiHuuKsX7VNZe2suL6QjpFftnd5_yfcJ-OZe0O0FYz0yUD9YuZ3SM61rHjBukPHRRwiJv54wVBnVHe8VZR8q2pTDY7Wk_smeP1p_g_aBw9cYK1SSvZtiimYarRkiODnBOUUqqkdTc343Sndb6wIXOtJCwYB85QoMhwH5e26UhReVzFtpox53Lbts3YN\/s728\/maat_logo%20(1).png","twitter_creator":"@CyberEdition","twitter_site":"@CyberEdition","twitter_misc":{"Written by":"R K","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kalilinuxtutorials.com\/maat\/#article","isPartOf":{"@id":"https:\/\/kalilinuxtutorials.com\/maat\/"},"author":{"name":"R K","@id":"https:\/\/kalilinuxtutorials.com\/#\/schema\/person\/69444b58b9e267a4cf08fceb34b6f6ad"},"headline":"Maat : Open-source Symbolic Execution Framework","datePublished":"2022-05-28T09:16:00+00:00","mainEntityOfPage":{"@id":"https:\/\/kalilinuxtutorials.com\/maat\/"},"wordCount":275,"commentCount":0,"publisher":{"@id":"https:\/\/kalilinuxtutorials.com\/#organization"},"image":{"@id":"https:\/\/kalilinuxtutorials.com\/maat\/#primaryimage"},"thumbnailUrl":"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiHuuKsX7VNZe2suL6QjpFftnd5_yfcJ-OZe0O0FYz0yUD9YuZ3SM61rHjBukPHRRwiJv54wVBnVHe8VZR8q2pTDY7Wk_smeP1p_g_aBw9cYK1SSvZtiimYarRkiODnBOUUqqkdTc343Sndb6wIXOtJCwYB85QoMhwH5e26UhReVzFtpox53Lbts3YN\/s728\/maat_logo%20(1).png","keywords":["Framework","Maat","Open-source","Symbolic Execution"],"articleSection":["Kali Linux"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kalilinuxtutorials.com\/maat\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kalilinuxtutorials.com\/maat\/","url":"https:\/\/kalilinuxtutorials.com\/maat\/","name":"Maat : Open-source Symbolic Execution Framework","isPartOf":{"@id":"https:\/\/kalilinuxtutorials.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kalilinuxtutorials.com\/maat\/#primaryimage"},"image":{"@id":"https:\/\/kalilinuxtutorials.com\/maat\/#primaryimage"},"thumbnailUrl":"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiHuuKsX7VNZe2suL6QjpFftnd5_yfcJ-OZe0O0FYz0yUD9YuZ3SM61rHjBukPHRRwiJv54wVBnVHe8VZR8q2pTDY7Wk_smeP1p_g_aBw9cYK1SSvZtiimYarRkiODnBOUUqqkdTc343Sndb6wIXOtJCwYB85QoMhwH5e26UhReVzFtpox53Lbts3YN\/s728\/maat_logo%20(1).png","datePublished":"2022-05-28T09:16:00+00:00","description":"Maat is an open-source Dynamic Symbolic Execution and Binary Analysis framework. It provides various functionalities.","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kalilinuxtutorials.com\/maat\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/kalilinuxtutorials.com\/maat\/#primaryimage","url":"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiHuuKsX7VNZe2suL6QjpFftnd5_yfcJ-OZe0O0FYz0yUD9YuZ3SM61rHjBukPHRRwiJv54wVBnVHe8VZR8q2pTDY7Wk_smeP1p_g_aBw9cYK1SSvZtiimYarRkiODnBOUUqqkdTc343Sndb6wIXOtJCwYB85QoMhwH5e26UhReVzFtpox53Lbts3YN\/s728\/maat_logo%20(1).png","contentUrl":"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiHuuKsX7VNZe2suL6QjpFftnd5_yfcJ-OZe0O0FYz0yUD9YuZ3SM61rHjBukPHRRwiJv54wVBnVHe8VZR8q2pTDY7Wk_smeP1p_g_aBw9cYK1SSvZtiimYarRkiODnBOUUqqkdTc343Sndb6wIXOtJCwYB85QoMhwH5e26UhReVzFtpox53Lbts3YN\/s728\/maat_logo%20(1).png","width":"728","height":"380"},{"@type":"WebSite","@id":"https:\/\/kalilinuxtutorials.com\/#website","url":"https:\/\/kalilinuxtutorials.com\/","name":"Kali Linux Tutorials","description":"Kali Linux Tutorials","publisher":{"@id":"https:\/\/kalilinuxtutorials.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kalilinuxtutorials.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/kalilinuxtutorials.com\/#organization","name":"Kali Linux Tutorials","url":"https:\/\/kalilinuxtutorials.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/kalilinuxtutorials.com\/#\/schema\/logo\/image\/","url":"https:\/\/kalilinuxtutorials.com\/wp-content\/uploads\/2025\/07\/Kali.png","contentUrl":"https:\/\/kalilinuxtutorials.com\/wp-content\/uploads\/2025\/07\/Kali.png","width":272,"height":90,"caption":"Kali Linux Tutorials"},"image":{"@id":"https:\/\/kalilinuxtutorials.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/CyberEdition","https:\/\/www.threads.com\/@cybersecurityedition","https:\/\/www.linkedin.com\/company\/cyberedition","https:\/\/www.instagram.com\/cybersecurityedition\/"]},{"@type":"Person","@id":"https:\/\/kalilinuxtutorials.com\/#\/schema\/person\/69444b58b9e267a4cf08fceb34b6f6ad","name":"R K","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/kalilinuxtutorials.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/d3937c9687f2da11bc0a716404ff91779fe19ca115208dbf66167ad353aca5aa?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d3937c9687f2da11bc0a716404ff91779fe19ca115208dbf66167ad353aca5aa?s=96&d=mm&r=g","caption":"R K"},"url":"https:\/\/kalilinuxtutorials.com\/author\/ranjith\/"}]}},"jetpack_featured_media_url":"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiHuuKsX7VNZe2suL6QjpFftnd5_yfcJ-OZe0O0FYz0yUD9YuZ3SM61rHjBukPHRRwiJv54wVBnVHe8VZR8q2pTDY7Wk_smeP1p_g_aBw9cYK1SSvZtiimYarRkiODnBOUUqqkdTc343Sndb6wIXOtJCwYB85QoMhwH5e26UhReVzFtpox53Lbts3YN\/s728\/maat_logo%20(1).png","jetpack_sharing_enabled":true,"jetpack-related-posts":[{"id":3423,"url":"https:\/\/kalilinuxtutorials.com\/triton-dynamic-binary-analysis\/","url_meta":{"origin":24794,"position":0},"title":"Triton &#8211; Dynamic Binary Analysis (DBA) Framework","author":"R K","date":"December 8, 2018","format":false,"excerpt":"Triton is a Dynamic Binary Analysis (DBA) framework. It provides internal components like a Dynamic Symbolic Execution (DSE) engine, a Taint Engine, AST representations of the x86 and the x86-64 instructions set semantics, SMT simplification passes, an SMT Solver Interface and, the last but not least, Python bindings. Based on\u2026","rel":"","context":"In &quot;Kali Linux&quot;","block_context":{"text":"Kali Linux","link":"https:\/\/kalilinuxtutorials.com\/category\/kali\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/kalilinuxtutorials.com\/wp-content\/uploads\/2018\/12\/Triton.jpg?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":34744,"url":"https:\/\/kalilinuxtutorials.com\/amoco\/","url_meta":{"origin":24794,"position":1},"title":"Amoco &#8211; Advancing Symbolic Binary Analysis In Python","author":"Varshini","date":"September 9, 2024","format":false,"excerpt":"Amoco is a cutting-edge Python package designed for the symbolic analysis of binaries, streamlining the decoding process across various architectures. It provides a robust framework for instruction semantics and a flexible execution model to handle both concrete and symbolic values efficiently. Amoco's ongoing development promises to expand its capabilities, making\u2026","rel":"","context":"In &quot;software&quot;","block_context":{"text":"software","link":"https:\/\/kalilinuxtutorials.com\/category\/software\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEjzArwWf1WFGOaJGHqXhul_hZidUjswJ3bXpyM9v_scb2kvRON7ASnifaKvpU95iCJiP0BvC4ZsdSahswP6MhbA_vbvEP0IBRVkO5naTHSYgG8WPsdc5PdpQPvg0xmxZ7umd6o1RXw9fPEeWYLc_buYenk1FJrboHNqKxn6xagXrSYnR93RHEYBh-Q4RvkO\/s16000\/Amoco%20.webp?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEjzArwWf1WFGOaJGHqXhul_hZidUjswJ3bXpyM9v_scb2kvRON7ASnifaKvpU95iCJiP0BvC4ZsdSahswP6MhbA_vbvEP0IBRVkO5naTHSYgG8WPsdc5PdpQPvg0xmxZ7umd6o1RXw9fPEeWYLc_buYenk1FJrboHNqKxn6xagXrSYnR93RHEYBh-Q4RvkO\/s16000\/Amoco%20.webp?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEjzArwWf1WFGOaJGHqXhul_hZidUjswJ3bXpyM9v_scb2kvRON7ASnifaKvpU95iCJiP0BvC4ZsdSahswP6MhbA_vbvEP0IBRVkO5naTHSYgG8WPsdc5PdpQPvg0xmxZ7umd6o1RXw9fPEeWYLc_buYenk1FJrboHNqKxn6xagXrSYnR93RHEYBh-Q4RvkO\/s16000\/Amoco%20.webp?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEjzArwWf1WFGOaJGHqXhul_hZidUjswJ3bXpyM9v_scb2kvRON7ASnifaKvpU95iCJiP0BvC4ZsdSahswP6MhbA_vbvEP0IBRVkO5naTHSYgG8WPsdc5PdpQPvg0xmxZ7umd6o1RXw9fPEeWYLc_buYenk1FJrboHNqKxn6xagXrSYnR93RHEYBh-Q4RvkO\/s16000\/Amoco%20.webp?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEjzArwWf1WFGOaJGHqXhul_hZidUjswJ3bXpyM9v_scb2kvRON7ASnifaKvpU95iCJiP0BvC4ZsdSahswP6MhbA_vbvEP0IBRVkO5naTHSYgG8WPsdc5PdpQPvg0xmxZ7umd6o1RXw9fPEeWYLc_buYenk1FJrboHNqKxn6xagXrSYnR93RHEYBh-Q4RvkO\/s16000\/Amoco%20.webp?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEjzArwWf1WFGOaJGHqXhul_hZidUjswJ3bXpyM9v_scb2kvRON7ASnifaKvpU95iCJiP0BvC4ZsdSahswP6MhbA_vbvEP0IBRVkO5naTHSYgG8WPsdc5PdpQPvg0xmxZ7umd6o1RXw9fPEeWYLc_buYenk1FJrboHNqKxn6xagXrSYnR93RHEYBh-Q4RvkO\/s16000\/Amoco%20.webp?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":37397,"url":"https:\/\/kalilinuxtutorials.com\/ollvm-unflattener\/","url_meta":{"origin":24794,"position":2},"title":"ollvm-unflattener : A Tool For Reversing Control Flow Flattening In OLLVM","author":"Varshini","date":"April 1, 2025","format":false,"excerpt":"Control flow flattening is a common obfuscation technique used by OLLVM (Obfuscator-LLVM) to transform executable logic into complex state-driven structures. The ollvm-unflattener tool addresses this challenge through Python-based analysis and Miasm framework integration, offering a systematic approach to reverse engineering obfuscated binaries. This tool specializes in reconstructing original control flow\u2026","rel":"","context":"In &quot;Exploitation Tools&quot;","block_context":{"text":"Exploitation Tools","link":"https:\/\/kalilinuxtutorials.com\/category\/et\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/kalilinuxtutorials.com\/wp-content\/uploads\/2025\/03\/ollvm-unflattener-.webp?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/kalilinuxtutorials.com\/wp-content\/uploads\/2025\/03\/ollvm-unflattener-.webp?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/kalilinuxtutorials.com\/wp-content\/uploads\/2025\/03\/ollvm-unflattener-.webp?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/kalilinuxtutorials.com\/wp-content\/uploads\/2025\/03\/ollvm-unflattener-.webp?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/kalilinuxtutorials.com\/wp-content\/uploads\/2025\/03\/ollvm-unflattener-.webp?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/kalilinuxtutorials.com\/wp-content\/uploads\/2025\/03\/ollvm-unflattener-.webp?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":5531,"url":"https:\/\/kalilinuxtutorials.com\/ponce-ida-pro-plugin\/","url_meta":{"origin":24794,"position":3},"title":"Ponce : IDA Pro Plugin That Provides Users The Ability To Perform Taint Analysis &#038; Symbolic Execution","author":"R K","date":"June 29, 2019","format":false,"excerpt":"Ponce is an IDA Pro plugin that provides users the ability to perform taint analysis and symbolic execution over binaries in an easy and intuitive fashion. With Ponce you are one click away from getting all the power from cutting edge symbolic execution. Entirely written in C\/C++. Symbolic execution is\u2026","rel":"","context":"In &quot;Kali Linux&quot;","block_context":{"text":"Kali Linux","link":"https:\/\/kalilinuxtutorials.com\/category\/kali\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":3243,"url":"https:\/\/kalilinuxtutorials.com\/manticore-symbolic-execution-tool\/","url_meta":{"origin":24794,"position":4},"title":"Manticore : Symbolic Execution Tool","author":"R K","date":"November 22, 2018","format":false,"excerpt":"Manticore is a symbolic execution tool for analysis of binaries and smart contracts. Beginning with version 0.2.0, Python 3.6+ is required. Manticore Features Input Generation: Manticore automatically generates inputs that trigger unique code paths Crash Discovery: Manticore discovers inputs that crash programs via memory safety violations Execution Tracing: Manticore records\u2026","rel":"","context":"In &quot;Kali Linux&quot;","block_context":{"text":"Kali Linux","link":"https:\/\/kalilinuxtutorials.com\/category\/kali\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/kalilinuxtutorials.com\/wp-content\/uploads\/2018\/04\/button_download.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":9405,"url":"https:\/\/kalilinuxtutorials.com\/abd-advanced-binary-deobfuscation\/","url_meta":{"origin":24794,"position":5},"title":"ABD : Course Materials For Advanced Binary Deobfuscation","author":"R K","date":"February 29, 2020","format":false,"excerpt":"ABD is the course materials for Advanced Binary Deobfuscation by NTT Secure Platform Laboratories Advanced Binary Deobfuscation This repository contains the course materials of Advanced Binary Deobfuscation at the\u00a0Global Cybersecurity Camp (GCC) Tokyo\u00a0in 2020. Course Abstract Reverse engineering is not easy, especially if a binary code is obfuscated. Once obfuscation\u2026","rel":"","context":"In &quot;Kali Linux&quot;","block_context":{"text":"Kali Linux","link":"https:\/\/kalilinuxtutorials.com\/category\/kali\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/kalilinuxtutorials.com\/wp-json\/wp\/v2\/posts\/24794","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kalilinuxtutorials.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kalilinuxtutorials.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kalilinuxtutorials.com\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/kalilinuxtutorials.com\/wp-json\/wp\/v2\/comments?post=24794"}],"version-history":[{"count":7,"href":"https:\/\/kalilinuxtutorials.com\/wp-json\/wp\/v2\/posts\/24794\/revisions"}],"predecessor-version":[{"id":24997,"href":"https:\/\/kalilinuxtutorials.com\/wp-json\/wp\/v2\/posts\/24794\/revisions\/24997"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kalilinuxtutorials.com\/wp-json\/wp\/v2\/media\/24800"}],"wp:attachment":[{"href":"https:\/\/kalilinuxtutorials.com\/wp-json\/wp\/v2\/media?parent=24794"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kalilinuxtutorials.com\/wp-json\/wp\/v2\/categories?post=24794"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kalilinuxtutorials.com\/wp-json\/wp\/v2\/tags?post=24794"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}