-
Notifications
You must be signed in to change notification settings - Fork 0
難読化されたコードをコンパイルできる形へ自動調整する #6
Copy link
Copy link
Open
Description
概要
- tigressにおいて,main関数が実装されていないコードを難読化すると自動的に
void main()が追加されてしまい,難読化されたコードを別のコードと組み合わせてコンパイルすることができなくなってしまう.
調整事項
コンパイルできる形への調整のために発見した必要事項
- void 型を返す main 関数を削除
- extern で宣言している関数を削除
- struct timeval の定義を削除
- malloc または rand が含まれる場合は cstdlib ライブラリを使用する
- 定義前に宣言している独自 enum を削除
実装方法
- (Best) C言語パーサーで対象のコードをパースした後,必要な形に調整して対象のコードを再構成する
- (Good) 1行ごとにコードを読み取り,不要な箇所を削除して対象のコードを再構成する
C言語パーサーを実装するのが困難だったため,(Good)の方法で実装を行う予定
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels