草庐IT

PWN保护机制

全部标签

c# - 如何查找 C# 类的内部属性?保护?保护内部?

如果我有一个C#类MyClass如下:usingSystem.Diagnostics;namespaceConsoleApplication1{classMyClass{publicintpPublic{get;set;}privateintpPrivate{get;set;}internalintpInternal{get;set;}}classProgram{staticvoidMain(string[]args){Debug.Assert(typeof(MyClass).GetProperties(System.Reflection.BindingFlags.Public|Sys

c# - ConfigurationProperty 由于其保护级别而无法访问

我想在程序中读/写(并保存)应用程序的配置文件app.config是这样的:...当我使用ConfigurationManager.GetSection读取app.config时,它起作用了:varadwords_section=(System.Collections.Hashtable)System.Configuration.ConfigurationManager.GetSection("AdWordsApi");Console.WriteLine((string)adwords_section["LogPath"]);但是当我使用ConfigurationManager.Ope

c# - 如何保护此函数免受 SQL 注入(inject)?

publicstaticboolTruncateTable(stringdbAlias,stringtableName){stringsqlStatement=string.Format("TRUNCATETABLE{0}",tableName);returnExecuteNonQuery(dbAlias,sqlStatement)>0;} 最佳答案 对抗SQL注入(inject)的最常见建议是使用SQL查询参数(此线程中的几个人都建议过)。在这种情况下这是错误的答案。不能在DDL语句中使用SQL查询参数作为表名。SQL查询参数只能

c# - 我如何吞下所有异常并保护我的应用程序免于崩溃?

我发现了几个C#应用程序崩溃以响应错误条件,例如obj=null或obj.member=null。很多时候,obj来自3rdPartyApp的界面。并导致3rdPartyApp和MyCsApp一起崩溃。我如何在所有可能的区域添加异常处理,以便我的应用程序能够在这些灾难性情况下生存?将try-catch添加到所有位置并从情况中恢复是一个挑战。我怎样才能以现实、可靠和防弹的方式实现这一目标?[更新:工业自动化控制]结构:GUI(asp.net,c++)-RuntimeApp(C++)-MyCsApp(cs)-3rdPartyApp(Cs)正常程序:HostApp--(通过以太网Cabele

c# - 保护 WCF NetHttpBinding 的最有效方法

我将实现一个在NetHttpBinding下工作的Web服务支持双工连接。但问题是我不知道如何保护它。我试过使用CostumUserNamePasswordValidationMode,这是我的web.config:我认为问题是,每当我运行该项目时,无论是在IISExpress还是IIS8.0上,我都会收到此错误:CouldnotfindabaseaddressthatmatchesschemehttpsfortheendpointwithbindingNetHttpBinding.Registeredbaseaddressschemesare[http].如果我改变mode属性(pr

c# - 如何创建基于 HTTP header 的自定义身份验证机制?

我将旧版本的问题留在底部。我想为SignalR客户端实现自定义身份验证。在我的例子中,这是java客户端(Android)。不是网络浏览器。没有Forms身份验证,也没有Windows身份验证。这些是使用java库的普通vanillahttp客户端。所以,假设客户端在连接到HUB时传递自定义header。我需要以某种方式基于此header对用户进行身份验证。文档here提到这是可能的,但没有提供有关如何实现它的任何细节。这是我在Android端的代码:hubConnection=newHubConnection("http://192.168.1.116/dbg","",true,ne

c# - 在 C# 中使用 OLEDB 读取受密码保护的 excel 文件

在我的C#应用程序中,我使用的是OLEDB连接字符串"Provider=Microsoft.Jet.OLEDB.4.0;DataSource=c:\test.xls;ExtendedProperties=\"Excel8.0;HDR=NO;ReadOnly=true;IMEX=1\""读取Excel文件。为了读取受密码保护的文件,我尝试在连接字符串中添加密码字段,但无法读取文件。我想知道如果我事先知道其密码,是否有任何方法可以使用OLEDB读取受密码保护的Excel文件。 最佳答案 如果您使用查询来读取excel文件,则某些工作表是

通过基类变量访问的 C# 保护成员

这个问题在这里已经有了答案:Whycan'tIaccessC#protectedmembersexceptlikethis?(7个答案)关闭9年前。这似乎是个新手问题,但您能解释一下为什么Der.B()方法无法通过Base类变量访问protectedFoo吗?这对我来说很奇怪:publicclassBase{protectedintFoo;}publicclassDer:Base{privatevoidB(Baseb){Foo=b.Foo;}//Error:CannotaccessprotectedmemberprivatevoidD(Derd){Foo=d.Foo;}//OK}谢谢!

C# 5 async/await 线程机制感觉不对?

为什么调用线程要进入异步方法直到内部'await'?调用异步方法后立即生成一个线程不是更干净吗?这样您就可以确定异步方法会立即返回。您不必担心在异步方法的早期阶段没有做任何昂贵的事情。我倾向于知道一个方法是否会在“我的”线程上执行代码。不管堵不堵。该模型似乎开启了一系列介于两者之间的可能性。设计师比我聪明得多,所以我确信这是有充分理由的,我只是想好好想想。 最佳答案 Isn'titcleanertojustspawnathreadassoonasanasyncmethodiscalled.“异步”方法的全部意义在于避免生成新线程。您

c# - 双向文件夹同步加密以保护我的 Dropbox 数据

我想写一个小的.NET脚本/工具,它至少大部分与SecretSync相同。或BoxCryptor,但没有将加密key存储在公司的网络服务器上。首先,这听起来很简单:您有两个文件夹——“解密”文件夹和“加密”文件夹。在这两个文件夹上都有一个FileSystemWatcher因此,当文件发生更改时,该工具会收到通知。如果“解密”文件夹中的文件发生更改,它会加密该文件并将其写入“加密”文件夹。如果“加密”文件夹中的文件发生更改,它会解密该文件并将其写入“解密”文件夹。目前没问题。但是,如果用户直接从“已解密”文件夹运行应用程序(例如KeePass),会发生什么情况?同步和加密过程现在会遇到问