公司多年前交付的系统如今需要修复几个漏洞,但是源代码已经丢失,只能获取到IIS上的运行文件。我使用dotpeek进行反编译,得到的代码有两万五千多个错误。代码是.NET mvc的。
将dll反编译后得到的代码有大量反编译工具生成的类似<>o__3.<>p__0的成员变量引用,希望有高手能快速得到正确的可运行的代码。
建议直接上waf,不要考虑反编译来修补漏洞了
在.NET中,反编译工具(如dotPeek)可以帮助你获取程序集的源代码,但由于编译时优化、元数据丢失、IL到C#转换的复杂性等因素,生成的代码通常包含错误、警告以及不完整的符号(如匿名方法和本地变量等),导致难以直接编译或运行。
处理这种大量错误的情况需要一系列复杂的步骤和技巧,没有快速且保证得到完全正确代码的方法。以下是一些建议,帮助你尽可能接近原始代码:
清理反编译代码:
使用其他反编译工具:
依赖第三方库:
分析程序集元数据:
逐步修复和测试:
考虑聘请专家:
安全性考虑:
请注意,即使经过上述步骤,你也可能无法完全恢复原始代码的所有功能和性能。此外,由于源代码丢失,可能存在一些无法修复的问题,尤其是如果原始代码使用了特定的编译器优化或特定的运行时行为。
最后,提供报酬作为寻求帮助的动机是可以的,但请注意在公共平台上(如Stack Overflow)讨论报酬可能不是最佳做法。你可以考虑在专业的开发者社区、论坛或平台上发布相关信息,以寻找愿意帮助你解决问题的专家。同时,请确保遵守所有相关的法律和道德规定,特别是在处理公司资产和敏感信息时。
我在C#中使用NUnit和Selenium来构建一个框架,其中包含在多个浏览器上运行多个测试用例。在这种情况下也支持Microsoft Edge。当我设置测试时,chrome和firefox正常运行,但edge出现以下错误: OpenQA。硒。WebDriverException:向远程WebDriver服务器发送HTTP请求以获取URL时,引发了一个响应为null的异常http://localh
我正在反编译一个谷歌chrome扩展,因为它看起来很可疑。扩展是用javascript编写的,但有人能告诉我像这样的符号到底是什么,以及如何将它们“翻译”回正常的字符串吗? “\x63\x68\x61\x72\x43\x6F\x64\x65” 完整文件的Jsbin:http://Jsbin.com/onevira/1/
[ERROR]$home/workspace/javaExamplePbServiceCall/src/main/java/example/ServiceCallPiqi.java:[13,23]ERROR:';‘预期 手工编译产生100个错误,这里是第一个: javac-cp$home/.m2/repository/com/google/protobuf/protobuf-java/2.4.1/
自述文件说 init:[mkdir]跳过/home/euphoria/androidscreencast/androidscreencast/bin,因为它已经存在。 BUILD FAILED/home/euphoria/androidscreencast/androidscreencast/BUILD.xml:26:编译失败;有关详细信息,请参阅编译器错误输出。在org.apache.tools
我们的控制器看起来像这样- 在这里,如果我们没有在请求中指定所需的参数“testCode”,我们会得到“400 Bad request”,但错误响应的消息部分仍然为空。 我们得到的回应- 但预期是- 我们在下面使用Spring依赖项- 我看到的是,为此我们得到了MissingServletRequest estParameterException,但在异常中消息为空白("")。
我最近在部署到我们的共享主机时遇到了问题。从 Visual Studio 通过 Web 部署进行部署时,99% 的时间我在登录后在登录页面或主页上收到此错误。有时我可能会点击几下不同的部分,然后它就会击中。它通常会在几分钟到90分钟后消失。 运行Windows Server 2012 R2 Standard、IIS8和.NET 4.5的Web主机。 Web主机建议我需要使用Visual Studi