计算机网络安全基础知识4:命令执行漏洞,危害极大,DVWA演示命令注入漏洞攻击网站,防御命令注入执行漏洞,low,medium,high,impossible

news2024/11/24 12:32:38

计算机网络安全基础知识4:命令执行漏洞,危害极大,DVWA演示命令注入漏洞攻击网站,防御命令注入执行漏洞,low,medium,high,impossible

2022找工作是学历、能力和运气的超强结合体,遇到寒冬,大厂不招人,可能很多算法学生都得去找开发,测开
测开的话,你就得学数据库,sql,oracle,尤其sql要学,当然,像很多金融企业、安全机构啥的,他们必须要用oracle数据库
这oracle比sql安全,强大多了,所以你需要学习,最重要的,你要是考网络警察公务员,这玩意你不会就别去报名了,耽误时间!
考网警特招必然要考操作系统,计算机网络,计算机网络安全基础知识,由于备考时间不长,你可能需要速成,我就想办法自学速成了,课程太长没法玩
在这里插入图片描述
系列文章:
【1】计算机网络安全基础知识1:渗透测试,网络连接的核心TCP/IP体系结构,公网,内网,ip地址和端口
【2】计算机网络安全基础知识2:http超文本传输协议,请求request消息的get和post,响应response消息的格式,响应状态码
【3】计算机网络安全基础知识3:网站漏洞,安装phpstudy,安装靶场漏洞DVWA,搭建一个网站


文章目录

  • 计算机网络安全基础知识4:命令执行漏洞,危害极大,DVWA演示命令注入漏洞攻击网站,防御命令注入执行漏洞,low,medium,high,impossible
    • @[TOC](文章目录)
  • 计算机网络安全基础知识:命令执行漏洞,危害极大
  • 如何防御命令执行和命令注入漏洞:过滤命令连接符
  • 我们看看命令注入执行漏洞:high级别防御
  • 开发中算法规范,绝对防御,绝对安全impossible
  • 黑客攻击怎么拿到你的cmd?
  • 总结

计算机网络安全基础知识:命令执行漏洞,危害极大

我可以关闭,删除你的电脑系统
因为开发者没有做严格的安全测试
可能导致攻击者输入很多很多可怕的东西。
在这里插入图片描述
网站有网络连接检测功能
输入一个ip地址,然后检测是否可以连接它

在这里插入图片描述
正常情况下,网站是可以正常去检测网址是否可以连通的
在这里插入图片描述
命令连接符
|管道命令,且,俩都执行

&

||,仅仅cmd1失败,才去执行cmd2
&&

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如果cmd2是shut down的话,你的电脑就得gg
你说这个危险不危险??????

可怕不可怕????

常见的Windows命令是
在这里插入图片描述
那DVWA如何模拟这种攻击呢?
上一篇文章介绍了它的安装

在这里插入图片描述

我们去访问这个界面
在这里插入图片描述
我们去配置安全配置
low是没有防御
在这里插入图片描述
这样的话,就可以攻击了
不同的等级,好说
在这里插入图片描述
然后你模拟攻击
卧槽,我屁股加了别命令也不行啊?????

本地可以,操蛋

C:\Users\WYY>whoami
desktop-8r2o0p1\wyy

C:\Users\WYY>

这就尴尬了
为毛
在这里插入图片描述
原因是我刚刚设置low安全级别,没成功
在这里插入图片描述
重新来
在这里插入图片描述
这样你才能去攻击哦

美滋滋
在这里插入图片描述
攻击成功了

可试试这个命令哈哈哈

127.0.0.1&shutdown

gg

玩这个命令看看

127.0.0.1 & ipconfig

在这里插入图片描述
这些结果就是本地运行
ipconfig中的结果

网站就截取了你的信息

看view source
在这里插入图片描述

就这样了你看看

Command Injection Source
vulnerabilities/exec/source/low.php
<?php

if( isset( $_POST[ 'Submit' ]  ) ) {
    // Get input 输入的是IP地址,这里就是刚刚窗口那个ip,赋值给target
    $target = $_REQUEST[ 'ip' ];

    // Determine OS and execute the ping command.
    if( stristr( php_uname( 's' ), 'Windows NT' ) ) {
        // Windows,这里是php的函数,它可以执行:ping target命令
        $cmd = shell_exec( 'ping  ' . $target );
    }
    else {
        // *nix
        $cmd = shell_exec( 'ping  -c 4 ' . $target );
    }

    // Feedback for the end user
    echo "<pre>{$cmd}</pre>";
}

?>



这是PHP代码
我们看看

这里就是target,可以使被被人注入别的命令哦!!!!
这就是命令执行漏洞,命令注入漏洞

如何防御命令执行和命令注入漏洞:过滤命令连接符

在这里插入图片描述
在这里插入图片描述
将其替代,或者判断,干废它
在这里插入图片描述
我们去看看DVWA,它是如何防范的?
调整安全等级
在这里插入图片描述
在这里插入图片描述
你看代码中就有删除非法字符的骚操作了
这就是防御

Command Injection Source
vulnerabilities/exec/source/medium.php
<?php

if( isset( $_POST[ 'Submit' ]  ) ) {
    // Get input
    $target = $_REQUEST[ 'ip' ];

    // Set blacklist
    $substitutions = array(
        '&&' => '',
        ';'  => '',
    );

    // Remove any of the charactars in the array (blacklist).
    //这里是移除在arr中的字符,&&,;但是没有删除|,||,&,看来还有问题
    //字符串替换更改,将前面的替换为空字符
    $target = str_replace( array_keys( $substitutions ), $substitutions, $target );

    // Determine OS and execute the ping command.
    if( stristr( php_uname( 's' ), 'Windows NT' ) ) {
        // Windows
        $cmd = shell_exec( 'ping  ' . $target );
    }
    else {
        // *nix
        $cmd = shell_exec( 'ping  -c 4 ' . $target );
    }

    // Feedback for the end user
    echo "<pre>{$cmd}</pre>";
}

?>



在这里插入图片描述
在这里插入图片描述
你现在就不能执行啰!!!!!

这就是防御成功了
在这里插入图片描述

它只防御了2个
还缺仨
在这里插入图片描述

执行这个

127.0.0.1&whoami

在这里插入图片描述
看来还是不安全哦

127.0.0.1&&whoami

在这里插入图片描述
源代码有,能看到,就能知道怎么防御的——白盒测试
黑盒测试,你攻击它,但是看不到它的代码
试试就行

我们看看命令注入执行漏洞:high级别防御

在这里插入图片描述
目前试试 这个攻击

127.0.0.1|whoami

在这里插入图片描述
试试这个攻击

127.0.0.1||whoami

在这里插入图片描述
好像是不能查到哦

试试这个攻击

127.0.0.1&whoami
127.0.0.1;whoami

在这里插入图片描述

好像是没有屏蔽|
||和&和;都屏蔽了

看看原码
在这里插入图片描述
这就牛逼了

Command Injection Source
vulnerabilities/exec/source/high.php
<?php

if( isset( $_POST[ 'Submit' ]  ) ) {
    // Get input
    $target = trim($_REQUEST[ 'ip' ]);

    // Set blacklist
    $substitutions = array(
        '&'  => '',
        ';'  => '',
        '| ' => '',
        '-'  => '',
        '$'  => '',
        '('  => '',
        ')'  => '',
        '`'  => '',
        '||' => '',
    );

    // Remove any of the characters in the array (blacklist).
    $target = str_replace( array_keys( $substitutions ), $substitutions, $target );

    // Determine OS and execute the ping command.
    if( stristr( php_uname( 's' ), 'Windows NT' ) ) {
        // Windows
        $cmd = shell_exec( 'ping  ' . $target );
    }
    else {
        // *nix
        $cmd = shell_exec( 'ping  -c 4 ' . $target );
    }

    // Feedback for the end user
    echo "<pre>{$cmd}</pre>";
}

?>



基本字符都拦截率了

在这里插入图片描述
这种在开发中经常遇到
有的人就喜欢按空格
拦截了一个|空格
在这里插入图片描述
你看|空格,可以拦截
但是|不能拦截,怪不得……………………

127.0.0.1| whoami

在这里插入图片描述
去掉空格去掉就OK

127.0.0.1|whoami

在这里插入图片描述
牛了吧!

127.0.0.1|dir

所以说开发一定要小心

在这里插入图片描述
在这里插入图片描述

开发中算法规范,绝对防御,绝对安全impossible

在这里插入图片描述
上面那个漏洞就不存在了

127.0.0.1|whoami

在这里插入图片描述

懂?
看看源代码
在这里插入图片描述

Command Injection Source
vulnerabilities/exec/source/impossible.php
<?php

if( isset( $_POST[ 'Submit' ]  ) ) {
    // Check Anti-CSRF token
    checkToken( $_REQUEST[ 'user_token' ], $_SESSION[ 'session_token' ], 'index.php' );

    // Get input
    $target = $_REQUEST[ 'ip' ];
    $target = stripslashes( $target );

    // Split the IP into 4 octects
    $octet = explode( ".", $target );

    // Check IF each octet is an integer
    if( ( is_numeric( $octet[0] ) ) && ( is_numeric( $octet[1] ) ) && ( is_numeric( $octet[2] ) ) && ( is_numeric( $octet[3] ) ) && ( sizeof( $octet ) == 4 ) ) {
        // If all 4 octets are int's put the IP back together.
        $target = $octet[0] . '.' . $octet[1] . '.' . $octet[2] . '.' . $octet[3];

        // Determine OS and execute the ping command.
        if( stristr( php_uname( 's' ), 'Windows NT' ) ) {
            // Windows
            $cmd = shell_exec( 'ping  ' . $target );
        }
        else {
            // *nix
            $cmd = shell_exec( 'ping  -c 4 ' . $target );
        }

        // Feedback for the end user
        echo "<pre>{$cmd}</pre>";
    }
    else {
        // Ops. Let the user name theres a mistake
        echo '<pre>ERROR: You have entered an invalid IP.</pre>';
    }
}

// Generate Anti-CSRF token
generateSessionToken();

?>



这里可不是替代,直接判断你的pi地址是不是四个数字
不是就gg

绝对安全,随你输入啥都不行

在这里插入图片描述

关键的地方,搞出来
在这里插入图片描述
分别判断四个部分是不是数字
是才行

就是干掉所有无关字符即可
这都是数据结构与算法中讲的清清楚楚,我写过很多关于字符串的骚操作。

在这里插入图片描述
ip是标准的四个数字,这些条件都得满足,否则gg

在这里插入图片描述
这次俺是开发人员的典范!!!!!
你没法攻击,懂???

黑客攻击怎么拿到你的cmd?

黑客可以通过命令注入漏洞,运行一个拦截命令,然后控制你的电脑里面的cmd,然后就可以干死你的电脑了
懂了没?命令注入执行带来的结果非常恐怖

温馨提示
在这里插入图片描述


总结

提示:重要经验:

1)
2)学好oracle,操作系统,计算机网络,即使经济寒冬,整个测开offer绝对不是问题!同时也是你考公网络警察的必经之路。
3)笔试求AC,可以不考虑空间复杂度,但是面试既要考虑时间复杂度最优,也要考虑空间复杂度最优。

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

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

相关文章

CHAPTER 3 Web HA集群部署 - RHCS

Web HA集群部署 - RHCS1. RHCS介绍2. RHCS的核心功能2.1 负载均衡2.2 高可用2.3 存储3. RHCS集群的组成部分3.1 集群管理器CMAN3.2 资源组管理器rgmanager3.3 集群配置文件管理CCS3.4 保护设备Fencs3.5 分布式锁管理器DLM3.6 集群文件系统GFS3.7 集群配置管理工具Conga4. RHCS历…

白盒测试复习重点

白盒测试白盒测试之逻辑覆盖法逻辑覆盖用例设计方法1.语句覆盖2.判定覆盖(分支覆盖)3.条件覆盖4.判定条件覆盖5.条件组合覆盖6.路径覆盖白盒测试之基本路径测试法基本路径测试方法的步骤1.根据程序流程图画控制流图2.计算圈复杂度3.导出测试用例4.准备测试用例5.例题白盒测试总…

扬帆优配“机器人+”方案加码产业发展,这些股有望高增长

“机器人”发明新需求&#xff0c;2022年中国机器人市场规模约为174亿美元。 美国时刻3月1日&#xff0c;特斯拉在得克萨斯州超级工厂举办投资者日活动&#xff0c;展示了人形机器人Optimus的视频&#xff0c;更夸大的是&#xff0c;视频中的机器人好像在制作另一个机器人&…

更改linux时区、时间

问题描述&#xff1a; MINIO上传失败&#xff0c;错误信息如下&#xff1a; The difference between the request time and the servers time is too large. 原因分析&#xff1a; 系统时区与硬件时区不一致导致的 解决方案&#xff1a; 第一种情况&#xff0c;Time zone时区…

【大数据监控】Prometheus、Node_exporter、Graphite_exporter安装部署详细文档

目录Prometheus简介下载软件包安装部署创建用户创建Systemd服务修改配置文件prometheus.yml启动Prometheusnode exporter下载软件包安装部署添加用户创建systemd服务启动node_exportergraphite_exporter下载软件包安装部署创建systemd服务启动 graphite_exporterPrometheus 简介…

rsync+xinetd+inotify+sersync

一、介绍 1.1、rsync 对比 scp 相同&#xff1a; 都有拷贝的功能不同&#xff1a; rsync:具有增量复制&#xff0c;每次复制的时候&#xff0c;会扫描对端是否在同路径下有我要发送的一样的文件或者目录&#xff0c;如果&#xff0c;如果存在&#xff0c;则不进行复制。边复制&…

【脚本】用于得到某个文件/文件夹所有文件的存储大小(MB单位)

知识点 来自在线转换换算网页&#xff1a;在线文件大小(bit,bytes,KB,MB,GB,TB)转换换算 电脑中存储常用的单位&#xff1a; 1Byte(Byte 字节) 8Bit 1KB (Kilobyte 千字节) 1024Byte 1MB (Megabyte&#xff0c;兆字节&#xff0c;简称“兆”) 1024KB 1GB (Gigabyte&am…

附录3-大事件项目后端-项目准备工作,config.js,一些库的简易用法,main.js

目录 1 一些注意 2 创建数据库 3 项目结构 4 配置文件 config.js 5 参数规则包 hapi/joi与escook/express-joi 5.1 安装 5.2 文档中的demo 5.2.1 定义规则 5.2.2 使用规则 5.3 项目中的使用 5.3.1 定义信息规则 5.3.2 使用规则 6 密码加密包 bcrypt.…

【CSAPP】浮点数

文章目录小数表示练习1练习2IEEE浮点表示数字示例练习1练习2练习3舍人练习1练习2练习3浮点运算C语言中的浮点数练习1练习2浮点数对形如Vx∗2yVx*2^yVx∗2y的有理数进行编码。它对表示非常大的数&#xff08;∣V∣>>0|V|>>0∣V∣>>0&#xff09;、非常接近 0的…

单链表详解

单链表一.概念二.一些类型的创建三.尾插四.头插五.头删尾删六.打印链表七.单链表查找,任意位置插入&#xff0c;任意位置删除八.源代码一.概念 该篇链表博客是按照工程项目的格式来记录的&#xff0c;与平常的算法链表有些许不同&#xff0c;注意区分。 二.一些类型的创建 三.尾…

Hbuilder+uniapp 从零开始创建一个小程序

当你看到这篇博客的时候&#xff0c;那~说明~我的这篇博客写完了……哈哈哈哈哈哈哈哈。好的&#xff0c;清耐心往下看哈。如果有需要的&#xff0c;可以关注一下小作&#xff0c;后面还有小程序的云开发嗷~一、申请一个小程序账号&#xff08;已经有账号的小可爱可以跳过&…

CEC2020:鱼鹰优化算法(Osprey optimization algorithm,OOA)求解CEC2020(提供MATLAB代码

一、鱼鹰优化算法简介 鱼鹰优化算法&#xff08;Osprey optimization algorithm&#xff0c;OOA&#xff09;由Mohammad Dehghani 和 Pavel Trojovsk于2023年提出&#xff0c;其模拟鱼鹰的捕食行为。 鱼鹰是鹰形目、鹗科、鹗属的仅有的一种中型猛禽。雌雄相似。体长51-64厘米…

巾帼绽芬芳 一起向未来(中篇)

编者按&#xff1a;为了隆重纪念纪念“三八”国际妇女节113周年&#xff0c;快来与你全方位、多层次分享交流“三八”国际妇女节的前世今生。分上篇&#xff08;节日简介、节日发展和节日意义&#xff09;、中篇&#xff08;节日活动宗旨和世界各国庆祝方式&#xff09;和下篇&…

mybatis的增删改查运用

目录 一、总览图 二、运用 一、总览图 代码总览图 数据库总览图 二、运用 数据库的一张表对应一个封装类&#xff0c;一个mapper接口&#xff0c;一个mapper.xml文件&#xff0c; 一个实现类。表中的增删改查都在里面编写 但是配置xml文件整个数据库只要一个就好了 1.…

路由器与交换机的区别(基础知识)

文章目录交换机路由器路由器和交换机的区别&#xff08;1&#xff09;工作层次不同&#xff08;2&#xff09;数据转发所依据的对象不同&#xff08;3&#xff09;传统的交换机只能分割冲突域&#xff0c;不能分割广播域&#xff1b;而路由器可以分割广播域&#xff08;4&#…

软件大战升级,通用汽车与Qt达成合作,增强车内体验

从智能汽车产业现状来看&#xff0c;围绕软件而展开的争夺战已经打响。 英伟达首席执行官黄仁勋曾预测&#xff0c;未来四年内新车以成本价销售将不再是“天方夜谭”&#xff0c;因为利润将来自软件。 比如&#xff0c;英伟达与奔驰的合作&#xff0c;就将首次采用功能订阅的…

docker安装及命令使用

目录 1. Docker版本介绍 2. 创建Docker存储库 3. 安装docker软件包 4. Docker命令补全 6.Docker命令介绍 7. Docker镜像管理 7.1 列出本地镜像 7.2 搜索镜像 7.3 下载镜像 7.4 查看镜像 7.5 删除镜像 7.6 导出镜像 7.7 导入镜像 7.8 镜像改名 8. 容器管理 8.1 容…

再学C语言41:变长数组(VLA)

处理二维数组的函数&#xff1a;数组的行可以在函数调用时传递&#xff0c;但是数组的列只能被预置在函数内部 示例代码&#xff1a; #define COLS 4 int sum(int arr[][COLS], int rows) {int r;int c;int temp 0;for(r 0; r < rows; r){for(c 0; c < COLS; c){tem…

每个Android开发都应需知的性能指标~

无论你是发布一个新的 Android 应用&#xff0c;还是希望提高现有应用的性能&#xff0c;你都可以使用 Android 应用性能指标来帮助你。 在这篇文章中&#xff0c;我将解释什么是 Android 应用性能指标&#xff0c;并列出8个需要考虑跟踪的维度和建议的基线。 什么是 Android…

【LEAP模型】能源环境发展、碳排放建模

本次内容突出与实例结合&#xff0c;紧密结合国家能源统计制度及《省级温室气体排放编制指南》&#xff0c;深入浅出地介绍针对不同级别研究对象时如何根据数据结构、可获取性、研究目的&#xff0c;构建合适的能源生产、转换、消费、温室气体排放&#xff08;以碳排放为主&…