Esempio n. 1
0
    def __init__(self, options, server, with_termlog=True):
        super().__init__(options, server)
        self.view = view.View()
        self.view.sig_view_add.connect(self._sig_view_add)
        self.view.sig_view_remove.connect(self._sig_view_remove)
        self.view.sig_view_update.connect(self._sig_view_update)
        self.view.sig_view_refresh.connect(self._sig_view_refresh)

        self.events = eventstore.EventStore()
        self.events.sig_add.connect(self._sig_events_add)
        self.events.sig_refresh.connect(self._sig_events_refresh)

        self.options.changed.connect(self._sig_options_update)

        self.addons.add(*addons.default_addons())
        self.addons.add(
            intercept.Intercept(),
            self.view,
            self.events,
        )
        if with_termlog:
            self.addons.add(termlog.TermLog(), termstatus.TermStatus())
        self.app = app.Application(self, self.options.web_debug)
        # This line is just for type hinting
        self.options = self.options  # type: Options
Esempio n. 2
0
    def __init__(self, options, with_termlog=True):
        super().__init__(options)
        self.view = view.View()
        self.view.sig_view_add.connect(self._sig_view_add)
        self.view.sig_view_remove.connect(self._sig_view_remove)
        self.view.sig_view_update.connect(self._sig_view_update)
        self.view.sig_view_refresh.connect(self._sig_view_refresh)

        self.events = eventstore.EventStore()
        self.events.sig_add.connect(self._sig_events_add)
        self.events.sig_refresh.connect(self._sig_events_refresh)

        self.options.changed.connect(self._sig_options_update)
        self.options.changed.connect(self._sig_settings_update)

        self.addons.add(*addons.default_addons())
        self.addons.add(
            webaddons.WebAddon(),
            intercept.Intercept(),
            readfile.ReadFile(),
            static_viewer.StaticViewer(),
            self.view,
            self.events,
        )
        if with_termlog:
            self.addons.add(termlog.TermLog(), termstatus.TermStatus())
        self.app = app.Application(
            self, self.options.web_debug
        )
Esempio n. 3
0
def test_configure():
    ts = termstatus.TermStatus()
    with taddons.context() as ctx:
        ts.running()
        assert not ctx.master.event_log
        ctx.configure(ts, server=True)
        ts.running()
        assert ctx.master.event_log
Esempio n. 4
0
async def test_configure():
    ts = termstatus.TermStatus()
    with taddons.context() as ctx:
        ctx.master.server = proxy.DummyServer()
        ctx.configure(ts, server=False)
        ts.running()
        ctx.configure(ts, server=True)
        ts.running()
        await ctx.master.await_log("server listening")
Esempio n. 5
0
def test_configure():
    ts = termstatus.TermStatus()
    with taddons.context() as ctx:
        ctx.master.server = proxy.DummyServer()
        ctx.configure(ts, server=False)
        ts.running()
        assert not ctx.master.logs
        ctx.configure(ts, server=True)
        ts.running()
        assert ctx.master.logs
Esempio n. 6
0
 def __init__(
     self,
     options: options.Options,
     with_termlog=True,
     with_dumper=True,
 ) -> None:
     super().__init__(options)
     self.errorcheck = ErrorCheck()
     if with_termlog:
         self.addons.add(termlog.TermLog(), termstatus.TermStatus())
     self.addons.add(*addons.default_addons())
     if with_dumper:
         self.addons.add(dumper.Dumper())
     self.addons.add(keepserving.KeepServing(), self.errorcheck)
Esempio n. 7
0
 def __init__(
     self,
     options: options.Options,
     server,
     with_termlog=True,
     with_dumper=True,
 ) -> None:
     master.Master.__init__(self, options, server)
     self.errorcheck = ErrorCheck()
     if with_termlog:
         self.addons.add(termlog.TermLog(), termstatus.TermStatus())
     self.addons.add(*addons.default_addons())
     if with_dumper:
         self.addons.add(dumper.Dumper())
     self.addons.add(readstdin.ReadStdin(), keepserving.KeepServing(),
                     self.errorcheck)
Esempio n. 8
0
 def __init__(
     self,
     options: options.Options,
     mode,
     flow_name,
 ) -> None:
     super().__init__(options)
     self.addons.add(termlog.TermLog())
     self.addons.add(termstatus.TermStatus())
     self.addons.add(keepserving.KeepServing())
     self.addons.add(*addons.default_addons())
     if mode == "fuzz":
         self.addons.add(dumper.Dumper())
         self.addons.add(FuzzResponseAnalyzer())
     if mode == "runfuzz":
         self.addons.add(FuzzResponseAnalyzer())
     if mode == "capture":
         self.addons.add(Capture(flow_name))
     if mode == "intercept":
         self.addons.add(Interceptor())
Esempio n. 9
0
    def __init__(
            self,
            options: options.Options,
            server,
            with_termlog=True,
            with_dumper=True,
    ) -> None:
        master.Master.__init__(self, options, server)
        self.has_errored = False
        if with_termlog:
            self.addons.add(termlog.TermLog(), termstatus.TermStatus())
        self.addons.add(*addons.default_addons())
        if with_dumper:
            self.addons.add(dumper.Dumper())

        if options.rfile:
            try:
                self.load_flows_file(options.rfile)
            except exceptions.FlowReadException as v:
                self.add_log("Flow file corrupted.", "error")
                raise exceptions.OptionsError(v)