• 命令执行与反序列化(一)


    一.远程代码执行

    1.远程系统命令执行

    命令执行原理:命令执行原理:设计者在编写代码时没有做严格的安全控制,导致攻击者通过接口或相关参数提交“意想不到”的命令,从而让后台进行执行,从而控制整个后台服务器 。(写代码的时候没有对参数严格的安全控制

    2.远程代码执行

    代码执行原理:代码执行原理:没有对对接口输入的内容进行严格判断,造成攻击者精心构造的代码非法执行。(相关的参数没有进行严格判断,但执行参数时使用了不安全的函数,造成了通过这个函数执行参数里面攻击者的命令

    远程代码执行与远程命令执行的区别

    使用的函数不一样(因为有些函数只能执行php、java代码等,不能执行操作系统命令)

    二.系统命令执行实战测试

    函数执行

     

    分析原理:

     总结:IP给变量,变量做判断,判断之后直接执行系统命令

    代码执行

     

     

    三.命令执行测试方法

    & 不管前后是否有错误,后面都会被执行

    && 前面只要有错误,后面就不会执行

    进入pikachu

     

    进入DVWA

     

     

    | 前面执行

    || 后面执行

    四.命令执行漏洞出现的地方

    1.只要带参数的地方都可能出现命令执行漏洞 

    2.常见的路由器、防火墙、入侵检测、自动化运维平台

    五.如何挖命令执行漏洞

    白盒测试:找函数

    (1)在代码里找到这些函数(执行命令函数): assert,system,passthru,exec,pcntl_exec,shell_exec,popen,proc_open,``(反单引号

    (2)代码执行与加密: eval, assert, call_user_func,base64_decode, gzinflate, gzuncompress, gzdecode, str_rot13

  • 相关阅读:
    关于mybatis中mapper.xmlSQL语句书写的心得
    笔记
    SpringMVC的小总结
    配置generatorConfig.xml自动生成的代码的sql书写问题
    关于SQL中的排序问题
    鼠标的change事件
    Git学习笔记 --第一章
    XHR对象
    黑马程序员——java学习6(127-151)——多线程
    黑马程序员——java学习5(107-126)——内部类,异常,包
  • 原文地址:https://www.cnblogs.com/2001-04-14-03-21/p/14255741.html
Copyright © 2020-2023  润新知