草庐IT

安全基础

全部标签

c# - 任何特定于 C# 的编码安全问题?

在C++世界中,有多种方法可以制造可利用的漏洞:缓冲区溢出、不安全的sting处理、各种算术技巧、printf问题、不以'\0'结尾的字符串等等。尽管这些问题大部分都在java中解决了,但还是有一些事情要谈。但是是否有任何典型的特定于C#的编码漏洞的列表?(与.NET平台本身无关) 最佳答案 以下是您可能会遇到的一些问题:如果您有任何类型的语言解释器(HTML、JavaScript和SQL是三大语言),那么您仍然可能存在注入(inject)或XSS漏洞。P/Invoke可能会导致问题,尤其是在您进行任何自定义编码时。即使您通过P/I

c# - C# 中的 EventHandler<TEventArgs> 线程安全?

使用我自定义的EventArgs例如:publiceventEventHandlerSampleEvent;来自msdn例如:publicclassHasEvent{//DeclareaneventofdelegatetypeEventHandlerof//MyEventArgs.publiceventEventHandlerSampleEvent;publicvoidDemoEvent(stringval){//Copytoatemporaryvariabletobethread-safe.EventHandlertemp=SampleEvent;if(temp!=null)temp

c# - .NET 加密类的线程安全性?

我有一个高级目标,即创建一个static实用程序类来封装我的.NET应用程序的加密。在内部,我想尽量减少不必要的对象创建。我的问题是:在.NETFramework中实现对称加密的类的线程安全性是什么?特别是System.Security.Cryptography.RijndaelManaged和ICryptoTransform它生成的类型。例如,在我的类构造函数中,我可以简单地按照以下几行做一些事情吗?staticMyUtility(){using(RijndaelManagedrm=newRijndaelManaged()){MyUtility.EncryptorTransform=

C#:简单的 Windows 服务提供安全异常

我正在以下链接中进行演练:http://msdn.microsoft.com/en-us/library/zt39148a%28VS.80%29.aspx我已经完全按照它逐行进行了。我成功安装了该服务,但是,当我尝试运行它时,出现以下错误消息:“MyNewService.Exe[5292]中发生未处理的异常(“System.Security.SecurityException”)。我已经看到它对很多人有效,但有些人遇到了这个异常,尽管我找不到答案。有人有想法吗?谢谢。 最佳答案 EventLog.SourceExists方法将导致此

c# - C# 中类型安全的即发即弃异步委托(delegate)调用

我最近发现自己需要一种类型安全的“即发即弃”机制来异步运行代码。理想情况下,我想做的是:varmyAction=(Action)(()=>Console.WriteLine("yadayada"));myAction.FireAndForget();//asyncinvocation不幸的是,调用BeginInvoke()的明显选择没有相应的EndInvoke()不起作用-它会导致缓慢的资源泄漏(因为异步状态由运行时保持并且从未释放......它期待最终调用EndInvoke()。我也无法在.NET线程上运行代码池,因为它可能需要很长时间才能完成(建议只在线程池上运行相对较短生命周期的

路由基础(定义、作用、组成、特点、配置)

路由定义:指导IP报文从源地址发送到目的的路径信息,也可以理解成为通过相互连接的网络把数据包从源地址移动到目标地点的过程。路由器主要功能:1.路由功能(寻址功能):路由表的建立、维护、查找2.交换功能:路由器的交换功能与以太网交换机执行的交换功能不同,路由器的交换功能是在网络之间转发分组数据的过程,包括从接受端口收到数据帧、解封装、对数据包做出相应处理、根据目的网络查找路由表、决定转发端口、以及做新的数据链路层封装过程。3.隔离广播、指定访问规则:路由器阻止广播的通过,并且可以通过设置访问控制列表(ACL)来对流量进行控制。4.异种网络互联:支持不同的数据链路层协议,连接异种网络5.子网间的速

Android开发基础4:事件处理和交互实现程序设计

应用前提:Android开发中,事件是用户对图形界面的操作,Android应用程序通过事件和信息来实现人机交互。事件包括:按下、弹起、滑动、双击。信息包括:信息框、对话框、通知。本节学习和Android中与事件处理和交互相关的组件及知识。每个工程下面的模块必须做的工作!布局文件.xml中必须设置的是:根目录为,里面添加android:orientation的方向属性为vertical。1.Toast--显示信息提示框应用场景:App注册界面,用户发送手机号码进行验证时,用户单击“发送验证码”后,页面下方会出现一条信息“已发送,请注意查收”。信息出现3~5s然后自动消失。这样的就是Toast提示

c# - 如何安全地停止在 Windows 服务中运行的 C# .NET 线程?

我正在维护一些看起来像这样的代码。这是一项Windows服务,每30分钟执行一些工作。ActualWorkDoneHere方法需要大约30秒才能运行,但如果它在运行时停止,可能会使事情处于糟糕的状态。防止这种情况发生的最佳方法是什么?我应该用onstop方法中设置为false的bool值替换While(true)(删除线程Abort调用)吗?有什么方法可以判断线程是否正在休眠?namespaceWorkService{publicpartialclassWorkService:ServiceBase{privateThread_workerThread=null;publicWorkS

c# - 这个非锁定的 TryGetValue() 字典访问线程安全吗?

privateobjectlockObj=newobject();privateDictionarydict=newDictionary();publicstringGetOrAddFromDict(intkey){stringvalue;//non-lockedaccess:if(dict.TryGetValue(key,outvalue))returnvalue;lock(this.lockObj){if(dict.TryGetValue(key,outvalue))returnvalue;stringnewValue="valueof"+key;//placelongoperat

c# - 线程信号基础

在C#中如何实现线程信号? 最佳答案 这是为您定制的控制台应用程序示例。这不是一个很好的现实世界场景,但线程信号的使用是存在的。usingSystem;usingSystem.Threading;classProgram{staticvoidMain(){boolisCompleted=false;intdiceRollResult=0;//AutoResetEventisonetypeoftheWaitHandlethatyoucanuseforsignalingpurpose.AutoResetEventwaitHandle=n