Exemplo n.º 1
0
 def testBroken(self):
     path = os.path.join(modulePath(), 'testtasks', 'Broken.py')
     runner = TaskRunner()
     runner.start()
     out_q = runner.taskStart([path, "Foo"])
     time.sleep(0.2)
     self.assertEquals(len(out_q.get()), 34)
     self.assertFalse(runner.taskAlive())
     runner.quit()
Exemplo n.º 2
0
    def testOverloadQue(self):
        path = os.path.join(modulePath(), 'testtasks', 'FlagZ.py')
        runner = TaskRunner()
        runner.start()
        out_q = runner.taskStart([path, "Foo"])
        time.sleep(1)
        runner.quit()

        self.assertFalse(runner.taskAlive())
        self.assert_(out_q.qsize() > 1000)
Exemplo n.º 3
0
    def testHang(self):
        path = os.path.join(modulePath(), 'testtasks', 'Hang.py')
        runner = TaskRunner()
        runner.start()

        out_q = runner.taskStart([path, "Foo"])
        time.sleep(0.1)
        self.assertTrue(runner.taskAlive())
        runner.taskStop()
        self.assertFalse(runner.taskAlive())
        runner.quit()
Exemplo n.º 4
0
    def testBasic(self):
        path = os.path.join(modulePath(), 'testtasks', 'Succesful.py')
        runner = TaskRunner()
        runner.start()

        out_q = runner.taskStart([path, "Foo"])
        txt = out_q.get(True, 1)
        self.assertEquals(txt, "FLAG: foobarbaz")
        self.assertEquals(len(out_q.get(True, 1)), 0)

        self.assertFalse(runner.taskAlive())
        self.assertEquals(0, runner.taskRetcode())
        runner.quit()
Exemplo n.º 5
0
    def testStress(self):
        path = os.path.join(modulePath(), 'testtasks', 'Hang.py')
        runners = []
        for i in range(100):
            runner = TaskRunner()
            runner.start()
            runner.taskStart([path, "Foo"])
            runners.append(runner)

        for i in range(100):
            runners[i].quit()

        for i in range(100):
            self.assertFalse(runners[i].taskAlive())
Exemplo n.º 6
0
    def testLinesThenHang(self):
        path = os.path.join(modulePath(), 'testtasks', 'Hang2.py')
        runner = TaskRunner()
        runner.start()
        out_q = runner.taskStart([path, "Foo"])

        line1 = out_q.get()
        line2 = out_q.get()

        self.assertEquals("A" * 1024, line1)
        self.assertEquals("B" * 1024, line2)

        self.assertTrue(runner.taskAlive())
        runner.quit()
        self.assertFalse(runner.taskAlive())
Exemplo n.º 7
0
    def __init__(self, script, team, logger):
        self.logger = logger

        if (self.logger != None):

            self.logger.debug("Creating UsenixExploitTask: %r %r" %
                              (script, team.host))

        thread_size = threading.stack_size(524288)
        self.runner = TaskRunner()
        self.runner.start()

        self.script = script
        self.line_q = None
        self.team = team
        self.cookie = None
        self.exploit_success = False
        self.captured_flags = []

        threading.stack_size(thread_size)
Exemplo n.º 8
0
	def __init__(self,script,team,logger=None):
		self.logger = logger

		if(self.logger != None):
			self.logger.debug("Creating Service Task: %r %r" % (team.host,script))

		thread_size = threading.stack_size(524288)
		self.runner = TaskRunner()
		self.runner.start()

		self.script = script
		self.team = team
		self.cookie_txt = None
		self.error_txt = None

		self.prev_flag = None
		self.current_flag = None
		self.expected_flag = None

		self.line_q = None
		threading.stack_size(thread_size)
Exemplo n.º 9
0
    def __init__(self, script, ip, timeout, logger):
        self.logger = logger

        if (self.logger != None):
            self.logger.debug("Creating Attack Task: %r %r %d" %
                              (script, ip, timeout))

        thread_size = threading.stack_size(524288)
        self.runner = TaskRunner()
        self.runner.start()

        self.script = script
        self.line_q = None
        self.ip = ip
        self.cookie = None
        self.captured_flags = []

        self.timeout = timeout
        self.timeout_set = False
        self.timer = AttackTimer(self.runner, timeout)
        self.timer.start()
        threading.stack_size(thread_size)