JP5825595B2 - Api実行制御装置およびプログラム - Google Patents
Api実行制御装置およびプログラム Download PDFInfo
- Publication number
- JP5825595B2 JP5825595B2 JP2012006235A JP2012006235A JP5825595B2 JP 5825595 B2 JP5825595 B2 JP 5825595B2 JP 2012006235 A JP2012006235 A JP 2012006235A JP 2012006235 A JP2012006235 A JP 2012006235A JP 5825595 B2 JP5825595 B2 JP 5825595B2
- Authority
- JP
- Japan
- Prior art keywords
- api
- execution
- information
- executed
- application
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Telephone Function (AREA)
- Stored Programmes (AREA)
Description
また、本発明は、アプリケーションがAPI(Application Program Interface)を実行しようとする動作を検出する検出部と、前記動作が検出された場合に、前記APIを実行するメソッドの情報を取得する情報取得部と、前記メソッドの情報に基づいて、前記APIが実行される状況を解析し、前記APIの実行が、正規のアプリケーションの動作として規定された動作と異なる不正な動作に繋がるか否かを判定する解析部と、前記APIの実行が不正な動作に繋がると判定された場合に、不正な動作が行われないように前記APIの実行を制御する制御部と、としてコンピュータを機能させるためのプログラムであって、前記情報取得部は、アプリケーションが第1のAPIを実行しようとする動作が検出された場合に、前記第1のAPIを実行する第1のメソッドの情報を取得し、正規アプリケーションでは前記第1のAPIが実行された後に実行される第2のAPIを前記アプリケーションが実行しようとする動作が検出された場合に、前記第2のAPIを実行する第2のメソッドの情報を取得し、前記解析部は、前記第1のメソッドおよび前記第2のメソッドの情報に基づいて、前記第1のAPIおよび前記第2のAPIが実行される状況を解析し、前記第1のAPIが実行された後、前記第2のAPIが実行されるか否かを判定し、前記制御部は、前記第1のAPIが実行されることなく前記第2のAPIが実行されると判定された場合に、前記APIの実行を拒否することを特徴とするプログラムである。
また、本発明は、アプリケーションがAPI(Application Program Interface)を実行しようとする動作を検出する検出部と、前記動作が検出された場合に、前記APIを実行するメソッドの情報を取得する情報取得部と、前記メソッドの情報に基づいて、前記APIが実行される状況を解析し、前記APIの実行が、正規のアプリケーションの動作として規定された動作と異なる不正な動作に繋がるか否かを判定する解析部と、前記APIの実行が不正な動作に繋がると判定された場合に、不正な動作が行われないように前記APIの実行を制御する制御部と、前記APIの実行の可否を示す情報を記憶する記憶部と、としてコンピュータを機能させるためのプログラムであって、前記制御部は、前記APIの実行が不正な動作に繋がると判定された場合に、前記APIの実行を拒否すると共に、前記APIの実行の拒否を示す情報を前記記憶部に格納し、前記動作が再度検出された場合に、前記記憶部に格納されている前記情報が前記APIの実行の拒否を示していれば前記APIの実行を拒否することを特徴とするプログラムである。
第1の動作例では、API実行制御部20は、端末装置の外部に情報を送信する外部送信APIが、アプリケーションのコンポーネントの1つであるServiceを継承するクラスのメソッドから実行されることによりユーザに気づかれずに情報の送信が不正に行われることを防止する。Android(登録商標)上で動作するアプリケーションの構成要素(コンポーネント)として、Activity、Service、BroadcastReceiver、ContentProviderの4つがある。アプリケーションのソースコードにおいて、クラスが継承するコンポーネントが記述されることにより、そのクラスで定義されているメソッドはそのコンポーネントを利用することが可能となる。以下、各コンポーネントについて説明する。
第2の動作例では、API実行制御部20は、正規のアプリケーションがAPIを実行するシーケンスとは異なるシーケンスでAPIを実行する不正な動作を防止する。通常のカメラアプリケーションでは、カメラで撮影を行う前にプレビュー画像が表示され、ユーザはプレビュー画像を見ながら、撮影のシャッターを切る操作を行う。プレビュー画像が表示されていないにもかかわらず撮影のシャッターが切られた場合、盗撮等の不正行為が発生する可能性がある。このような不正行為を防止するため、API実行制御部20は、カメラで撮影を行う前にプレビュー画像を表示するAPI(プレビュー表示API)、およびカメラで撮影のシャッターを切るAPI(シャッターAPI)が実行されるときに呼び出されて、以下で説明する処理を実行する。
第3の動作例では、API実行制御部20は、正規のアプリケーションがAPIを実行するシーケンスとは異なるシーケンスでAPIを実行する不正な動作を防止する。通常のSMSクライアントアプリケーションは、アドレス帳を参照し、アドレス帳から送信先の情報(アドレス)を取得した後、その送信先にメッセージ(メール)を送信する。
Claims (9)
- アプリケーションがAPI(Application Program Interface)を実行しようとする動作を検出する検出部と、
前記動作が検出された場合に、前記APIを実行するメソッドの情報を取得する情報取得部と、
前記メソッドの情報に基づいて、前記APIが実行される状況を解析し、前記APIの実行が、正規のアプリケーションの動作として規定された動作と異なる不正な動作に繋がるか否かを判定する解析部と、
前記APIの実行が不正な動作に繋がると判定された場合に、不正な動作が行われないように前記APIの実行を制御する制御部と、
を備え、
前記アプリケーションは複数のコンポーネントで構成され、
前記情報取得部は、前記アプリケーションが起動する端末の外部に情報を送信するAPIを実行しようとする動作が検出された場合に、前記APIを実行するメソッドの情報を取得し、
前記解析部は、前記メソッドの情報に基づいて、前記APIが実行される状況を解析し、前記APIが、バックグラウンドで処理を実行するコンポーネントを継承するクラスのメソッドから実行されるか否かを判定し、
前記制御部は、前記APIが、バックグラウンドで処理を実行するコンポーネントを継承するクラスのメソッドから実行されると判定された場合に、前記APIの実行を拒否する
ことを特徴とするAPI実行制御装置。 - 前記解析部は、前記メソッドの情報に基づいて、前記APIの実行に伴って実行されるメソッドの名称を解析し、前記APIの実行に伴って実行されるメソッドの名称と、バックグラウンドで処理を実行するコンポーネントを継承するクラスのメソッドの名称とが一致するか否かを判定し、
前記制御部は、前記APIの実行に伴って実行されるメソッドの名称と、バックグラウンドで処理を実行するコンポーネントを継承するクラスのメソッドの名称とが一致すると判定された場合に、前記APIの実行を拒否する
ことを特徴とする請求項1に記載のAPI実行制御装置。 - アプリケーションがAPI(Application Program Interface)を実行しようとする動作を検出する検出部と、
前記動作が検出された場合に、前記APIを実行するメソッドの情報を取得する情報取得部と、
前記メソッドの情報に基づいて、前記APIが実行される状況を解析し、前記APIの実行が、正規のアプリケーションの動作として規定された動作と異なる不正な動作に繋がるか否かを判定する解析部と、
前記APIの実行が不正な動作に繋がると判定された場合に、不正な動作が行われないように前記APIの実行を制御する制御部と、
を備え、
前記情報取得部は、アプリケーションが第1のAPIを実行しようとする動作が検出された場合に、前記第1のAPIを実行する第1のメソッドの情報を取得し、正規アプリケーションでは前記第1のAPIが実行された後に実行される第2のAPIを前記アプリケーションが実行しようとする動作が検出された場合に、前記第2のAPIを実行する第2のメソッドの情報を取得し、
前記解析部は、前記第1のメソッドおよび前記第2のメソッドの情報に基づいて、前記第1のAPIおよび前記第2のAPIが実行される状況を解析し、前記第1のAPIが実行された後、前記第2のAPIが実行されるか否かを判定し、
前記制御部は、前記第1のAPIが実行されることなく前記第2のAPIが実行されると判定された場合に、前記APIの実行を拒否する
ことを特徴とするAPI実行制御装置。 - 前記第1のAPIは、カメラで撮影を行う前にプレビュー画像を表示するAPIであり、前記第2のAPIは、カメラで撮影のシャッターを切るAPIであることを特徴とする請求項3に記載のAPI実行制御装置。
- 前記第1のAPIは、データベース内の指定された位置から送信先のアドレスを取得するAPIであり、前記第2のAPIは、前記アプリケーションが起動する端末の外部に情報を送信するAPIであり、
前記情報取得部はさらに、前記第1のAPIを実行しようとする動作が検出された場合に、前記アプリケーションが指定する前記データベース内の位置を示すデータベース位置情報を取得し、
前記解析部はさらに、前記第1のAPIが実行された後、前記第2のAPIが実行されると判定した場合に、前記データベース位置情報に基づいて、正規のアプリケーションが利用するアドレス帳が指定されているか否かを判定し、
前記制御部は、前記アドレス帳が指定されていないと判定された場合に、前記APIの実行を拒否する
ことを特徴とする請求項3に記載のAPI実行制御装置。 - アプリケーションがAPI(Application Program Interface)を実行しようとする動作を検出する検出部と、
前記動作が検出された場合に、前記APIを実行するメソッドの情報を取得する情報取得部と、
前記メソッドの情報に基づいて、前記APIが実行される状況を解析し、前記APIの実行が、正規のアプリケーションの動作として規定された動作と異なる不正な動作に繋がるか否かを判定する解析部と、
前記APIの実行が不正な動作に繋がると判定された場合に、不正な動作が行われないように前記APIの実行を制御する制御部と、
前記APIの実行の可否を示す情報を記憶する記憶部と、
を備え、
前記制御部は、前記APIの実行が不正な動作に繋がると判定された場合に、前記APIの実行を拒否すると共に、前記APIの実行の拒否を示す情報を前記記憶部に格納し、前記動作が再度検出された場合に、前記記憶部に格納されている前記情報が前記APIの実行の拒否を示していれば前記APIの実行を拒否する
ことを特徴とするAPI実行制御装置。 - アプリケーションがAPI(Application Program Interface)を実行しようとする動作を検出する検出部と、
前記動作が検出された場合に、前記APIを実行するメソッドの情報を取得する情報取得部と、
前記メソッドの情報に基づいて、前記APIが実行される状況を解析し、前記APIの実行が、正規のアプリケーションの動作として規定された動作と異なる不正な動作に繋がるか否かを判定する解析部と、
前記APIの実行が不正な動作に繋がると判定された場合に、不正な動作が行われないように前記APIの実行を制御する制御部と、
としてコンピュータを機能させるためのプログラムであって、
前記アプリケーションは複数のコンポーネントで構成され、
前記情報取得部は、前記アプリケーションが起動する端末の外部に情報を送信するAPIを実行しようとする動作が検出された場合に、前記APIを実行するメソッドの情報を取得し、
前記解析部は、前記メソッドの情報に基づいて、前記APIが実行される状況を解析し、前記APIが、バックグラウンドで処理を実行するコンポーネントを継承するクラスのメソッドから実行されるか否かを判定し、
前記制御部は、前記APIが、バックグラウンドで処理を実行するコンポーネントを継承するクラスのメソッドから実行されると判定された場合に、前記APIの実行を拒否する
ことを特徴とするプログラム。 - アプリケーションがAPI(Application Program Interface)を実行しようとする動作を検出する検出部と、
前記動作が検出された場合に、前記APIを実行するメソッドの情報を取得する情報取得部と、
前記メソッドの情報に基づいて、前記APIが実行される状況を解析し、前記APIの実行が、正規のアプリケーションの動作として規定された動作と異なる不正な動作に繋がるか否かを判定する解析部と、
前記APIの実行が不正な動作に繋がると判定された場合に、不正な動作が行われないように前記APIの実行を制御する制御部と、
としてコンピュータを機能させるためのプログラムであって、
前記情報取得部は、アプリケーションが第1のAPIを実行しようとする動作が検出された場合に、前記第1のAPIを実行する第1のメソッドの情報を取得し、正規アプリケーションでは前記第1のAPIが実行された後に実行される第2のAPIを前記アプリケーションが実行しようとする動作が検出された場合に、前記第2のAPIを実行する第2のメソッドの情報を取得し、
前記解析部は、前記第1のメソッドおよび前記第2のメソッドの情報に基づいて、前記第1のAPIおよび前記第2のAPIが実行される状況を解析し、前記第1のAPIが実行された後、前記第2のAPIが実行されるか否かを判定し、
前記制御部は、前記第1のAPIが実行されることなく前記第2のAPIが実行されると判定された場合に、前記APIの実行を拒否する
ことを特徴とするプログラム。 - アプリケーションがAPI(Application Program Interface)を実行しようとする動作を検出する検出部と、
前記動作が検出された場合に、前記APIを実行するメソッドの情報を取得する情報取得部と、
前記メソッドの情報に基づいて、前記APIが実行される状況を解析し、前記APIの実行が、正規のアプリケーションの動作として規定された動作と異なる不正な動作に繋がるか否かを判定する解析部と、
前記APIの実行が不正な動作に繋がると判定された場合に、不正な動作が行われないように前記APIの実行を制御する制御部と、
前記APIの実行の可否を示す情報を記憶する記憶部と、
としてコンピュータを機能させるためのプログラムであって、
前記制御部は、前記APIの実行が不正な動作に繋がると判定された場合に、前記APIの実行を拒否すると共に、前記APIの実行の拒否を示す情報を前記記憶部に格納し、前記動作が再度検出された場合に、前記記憶部に格納されている前記情報が前記APIの実行の拒否を示していれば前記APIの実行を拒否する
ことを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012006235A JP5825595B2 (ja) | 2012-01-16 | 2012-01-16 | Api実行制御装置およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012006235A JP5825595B2 (ja) | 2012-01-16 | 2012-01-16 | Api実行制御装置およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013145510A JP2013145510A (ja) | 2013-07-25 |
JP5825595B2 true JP5825595B2 (ja) | 2015-12-02 |
Family
ID=49041259
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012006235A Active JP5825595B2 (ja) | 2012-01-16 | 2012-01-16 | Api実行制御装置およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5825595B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11303659B2 (en) * | 2018-12-26 | 2022-04-12 | International Business Machines Corporation | Detecting inappropriate activity in the presence of unauthenticated API requests using artificial intelligence |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100483700B1 (ko) * | 2003-12-03 | 2005-04-19 | 주식회사 잉카인터넷 | 온라인 게임 클라이언트 보안을 위한 실시간 프로세스 불법 접근 및 조작 차단 방법 |
KR100843701B1 (ko) * | 2006-11-07 | 2008-07-04 | 소프트캠프(주) | 콜 스택에 기록된 정보를 이용한 에이피아이 확인방법 |
-
2012
- 2012-01-16 JP JP2012006235A patent/JP5825595B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2013145510A (ja) | 2013-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10885182B1 (en) | System and method for secure, policy-based access control for mobile computing devices | |
Jiang et al. | Detecting passive content leaks and pollution in android applications | |
US7743336B2 (en) | Widget security | |
KR101373986B1 (ko) | 모델을 사용하여 실행가능 프로그램을 조사하는 방법 및 장치 | |
US9825977B2 (en) | System and method for controlling access to data of a user device using a security application that provides accessibility services | |
Aafer et al. | Hare hunting in the wild android: A study on the threat of hanging attribute references | |
WO2016095673A1 (zh) | 一种基于应用程序的行为处理方法和装置 | |
US10685116B2 (en) | Anti-ransomware systems and methods using a sinkhole at an electronic device | |
Petracca et al. | {AWare}: Preventing Abuse of {Privacy-Sensitive} Sensors via Operation Bindings | |
JP2004537105A (ja) | 状態参照モニタ | |
Banuri et al. | An Android runtime security policy enforcement framework | |
Wu et al. | Analysis of clickjacking attacks and an effective defense scheme for android devices | |
EP1643409A2 (en) | Application programming Interface for Access authorization | |
Liu et al. | An empirical study on android for saving non-shared data on public storage | |
JP5828457B2 (ja) | Api実行制御装置およびプログラム | |
Luo et al. | Real-time detection and prevention of android sms permission abuses | |
US11275828B1 (en) | System, method, and apparatus for enhanced whitelisting | |
JP2013182500A (ja) | Api実行制御装置およびプログラム | |
KR101977428B1 (ko) | 애플리케이션용 콘텐츠 핸들링 기법 | |
KR101716690B1 (ko) | 데이터 무단 엑세스 차단 방법 및 그 기능이 구비된 컴퓨팅 장치 | |
CN105791221B (zh) | 规则下发方法及装置 | |
JP5825595B2 (ja) | Api実行制御装置およびプログラム | |
CN111783087A (zh) | 可执行文件恶意执行的检测方法及装置、终端、存储介质 | |
Sutter | Simple spyware: Androids invisible foreground services and how to (ab) use them | |
CN117290840B (zh) | 浏览器审计方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140820 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20140821 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20140820 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150514 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150609 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150810 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20150811 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150908 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20151005 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5825595 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |