美文网首页
AWVS 13批量添加任务

AWVS 13批量添加任务

作者: A403 | 来源:发表于2020-07-28 10:17 被阅读0次

    import requests

    import json

    from requests.packages.urllib3.exceptions import InsecureRequestWarning

    requests.packages.urllib3.disable_warnings(InsecureRequestWarning)

    apikey = '1986ad8c0a5b3df4d7028d5f3c06e936c2429284486f94bf499c8b7fd74d2d221'#API

    headers = {'Content-Type': 'application/json',"X-Auth": apikey}

    def addTask(url,target):

        try:

            url = ''.join((url, '/api/v1/targets/add'))

            data = {"targets":[{"address": target,"description":""}],"groups":[]}

            r = requests.post(url, headers=headers, data=json.dumps(data), timeout=30, verify=False)

            result = json.loads(r.content.decode())

            return result['targets'][0]['target_id']

        except Exception as e:

            return e

    def scan(url,target,Crawl,user_agent,profile_id):

        scanUrl = ''.join((url, '/api/v1/scans'))

        target_id = addTask(url,target)

        if target_id:

            data = {"target_id": target_id, "profile_id": profile_id, "incremental": False, "schedule": {"disable": False, "start_date": None, "time_sensitive": False}}

            try:

                configuration(url,target_id,Crawl,user_agent)

                response = requests.post(scanUrl, data=json.dumps(data), headers=headers, timeout=30, verify=False)

                result = json.loads(response.content)

                return result['target_id']

            except Exception as e:

                print(e)

    def configuration(url,target_id,Crawl,user_agent):

        configuration_url = ''.join((url,'/api/v1/targets/{0}/configuration'.format(target_id)))

        data = {"scan_speed":"fast","login":{"kind":"none"},"ssh_credentials":{"kind":"none"},"sensor": False,"user_agent": user_agent,"case_sensitive":"auto","limit_crawler_scope": True,"excluded_paths":[],"authentication":{"enabled": False},"technologies":[],"custom_headers":[],"custom_cookies":[],"debug":False,"client_certificate_password":"","issue_tracker_id":"","excluded_hours_id":""}

        r = requests.patch(url=configuration_url,data=json.dumps(data), headers=headers, timeout=30, verify=False)

    def main():

        Crawl = False

        awvs_url = 'https://192.168.1.36:23443/' #awvs url

        with open('url.txt','r',encoding='utf-8') as f:

            targets = f.readlines()

        profile_id = "11111111-1111-1111-1111-111111111111"

        user_agent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.21 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.21" #扫描默认UA头

        if Crawl:

            profile_id = "11111111-1111-1111-1111-111111111117"

        for target in targets:

            target = target.strip()

            if scan(awvs_url,target,Crawl,user_agent,profile_id):

                print("{0} 添加成功".format(target))

    if __name__ == '__main__':

        main()

    基于https://www.imzzj.com/2020/05/18/shi-yong-python-gei-awvs13-pi-liang-tian-jia-ren-wu.html修改过来的,去掉了代理。

    相关文章

      网友评论

          本文标题:AWVS 13批量添加任务

          本文链接:https://www.haomeiwen.com/subject/lkaxrktx.html