IP Library Granted Patent US 11,765,130
Granted Patent B2
US 11,765,130 · App. 17/559,400 · Granted Sep 19, 2023

Providing micro firewall logic to a mobile application

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,765,130
App. No.
17/559,400
Filed
Dec 22, 2021
Granted
Sep 19, 2023
Kind
B2
Examiner
YANG, HAN
Art Unit
2493
USPC
726/11
Abstract

Systems and methods for implementing a micro firewall in a mobile application are provided here. Firewall logic can be injected or provided to a mobile application. The firewall logic can provide one or more rules for processing network traffic from application programming interfaces (APIs) of the mobile application. The mobile application having the firewall logic can be made available for installation on a mobile device. The mobile application having the firewall logic can be provided or installed on to a mobile device. During execution of the mobile application, the firewall logic of the mobile application can hook a plurality of API calls of the mobile application relevant to network traffic. The firewall logic can apply one or more rules of the firewall logic to process network traffic corresponding to an API call of the plurality of API calls of the mobile application.

Claims (32)

1. A method comprising;

causing compilation of an application to modify the application to include logic in the application, the application modified to install logic on a device responsive to execution of the application, the logic configured to apply one or more rules to process network traffic via one or more application programming interfaces (APIs) of the application;

causing execution of the compiled application to install the logic on the device to hook calls of the one or more APIs of the application that process network traffic; and

applying, during execution of the compiled application, a rule of the one or more rules of the logic to network traffic received vi an API of the one or more APIs of the application.

2. The method of claim 1 , further comprising compiling the application to inject the logic into a binary form of the application.

3. The method of claim 2 , further comprising using a wrapping toolkit to inject the logic into the binary form.

4. The method of claim 1 , further comprising compiling source code of the application that includes the logic.

5. The method of claim 1 , wherein the one or more rules are obtained from a second device during at least one of compilation or execution.

6. The method of claim 1 , wherein the application is a mobile application.

7. The method of claim 1 , wherein the application is configured to execute on a mobile device.

8. A method comprising:

causing execution of an application that has been modified during compilation to include logic in the application, and prior to execution of the application, the application modified to cause a device to install the logic responsive to execution of the application on the device, the logic configured to apply one or more rules to process network traffic via one or more application programming interfaces (APIs) of the application;

hooking by the logic of the application responsive to execution of the application, one or more application programming interfaces (APIs) of the application that process network traffic; and

applying, by the logic, an action to network traffic responsive to detecting an API of the one or more APIs of the application has been called.

9. The method of claim 8 , further comprising hooking by the logic the one or more APIs of the application when the one or more APIs are called.

10. The method of claim 8 , wherein the action comprises one of the following:

blocking one of a type of destination or a type of data, forwarding network traffic of the API call to a monitor service, and redirecting a domain name or internet protocol address from a remote location to a local location.

11. The method of claim 8 , wherein the application is a mobile application.

12. The method of claim 8 , wherein the application is configured to execute on a mobile device.

13. The method of claim 8 , wherein the logic is configured to provide a firewall.

14. A system comprising:

one or more processors, coupled to memory; to:

execute an application that has been modified during compilation to include logic in the application, and prior to execution of the application, the application modified to cause the one or more processors to install the logic responsive to execution of the application, the logic configured to apply one or more rules to process network traffic via one or more application programming interfaces (APIs) of the application;

cause the logic of the application, responsive to execution of the application, to hook one or more application programming interfaces (APIs) of the application that process network traffic; and

cause the one or more rules to take an action on network traffic being processed by the one or more APIs of the application.

15. The system of claim 14 , wherein the one or more processors are further configured to cause compilation of the application to modify the application to install logic on the one or more processors responsive to execution of the application.

16. The system of claim 15 , wherein the one or more processors are further configured to compile the application to inject the logic into a binary form of the application.

17. The system of claim 16 , wherein the one or more processors are further configured to use a wrapping toolkit to inject the logic into the binary form.

18. The system of claim 16 , wherein the one or more processors are further configured to cause the logic to hook the one or more APIs of the application when the one or more APIs are called.

19. The system of claim 14 , wherein the action comprises one of the following:

blocking one of a type of destination or a type of data, forwarding network traffic of an API call to a monitor service, and redirecting a domain name or internet protocol address from a remote location to a local location.

20. The system of claim 14 , wherein the application is configured to execute on a mobile device.