2 — Dconfig
"DB_PASSWORD": "flag...", "API_KEY": "secret123"
Here’s a write-up for , structured as a technical or security write-up (depending on the context—CTF, tool usage, or system configuration).
$ ./dconfig fetch Error: 401 Unauthorized But maybe the server accepts any non-empty token:
After ./dconfig apply , the system runs the attacker’s script. flagdconfig_2_config_injection_success dconfig 2
Example payload in remote config:
bash"
If you meant a different context (e.g., a specific challenge named “dconfig 2” from a CTF), please clarify. Overview dconfig 2 is a configuration management utility or challenge focused on handling distributed application settings, environment overrides, and secret injection. In many CTF challenges, dconfig refers to a tool that pulls configs from a remote source (e.g., etcd, Consul, or a custom HTTP endpoint) and applies them locally. "DB_PASSWORD": "flag
$ ls -la -rw-r--r-- 1 user user 124 .dconfig.yaml -rwxr-xr-x 1 user user 2.1M dconfig Sample config:
Flag obtained. If dconfig supports variable substitution in values, test with:
source: type: http url: http://config-server.internal:8080/v1/config auth: type: bearer token: $DCONFIG_TOKEN secrets: - DB_PASSWORD - API_KEY If DCONFIG_TOKEN is not set, the tool might fall back to an empty token or a default. Overview dconfig 2 is a configuration management utility
$ env | grep DCONFIG (empty) Try fetching config without a token:
value: .Env.SECRET You might be able to read system files or environment variables of the dconfig process itself. The apply command might write to protected files (e.g., /etc/profile.d/ , .bashrc , or systemd units). If you control the remote config, you can inject malicious commands.