HackBlue

Tools · Attack surface inventory · 13 / 23

httpx: no line is not a status code

httpx prints a line for a host that answered. A name that was in the input and is missing from the output has no status code in this run. Write “no line,” not a code you did not receive.

11 min read · practice only with authorization

The output is the set that answered

The input file is the list you asked about. The output is the services that returned something this probe could record. A name that does not appear in the output was not given a status, a title, or an address by this run. Silence is the absence of a line, not a 404 and not a 000 you filled in.

A timeout, a filter, or a host with no HTTP listener can all look the same in that silence. The output does not say which. Do not pick one.

Compare the lists before you summarize

Count the input names and the output URLs separately. If you say “20 hosts, all healthy,” you need 20 lines that say so. Ten lines mean ten answers. The other ten are “no line in this run.”

A later run can produce a line for a name that was silent. That is a new observation. It does not rewrite the earlier file into a status code.

What to file

File the input count, the output count, the probe time, and any name you care about that had no line. For names that did answer, file the status from the line. Do not invent a status for the silent names, and do not drop them from the note so the counts match.

Worked case: ten answers called a full inventory

The lab input has 20 names. The probe writes 10 lines, all status 200. A draft says all 20 inventory hosts returned 200. The other 10 names are simply not in the file.

The note says 20 in, 10 lines, 10 with no line. The 200s are quoted from the lines that exist. The silent names are listed as no line in this run, with no status code attached. The inventory is not “all healthy.”

Snippet
input names: 20
output lines: 10, each status 200
names with no line: 10
probe: 2026-11-03T14:22:08Z
write: 10 answers, 10 silences
not: 20 hosts returned 200

Diagram

Count the input before you trust the output

  1. Input

    How many names you asked about.

    List
    20
  2. Lines

    How many responses were printed.

    Output
    10
  3. Status

    Only on a line that exists.

    Field
    200 on those 10
  4. Silence

    No line means no code.

    Note
    do not invent one

Check yourself

1. A name was in the input and has no output line. What status did this run record?

2. Ten lines are all 200 and the input had 20 names. What may you say?

3. A later run prints a line for a name that was silent. What changes?