apisan
1.0.0
APISANは、手動の努力なしでソースコードからAPI使用を正しく自動的に推進するツールです。 Apisanの重要なアイデアは、セマンティック制約を考慮することにより、4つの異なる側面(例えば、因果関係、および議論に関する意味関係)で正しい使用パターンを抽出することです。 Apisanは、セキュリティの影響を伴うさまざまなプロパティを確認するように調整されています。 Linuxカーネルを含む9,200万行のコードにApisanを適用し、OpenSSLは76の以前は未知のバグを見つけ、すべてのバグにパッチを提供しました。
このリポジトリには、分析ツールとLLVMがあります。 LLVM関連のファイルは、独自のライセンス(License.llvm)に従い、MITライセンスの条件の下で分析ツールが提供されます。
$ ./setup.sh $ apisan build [cmds] $ apisan build ./configure
$ apisan build make $ apisan check --db=[db] --checker=[checker] $ cd test/return-value
$ ../../apisan build make
$ ../../apisan check --checker=rvchk @inproceedings{yun:apisan,
title = {{APISan: Sanitizing API Usages through Semantic Cross-checking}},
author = {Insu Yun and Changwoo Min and Xujie Si and Yeongjin Jang and Taesoo Kim and Mayur Naik},
booktitle = {Proceedings of the 25th USENIX Security Symposium (Security)},
month = aug,
year = 2016,
address = {Austin, TX},
}