Root Python Scripts AES Verschlüsselt

  • Moin,


    habe leider nicht mehr die Zeit und Lust das System hier vollständig zu testen, sollte aber soweit funktionieren.


    Was habe ich hier gemacht? Alle Python files im root Packverzeichnis werden mit der Bitte melden Sie sich an, um diesen Link zu sehen. verschlüsselt. Ich nutze dazu AES im CBC Mode mit einem 32 Byte langen Schlüssel und zusätzlich einem 16 Byte langen Initialization Vector.

    Nachdem der Plaintext verschlüsselt wurde codiere ich den Dateiinhalt zusätzlich noch in das base16 Format. Dieses nutzt das Alphabet "0123456789ABCDEF".


    Verschlüsselte Dateien sehen wie folgt aus:

    Code: system.py
    1. 0949D8CA6F52B7AFFF3014286D6D0EBB16877FD557BE2FF4CAD94A45F72C8FBDEE5EEDF69D98B99A14FB5AAD07F983AE598EA5AC87C6ED954F7BD88461A5D6D0F0B6699A48C3ABFFEFB178262CE7575BFEAF8B08FBD34DE97B87C3CD2BE83AB552DE5B5A1A45AA01D454AA6C696C6C5B091FA1DBD157A8AC23CC203CDFDC278F9C71F0E1BCF5ABCE4D26CE2CFE285B0D81B64E6B42E121B89932E50EFE8CE6DDA29310376C76D9B63E8F963AB9C016451FCAC4B6DE070312C2435B8A10FBE3B24CF5394C41B7B0D2CBD440D7042BBCCCE154B74E9345F28A469174C66E34B44F903104D1B2BC94D69527E022B8030380D673449EE03591539142E6C3CFA36FE2916AB75A53332ECC0D3C0108E034ABE1DAB1A8227F9EFB9EDC4B03771233435677CB8F0DB542D904620DD88BBA57E00C25586E37F8ECBFA5EF67CD30556E2605DFDF292C6F6C3C227539BA2E925B60A75A6A00340A16B7A885181C653A4DA46CD9C709AA4CEF4AEF0768B01B7106A6797AFDB1FE69BDDFB415378AAA9EB53689AAEDB46B46CE176A8074115E1167D45514A9EA41BD4E5E52CC2B4A7BF2FE927E725DF16293892EDA65CD347CB3CA8C136637BC41A7612B4B531CB311F54B4AFA55D646B3853808E56360730E1C6FF4016A98DCE801E50E0D7D2B1D646363EEA984D96EC3F6375DC96C4F0A2BE26460A2322BF1D432A77B72ADE88B758AB8752439BAC5AE4F5840AEB00AAB508CA3FD8E14C4757759C0B51B6B59BF0EE51FF0741867B86862EB9A0533FA0A835BFBDF08FCA2FC114325767D42214522EA83180B64EB49532AE3953EE1F231DA00B8F73E42A0C00AA8721CD7AB2666282B487623F1AC817DAB1F79A8439B2CAD55F17BEEE78E172F9D7426FF6993886603915AB8FC5F65C1356F0B197BA500E12B42583B71CD7A558C1F79E7F6CC92733003E2F32A2A4CAB90133A53FF02F2544DF0172F47D827F76FB2EDD0DF9B8DEAD70F7491D1DA98F3323B4FE808362F85083BED7F7D11E1A37DEF410A869C7B101B776C584C74CAF0617BC11C92CD1E951DEA89E30D373DC42BDAA822FDF15B96AB2E161DDA17947CC1A1B1D4927E04FD1F28DCF48EFF22AAD8330EA0F976EFBEB64EC4646B1A9F01EBFA032563E564F2348D40152FCD797907F275F62878A4D7D6416435AB2839504BE09D4877AA8DCC9684D1F1D90FD1814D2F95861F3CD199525C495156E969F161932F75B02F97DACEA2E159DFBF8E4F6D8F9209CFCA1B1F64E6B9AF2CACFCE5FC677207B701CFC0AABC94E42E9251FDAEE856EC42909E7C666489E0B432B6B2686263ECF1D553C78B494EF0831B53DFDF0293CA82769441881A1E9EA19C1D063E33D27894C42E3D698E825E6E2421813D3AEED74DE1535BB64FD49B4CAFC652A1E4805CCEB3A30CF28423DEFC6F9EE6662F52A3723594E4184FF7BF8253D86E5008F92710A43C539C5C7E311EF7EA0F83520E0D0B636AC879B9546E4180056E958FF2F23C3D2415A649CB1B1730C4E893CC180811233999779A4A78430B7C5561E176652F660A91780EE588DF8644A86C9A2C83BB686A5975BB1DAA92808325AFA1C3CCD09EA251D397A9DF91144B0715DCE7C069CD105E0F32D9CDDC8184E8C11DA2EC6ED7CC8C7844665EA6B744FCC40856C5FFC391F92963B90C88FE621CC9717F0B52809AB261D5EE822134CC45F48D981FD7EBFB080632D53AF7884CE69E881E0F68101A74E125310D0FF02BED3DCEB2AFB20C1B8B6BBF345CCC2A724A48E5DDC9354B19899E43C418A700E10A8B729D6AC1D84B78E6EADBD781C27C99269D3655ACC99BC6C3DC0EFA37919138CCC87D4A83AF3EE93BC024395AB37467E4A9F55D6B8B9DE80D383D075D8D934CC211F8771D9E34751BF03903DC6F7CEBE542BE9BE2D01A80F5B466389EF87EC859B6DEE94F76DC511E7C2DB5E920D6AF2BDD435EE56A2F0882712B5FF85836C489E6B4D28E5C14CFD128B7FCFC0C84DD78A45CF0E17E170C44C68B03B943D966E62E13717C0A1C3824C6A12F541B25C2B80586C89EE4B6196708DB2FEBB02E43F19FA5F9F6C24FAF505BC3091493B220ABD986EF48B56B365171AB7F17FC77374928FDF2F8EE1F394CD0B1913F07E63E8A017EDDCB60EF3BCA4F987B0EFB4DBCA6658156AF7AABFC2168E2861F1ADF88312E6C2C17C70A46D583E9AF65F2A71A49BDF8546AB33906882262053E1FA166E8E29F82447ABCB83F7066185383790A89C3E29C453A8B19881CA7220C8BF6681401B3C0B3F86459968578C0CAE32C9E9D4023A461B6E1E07B1FCDD7700F2EA88DE0A170329CEAE297520E969061B5D02BFE9A92FC5BF9A7470E8A77B82886621DAEAC23D155359051AD6A03560F098A903A7DF05314730B801E4858CCB5EACC56EF344ABA13B000158255FFBEA748E80CBE6504F1961186738FCA96B5BF73D263DC96BF43775E07549FAD934EC4A9B93E5892C5C190681515F0C23357CD37DFD0F7A944489BDD9B9BA7958AF8CA772F72BFB1C1213175AD8CFA52DCF35D98493A4217DE7AE12F202AA1EAD1AF4925EB5E4E690E2823026838A4E0FB004E18D69DD4E05E6A010A81B66DE11FD724F8864163647BB42A6E969971C83FADA6627F3A25E5DE099712D91891F137C7F0C6E53FDC15DFB676D815435E1F5E6F9973309D3FAAD622AB66A0A449F6C324878B9AC61477B1F3D04DAAAD9EE5DF70F2E3DBA391F0014BEA7A1B34A723F400A72D5590ABDF91FE8BC6034C87C63C70D0BB0AC0A0E8205FE3DB9B861CFA57353EBF3264F2D090F0FE4B0B71E95A3A0CBCE3E71EFD9858AE7ECD4A6B8B0230C3F2AA941D426CE80685C871F98E51B4D29FA97F519DD8003C574DA0600CA3584850341DF9E15F0853B7B4BF15369230EDAB43CDE0FA4DA96FF246B47486BD95A58323D4CE9719294F61AE578728633D4C5E7CC6A423C75C87E1EB288E3AED7A09B79481905A566071DEE5792421EF9FA2B94D1CA9B9FC90C3C43C5D7711E6260542E68386A886031656C3D28FD08F7DC6D0A03E2414492F77D63FBAE5AD38214AA4BD9BBDCD9117B8E24DF1B665702849839E98CB8F12080C6F998EEC3D7FA0E71DCFF42BDD14BB7335EEF1FC6080B396C0842C73E35527733D278BC0F3FD65D3CA6936B8C5EBFB89E3CD92195CBD57D4BF9C4A7B4C6F4386BAFE4D67D89691CF6A155EF21B9D23C891D332C74F22A388A546AFDA6C58D9442D08D864CAAC32C923662581F37C5B9C7AFE9635BA98C343C00F56D5207FB31FC7F7FBFDD0D1BE8D1239BD8E4F1826F85081BECC7B75C2542D9A8D730B3E3489D89DA78C80898CDDC2CD8E44C9AEF9D9FFC362D0354818E9111469FBD5B141A20DD470010F6945D016909CCF4137FB299F6DA0A8D8DE6911B2F55BED5C2233F46EC2EE69156411739467373B6359D1AFCFE1BA60612D507B91E6768D7F96DD1942031914BC7098F894CA403FC78FC1205229E9B90BDB01598BADC33B17ADA1B58010D1F9575D31787C3754EC78EF2A0898023EB757D83D52FD1D1596CF1213AF154F83384557455C7E1DB074E016D48AE40CD44DAA99DD1C42234196614D77CCAEF9692065D0759578CC74E3C68DE572F04D3726A18D002C9BE76DBCBFB8315BE228B3257919EF5969B51763643E3C59B13C3CE7A83F3A5C3BA3B9C0E8679C5BE5B85E781735F07027A55B58DEB7F665EC1534269D31963840E9BECEEE66D4D74767E0B26FC45CE6D8E02564203C876EB09C58C60F0D38652E8D976E289A15FC1E47197E546A294A27496CAB0F7356F1B97C05A0F8FD94290C92CA79C1CDFE6656222588EDF469A3D73928481FD827D14E168CE33CD74F78995744E02E255EFA33D2DE5C7F2203B2683B980FEA6C3083455830F45F91E39402A4566E73C6CAAEB5C80693EA1CF170C79240F805578F2AE3E96CB07684E4D6152FAAC2DA5EAEB03C603C5876509D873AC9E8B9F902DEF62C00365C634F291AE1ED97AA7F36C5BC92A8A3694755FCD22B9417C46FC15B532157F63ED1787C737489C6E03764174731D268927D0CA5229F908C2868E6B594E2070C8CF64E949136F359935D67A3826AF47CEC91DA486D627C00BA3B8E5856A7804ACA7C0D6BC460F32A43312251610E99AA9235A53C168E2B6643E7E7DCA7C1C2D9E06E5269F5FBBE1130E955F1EA46BCF4E6E2103F2A0A0DC2FB4F3CAE1137D52313A0C27756978DCFD8D17FD25A7D85A68908DD16B3399AEE62D0A44163D8522A0B98C974DFC7203B3222702F2B675B569DCB545910A2C2357B618993418FB9D2E88B31F9A1F7DF2834DA04303A0F90F2A2D8279D3C9A942776469FB0B7D27DE9DCB63F2F0BFACC9261AEFEEA16FDE0ADB5291BE6B46611B183D65B188135E0805064B7AC14F9B8F8B4ACEAF7C7FE5DD50E63B343D2030F8C98DE9AC7A64342595694A5C110AD430615A068C0AA140AA49FBE6164A7AF94905332B9C313867D972583D6E664C4930E20442A92FC39AB4076599F3BA2CC203B6CB882AA7146A7AB192034AB93E96EAC735CB56D52498E4BC076D973ACAD846628A377A65D003EB9D18A7A58E9349B4F79202ACB988D57C031C03FE745B8F91AB2C695174EFB8D0660E99F33ABE7E7ED274069D56157A1BA4D94121EF194B85BD34D14D0D9D1624AB0E69050C06443D382B1CEB94ACC659F32AEF82A212BC56C0F9260C36064F476F22AFDFFA7FAC60F365E52333B2064C0DAD0A9D7355876E2E4A6A5AD12661BA250FFBAA2AA9DE8D5B7A36A1DE243B761879D0D77367702C1DE1AE85B34B1D7DB82FFDE797F082022B1F6160BEA09CD821281B9D53F021F639DF1DE84217D7921E8D0E38E12EC03E40EFF5C91BEC56F0F3243887A092A471A927CF995A2EAFE9957E949365293E315E2B587E20C23223B9DA6BDD7DBA95AC7AB49478DD87D1FACE18C237B45691F076519F70F299D029598FD4C45C80073F7D224CB9A9DAFF25A477F42EDCAD55DDD24E28D40EF8CCB118D8F49FAFFDC14D54EC0EF386DC17D8A23D8D883DBABAD94CF3942DE277D253099B704B747CDD3344DFB1E53855658DD0E3F7B931AF571F1DCF6AAD2646687E0E5C91EEAA1BE7DA84C6966B9DF6561A390F6FBAA38DED8DA06B835FEFCF29BC7B91BD8282F3DD1B946225B0E7908B43D94BF04E2BF51E82FE96DD365D181572175E4D1518A62D9B6444A93BEB901F40D67A5AFFE602B0B9D7F653E66B6D313810F652723C7D08FCB533975E587D29E89AFC32BC6D5061F534F753237304A8CF61A738242DBC3E7E2B5AAAC1FC3D38468D4EB82CA2DE59ED702F2049646A6F72EF96CE413F427108624F8AF9C3683E184A8CA7C8369AC30A238BC05F00955222922C8B6CAC66D02D7A37D024E7BAE1D3B4DB079A2306C7AD9B1B700D0D8A6B8829AC355D2C2DC18FE555E27E8CF2AF420981DE9D1EDE3F37E9E4E27A8ECC8EA221DB153B4FBA1985F9FAC9290F8738C3FE00CC44094F725BDAF42D50B23E439961EF0671DA00B93CB12EC3124E3A3072A66E6D3347C36684403403F2FE079C45183D349365D0D4D859F571BDB046FB9039A923402EABDB5E4F5AA79D772AD277159016DF9B5306B5A18BB5A4E47D66B650AD4760FC6ABA1394B26471209FB082DF0B982BD415631ECE0D84A75860118C59CC9A48CA18843C10C5BFD84E64D4700379601E2E1D834D070666A0881FF0B3222F12A9D76E623C0BE387D44FF847C7795CB41EF6BC35763FF3096826E5916AAE9CC3BD8B3167D3AB7D32B03A66BE3671C43F42F729231DFFC64751E5538553A38977165ED5272D588DC3DD981755EE63D193AF30AE1221B1AB7150CF406B833B19DDC3B9F32605787201703A1E4FEC267CA542AD3E0D9A182FE979D1298AABD900E4B8BB76248903E408A319F0F31109A590EB724387ADC58673DB1FB586C61135A0EA5A4628808B7A84A41E21B9247D11BF9B811F9FBD43D13539B3085331E4B1DF05CBB7BC4F925571C7C4D361F00A0FF6C2D4A5AED702692CDC12F596BB9E237DAC08F827F1E824810CAE0A139D150A92FE99C04F3A5FFB99D12242EB442E7F7FC92655345E4B8DC0C07FFF2B652B04DC97E00DE24B1D3F09A85051987A98DB5775E7FEC7A3B835DAE9EC9FD1FC339C3D90CC9631B4F1EA5264611C524B6A65A4F68D8E8C648FB51B0A0EDB4A7A9D325CB5935370A05482A26BBDF8DFE01061121400D05908D18CE4400D7D1794F0FE98B8B88C0990D0112AE5FED39F9CFD13BF1B0635CACEE14E992A5EFEDD9711BCD861B867BB0732F61D7A06816AFC340EB78E7A994D6A1D30AB321EDCF53AD08CB14E7330F33C048AEF8582D737B72C2A3671E369B7D8A1313615B6599BD94E111EEF7146284F730099916F264FD3A681D1C898DB716AE841619DC537E4371193C3D6D655601642B64611DB36060156C53CA9C41DEBE778EC19B63BB828878905C452E2DABF690F4A2973BA398730DAFE5E9F705E96EEDA8629C72B3E6AA306FE1DFC38DD7A6FC7922DD3052D69FC39455DB69A3EF2FCB7C58DDA6713C9DAF106F27DCFEAD7E8D1A16969DBDBB1F827B649572483704BA40137C67C888A8F9DE2871EAB268A7D41FA1EF19015CDA498B7FCBCF706C478EF635C57E869BFD9D384C60D9D0CD4A93DDFBE7BCC37CE7AB3131B27AA2C71A32E078960E99006FAA5F7BC9B327D68EED554C39B8B04C49E2AD93200F4C1CAE662BB87BC7129587991E1E5592113FDB891991F45F0E7A347B39EF50DD180020D68AB54F0F3237B11DD4C9B12D9C1554930928C0A781DEEB135DFB9251B2E2B1A1D35614AC885EEAC223E7DE121711221125E112787747406AAC41DE02528947950C625860A7A0E45B5911CA1F07ACD95FECD6F07D968540D6DFF6707F6C1BFBDEC2356842FFEE6A012D1514F99EF86A879B539CEBB72B7FF9C0E03C36422C36ECCC4F6E8D7152FB0E343E8CD72B581E47783C678D86130BF7EC56C245F562723CEC6C5EF78E6875B531C96BD915331B12FD936EA5ED011B4067AD4BBB062D2F418616587A6E44DF838AF51EE5845DE705F77F82A90B66CB32D8B22CBEB5D17209F64525AE5DD076B4D37A583904C34CC7A2B49446B07CDA821043E94EE6453C3FEC4052790F0D41A14A1DA7334CAEA43FC62EAA5C0B19231DE2B624670D12748CEEF31CAEF6B14F364BCFEB8AFF97B803BAC2A9E16610CED1845444E478C2C8488678935C59A65757F413114DEB49F71815E79FB81A300E5AF1D5FEC3EFBDC877D8EE3D2BDFBB72791E8721703C7532CA959BBD3D92E96EBAC92D8D1DE359444EF5F007798A0D241517411C0C9EB81D56A16F1522A4BB307A2D15481F9D810A8F147649626CB76DEF5C9BA3C7A5BCEA9DC8C2FF3151AF1F016FA837E3EC7240C6BA9847B75E76E6D3D072841777367908AD29C8D64004D8F19678793EBCF19A22516A28FB0B213D91459747AFCE3459BA045FAF371E4A5579DA77A254F7FB6B63EEC08F3CB753A0CDEC8C70A6B25BBD286116D10E73888806A72A8A24673AEEE95A2D288AA56D6F239DE87EA89B54805AE0DA6BA56DB74C307010BD4C7B903EF2674CE5B0C2A42E3A74348B24169E3A0144F874F65DB63D1CAABDF650CE5180E2A847E470FC6C7B924A96B591DC16D1CB52788B6EDA4A623D41DA9541F0D4E326DD37E83DD6FDF110A376A8A58AB4AFB66FC312C7BD67F5B5F27C5694ADD29B13A7169114F66C3C8A7D4EB05AB27C31B5AAF0A8BBB9B72935774719C8E6E170EFF8BB684249087C9DB090D165CCDF0FB9D8DF5DD2EE2D86EA1A5768AC130ED76F925F4AE395AA5E7AEFA01CA436232C676CB21029D1907A158760E1A17267F406D6A1B64040EB1649FDA49A9B6ED7C00C26BF1617E2F8E977B4E91FBCD9258532C68693F8DBBA95C2C8733A4C47A432C182AB4C19121618B288E779CFAE3DA83FE3E696CF9948B1720796BE90D52B3B775136DA82059BACB19C1EBFAD82EC4CA69D9F4EA18638E8C3A057C63CB61C5098C97813ACCF85918092C6752FEDB2B89A3C6E99940D2B34B7B735D6B3C8E1E8E70CB7785552B8F2049325B8C3EB1AC6751272753101F27DBBA079350ABFA61AF0E60F88E8FD8C78AE27D22B6EB866DD5A94C0C1277C0F773FE4F239D8F27FC62801B02680C2D3FE64AAE50D8534D737E12796158ECF144DC678DEF1794EFFBAC0A1EF2346A27AA9DCC388D073ED2BF9987A11D5B240AB1FBF43E00FE10AA4097CC130091D78D0D56767BE4D6C51E76C5EC2DF2085D0EB975D2ECDE1125DF6E4AA808A3BE6CE3EA8F5C7B017177C8937164DB7DABD35A440513519C6464C72BB93634096057365ED90954F82E5EE3C83DEB0D83E42982B716FBA6A9A3A12274EAE5F64D7639FCB55E71E8C4E6E24DA17F4CD1B29A7400D13A064150BA8C2942037F24F7BFAA523DB56C8BE24E66B3E3AAF65C052CC3ABC3EE486A6BA72F59BD7E85EFE1529702AA0917002CDCF1E822850970A84A78783EB795427A149CFD4C297D6756108E33EF68CD88731B89B5A31F548F6363EA09B956778101412FF4DB16920CFC0B7790896E4F7259BED9ACF133C15E34007CD85044E07D13BBA59E14E3DFC630B2C66718C01308AC046DF688EC8F611A4F7D36B88B0FBD5E3477F7AF77761A9E8B4619B988220C518F4


    Im M2 Client werden die Python files in dieser verschlüsselten Form im Speicher abgelegt und dann bei Bedarf, wenn das Script aufgerufen wird z.B., wieder entschlüsselt.


    Zur Verschlüsselung der Dateien habe ich eine Konsolenanwendung, welche nach dem erfolgreichen Verschlüsseln den generierten Schlüssel und IV fertig für Copy/Paste ausgibt.

    Code
    1. !!!Copy your key and Initialization Vector!!!
    2. std::string base16Key = "7F7C4F8D6ECBD51E66978B9BACE0CDB4C8F9D86FF5EBF78D71828267F923E53E";
    3. std::string base16IV = "ADF8CAB62A245425F46DDB8230D6D8C4";


    Die beiden Strings müssen dann im EterPackManager Header ausgetauscht werden. Siehe dazu den Client Source.


    Die Anwendung zum Verschlüsseln Bitte melden Sie sich an, um diesen Link zu sehen. Beachtet die Readme Datei.


    Für die Entschlüsselung lasse ich euch den Code hier im Spoiler.

    Wenn es noch Fragen/Probleme gibt schreibt hier gerne. Wie gesagt, es sind nicht alle Prozesse im Client durchgetestet, aber das was ich mir angesehen habe funktioniert.

  • Dieses Thema enthält 10 weitere Beiträge, die nur für registrierte Benutzer sichtbar sind, bitte registrieren Sie sich oder melden Sie sich an um diese lesen zu können.