背景
域渗透的过程中会用到很多 .Net 工具。但是官方仓库没有直接发布的二进制包,那么就需要我们自己手动编译。这些工具又有很多会选择做 NuGet 依赖。如果本地配置不对,就会导致编译失败。
接下来我们就讨论一下怎么解决这个问题。
现象
我们以 ADSearch 为例。这是一个 .Net 工程,可以通过 LDAP 语法收集域信息。仓库链接。
仓库拉下来之后我们在 VS 中打开,然后直接编译,可能会看到这样的警告。


这是因为本地找不到 Nuget 依赖 引起的。下面我们来解决一下这个问题。
解决 Nuget Package 报错
很简单,直接上图。
点击 Project -> Manage NuGet Packages。

如果右上角下拉列表里只有默认的本地源,我们必须新增一个。
点击右方齿轮。

点击绿色加号新增。

源名字随意,Source 填如下内容:
https://api.nuget.org/v3/index.json

然后点击 Update,OK。

在下拉列表中选择刚添加的源,然后点击右上角的 Restore。

等待 VS 完成依赖解析。

再次编译即可。

如果有工程报任何包不存在,或者 Namespace ... does not exist ...。可以在 Browse 一栏中搜索该包名,然后在右方点击 Install(下面是安装完成时的截图)。然后再编译即可。
如 SharPersist 会报 Namespace TaskScheduler does not exist in Miscrosoft.Win32... 的错。那么搜索该包名,然后安装即可。

编译成功。

参考链接
- https://stackoverflow.com/questions/69045231/nuget-package-sources-missing








![[附源码]计算机毕业设计基于Java酒店管理系统Springboot程序](https://img-blog.csdnimg.cn/8b77efbf25c64a7fac9bd35a9e476171.png)










