昆仑镜Kunlun-M使用方法

文章目录

    • 项目介绍和安装测试
        • 项目介绍
        • 根据Readme.md进行安装
        • 扫描测试
    • 实战扫描
        • 扫描实战
        • 报错1
        • 报错2
        • 更新项目并重新扫描
    • 扫描结果分析
        • 漏洞验证


项目介绍和安装测试

项目介绍

根据Readme.md进行安装

  请使用python3.6+运行该工具,已停止维护python2.7环境。

  安装命令:

安装依赖
pip3.8 install -r requirements.txt配置文件迁移
cp Kunlun_M/settings.py.bak Kunlun_M/settings.py初始化数据库,默认采用sqlite作为数据库(pip搞了半天)
python3 kunlun.py init initialize在shell终端启动
python3 kunlun.py console

在这里插入图片描述

扫描测试

  输入scan进入扫描模式,昆仑镜的扫描模式有点类似于MSF。

进入扫描模式:	scan
查看配置信息:	status
设置扫描目录:	set target ./tests/vulnerabilities/
开始扫描:		run

  扫描结果如下,回显界面挺酷!扫描结束后,进入result模式,输入help可以查看操作说明。
在这里插入图片描述


实战扫描

扫描实战

  scan进入扫描模式,set target /Library/WebServer/Documents/设置扫描目录为网站根目录,其中部署了ThinkCMF2.2.3项目文件。

  昆仑镜会尝试识别框架,在面对JavaScript文件时会报“语法错误”。扫描大概用了15分钟,扫出435个漏洞。。

在这里插入图片描述

  昆仑镜会保存扫描结果。关闭shell,新开一个shell,启动昆仑镜输入后输入命令:

查看扫描记录表:	showt
查看扫描结果:	load 2(进入result模式)
查看漏洞:		show vuls(报错)

在这里插入图片描述

报错1

  发生报错:AttributeError: ‘ScanResultTask’ object has no attribute ‘result_id’。
在这里插入图片描述

  ScanResultTask发生属性错误,Github上没有相关Issues,尝试手动排查错误。

  (1)寻找Class的位置:console.py搜索关键字ScanResultTask,找到调用代码from web.index.models import ScanTask, ScanResultTask,找到web.index.models.py文件,128行处是该Class的定义。

  (2)查看Class定义代码:发现result_id被注释掉了,尝试另起一行把注释取消。尝试运行kunlun.py,发生新的报错。
在这里插入图片描述

报错2

  报错信息:解决ScanResultTask的属性报错问题后,运行show vuls发生新报错:django.db.utils.OperationalError: no such column: index_scanresulttask.result_id。(后续补充:已反馈给LoRexxar师傅,目前应该已修复)
在这里插入图片描述

  报错分析:猜测可能是因为Django版本过低,发现不是。根据报错信息来看,与Django的数据库内容有关,没有列index_scanresulttask.result_id,推测应该是传递的接口处出现了问题,比如引用列时发生格式错误。有点烦了奥,重新扫描一遍吧,昆仑镜数据库的存储功能暂时不用。

  尝试1-不可行:更新Django,pip3.8 install --upgrade Django,从1.11.29更新到3.2.5。重启终端shell,打开昆仑镜运行show vuls,仍然报告相同的错误信息。
在这里插入图片描述

更新项目并重新扫描

  昆仑镜项目还在更新中,所以重新下载项目以更新代码,配置工作如下。

更新依赖
pip3.8 install --upgrade -r requirements.txt配置文件迁移
cp Kunlun_M/settings.py.bak Kunlun_M/settings.py初始化数据库,默认采用sqlite作为数据库
python3 kunlun.py init initialize在shell终端启动
python3 kunlun.py console

  扫描项目命令如下:

scan	
set target /Library/WebServer/Documents/	
run

扫描结果分析

  耐心等待扫描结束,感觉shell的回显结果可读性不高,让人找不到重点。打开扫描结果resultDocuments.csv文件,发现有552条可疑记录。

  筛选出30多个中高危的可能漏洞。
首先第1点,先看 analysis 分为两种:参数可控、未验证参数可控。

在这里插入图片描述

漏洞验证

  (1)反序列化-参数可控:文件/simplewind/Core/Library/Think/Auth.class.php。

  代码:unserialize( strtolower(serialize($_REQUEST)) ),位于115行,属于check()函数中的代码,暂不考虑存在漏洞。

  (2)SQLI:文件/simplewind/Core/Library/Think/Model/AdvModel.class.php。

  代码如下,暂时没找到利用方式。

	'SELECT * FROM '.$this->getTableName().'_'.($i+1);

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java EE中的RESTful计时器

在这篇文章中...。 EJB计时器旋风之旅 通过带有示例实现的简单REST接口即时使用EJB计时器 更新(2015年7月14日) 现在可以在OpenShift上使用该应用程序的前端 。 由于我是前端新手,因此我在其他来源的帮助下组装了此HTML5 AngularJS应用程…

如何查看node的版本及安装的位置?

好多粉丝说我的node版本不支持win7,我把安装包放到了主页QQ群群文件,CSDN资源也有上传。 那么如何查看电脑版本? 电脑快捷键winR,cmd进入黑窗口 node -v 如何查看node安装的位置? where node 如下图所示:

应用安全测试技术DAST、SAST、IAST对比分析

应用安全测试技术DAST、SAST、IAST对比分析-持续更新 版权来源:安全牛首发文章,本文仅补充完善。 一、全球面临软件安全危机 我们即将处于一个软件定义一切的时代,这是 “一个最好的时代,也是一个最坏的时代”。 无论是生活中离不…

android开发之shape详解

很多时候,使用shape能够实现的效果,你用一张图片也能够实现,但问题是一张图片无论你怎么压缩,它都不可能比一个xml文件小,因此,为了获得一个高性能的手机App,我们在开发中应该遵循这样一个原则&…

Fastjson系列漏洞实战和总结

前言 Fastjson是阿里巴巴的开源JSON解析库&#xff0c;它可以解析JSON格式的字符串&#xff0c;支持将Java Bean序列化为JSON字符串&#xff0c;也可以从JSON字符串反序列化到JavaBean。具有执行效率高的特点&#xff0c;应用范围广泛。 目录 Fastjson<1.2.24远程代码执行&a…

我是如何使用laydate日历插件更换掉老项目不好用的日历插件datepicker的

背景:最近整改了一个老项目系统,里面采用的是java+bootstrap+jsp写的,里面的日历插件datepicker特别不好用,容易点击失灵,我决定把它给替换了。 layDate 官网:https://www.layui.com/laydate/ My97DatePicker官网:http://www.my97.net/ 这里简单演示layDate的思路,不展…

Fastjson漏洞

Fastjson概述 Fastjson是阿里巴巴公司开源的一款json解析器&#xff0c;它可以解析 JSON 格式的字符串&#xff0c;支持将 Java Bean 序列化为 JSON 字符串&#xff0c;也可以从 JSON 字符串反序列化到JavaBean。 ➢历史漏洞 Fastjson <1.2.24 反序列化远程命令执行漏洞 Fa…

我是如何用Jquery实现网页缩小放大的

背景:一个比较老的后台系统,客户想操作父窗口的内容,同时查看子窗口,这就需要对页面进行缩小和放大,刚开始领导让我做一个假的隐藏然后缩放,经过测试此法不通,因为这个项目很庞大,框架较老,还有蒙版,使用隐藏hide()属性隐藏后,这个网页就不见了,在N个另一个页面加s…

什么是分配率?

诸如“不可持续的分配率”和“您需要保持较低的分配率”等短语似乎仅属于Java Champions的词汇表。 复杂&#xff0c;恐怖并被魔术光环包围。 经常发生的情况是&#xff0c;当您更仔细地查看概念时&#xff0c;魔术会随着抽烟消失。 这篇文章试图从提到的条款中删除魔术。 什…

流量分析----CTF题

文章目录 题目背景一、关卡列表二、解题1. 请分析流量&#xff0c;给出黑客使用的扫描器2. 请分析流量&#xff0c;得到黑客扫描到的登陆后台是(相对路径即可)3. 请分析流量&#xff0c;得到黑客使用了什么账号密码登陆了web后台(形式:username/password)4. 请分析流量&#x…

一文教你从零开始设计并实现一个Java扫雷游戏

背景&#xff1a;扫雷这款游戏有着很长的历史&#xff0c;从扫雷被开发出来到现在进行了无数次的优化&#xff0c;这款游戏变得越来越让人爱不释手了&#xff0c;简单的玩法在加上一个好看的游戏界面&#xff0c;每一处的细节都体现了扫雷的魅力。以JAVA语言作为开发环境&#…

C#循环语句(for循环)

循环语句 for(初始条件&#xff1b;循环条件&#xff1b;状态改变) { 循环体 &#xff1b;执行代码&#xff08;break跳出循环体&#xff09; } for(i1&#xff1b;i<100;i) 初始条件是i1;循环条件是i<100,即直到i在1-100之内进行循环&#xff0c;直到100结束循环&#x…

Apache Shiro 认证绕过漏洞 CVE-2020-1957 漏洞复现

Apache Shiro 认证绕过漏洞 CVE-2020-1957 漏洞复现 一、漏洞描述二、漏洞影响三、漏洞复现1、环境搭建2、漏洞复现 四、漏洞POC五、参考链接 一、漏洞描述 Apache Shiro 是一款开源安全框架&#xff0c;提供身份验证、授权、密码学和会话管理。Shiro框架直观、易用&#xff…

H5工程师在谷歌浏览器调试并开发原生APP项目的解决办法

背景:项目是前后端分离,我想在浏览器调试项目,工具使用HB-X。密码是不可输入状态。 1.login.html在HB-X中运行到谷歌浏览器页面 。按F12进入调试模式。 2.密码做了安全防御,不能直接输入,我们在控制台进入。定位到password的id。

「Java代码审计」华夏ERP3.0代码审计

本文转载于&#xff1a;https://blog.csdn.net/Ananas_Orangey/article/details/120340010?ops_request_misc%257B%2522request%255Fid%2522%253A%2522166565951516782427492557%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id166…

Fastjson 1.2.22-24 反序列化漏洞分析

Fastjson 1.2.22-24 FastJson在 1.2.22 - 1.2.24 版本中存在反序列化漏洞&#xff0c;主要原因FastJson支持的两个特性&#xff1a; fastjson反序列化时&#xff0c;JSON字符串中的 type 字段&#xff0c;用来表明指定反序列化的目标恶意对象类。 fastjson反序列化时&#xf…

检测到堆栈粉碎

我敢打赌&#xff0c;每一个Java开发人员在他们的职业生涯初期都首次在Java代码中遇到本机方法时都会感到惊讶。 我还可以肯定&#xff0c;多年来随着了解JVM如何通过JNI处理对本机实现的调用而使惊喜消失了。 这篇文章是关于本机方法的最新经验。 更详细地讲&#xff0c;使用…

fastjson反序列化分析

1.fastjson简单使用 User: package com.naihe;public class User {private String name;private int age;public User() {}public User(String name, int age) {this.name name;this.age age;}public String getName() {return name;}public void setName(String name) {th…

银行家算法:解决多线程死锁问题

死锁&#xff1a; 死锁产生的现场&#xff1a;当A进程P S2信号量而B进程P S1信号量时就会产生死锁&#xff0c;因为S2信号量需要B进程释放&#xff0c;而S1信号量需要A进程释放&#xff0c;因此两个进程都在等相互的资源&#xff0c;造成死锁。 死锁产生的条件&#xff1a; 互斥…

转:巧用搜狗输入法输入英文单词

转&#xff1a; http://www.techweb.com.cn/digi/experience/2013-06-03/1300700.shtml 你是否遇到过这样的情形&#xff1a;想打一个英文单词&#xff0c;但是忘了具体拼写是什么&#xff0c;只是记了个大概?比如“竞争”&#xff0c;到底是competetion还是competition呢?又…