Skip to content

Commit 026334c

Browse files
committed
docs: add Sliver alias setup section (EN + ZH)
1 parent 278168e commit 026334c

2 files changed

Lines changed: 108 additions & 0 deletions

File tree

README.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -506,6 +506,60 @@ Stdout contains one receipt JSON line per statement (in order), plus a final sum
506506

507507
Action-scoped flags (`--name`, `--data`, `--raw`, `--force`, `--append`, `--mimic-aging`, `--set-owner`, `--type`, `--srv-*`, `--mx-pref`, `--filter-*`, `--only-tombstoned`, `--no-tombstoned`) are reset per statement -- they don't bleed between statements. Targeting and auth flags (`--zone`, `--dn`, `--server`, `--username`, `--password*`, `--ldaps`, `--partition`) are inherited from outer and can be overridden per statement.
508508

509+
### Sliver alias
510+
511+
You can register SharpADIDNS as a persistent Sliver alias so it is available as `sharpadidns` across sessions without re-uploading the binary each time.
512+
513+
**1. Create the alias directory and drop in the binary:**
514+
515+
```bash
516+
mkdir -p ~/.sliver-client/aliases/sharpadidns
517+
cp SharpADIDNS.exe ~/.sliver-client/aliases/sharpadidns/
518+
```
519+
520+
**2. Create `alias.json` in the same directory:**
521+
522+
```json
523+
{
524+
"name": "SharpADIDNS",
525+
"version": "v0.9.5",
526+
"command_name": "sharpadidns",
527+
"original_author": "RedteamNotes",
528+
"repo_url": "https://github.com/RedteamNotes/SharpADIDNS",
529+
"help": "C# CLI tool for reading and modifying AD-Integrated DNS records over LDAP.",
530+
"long_help": "Wrapper for SharpADIDNS.exe using Sliver execute-assembly alias mode. Pass SharpADIDNS arguments after -- , -h for help.",
531+
"entrypoint": "Main",
532+
"allow_args": true,
533+
"default_args": "",
534+
"is_reflective": false,
535+
"is_assembly": true,
536+
"files": [
537+
{
538+
"os": "windows",
539+
"arch": "amd64",
540+
"path": "SharpADIDNS.exe"
541+
},
542+
{
543+
"os": "windows",
544+
"arch": "386",
545+
"path": "SharpADIDNS.exe"
546+
}
547+
]
548+
}
549+
```
550+
551+
**3. Load and verify:**
552+
553+
```
554+
[sliver] > aliases load ~/.sliver-client/aliases/sharpadidns/alias.json
555+
[*] SharpADIDNS alias has been loaded
556+
557+
[sliver] (SESSION) > sharpadidns -- --version
558+
SharpADIDNS v0.9.5
559+
```
560+
561+
After loading, `sharpadidns -- <args>` is equivalent to `execute-assembly SharpADIDNS.exe -p <proc> -- <args>`. The alias persists across client restarts once loaded. Update `version` in `alias.json` when upgrading.
562+
509563
## Record format reference
510564

511565
Every `dnsRecord` value is a `DNS_RPC_RECORD` blob:

docs/README.zh-CN.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -512,6 +512,60 @@ stdout 按顺序每条语句一行 receipt JSON,最后一行 summary:
512512

513513
按动作作用域的 flag(`--name``--data``--raw``--force``--append``--mimic-aging``--set-owner``--type``--srv-*``--mx-pref``--filter-*``--only-tombstoned``--no-tombstoned`)在每条语句之间会**重置** — 不会跨语句串味。定位和认证类 flag(`--zone``--dn``--server``--username``--password*``--ldaps``--partition`)从外层继承,可被单条语句覆盖。
514514

515+
### Sliver 别名
516+
517+
可以把 SharpADIDNS 注册为持久化 Sliver 别名,之后用 `sharpadidns` 即可跨 session 调用,无需每次重新上传。
518+
519+
**1. 创建别名目录并放入二进制:**
520+
521+
```bash
522+
mkdir -p ~/.sliver-client/aliases/sharpadidns
523+
cp SharpADIDNS.exe ~/.sliver-client/aliases/sharpadidns/
524+
```
525+
526+
**2. 在同一目录创建 `alias.json`**
527+
528+
```json
529+
{
530+
"name": "SharpADIDNS",
531+
"version": "v0.9.5",
532+
"command_name": "sharpadidns",
533+
"original_author": "RedteamNotes",
534+
"repo_url": "https://github.com/RedteamNotes/SharpADIDNS",
535+
"help": "C# CLI tool for reading and modifying AD-Integrated DNS records over LDAP.",
536+
"long_help": "Wrapper for SharpADIDNS.exe using Sliver execute-assembly alias mode. Pass SharpADIDNS arguments after -- , -h for help.",
537+
"entrypoint": "Main",
538+
"allow_args": true,
539+
"default_args": "",
540+
"is_reflective": false,
541+
"is_assembly": true,
542+
"files": [
543+
{
544+
"os": "windows",
545+
"arch": "amd64",
546+
"path": "SharpADIDNS.exe"
547+
},
548+
{
549+
"os": "windows",
550+
"arch": "386",
551+
"path": "SharpADIDNS.exe"
552+
}
553+
]
554+
}
555+
```
556+
557+
**3. 加载并验证:**
558+
559+
```
560+
[sliver] > aliases load ~/.sliver-client/aliases/sharpadidns/alias.json
561+
[*] SharpADIDNS alias has been loaded
562+
563+
[sliver] (SESSION) > sharpadidns -- --version
564+
SharpADIDNS v0.9.5
565+
```
566+
567+
加载后,`sharpadidns -- <args>` 等价于 `execute-assembly SharpADIDNS.exe -p <proc> -- <args>`。别名在客户端重启后持久保留。升级时更新 `alias.json` 中的 `version` 字段。
568+
515569
## 记录格式参考
516570

517571
每条 `dnsRecord` 值都是一个 `DNS_RPC_RECORD` blob:

0 commit comments

Comments
 (0)