探索web世界——任务三

本文档详细介绍了web安全中命令注入的概念,以DVWA的Command Execution模块为例,分析了不同安全级别的漏洞利用。同时,探讨了Windows和Linux的基本命令,以及PHP的数据类型和弱类型特性。在学习过程中,通过攻防世界的练习巩固了所学知识。
摘要由CSDN通过智能技术生成

探索web世界——任务三

任务内容

1.学习windows和Linux命令;
2.完成dvwa的第二个模块command execution(命令注入);
3.继续学习php(重点关注数据类型和php弱类型)
4.巩固练习:完成攻防世界web新手练习区的command_execution和simple_php;Jarvis OJ web的localhost和admin

一、学习Windows和Linux命令

Windows命令

  • 首先网上查找了一些资料,收集到一些关于cd命令的例子:在这里插入图片描述
  • 创建目录:md 目录名(文件名)
  • 删除目录:rd 目录名(文件名)
  • 查看本机ip: ipconfig
  • 清空屏幕:cls
  • 查看帮助文档:help
  • 查看系统当前使用情况:netstat -ano
  • 查找进程:tasklist |findstr “进程id号”
  • 进入某个目录:“D:”是进入d盘,“F:”是进入f盘
  • 显示当前目录:cd
  • 查看当前目录下的文件:dir
  • 显示当前path变量的值:path
  • 显示当前windows系统的版本号:ver
  • 弹框显示当前windows系统信息:winver
  • 显示当前分区的卷标:vol
  • 显示当前分区的卷标,同时提示输入新卷标:label
  • 显示或设置当前时间:time
  • 显示或设置当前日期:data
  • 运行某程序或命令:start
  • 退出当前cmd窗口:exit
  • 暂停批处理程序,并显示出:请按任意键继续…:pause
  • 打开资源管理器:explorer
  • 打开资源注册表:regedit
  • 屏幕讲述人:narrator
  • 任务管理器:taskmgr
  • SQL SERVER客户端网络实用程序:cliconfg
  • 剪贴板查看器:clipbrd
  • 打开记事本:notepad
  • 垃圾整理:cleanmagr
  • 启动计算器:calc
  • 写字板:write
  • 查看有哪些用户:net user
    关于Windows的命令太多了,这里有几篇比较全面的文章可以参考:链接一链接二链接三
    目前不是很清楚以后经常用的到得到有哪些类型的,以后多用就能熟悉了

Linux命令

  • pwd//显示当前目录
  • cd//改变所在目录
  • grep//在文件中查找某字符
  • touch//创建文件
  • rm//删除文件
  • vi//编辑文件
  • ls//查看目录下的内容
  • cat//显示文件的内容
  • cp//复制文件
  • mv//移动文件
  • rmdir//删除目录
  • mount//挂载文件系统
  • umount//卸载已挂载上的文件系统
  • df//检查各个硬盘分区和已挂上来的文件系统的磁盘空间
  • du//查看文件目录和大小
  • fsck//主要是检查和修复Linux文件系统
  • shutdown//正常关机
  • reboot//重启计算机
  • ps//查看目前程序执行的情况
  • top//查看目前程序执行的情景和内存使用的情况
  • kill//终止一个进程
  • data//更改或查看目前日期
  • shutdown-r//关机后重启
  • chmod//用来改变权限
  • useradd//用来增加用户
  • su//用来修改用户
  • man//查询和节是一个命令的使用方法,以及这个命令的说明事项
  • locate//定位文件和目录
  • whatis//寻找某个命令的含义
  • head//查看文件的开头部分
  • tail//查看文件结尾的10行
  • less//是一个分页工具,允许一页一页的查看信息(允许使用箭头来前后移动)
  • more//是一个分页工具,允许一页一页的查看信息(使用空格和B键前后前后移动)
  • ftp//传送文件
  • bye//结束连线并结束程序
  • ping//检测主机
  • telnet//远端登录
  • netstat//显示网络状态
  • echo//显示一字串
  • clear//清除显示器
  • lpd//查看在打印队列中等待的作业
  • password//修改密码
  • lpr//打印
  • lprm//取消打印队列中的作业
    附上大佬链接一篇Linux常用命令大全
    #完成Command Execution
    -解决乱码问题,在DVWA的目录下,找到一个文件,修改里面的内容。 大佬一

完成DVWA中Command Execution 模块

命令注入攻击的常见模式为:仅仅需要输入数据的场合,却伴随着数据同时输入了恶意代码,而装载数据的系统对此并未设计良好的过滤过程,导致恶意代码也一并执行,最终导致信息泄露或者正常数据的破坏。

   PHP命令注入攻击漏洞是PHP应用程序中常见的脚本漏洞之一,国内著名的Web应用程序Discuz!、DedeCMS等都曾经存在过该类型漏洞。

在这里插入图片描述

源码分析

Low(低)级别

<?php 

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

    // 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>"; 
} 

?> 

相关函数介绍:

  • stristr(string,search,before_search)

stristr函数搜索字符串在另一字符串中的第一次出现,返回字符串的剩余部分(从匹配点),如果未找到所搜索的字符串,则返回 FALSE。参数string规定被搜索的字符串,参数search规定要搜索的字符串(如果该参数是数字,则搜索匹配该数字对应的 ASCII 值的字符),可选参数before_true为布尔型,默认为“fa lse” ,如果设置为 “true”,函数将返回 search 参数第一次出现之前的字符串部分。

  • php_uname(mode)

这个函数会返回运行php的操作系统的相关描述,参数mode可取值
”a” (此为默认,包含序列”s

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值