logo

Database

Xml Authorization Header With Basic Token

Description

Detects exposed Basic Authentication tokens in JMX header configurations. Basic Auth credentials are only base64 encoded and not encrypted, making them vulnerable to interception and credential exposure if captured by attackers.

Weakness:

015 - Insecure authentication method - Basic

Category: Protocol Manipulation

Detection Strategy

    Review configuration files for JMX header configurations

    Look for 'stringprop' elements with name attribute set to 'header.value'

    Check if the header value contains 'basic' authentication token

    Flag configurations where Basic Authentication headers are specified in clear text

Vulnerable code example

<?xml version="1.0" encoding="UTF-8"?>
<jmeterTestPlan version="1.2">
  <hashTree>
    <HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="HTTP Header Manager" enabled="true">
      <collectionProp name="HeaderManager.headers">
        <elementProp name="" elementType="Header">
          <stringProp name="Header.name">Authorization</stringProp>
          <stringProp name="Header.value">Basic 12jlkasd123{ada+</stringProp> <!-- VULNERABLE: Hard-coded Basic auth credentials expose sensitive data -->...

✅ Secure code example

<?xml version="1.0" encoding="UTF-8"?>
<jmeterTestPlan version="1.2">
  <hashTree>
    <HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="HTTP Header Manager" enabled="true">
      <collectionProp name="HeaderManager.headers">
        <elementProp name="" elementType="Header">
          <stringProp name="Header.name">Authorization</stringProp>
          <stringProp name="Header.value">${__env(AUTH_BASIC_TOKEN)}</stringProp> <!-- Safe: Uses environment variable instead of hardcoded credentials -->...