Title: Android Malware Detection based on Factorization Machine · Issue #4 · palloc/PaperStack · GitHub
Open Graph Title: Android Malware Detection based on Factorization Machine · Issue #4 · palloc/PaperStack
X Title: Android Malware Detection based on Factorization Machine · Issue #4 · palloc/PaperStack
Description: 公開日 2018-03-30 1. 概要 androidマルウェアの検知をFactorization machineを使って行うと、高い精度を達成できた。特徴として、API呼び出しや許可などをマニフェストファイルやソースコードから抽出した。 2. 新規性・差分 マルウェア検知は、動的解析、静的解析の2パターンある。 動的解析は、高い精度が出るが、実際に動かさないといけないのと、関係ないパスが含まれていて時間がかかる可能性があるなどの問題点がある。 静的解析は、特徴抽出、...
Open Graph Description: 公開日 2018-03-30 1. 概要 androidマルウェアの検知をFactorization machineを使って行うと、高い精度を達成できた。特徴として、API呼び出しや許可などをマニフェストファイルやソースコードから抽出した。 2. 新規性・差分 マルウェア検知は、動的解析、静的解析の2パターンある。 動的解析は、高い精度が出るが、実際に動かさないといけないのと、関係ないパスが...
X Description: 公開日 2018-03-30 1. 概要 androidマルウェアの検知をFactorization machineを使って行うと、高い精度を達成できた。特徴として、API呼び出しや許可などをマニフェストファイルやソースコードから抽出した。 2. 新規性・差分 マルウェア検知は、動的解析、静的解析の2パターンある。 動的解析は、高い精度が出るが、実際に動かさないといけないのと、関係ないパスが...
Opengraph URL: https://github.com/palloc/PaperStack/issues/4
X: @github
Domain: patch-diff.githubusercontent.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Android Malware Detection based on Factorization Machine","articleBody":"## 公開日\r\n2018-03-30\r\n\r\n## 1. 概要\r\nandroidマルウェアの検知をFactorization machineを使って行うと、高い精度を達成できた。特徴として、API呼び出しや許可などをマニフェストファイルやソースコードから抽出した。\r\n\r\n## 2. 新規性・差分\r\nマルウェア検知は、動的解析、静的解析の2パターンある。\r\n\r\n動的解析は、高い精度が出るが、実際に動かさないといけないのと、関係ないパスが含まれていて時間がかかる可能性があるなどの問題点がある。\r\n\r\n静的解析は、特徴抽出、分類の2段階があり、分類で機械学習を使う先行研究がある。(k-meansやSVM)\r\nまた、近年では、動的解析と静的解析を両方使う研究がされている。\r\n\r\nこの論文では、特徴間の関係をモデル化可能なFactorization Machine(FM)を用いることで、高い精度を達成した。\r\n\r\n## 3. 手法\r\n4つのパートに分けられる。\r\n### Unpacking and Decompile\r\napkを解凍して、dexをデコンパイルする。\r\n\r\n### Feature Extraction\r\nまずマニフェストファイルから以下の4つの機能を抽出する。\r\n- App components\r\n- Hardware features\r\n- Permissions\r\n- Intent filter\r\n\r\n次に、デコンパイルしたコードから、以下の3つの機能を抽出する。\r\n- Restricted APIs\r\n- Suspicious APIs\r\n- Used permissions\r\n\r\n\r\n\r\n### Encoding\r\n計7つの特徴をエンコードする際、死ぬほど大きいスパース行列とかになるので、t-SNEで次元圧縮する。\r\n(エンコードはone-hot)\r\n\r\n### Prediction\r\n相互作用する特徴があったりするので、SVMよりもFMの方がいい気がするのでFMを使ってみた。\r\n\r\n\r\n## 4. 結果\r\n\r\nAlgorithm | FM | SVM | NB-Gaussian | NB-Bernoulli | NB-Multinomial | MLP\r\n-- | -- | -- | -- | -- | -- | --\r\nPrecision% | 99.91 | 95.62 | 90.86 | 90.53 | 96.25 | 99.91\r\nRecall% | 99.01 | 92.35 | 99.37 | 99.82 | 99.28 | 99.64\r\nF1% | 99.46 | 93.96 | 94.93 | 94.95 | 97.74 | 99.77\r\nFPR% | 0.09 | 4.19 | 9.90 | 10.35 | 3.84 | 0.09\r\n\r\n普通のAnti-Virusのプロダクト10個と比較した結果:\r\n\r\nScanner | FM | AV1 | AV2 | AV3 | AV4 | AV5 | AV6 | AV7 | AV8 | AV9 | AV10\r\n-- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | --\r\nPrecision% | 99.91 | 99.91 | 99.64 | 62.84 | 99.91 | 59.03 | 99.63 | 50.09 | 99.84 | 97.78 | 61.42\r\nRecall% | 99.01 | 98.74 | 99.46 | 99.10 | 99.28 | 100.0 | 97.21 | 99.91 | 54.64 | 94.96 | 100.0\r\nF1% | 99.46 | 99.32 | 99.55 | 76.91 | 99.59 | 74.24 | 98.41 | 66.73 | 70.62 | 96.35 | 76.10\r\nFPR% | 0.09 | 0.089 | 0.357 | 58.073 | 0.089 | 68.778 | 0.357 | 98.66 | 0.089 | 2.141 | 62.27\r\n\r\n速度も申し分無いやで。\r\n\r\n\r\n## 5. 議論\r\nFPGAとか使うともっと早くなりそうだから誰かやってね。\r\n\r\n## 6. コメント\r\nFMはnetflixのレコメンドとかで使われてた気がする。気になる方は[こちら](https://www.csie.ntu.edu.tw/~b97053/paper/Rendle2010FM.pdf)どうぞ\r\n\r\n## 論文情報・リンク\r\n[https://arxiv.org/pdf/1805.11843.pdf](https://arxiv.org/pdf/1805.11843.pdf)","author":{"url":"https://github.com/palloc","@type":"Person","name":"palloc"},"datePublished":"2018-06-25T03:09:15.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":0},"url":"https://github.com/4/PaperStack/issues/4"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:82fa7e9d-e2b9-0c9f-db03-0fb8d3ac7e8a |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | EE08:F99AA:1407105:1AACC12:697C19E1 |
| html-safe-nonce | 4794665252b901501311a2ae51a38c71915d6ab5497ea27fc74312e925de7464 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJFRTA4OkY5OUFBOjE0MDcxMDU6MUFBQ0MxMjo2OTdDMTlFMSIsInZpc2l0b3JfaWQiOiI0ODI3NjkxOTc3MTkxMjAxMjQ5IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0= |
| visitor-hmac | fd843acea2127910a76f69582b1e4c8666ba67e18062ca24abfa65f83b85c444 |
| hovercard-subject-tag | issue:335245044 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/palloc/PaperStack/4/issue_layout |
| twitter:image | https://opengraph.githubassets.com/9b97fedb50ef6a3fc529245be50cdaa83364d140fba6cc9a8dcd79f623e22ec3/palloc/PaperStack/issues/4 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/9b97fedb50ef6a3fc529245be50cdaa83364d140fba6cc9a8dcd79f623e22ec3/palloc/PaperStack/issues/4 |
| og:image:alt | 公開日 2018-03-30 1. 概要 androidマルウェアの検知をFactorization machineを使って行うと、高い精度を達成できた。特徴として、API呼び出しや許可などをマニフェストファイルやソースコードから抽出した。 2. 新規性・差分 マルウェア検知は、動的解析、静的解析の2パターンある。 動的解析は、高い精度が出るが、実際に動かさないといけないのと、関係ないパスが... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | palloc |
| hostname | github.com |
| expected-hostname | github.com |
| None | da4f0ee56809799586f8ee546b27f94fe9b5893edfbf87732e82be45be013b52 |
| turbo-cache-control | no-preview |
| go-import | github.com/palloc/PaperStack git https://github.com/palloc/PaperStack.git |
| octolytics-dimension-user_id | 10243885 |
| octolytics-dimension-user_login | palloc |
| octolytics-dimension-repository_id | 138400354 |
| octolytics-dimension-repository_nwo | palloc/PaperStack |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 138400354 |
| octolytics-dimension-repository_network_root_nwo | palloc/PaperStack |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 787d8d274e314f52ce6d846c7581f9476d8dc736 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width