Fråga:
Hur konverterar man en SWF-fil?
user1354557
2013-03-22 03:09:36 UTC
view on stackexchange narkive permalink

Vilka verktyg och tekniker finns för att antingen dekompilera eller analysera bytkoden i en SWF-fil? Vilka resurser finns tillgängliga för omvänd tekniker för att lära sig mer om SWF-interner?

Vilken version av ActionScript? Det finns två helt olika virtuella maskiner för AS. Du bör specificera. Till att börja med rekommenderar jag att du läser standarden, det hjälper verkligen men det kan orsaka hårdragning och andra udda reflexer också.
Intressant fråga. Kan någon ge en översikt av den information som finns tillgänglig om ämnet Flash RE? Papper och sådant skulle vara mycket uppskattat.
Nio svar:
Anton Kochkov
2013-03-22 12:37:55 UTC
view on stackexchange narkive permalink

Det finns ett bra verktyg flasm, som är öppen källkod och innehåller både blixtmonterare och demonterare. Och flare, som är gratis men sluten källa och innehåller flash-dekompilator. Det verkar som att båda är övergivna (senaste uppdatering från 2007) och inte har något stöd för ActionScript 3, men kanske någon kan utöka dem.

Precis som en uppdatering är den nuvarande versionen av Flare för Mac endast för PowerPC.
"apt-get install flasm" fungerar och programmet är enkelt att använda. Skulle rekommendera.
alexanderh
2013-05-09 23:11:50 UTC
view on stackexchange narkive permalink

Först rekommenderar jag att du läser igenom specifikationerna för SWF-filformat och ActionScript. Jag skulle inte rekommendera att läsa allt (det blir tråkigt). Bara de första tre eller fyra kapitlen. Detta hjälper till att ha en kunskapsbas för strukturen och nyckelorden. Här är de två jag skulle rekommendera.

SWF-filformat PDF, ActionScript Virtual Machine 2 (AVM2) Översikt PDF

När du har en kunskapsbas ut några inlägg på Flash Exploits. Här är en lista med inlägg i ingen särskild ordning eller värde 1, 2, 3, 4, 5, 6, 7. Att söka i RE Reddit är också en annan bra resurs för SWF / Flash-analys.

På gott och ont har mycket bra arbete utförts av exploateringsgemenskapen för omvänd teknik SWF / ActionScript / Flash / etc. Där rekommenderar jag ett antal forskare att google förfölja deras arbete. Haifei Li är en anmärkningsvärd individ. En snabb google-sökning efter filtyp: PDF + "Haifei Li" ger upp många bra resurser. Exempel: länk.

Om du är trött på att läsa rekommenderar jag att du laddar ner några prover. Contagiodump är ett bra ställe att ta prover på. Vanligtvis har provet rätt CVE-nummer. Detta kan vara till hjälp eftersom en snabb google av CVE-nummer + "analys" gör att du kan göra den hemma följa med versionen. Naturligtvis behöver du verktyg. Jag personligen skulle rekommendera REMnux av Lenny Zeltser. Nästan alla verktyg som listas i den här tråden är redan installerade i den. Om du arbetar med SWF-filer inbäddade i dokument rekommenderar jag xxxswf.py för att extrahera dem. Källkoden är inte så dåligt kommenterad så det kommer att ge dig lite grunder om filstrukturen. Ansvarsfriskrivning: mitt verktyg.

Ett par verktyg som inte är listade som jag skulle rekommendera är Flash Decompiler av Trillix och Yogoda. Båda dessa verktyg är för Windows.

samuirai
2013-03-22 06:00:33 UTC
view on stackexchange narkive permalink

Används SWFWire Debugger en gång för att extrahera en AES-nyckel från ett flashspel. Det kan spåra funktioner och deras parametrar under körning. Jag tycker det är väldigt användbart.

På webbplatsen nämns Adobe Flash player krävs. Detta berättar för mig att appen faktiskt återger / spelar blixt, vilket kan vara farligt. Vet du om det gör SWF?
Ja det gör det. Det är en felsökare inte ett statiskt analysverktyg, därför kommer den att köra SWF. Men det är riktigt trevligt för dynamisk analys.
@Lizz På samma webbplats tillhandahåller SWFWire [en statisk analys-dekompilator] (http://www.swfwire.com/decompiler) också. Jag har använt det med stor framgång för att dekompilera SWF-filer tidigare.
Rolf Rolles
2013-03-22 03:53:56 UTC
view on stackexchange narkive permalink

Kolla in Sebastian Porsts arbete [1] (se i synnerhet katalogen / slides för en översikt, och sedan kan resten av koden hittas från roten).

[1] https://github.com/sporst/SWFREtools

Martin
2013-05-09 18:46:06 UTC
view on stackexchange narkive permalink

Det finns ett IDA Pro-plugin som låter dig demontera SWF-filer precis som alla andra körbara.

cb88
2013-03-22 03:45:49 UTC
view on stackexchange narkive permalink

Det finns redan många verktyg för att göra detta, gör bara en snabb google-sökning.

Ett exempel skulle vara asdec

Här är också en återkommande fråga "gör-en-actionscript-decompiler-get-actionscript-from-dynamically-linked-as-file"

Också Gnash och Lightspark är open source-implementeringar av flash som borde vara intressanta.

rev
2013-03-24 17:21:37 UTC
view on stackexchange narkive permalink

Jag har tidigare använt SWFTools ( http://www.swftools.org) för swf-filanalys.

swfextract-verktyget i det paketet gör att du kan extrahera alla slags artefakter från en swf-fil.

Swfdump-verktyget i samma paket kan ta isär alla versioner av ActionScript (v1-3). Det fina med swfdump är att det visar produktionen i läsbart p-kodformat som hjälper mycket med analys.

Det finns också kommersiella dekompilatorer som Sothink SWF Decompiler och Flash Decompiler Trillix. Jag har ingen erfarenhet av att använda dem och kan inte rekommendera hur bra de fungerar.

Carraway
2016-10-31 04:18:26 UTC
view on stackexchange narkive permalink

Om du mest bryr dig om råkoden kan jag rekommendera dig RABCDAsm

https://github.com/CyberShadow/RABCDAsm

Detta kommer att generera mycket användbar Actionscript bytecode och låter dig också korrigera den.

NirIzr
2016-10-30 03:14:49 UTC
view on stackexchange narkive permalink

Jag gillar verkligen Sothinks Flash Decompiler. Även om det är kommersiellt är det verkligen värt det om du ibland omvandlar flash-filer.

Den fullständiga versionen (som jag äger och använder) kan dekompilera hela SWF-filer tillbaka till FLA, stöder de senaste versionerna av AS (när andra gratis verktyg var inte), låter dig ändra och köra SWF-filer samt skapa en modifierad SWF-version, tillåter redigering av alla resurstyper (inte bara kod) och har ett fullständigt funktionsrikt GUI.



Denna fråga och svar översattes automatiskt från det engelska språket.Det ursprungliga innehållet finns tillgängligt på stackexchange, vilket vi tackar för cc by-sa 3.0-licensen som det distribueras under.
Loading...