Applicazioni legali del codice metamorfico

2

In primo luogo, vorrei precisare che comprendo già le applicazioni "vx" per il codice metamorfico. Non sono qui per fare una domanda relativa a nessuno di questi argomenti, in quanto sarebbe inappropriato in questo contesto.

Vorrei sapere se qualcuno ha mai usato il codice "Metamorfico" nella pratica, per scopi diversi da quelli precedentemente indicati, in tal caso, qual è stato il ragionamento per l'utilizzo di detto concetto.

In sostanza sto cercando di scoprire uno scopo per questo concetto, se ce n'è uno, oltre a eludere gli scanner antivirus e simili.

    
posta V_P 15.11.2011 - 03:17
fonte

2 risposte

2

Ci sono molte possibili applicazioni. Ad esempio, evolutivo e genetico i metodi di programmazione sono ampiamente utilizzati nella pratica (e c'è anche molta ricerca corrente).

Una delle applicazioni più banali (e quindi pratiche) sta generando test di stress per i compilatori tramite la mutazione di un pezzo di codice con il comportamento noto in un codice molto più grande ma ancora equivalente.

    
risposta data 15.11.2011 - 09:13
fonte
4

L'ottimizzazione può essere fatta per metamorfismo. Si potrebbe, almeno in teoria, rilasciare un binario che funzioni su qualsiasi CPU x86. Durante l'esecuzione del programma, avresti una voce di menu "Ottimizza il codice per la CPU corrente", che decompilerebbe i metodi e li ricompilerebbe in modo più efficiente.

In effetti, è così che funziona un compilatore JIT *. Qualsiasi codice JITted può essere considerato metamorfico, poiché il codice che viene effettivamente eseguito non si trova nel file eseguibile; è compilato con ottimizzazioni per la macchina specifica, quando è necessario.

* In realtà, un compilatore JIT in realtà non decompila un metodo e lo riscrive; il metodo originale di solito è solo uno stub che dice "compila questo metodo da questa rappresentazione bytecode, quindi chiamalo" - dopo che la prima volta che viene eseguito, il metodo viene sostituito con la versione compilata.

    
risposta data 15.11.2011 - 04:57
fonte

Leggi altre domande sui tag