寄付窓口はこちら

MachObfuscator | try! Swift Tokyo 2019 1-14

iOSアプリの難読化に対するまったく新しいアプローチを紹介します。 MachObfuscatorはSwiftで書かれたオープンソースのバイナリ難読化ツールです。

f:id:niwatako:20190321165907j:plain

iOSデベロッパ

f:id:niwatako:20190321165937j:plain

皆さんのアプリがいかにリバースエンジニアリングしやすく、そしてどうすればしにくくできるか。

公安9課向けアプリをサンプルにやりましょう

f:id:niwatako:20190321170012j:plain

f:id:niwatako:20190321170022j:plain

このデータを理解するために、ドキュメンテーションの中でこれにあったConstantを見る必要があります。

Swiftでどうこのrawデータを解釈すれば良いか

f:id:niwatako:20190321170057j:plain

f:id:niwatako:20190321170115j:plain

f:id:niwatako:20190321170122j:plain

f:id:niwatako:20190321170127j:plain

コンテンツテーブルのスニペット

それぞれがセクションを説明している

f:id:niwatako:20190321170149j:plain

f:id:niwatako:20190321170156j:plain

asciiコードを文字列とすると

f:id:niwatako:20190321170202j:plain

ustring

f:id:niwatako:20190321170221j:plain

f:id:niwatako:20190321170228j:plain

f:id:niwatako:20190321170244j:plain

f:id:niwatako:20190321170251j:plain

f:id:niwatako:20190321170259j:plain

f:id:niwatako:20190321170307j:plain

f:id:niwatako:20190321170312j:plain f:id:niwatako:20190321170315j:plain

f:id:niwatako:20190321170325j:plain

Motoko Kusanagiは何ができるか

f:id:niwatako:20190321170329j:plain

f:id:niwatako:20190321170337j:plain

f:id:niwatako:20190321170410j:plain

f:id:niwatako:20190321170414j:plain

f:id:niwatako:20190321170344j:plain

リバースエンジニアリングが困難になります。

f:id:niwatako:20190321170426j:plain

ぜひMachObfuscator使ってください