对XSS,Sql注入,拒绝服务等常见Web攻击有什么必要的防御方法?
编辑:我根据维基百科的描述收集了您的回复.我添加了一些额外的问题以获得完整的参考.
Sql注入
SQL注入是一种代码注入技术,它利用应用程序数据库层中发生的安全漏洞.当用户输入被错误地过滤为嵌入在SQL语句中的字符串文字转义字符或用户输入没有强类型并因此意外执行时,存在漏洞.它是一种更普遍的漏洞类型的实例,只要一种编程或脚本语言嵌入另一种内部,就会发生这种漏洞.
跨站点脚本(XSS)
跨站点脚本是一种通常在Web应用程序中发现的计算机安全漏洞,它允许恶意Web用户将代码注入其他用户查看的Web页面.此类代码的示例包括HTML代码和客户端脚本.攻击者可以使用利用漏洞利用的跨站点脚本漏洞来绕过访问控制,例如相同的源策略.
拒绝服务攻击
拒绝服务攻击(DoS攻击)或分布式拒绝服务攻击(DDoS攻击)是企图使其预期用户无法使用计算机资源.虽然DoS攻击的执行手段,动机和目标可能有所不同,但它通常包括一个或多个人的协同恶意努力,以防止Internet站点或服务有效或根本无法正常或无限期地运行.
我知道似乎不可能以编程方式避免拒绝服务攻击,但你怎么想?
蛮力攻击
在密码分析中,暴力攻击是一种通过系统地尝试大量可能性来破坏加密方案的方法; 例如,密钥空间中的大量可能密钥以便解密消息.在大多数方案中,人们认识到蛮力攻击的理论可能性,但它的建立方式使得执行它在计算上是不可行的.
一些额外的问题:
您如何看待尝试根据您的内容发布输入的网络机器人?例如,SO正在使用图像验证.
你对javascript eval函数有什么看法?
有没有办法访问服务器上没有暴露给外部的内容.例如,我有一个页面,将一些重要的记录插入到我的数据库中,只有我知道它的URL.有没有办法获得这种文件?我知道你可以为它设置一些安全规则.
(注意:目录列表已禁用,我托管此文件.)
谢谢你的回复!
有一个没有背景的链接和一个css规则,它会在悬停时更改背景.
父bg是白色的,悬停链接 - 蓝色.
如何从白色到蓝色缓慢地做悬停效果?
谢谢.
li a {}
li a:hover { background: blue; }
Run Code Online (Sandbox Code Playgroud) 是否有一种简单的方法来记录ASP.NET应用程序中的所有异常?我已经通过Application_OnError事件记录未处理的异常,但我想在页面级别处理异常时执行日志记录.
非常感谢.
你能解释一下下面的代码:
private static List<Post> _Posts;
public static Post GetPost(Guid id)
{
return _Posts.Find(delegate(Post p)
{
return p.Id == id;
});
}
Run Code Online (Sandbox Code Playgroud)
通过这种方式在通用列表中找到对象有什么意义?他可以简单地迭代列表.
这个委托方法如何为列表的每个元素调用?
注意:如果这有一个共同的名称,你可以更新我的问题标题吗?
谢谢 !
我有一个ID 3所控制control_1,control_2,control_3.
我想隐藏这些控件.
目前我正在使用这个:
$('#control_1').hide();
$('#control_2').hide();
$('#control_3').hide();
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法呢?
我能做点什么$('control_*').hide();吗?
有没有办法找到具有特定名称的控件?
我正在解决Project Euler中的问题.大部分问题都解决了
Run Code Online (Sandbox Code Playgroud)Ex : ulong number = 81237146123746237846293567465365862854736263874623654728568263582;
例如:十进制dec = 0,3242342543573894756936576474978265726385428569234753964340653;
例如:bool [] items = new bool [213192471235494658346583465340673475263842864836];
我找到了一个名为IntX的库来解决这个大数字.但我想知道如何用基本的.NET类型解决这个问题?
谢谢你的回复!
我写了一个asp.net应用程序,我的一个回发例程只是将用户提交的表单数据保存到sql 2005 db.所有在我的开发机器上运行都很棒,但是当我部署到实时站点时,我的解析日期检查器的日期无效.
基本上它是期待在现场机器上的美国日期格式,但这不是我想要的.用户需要能够以dd/MM/yyyy格式输入.因此像21/10/2009这样的有效日期会在实时服务器上返回错误,但在我的开发机器上则不会.下面是抛出异常的代码.
DateTime dt;
dt = DateTime.Parse(sdate);
//sdate in GB dd/MM/yyyy format
Run Code Online (Sandbox Code Playgroud)
是否可以强制解析例程以dd/MM/yyyy格式预期日期?
我正在为IT类开发一个项目,我需要在php页面中传递查询字符串的值,并将其读入ASP页面上的隐藏字段.
我目前正在将参数从php页面传递给ASP,但我对.NET一般都是新手.如何从字符串中获取数据并将其转换为C#中的变量?例如,如果网址是blah.com/upload?username=washington,我将如何获得"华盛顿"并将其保存到隐藏字段中?万分感谢.
Jergason
编辑
我知道这很容易.万分感谢.我有一个页面,我正在使用验证摘要和必填字段验证器.当我单击验证按钮时,错误消息显示在两个验证摘要中,显示在必填字段验证器中写入的消息.我想在验证摘要和必填字段验证器中显示不同的消息.例如,验证摘要应显示"标有*的字段是必填字段",并且必填字段验证器应仅显示"*".
谢谢
我不太熟悉ASP经典编程.我只需要在我的网页上运行一个小代码.我如何计算返回查询的记录?
<%
Set rsscroll = Server.CreateObject("ADODB.Recordset")
Dim strSQLscroll, rsscroll
strSQLscroll = "SELECT * FROM tblItems where expiration_date > getdate() order by expiration_date desc;"
rsscroll.open strSQLscroll,oConn
%>
Run Code Online (Sandbox Code Playgroud)
谢谢,
asp.net ×4
c# ×4
.net ×2
jquery ×2
asp-classic ×1
controls ×1
css ×1
cultureinfo ×1
datetime ×1
exception ×1
generics ×1
javascript ×1
math ×1
query-string ×1
security ×1
summary ×1
types ×1
validation ×1
wildcard ×1