Toolverse
All skills

llvm-obfuscation

by gmh5225

Expertise in LLVM-based code obfuscation techniques including OLLVM, control flow flattening, string encryption, virtualization, and anti-analysis methods. Use this skill when working on code protection, anti-reverse engineering, or implementing custom obfuscation passes.

Installation

Pick a client and clone the repository into its skills directory.

Installation

Quick info

Author
gmh5225
Category
Security
Views
4

About this skill

Expertise in LLVM-based code obfuscation techniques including OLLVM, control flow flattening, string encryption, virtualization, and anti-analysis methods. Use this skill when working on code protection, anti-reverse engineering, or implementing custom obfuscation passes.

How to use

  1. Zapoznaj się z głównymi technikami obfuskacji dostępnymi w LLVM: spłaszczaniem przepływu sterowania (CFF), fałszywym przepływem sterowania (BCF), szyfrowaniem stringów i podstawianiem instrukcji. Każda technika służy innym celom – CFF utrudnia śledzenie logiki programu, BCF dodaje fałszywe ścieżki, a szyfrowanie stringów chroni dane tekstowe.

  2. Wybierz odpowiedni framework OLLVM w zależności od potrzeb: klasyczny OLLVM do podstawowych transformacji, Hikari do zaawansowanej ochrony funkcji, Pluto-Obfuscator do mieszanych wyrażeń boolowsko-arytmetycznych (MBA), lub o-mvll jeśli obfuskujesz aplikacje mobilne (iOS/Android).

  3. Zdefiniuj cele ochrony – czy chcesz utrudnić analizę statyczną, dynamiczną, czy obie. Na tej podstawie dobierz kombinację technik: obfuskacja przepływu sterowania chroni logikę, obfuskacja danych chroni wartości, a wirtualizacja kodu (VMP) zapewnia najwyższą ochronę kosztem wydajności.

  4. Implementuj wybrane przejścia obfuskacji w pipeline'u kompilacji LLVM. Możesz użyć istniejących implementacji z frameworków (np. BCF z klasycznego OLLVM) lub dostosować je do swoich wymagań poprzez modyfikację przebiegu na poziomie pośredniego kodu (IR).

  5. Testuj obfuskowany kod pod kątem poprawności funkcjonalnej i wydajności. Obfuskacja zwiększa rozmiar kodu i czas wykonania – zweryfikuj, czy wpływ jest akceptowalny dla Twojego przypadku użycia.

  6. Rozważ łączenie wielu technik dla głębszej ochrony: na przykład spłaszczanie przepływu sterowania w połączeniu z szyfrowaniem stringów i podstawianiem instrukcji. Jednak pamiętaj, że każda dodatkowa warstwa obfuskacji pogarsza wydajność i utrudnia debugowanie.

Related skills

accessibility-compliance

by wshobson

Implement WCAG 2.2 compliant interfaces with mobile accessibility, inclusive design patterns, and assistive technology support. Use when auditing accessibility, implementing ARIA patterns, building for screen readers, or ensuring inclusive user experiences.

Security
2173

manim

by davila7

Comprehensive guide for Manim Community - Python framework for creating mathematical animations and educational videos with programmatic control

Security
1588

academic-researcher

by Shubhamsaboo

Academic research assistant for literature reviews, paper analysis, and scholarly writing.\nUse when: reviewing academic papers, conducting literature reviews, writing research summaries,\nanalyzing methodologies, formatting citations, or when user mentions academic research,

Security
1260

brand-voice

by anthropics

Apply and enforce brand voice, style guide, and messaging pillars across content. Use when reviewing content for brand consistency, documenting a brand voice, adapting tone for different audiences, or checking terminology and style guide compliance.

Security
48158

content-creator

by alirezarezvani

Create SEO-optimized marketing content with consistent brand voice. Includes brand voice analyzer, SEO optimizer, content frameworks, and social media templates. Use when writing blog posts, creating social media content, analyzing brand voice, optimizing SEO, planning content

Security
25124

gmail-manager

by jeffvincent

Manage Gmail - send, read, search emails, manage labels and drafts. Use when user wants to interact with their Gmail account for email operations.

Security
17128