CTF-MissFeng / bayonet

bayonet是一款src资产管理系统,从子域名、端口服务、漏洞、爬虫等一体化的资产管理系统
1.46k stars 309 forks source link

建议每次读取数据库前做一下缓存刷新 #20

Closed coffeehb closed 4 years ago

coffeehb commented 4 years ago

实际使用中,有时候我会手动想让OneForALL 某些域名,urlscan对某些端口再跑一次。我会直接修改数据库的flag, 这个时候需要手动重启Run.py,因为缓存问题。所以,建议在扫描之前的读取数据库的时候刷新一下缓存。比如下面的地方,加一行代码commit一下。 比如:

def ReadPort():
    # 刷新缓存
    DB.session.commit()
coffeehb commented 4 years ago

Run.py 漏掉了w13scan启动

coffeehb commented 4 years ago

Chromium的Run.py目测是有bug,不知道引入flag做什么默认为False,但是我觉得这里应该是下面这样修改才对

def ReadUrl():
    # 刷新缓存
    DB.session.commit()

    '''读取url任务, 一次读取一条记录'''
    sql_url = SrcUrls.query.filter(SrcUrls.flag == False).first()
    return sql_url

def WriteUrl(sql_url):
    '''修改爬虫任务状态'''
    sql_url.flag = True
    sql_url.reptile = True
coffeehb commented 4 years ago

over了,达到我预期的效果了。感谢无私的开源精神~

CTF-MissFeng commented 4 years ago

over了,达到我预期的效果了。感谢无私的开源精神〜

好的,缓存刷新可以加上,w13scan因为没有集合到一个包中,所以需要单独启用,但是也不推荐一个脚本启用多个进程,还是推荐独立开启。Chromium中的flag用于是否扫描,初始值为flase,web页面提交任务为true,任务完成在设置为false,这样是为了同一URL进行二次扫描。目前项目还有很多bug,欢迎提交和想法,一起维护这个项目

coffeehb commented 4 years ago

明白,看来“web页面提交任务的功能正在开发中~ 期待