elastic / elastic/integrations

[Pulse Connect Secure] Authentication failure logs with "Short Password" cannot be parsed

Open
#20,531 0 comments 0 reactions 0 assignees View on GitHub
needs:triage
Dominant language
Handlebars
Stars
333
Forks
647
Avg merge
3d 4h
Merged PRs (30d)
209

Description

### Integration Name

Pulse Connect Secure [packages/pulse_connect_secure]

### Dataset Name

_No response_

### Integration Version

2.6.1

### Agent Version

8.19.18

### Agent Output Type

elasticsearch

### Elasticsearch Version

8.19.18

### OS Version and Architecture

Red Hat Enterprise Linux 9.6 (Plow)

### Software/API Version

_No response_

### Error Message

The event fails during ingest pipeline processing with the following error:

```text
Provided Grok expressions do not match field value:

<134>1 2026-08-02T09:39:14+07:00 vpn.example.com PulseSecure: - - - 2026-08-02 09:39:14 - ive - [198.51.100.10] Default Network::user123!([Example Authentication Realm])[][] - Login failed for 'Primary' authentication using auth server 'ldap.example.local' ('LDAP Server'). Reason: 'Short Password'
```

The event is not parsed and no ECS fields are extracted.

### Event Original

<134>1 2026-08-02T09:39:14+07:00 vpn.example.com PulseSecure: - - - 2026-08-02 09:39:14 - ive - [198.51.100.10] Default Network::user123!([Example Authentication Realm])[][] - Login failed for 'Primary' authentication using auth server 'ldap.example.local' ('LDAP Server'). Reason: 'Short Password'

### What did you do?

- Installed the Pulse Connect Secure integration using the default ingest pipeline.
- Configured the integration to receive RFC5424 Syslog messages.
- Enabled "Preserve original event".
- Sent authentication failure logs from Pulse Connect Secure.
- Verified that the event reached Elasticsearch but failed during Grok parsing.

### What did you see?

The event was ingested but the ingest pipeline failed during Grok parsing.

The following error was returned:

```text
Provided Grok expressions do not match field value
```

As a result:

- The event is not parsed correctly.
- ECS fields such as `source.ip`, `user.name`, `event.action`, and `event.outcome` are not extracted.
- The pipeline processing stops at the Grok processor.

### What did you expect to see?

The authentication failure log should be parsed successfully.

Expected ECS fields include:

- `source.ip`
- `user.name`
- `event.action`
- `event.outcome`
- `event.reason`
- `observer.type`
- `observer.product`
- Authentication realm
- LDAP server name

The event should indicate a failed authentication with the reason:

```text
Short Password
```

### Anything else?

The issue appears to be related to the current Grok pattern not matching this valid Pulse Connect Secure authentication failure log.

Possible causes include:

- Username contains a `!` character.
- Authentication realm contains spaces and parentheses.
- Empty optional fields are represented as `[][]`.
- The log ends with:

```text
Reason: 'Short Password'
```

The attached sample has been sanitized but preserves the original log structure.

If helpful, I can provide additional sanitized samples that exhibit the same parsing failure.

Contributor guide

Open the contributing guide

Research direction

Start in packages/pulse_connect_secure and inspect the default ingest pipeline's Grok processors. Reproduce the failure with the supplied sanitized Pulse Connect Secure event, then verify that the authentication failure is parsed and the listed ECS fields, authentication realm, LDAP server, and “Short Password” reason are extracted successfully.

Written by the indexing model from the issue text.

Assessment

Tech stack
elasticsearch
Domain
observability
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.