skip to content

Segments may reach the shared resolver, directory and log collector outbound only, and the permit cannot be narrowed — what does an adversary who owns one of those hosts still reach?

level: middleimportance: should knowfreq 48%

answer

  1. who starts the conversation, not who answers
  2. the state entry, not an inbound rule
  3. replies are content the client trusts
  4. the resolver picks the next destination
  5. a permit is not authentication

basics

~10 s

Everything that asked. A stateful permit carries replies back inside the same connection, so a hostile service answers every client in every segment. Outbound-only constrains who starts the conversation, never who supplies the content.

solid answer

~50 s

"Outbound only" is a statement about connection initiation, not about influence. On a stateful filter the reply packets are permitted by the connection's state entry, not by any inbound rule, so a compromised shared service has a return channel to every host that spoke to it, for as long as those connections live — and a log agent's session or a directory bind can live a long time. Beyond the packets, the answers are the weapon: a resolver picks the address the client connects to next, a directory returns the verdict and group memberships an application acts on, and client code parses all of it. What the permit never established is who the far end is. So authenticating the service to the client, splitting the four, and watching the tier's own outbound are what remain.

go deeper

for a junior

Know that a firewall which permits an outbound connection also lets the replies back, and that this happens through connection state rather than through a second rule you wrote.

for a middle

Explain the state table, the difference between initiation and influence, and give a concrete example of a service shaping a client purely through its answers.

for a senior

Demonstrate the operating consequences: enumerate the forgotten inbound permits, split the universal services, and pick monitoring on the tier's outbound rather than its inbound.

for a principal

Be ready to argue where the trust boundary really sits when the network permit cannot move, and what you are willing to spend on service authentication and client-side validation instead.

## The misconception this question targets A competent engineer will often say: the shared services are safe to permit because segments only *initiate* to them and nothing initiates back. That is a real property of the rule base and it is worth having. It is also much weaker than it sounds. ## Why replies do not need an inbound rule A stateful filter records each permitted connection in a state table. When packets arrive that match an existing entry in the reverse direction, they are permitted **by the entry**, not by a rule. Nobody has to write an inbound permit; the outbound permit created the bidirectional path as a side effect. That is the entire point of stateful filtering, and it is why "no inbound rules" reads as stronger than it is. A stateless filter does not change the outcome, only the bookkeeping: you would have to write an explicit, usually wide, return rule instead. The reply path exists either way. So the honest statement is: an outbound permit to a service is a **two-way data path with that service**, initiated by one side. ## Duration matters as much as direction Some of the universal set is request/response and short-lived. Some is not: - A log-shipping agent typically holds a long-lived transport connection to the collector. - A directory session can persist across many operations. - Connection reuse means one permitted flow serves many logical exchanges. For the life of those connections there is a continuously open channel from a compromised service into a host inside a segment your policy was written to protect. ## The answers are the attack surface Even with no packet-level cleverness, a hostile universal service influences behaviour purely by responding: - **The resolver chooses the next destination.** Every subsequent connection the client makes goes where the answer said. The resolver never opens a connection into the segment; it does not need to. - **The directory returns the verdict.** Whether an authentication succeeds, which groups come back, and which referrals the client is told to follow are all supplied by the service. Applications act on those answers. - **The collector's acknowledgements and any configuration it hands back** are parsed by an agent that usually runs with high privilege on the host. And in all three cases the response is parsed by client-side code. Parsers are where memory-safety and injection defects live, and this parser is running inside the segment. ## What the network permit did and did not establish The rule established that packets may flow to a destination address on a port. It established nothing about **who is at that address** or whether the answer is genuine. A network permit is not authentication, and this is the sentence worth saying in an interview. Conflating the two is how a permit intended as "my hosts may reach my directory" degrades into "my hosts will trust whatever answers on that address". ## Do not forget the permits in the other direction In a self-operated estate, parts of the shared tier genuinely do initiate inbound: replication between directory instances, management or configuration pushed to agents, health polling. Those permits are written separately, are often older than the segmentation project, and are frequently forgotten in the "we only allow outbound" story. Enumerate them before you make the claim. ## What is actually left to do When the permit cannot be narrowed, the remaining controls are not network controls: 1. **Authenticate the service to the client.** Mutual or server-side authentication with a trust anchor you control proves the far end is the service you meant, which the permit never proved. It does not help if the service itself is the compromised thing — be honest about that limit. 2. **Narrow by protocol and by service, not just by address.** A segment that needs resolution does not need a directory bind. One universal destination set is convenient and is also the maximal grant. 3. **Split the four.** Different hosts, different credentials, different administration, so one compromise yields one capability. 4. **Watch the tier's own outbound.** Legitimately the universal tier originates very little. That makes its outbound one of the highest-signal, lowest-noise things in the estate, and it is the direction a compromise there has to use eventually. 5. **Reduce what the client does with an answer.** Pinned trust, validated responses and applications that re-check authorisation rather than trusting a returned group list all shrink the blast radius of a bad reply. ## The summary claim Direction limits who may start. It does not limit who may answer, how long the channel stays open, or what the client does with what it is told.

  • Would a stateless filter change the answer?
    Not the outcome, only the bookkeeping. A stateless filter forces you to write an explicit return rule, which is usually wider than the state entry would have been, so the reply path exists either way. The difference is that with state the path is implicit and easy to overlook when someone claims the rule base has no inbound permits.
  • What does authenticating the shared service to the client actually buy here?
    It proves the far end is the service you intended to reach, which a network permit never proved, and it defeats an adversary who has taken the address rather than the service. It does nothing if the genuine service itself is compromised, since it will authenticate correctly and then lie. Say that limit out loud rather than presenting mutual authentication as a fix.
  • Where would you watch, given you cannot narrow the permit?
    The tier's own outbound. Shared resolution, time, directory and log ingest legitimately originate very little, so anything they start is high signal and low volume. Watching the inbound stream is the opposite: every host in the estate is supposed to be there, so an intruder's traffic is indistinguishable from the design.

saying these in an interview costs you the question

  • Says outbound-only means the service can never reach the client
  • Believes reply packets require their own inbound rule on a stateful filter
  • Treats a network permit as proof of the far end's identity
  • Ignores long-lived agent and directory sessions as open channels
  • Overlooks the inbound permits the shared tier already has for replication or management

context