用docker搭建的Vulfocus镜像管理界面没有镜像可以拉取解决办法

ps:截止到今天2023.4.2,kali和vps的docker拉取的vulfocus镜像会有版本的区别,虽然都是拉取的最新版,vps上镜像为3个月以前,kali上为16个月以前,==所以在修改 views.py 文件时,可能会发现文件内容不一样==。版本不同也导致一键同步报错的解决办法在vps上可行,但是在kali上就不行

17.png

18.png

在开始操作之前,需要将用户切换为root用户 ૮(˶ᵔ ᵕ ᵔ˶)ა,当kali和vps上出现不同操作时我会分开说,那么现在让我们开始

RC.gif

# 1、查看容器ID

用命令 docker ps -a 查看 vulfocus 容器的ID ,接下来会使用到它

1.png

# 2、启动容器

启动容器(==如果启动了就不用执行==),这里用到命令 docker start 你的容器ID

2.png

# 3、查看需要修改的文件

先去容器里确定是否有我们需要修改的文件,先用 docker exec -it 你的容器ID /bin/bash 进入容器,通过命令 cd ./dockerapi 进入 dockerapi 目录(进入时我们已经在 vulfocus-api 目录下了),再输入 ls 查看是否有 views.py 文件,如果没有的话,可能需要重新从 docker 拉取 vulfocus 的镜像,如果有请输入exit退出容器

3.png

# 4、拷贝出需要修改文件(容器里没有vim命令,不能直接修改)

Kali:输入命令 docker cp 你的容器ID:/vulfocus-api/dockerapi/views.py /home/kali/ ,将容器里的 views.py 文件拷贝到 kali 机器上的 ==/home/kali 目录下==

4.jpg

VPS:输入命令 docker cp 你的容器ID:/vulfocus-api/dockerapi/views.py /home/用户/ ,将容器里的 views.py 文件拷贝到 ==/home/用户 目录下==,然后到这个目录用 ls 查看一下

5.png

# 5、修改文件

Kali:打开 views.py 文件,在第 1576 行处,将 url 改为 https://vulfocus.cn/api/imgs/info,如果打开发现 1576 行不是这样,而是和 ==VPS== 这边的图一样,请看 ==VPS== 这边

6.png

VPS:将 views.py 文件下载到本地,这样修改起来会方便一点,保存时也不会报权限错误。如果打开文件时第 1575 行不是图这样,而是和 ==Kali== 的一样,可以直接按 kali 的来修改

7.png

这种情况需要添加一大段代码,需要添加的代码如下

    try:
        url = "http://vulfocus.cn/api/imgs/info"
        res = requests.get(url, verify=False).content
        req = json.loads(res)
        image_names = list(ImageInfo.objects.all().values_list('image_name', flat=True))
        for item in req:
            if item['image_name'] == "":
                continue
            if 'is_docker_compose' in item:
                if item['is_docker_compose'] == True:
                    continue
            if item['image_name'] in image_names:
                if item['image_name'] == "vulfocus/vulfocus:latest":
                    continue
                single_img = ImageInfo.objects.filter(image_name__contains=item['image_name']).first()
                if single_img.image_vul_name != item['image_vul_name'] or single_img.image_vul_name == "":
                    single_img.image_vul_name = item['image_vul_name']
                if single_img.image_desc == "":
                    single_img.image_desc = item['image_desc']
                if single_img.rank != item['rank']:
                    single_img.rank = item['rank']
                if single_img.degree != item['degree']:
                    single_img.degree = json.dumps(item['degree'])
                if "writeup_date" in item and single_img.writeup_date != item['writeup_date']:
                    single_img.writeup_date = item['writeup_date']
                single_img.save()
            else:
                if "writeup_date" in item:
                    writeup_date = item['writeup_date']
                else:
                    writeup_date = ""
                image_info = ImageInfo(image_name=item['image_name'], image_vul_name=item['image_vul_name'],
                                       image_desc=item['image_desc'], rank=item['rank'],
                                       degree=json.dumps(item['degree']),
                                       is_ok=False, create_date=timezone.now(), writeup_date=writeup_date,
                                       update_date=timezone.now())
                image_info.save()
        return JsonResponse({"code": 200, "data": "成功"})
    except Exception as e:
        return JsonResponse({"code": 201, "data": e})

添加在如图所示位置,需要注意代码格式和排版,他们都在自定义的 get_timing_imgs 函数下

8.png

9.png

# 6、关于一键同步报错问题

关于一键同步报错问题,vps 上拉取的vulfocus并没有这个问题,如图所示的这个代码,红框部分就是和同步有关的,它并不能放在 try 这段代码后面,如果 kali 上想尝试解决一键同步报错,可以尝试将这个段代码加载如图所示位置(但是,截至写这篇文章为止,我尝试加这段代码并不能解决)

tasks.synchronous_image.delay()
return JsonResponse({"code": 200, "data": "镜像同步中"})

11.png

# 7、保存

Kali:点击保存,另存为到桌面(不替换的原因是我尝试之后发现替换不了)

12.png

VPS:直接 Ctrl + s 保存

# 8、替换文件

Kali:将原来 /home/kali 目录下的 views.py 文件删除,把桌面新保存的 views.py 文件移动到 /home/kali 目录下

13.png

VPS:将原来的 views.py 文件删除,再把桌面上修改好的文件上传到相同目录

# 9、替换容器内的文件

Kali:输入命令 docker cp /home/kali/views.py 你的容器ID:/vulfocus-api/dockerapi/views.py ,将 views.py 文件拷贝到容器内,替换掉原来的文件,再使用命令 docker restart 你的容器ID 重启容器

14.png

VPS:输入命令 docker cp /home/用户/views.py 你的容器ID:/vulfocus-api/dockerapi/views.py ,将 views.py 文件拷贝到容器内,替换掉原来的文件,再使用命令 docker restart 你的容器ID 重启容器

15.png

# 10、等待重启完成后,在浏览器中访问Vulfocus,点击镜像管理,查看是否有镜像可以拉取

16.png

# 11、查询功能可以正常使用,涵盖了 vulfocus 上的所有靶场,但是添加功能里的搜索镜像的功能还没有解决,本地靶场还是能正常导入

希望能帮助到你૮(˶ᵔ ᵕ ᵔ˶)ა

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/659969.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于BP神经网络的64QAM解调算法matlab性能仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 MATLAB2022A 3.部分核心程序 ....................................................... % 第一部分:加载并可视…

opencascade AIS_Circle AIS_ColoredDrawer AIS_CameraFrustum 源码学习 圆

类AIS_Circle 构造圆形基准面&#xff0c;用于构建复合形状。 AIS_Circle() [1/2] AIS_Circle::AIS_Circle ( const Handle< Geom_Circle > & aCircle ) 初始化用于构造 AIS 圆形基准面的算法&#xff0c;并初始化圆形 aCircle。 AIS_Circle() [2/2] AIS_Circ…

Vue3 图片或视频下载跨域或文件损坏的解决方法

Vue3 图片或视频下载跨域或文件损坏的解决方法 修改跨域配置文件下载方法 修改跨域配置文件 修改vite.config.ts文件proxy里面写跨域地址&#xff0c;如下图&#xff0c;图片地址就是我们要跨域的目标地址&#xff1a; 下载方法 如下就是我取消上面那句后的报错 然后调用两…

24V_2A_1.2MHZ|PCD0303升压恒频LCD背光源专用电路超小体积封装

概述 PCD0303是一个恒定频率&#xff0c;6针SOT23电流模式升压转换器用于小型低功耗应用。PCD0303 以1.2MHz切换&#xff0c;并且允许使用微小的&#xff0c;低成本电容器和电感器2mm或更小,内部软启动会产生较小的涌入电流延长电池寿命。PCD0303具有自动切换至轻负载下的脉冲…

【美羊羊拿金币问题】

问题&#xff1a; 有一天美羊羊正在草地上玩耍&#xff0c;突然天上开始落金币&#xff0c;这些金币掉落的范围在一个固定的水平区域内&#xff0c;但这些金币一旦掉落到地上就消失了&#xff0c;因此美羊羊只有不断地移动并从空中接住这些金币才能得到它们。假设金币掉落的位…

电脑提示:“找不到vcruntime140_1.dll无法执行”该怎么恢复?一键修复vcruntime140_1.dll丢失

vcruntime140_1.dll是一个关键的系统文件&#xff0c;它在电脑运行过程中被调用。如果该文件丢失或找不到&#xff0c;将会导致弹出"找不到vcruntime140_1.dll无法执行"的错误提示。缺失vcruntime140_1.dll文件将导致软件或游戏无法正常打开或运行。 一键修复vcrunti…

【学习Day1】计算机基础

✍&#x1f3fb;记录学习过程中的输出&#xff0c;坚持每天学习一点点~ ❤️希望能给大家提供帮助~欢迎点赞&#x1f44d;&#x1f3fb;收藏⭐评论✍&#x1f3fb;指点&#x1f64f; 1.1 中央处理单元CPU 中央处理器&#xff08;CPU&#xff0c;central processing unit&…

基于SpringBoot+Html+Mysql的餐厅点餐管理系统外卖点餐系统

博主介绍&#xff1a; 大家好&#xff0c;本人精通Java、Python、C#、C、C编程语言&#xff0c;同时也熟练掌握微信小程序、Php和Android等技术&#xff0c;能够为大家提供全方位的技术支持和交流。 我有丰富的成品Java、Python、C#毕设项目经验&#xff0c;能够为学生提供各类…

产品推荐 | 基于Xilinx Zynq-7015 FPGA的MYC-C7Z015核心板

一、产品概述 基于 Xilinx Zynq-7015&#xff0c;双Cortex-A9FPGA全可编程处理器&#xff1b;PS部分(ARM)与PL部分(FPGA)之间采用AXI高速片上总线通信&#xff0c;吉比特级带宽&#xff0c;突破传统ARMFPGA架构的通信瓶颈&#xff0c;通过PL部分(FPGA)灵活配置丰富的外设接口&…

Android ANR Trace日志阅读分析技巧

什么是Trace日志 Trace日志是指ANR目录下的一份txt文件 adb pull /data/anr/traces.txt Trace日志有什么用 分析应用ANR无响应的问题&#xff0c; Trace怎么用 Cmd line: com.xx ABI: arm Build type: optimized Zygote loaded classes3682 post zygote classes3750 Intern…

西湖大学提出AIGC检测框架,精准识别AI撰写的文稿

近年来人工智能技术突飞猛进&#xff0c;尤其是大语言模型的出现&#xff0c;让AI具备了创作文章、小说、剧本等内容的能力。 AI代写&#xff0c;已经逃不过老师、编辑、审稿人的火眼金睛了。但让AI仅改写部分片段&#xff0c;就安全了么&#xff1f; 针对检测AI改写的片段&a…

MSMG Toolkit深度Windows系统镜像文件个性定制!

MSMG Toolkit,这个听起来略显神秘的名字,在DIY电脑爱好者和系统管理员的圈子中却是大名鼎鼎。这是一款免费的系统定制工具,专为Windows操作系统量身定做,旨在帮助用户轻松移除不必要的系统组件、集成更新、添加驱动程序,以及实现无人值守安装等功能,让每一次系统安装都更…

无与伦比的5G连接助力Sunswift Racing太阳能汽车取得成功

一、面临挑战 本案例研究重点关注Sunswift Racing团队的要求&#xff0c;即提供尖端的连接解决方案&#xff0c;以满足2023年普利司通世界挑战赛上车辆地形的特定要求。 德思特Panorama车载天线以即使在最苛刻的条件下也能提供高性能无线连接解决方案而闻名。Sunswift面临的主…

Python 机器学习 基础 之 算法链与管道 【算法链与管道/预处理进行参数选择/构建管道/在网格搜索中使用管道】的简单说明

Python 机器学习 基础 之 算法链与管道 【算法链与管道/预处理进行参数选择/构建管道/在网格搜索中使用管道】的简单说明 目录 Python 机器学习 基础 之 算法链与管道 【算法链与管道/预处理进行参数选择/构建管道/在网格搜索中使用管道】的简单说明 一、简单介绍 二、算法链…

HTML静态网页成品作业(HTML+CSS)——游戏阴阳师介绍网页(4个页面)

&#x1f389;不定期分享源码&#xff0c;关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 &#x1f3f7;️本套采用HTMLCSS&#xff0c;未使用Javacsript代码&#xff0c;共有4个页面。 二、作品演示 三、代…

ChatGPT成知名度最高生成式AI产品,使用频率却不高

5月29日&#xff0c;牛津大学、路透社新闻研究所联合发布了一份生成式AI&#xff08;AIGC&#xff09;调查报告。 在今年3月28日—4月30日对美国、英国、法国、日本、丹麦和阿根廷的大约12,217人进行了调查&#xff0c;深度调研他们对生成式AI产品的应用情况。 结果显示&…

真实测评:9款电脑加密软件最新排名

2024年已经过半&#xff0c;电脑加密软件市场发生了很多变化&#xff0c;根据资料汇总&#xff0c;一些电脑加密软件排名也发生了变化&#xff0c;下面是最近的排名。 1、安企神&#xff1a; 可以试试7天的免费试用&#xff0c;用过之后就回不去了 试用版https://work.weix…

总负债20.79亿,银行借款在增加,经营所得现金在减少,累计亏损在增加,易点云披露其风险(四)

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 全文共二十五章&#xff0c;总计6万字。 由于篇幅所限&#xff0c;分为&#xff08;一&#xff09;到&#xff08;五&#xff09;篇发布。 本文为《负债20.79亿,银行借款在增加,经营所得现金在减少,易点云披露风险》&am…

区间预测 | Matlab实现DNN-KDE深度神经网络结合核密度估计多置信区间多变量回归区间预测

区间预测 | Matlab实现DNN-KDE深度神经网络结合核密度估计多置信区间多变量回归区间预测 目录 区间预测 | Matlab实现DNN-KDE深度神经网络结合核密度估计多置信区间多变量回归区间预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现DNN-KDE深度神经网络结合…

Cobaltstrike渗透测试框架

Cobaltstrike简介 cobalt strike&#xff08;简称CS&#xff09;是一款团队作战渗透测试神器&#xff0c;分为客户端及服务端&#xff0c;一个服务端可以对应多个客户 端&#xff0c;一个客户端可以连接多个服务端&#xff0c;可被团队进行分布式协团操作. 和MSF关系 metas…