Beispiel #1
0
    def hook_on_load(self):
        input = InputDialog.input(hint='insert module name')
        if input[0]:
            module = input[1]
            if not module.endswith('.so'):
                module += '.so'

            self.insertRow(self.rowCount())

            h = Hook()
            h.set_ptr(0)
            h.set_input(module)
            h.set_widget_row(self.rowCount() - 1)

            self.onloads[module] = h

            q = HookWidget(h.get_input())
            q.set_hook_data(h)
            q.setForeground(Qt.darkGreen)
            self.setItem(self.rowCount() - 1, 0, q)
            q = NotEditableTableWidgetItem(hex(0))
            q.setForeground(Qt.gray)
            self.setItem(self.rowCount() - 1, 1, q)
            q = NotEditableTableWidgetItem('-')
            q.setForeground(Qt.gray)
            self.setItem(self.rowCount() - 1, 2, q)

            self.app.get_script().exports.onload(module)
Beispiel #2
0
    def add_hook(self):
        input = InputDialog.input(hint='insert pointer')
        if input[0]:
            ptr = int(self.app.get_script().exports.getpt(input[1]), 16)

            if ptr > 0:
                hook = self.app.get_script().exports.hook(ptr)
                if hook:
                    self.insertRow(self.rowCount())

                    h = Hook()
                    h.set_ptr(ptr)
                    h.set_input(input[1])
                    h.set_widget_row(self.rowCount() - 1)

                    self.hooks[ptr] = h
                    q = HookWidget(h.get_input())
                    q.set_hook_data(h)
                    q.setForeground(Qt.gray)
                    self.setItem(self.rowCount() - 1, 0, q)
                    q = NotEditableTableWidgetItem(hex(ptr))
                    q.setForeground(Qt.red)
                    self.setItem(self.rowCount() - 1, 1, q)
                    q = NotEditableTableWidgetItem('0')
                    self.setItem(self.rowCount() - 1, 2, q)
                    self.resizeColumnsToContents()