Dynamic Feature Monitoring and Blocking - Cyber Academic Group
Feature removal has been proposed as a means for de-bloating software, primarily for security reasons. Existing methods [JZWL] are static in nature, i.e., they rely on static detection and removal of features of interest.
In this proposal, I propose developing a dynamic feature detection and blocking tool for Java. Dynamic feature detection will be achieved using a hybrid of Java model checking and bytecode instrumentation – as described in section 3; this tool will discover paths and objects that contain features of interest. Dynamic blocking aspect of the proposed tool will dynamically and conditionally block features of interest, using bytecode instrumentation – as described in section 3.
Dynamic feature model-checking provides increased flexibility over static methods by discovering:
- All paths the lead to feature call-sites
- The context of feature call-sites of such as objects that contain call-sites. This information is then useful for dynamic feature blocking.
Dynamic feature blocking provides increased flexibility over static methods by enabling context sensitive blocking, such as:
- Blocking features based on the end user’s identity and role
- Blocking features based on the runtime context of container object (attribute values)
- Blocking some feature call sites while allowing others.- Time and location based blocking.
Office of Naval Research