示例#1
0
 def _ensure_monitor(self, handler_file):
     handler_dir = os.path.dirname(handler_file)
     monitor = self._repo_monitors.get(handler_dir)
     if monitor is None:
         monitor = frida.FileMonitor(handler_dir)
         monitor.on('change', self._on_change)
         self._repo_monitors[handler_dir] = monitor
示例#2
0
        def _monitor(self, path):
            if path is None or path in self._monitored_files:
                return

            monitor = frida.FileMonitor(path)
            monitor.on('change', self._on_change)
            monitor.enable()
            self._monitored_files[path] = monitor
示例#3
0
 def monitor_file(file):
     logger.debug(f"Monitor file: {file.path}", tag="[✔]")
     monitor = frida.FileMonitor(file.path)
     monitor.on(
         "change",
         lambda changed_file, other_file, event_type: on_change(
             event_type, file))
     monitor.enable()
     return monitor
示例#4
0
        def _monitor_script(self):
            if self._monitored_file == self._user_script:
                return

            self._unmonitor_script()

            if self._user_script is not None:
                monitor = frida.FileMonitor(self._user_script)
                monitor.on('change', self._on_change)
                monitor.enable()
                self._script_monitor = monitor
            self._monitored_file = self._user_script