2017-03-04 19 views

回答

1

是的,它是可能的,不实用等等。

由于DNS请求包括容易通过DNS请求处理文本的部分挤压文件仅仅是物质的数据切片成足够小的块,将请求发送到它知道如何提取数据自己的DNS服务器。例如,发送Base64数据作为子域的一部分。

工具:

  • 阅读说明书或至少一些DNS protocol
  • C#DNS class的细节。
  • 为您自己的域定制DNS服务器。用于指向同一服务器

步骤的所有子域名

  • 配置DNS记录:

    • 片文件成小块,并且每个编码为安全网址Base64或Base32/Base16字符串。以块作为子域名向服务器发送DNS请求。可能在数据中包含块索引。
    • 服务器应提取的子域和放回文件。

    为包括[04 00 00 08 00 00]字节文件样品交换编码成2块"BAAA", "CAAA"

    • 客户端发送解决BAAA.mydomain.com
    • DNS服务器接收请求花费BAAA部分并放入文件(解码后)
    • DNS服务器回应一些IP(无所谓)
    • 客户端收到并忽略回应
    • 客户端发送解决CAAA.mydomain.com
    • DNS服务器收到请求花费CAAA一部分,并把它追加到文件(解码后)
    • DNS服务器与一些IP响应(什么都无所谓)
    • 客户端临危并忽略响应