DatorerSäkerhet

Reverse-engineering för nybörjare. Alla ansökningar Android-skydd från reverse engineering

Ibland vill man se, och vilken typ av fylla i ett särskilt program? Då han måste använda en reverse-engineering. Vad är det? Hur fungerar det? Hur är denna process? Allt detta kommer du att lära av den här artikeln.

Vad är en omvänd ingenjörsutbildningar?

Så kallade process ansökan analys för att förstå hur det fungerar, så att det i framtiden att återskapa denna process genom att göra de nödvändiga förändringarna. Som vanligtvis används för detta ändamål debugger och assembler. Beroende på kvaliteten på den programvara som används kommer att vara annorlunda och resultatet är den tid som ska spenderas på att ta in en normalform. Förklara reverse-engineering för nybörjare det bästa exemplet. Som dessa utföra en applikation skriven för Android. Nu är att ta reda på vad och hur.

Arbeta med Android-applikationer

Först måste vi klargöra några punkter. Applikationen använder bytekod och logcat. Denna lokala motsvarigheter tidigare nämnts debugger och assembler. Det är också nödvändigt att förstå strukturen av ansökningarna själva. Således är varje program en fil med ändelsen apk. Han packade zip'om. Vi är intresserade av dess innehåll - programresurser, classes.dex och AndroidManifest.xml. Om du gör programmering på Android bör problem med den förra och den senare inte vara. Men classes.dex - programmet bytekod som sammanställs speciellt för den virtuella maskinen. Utdrag ur hans java källkod tillgänglig på Internet inte får medlen. Men är det möjligt att få Dalvik opcodes - en speciell uppsättning av kommandon som används för den virtuella maskinen. För en analogi kan vi säga att denna sammansättning av lokala översvämningar. Classes.dex också kan omvandlas till en fil med burken. Även i ett sådant fall, kan du få en java-kod efter dekompilering, som kommer att vara mer eller mindre läsbar. Det är den väg vi går.

dekompilering

Denna process kommer att genomföras med hjälp av Apk Manger program. Innan du börjar, se till att det finns rätt drivrutin för devaysa och fungerande USB-felsökning läge. Inledningsvis kommer vi att behöva flytta filen som ska analyseras i ett direktiv apk_manager \ plats apk-här-för-modding. Efter det bör du köra Script.bat. Om det inte finns något problem, då startar konsolen, som kommer att vara grön bokstäver. Välj punkt nummer nio - "Decompile". När processen startas, är det nödvändigt att inte stänga konsolen. Sedan öppna ränte apk-fil med archiver och utdrag ur den classes.dex, som ska behandlas dex2jar program. För oss önskat resultat är det nödvändigt att flytta ett objekt med tillägget .bat. Du kommer att se filen som kommer att sluta i .jar. Hittills har fönstret inte stänga.

vi analysera data

För att få information om programmet måste du öppna det uppenbart. Enligt den bestämmer vi som fungerar som den huvudsakliga verksamheten. Det var hon som nu utgör den största vikt för oss. Det är också önskvärt att titta på botten av programmet. Om botten är information om licens manager, är det betydligt svårare att utföra reverse engineering. Om du byter till JD-GUI och expandera trädet, kan vi se flera namnområden. Antag att tre av dem. I den första är de filer som hör till reklam. Den andra kommer att vara License Manager klasser. I den tredje, vi är de nödvändiga uppgifterna. Det är när vi går. Det kommer att behöva hitta och ta bort nyckeln, och sedan resten av raderna som kontrollerar om licensierad fungerande version. Alla dessa behöver rengöras. Sedan i vår Apk chef söker efter en plats där plats som anges bytekod. Låt oss nu göra en liten utvikning och kommentera ut laget, vilket potentiellt kan leda till problem. Efter det har vi bara kompilera programmet.

bygga applikationer

Detta kommer att hjälpa oss i alla fall Apk Manager. I konsolen, som vi inte har låst Markera objektet №14. Nästa trick. Om ansökan är ganska komplicerat, när du startar, kan det helt eller delvis förlora sin effektivitet. Oroa dig inte, det betyder att vi är bara halvvägs och någon annanstans att gå. Vi fortsätter att utföra reverse-engineering-Alla Android-appar. Säg, vad man ska göra i ett enskilt fall, i allmänna ordalag, tyvärr, är omöjligt. Därför leta efter problemområden kommer att ha sina egna. Till exempel om ett programfönster blockeras popup-fönster, bör du se koden och ta bort den del som är ansvarig för denna dialog. För att hjälpa till med detta kan JD-GUI. Som ni kan se, är den omvända ingenjörs inte en lätt affär, och det kräver en betydande lager av kunskap. Även om allt körs utan problem, kommer det att bli nödvändigt att testa prestandan hos applikationer. Det vill säga, är reverse-engineering mer tidskrävande aktivitet. Vi fortsätter att arbeta tills alla problem identifieras.

säkerhet

Vad händer om vi behöver skydd Alla Android-program från reverse engineering? I det här fallet finns det två alternativ: användning av särskilda program eller skapandet av en kod struktur som kommer att störa göra tolkning skrivit. Det senare alternativet är lämplig endast erfarna medarbetare, så vi kommer att överväga bara den första metoden av skydd. Som en specialiserad programvara användning ProGuard. Denna ansökan, som används för att minska förvirring och kodoptimering. Om programmet "jaga" genom det, vi får en fil med ändelsen * .apk mindre än han var. I ett sådant fall skulle det vara mycket svårare att ta isär. Och fördelen med detta program är att det även har införts i uppbyggnaden Android applikationer med R9 uppdateringar. Därför dra nytta av det är alla utvecklare som har standardverktyg för skapande och utveckling.

slutsats

Vi kan inte säga att reverse-engineering kan representeras som något enhetligt bra eller dåligt. Naturligtvis är ur synvinkel utvecklare, som har skapat ett program inte en lycklig händelse. Men å andra sidan, i många fall erfarna programmerare skriver nödvändiga filer kan vara en tid billigare än användningen av sådana verktyg. Även för nybörjare utvecklare reverse-engineering kan göra en bra tjänst om det inte finns någon aning om hur man ska genomföra något, även exemplariskt, och inte helt klart kontur kan hjälpa till med att uppnå detta mål.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 sv.birmiss.com. Theme powered by WordPress.