和大家讨论下,关于网站安全方面的问题

tianyu_lianxin 2009-03-04 03:17:18


我在 “大家都是如何防止SQL注入式攻击的?” 帖中觉得这样讨论的层面有点小了

不能很好的讨论关于网站安全方面的问题,

现在重发一帖和大家讨论下,关于网站安全方面的问题,

大家可以畅所欲言,讨论如何才能建立一个安全可靠的网站,

希望大家多多参与,讲的越详细越好。
...全文
115 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
lemonworld 2009-03-31
  • 打赏
  • 举报
回复
<b> <>
tianyu_lianxin 2009-03-09
  • 打赏
  • 举报
回复
[Quote=引用 19 楼 walkghost 的回复:]
纯静态html,不试用任何js,用unix+apache做服务器,软硬防火墙要架好,这样的话,只要服务器安全了,这个网站就肯定安全了。
[/Quote]

纯静态html,不试用任何js,怎么理解呢?
Roc_Lee 2009-03-06
  • 打赏
  • 举报
回复
数据库操作使用SqlParamter参数不使用自己组合sql,就大大降低危险了
因为sqlparamter已经有了防止sql注入之类的不合理字符

#region 防SQL注入
/// <summary>
/// 防SQL注入
/// </summary>
/// <param name="str"></param>
/// <returns></returns>
public static string FilerSql(string str)
{
str = str.Replace("!", "");
str = str.Replace("@", "");
str = str.Replace("#", "");
str = str.Replace("$", "");
str = str.Replace("^", "");
str = str.Replace("&", "");
str = str.Replace("*", "");
str = str.Replace("-", "");
str = str.Replace("+", "");
str = str.Replace("=", "");
str = str.Replace("|", "");
str = str.Replace("--", "");
str = str.Replace("<", "");
str = str.Replace(">", "");
str = str.Replace("?", "");
str = str.Replace("'", "");
str = str.Replace("/", "");
str = str.Replace("%", "");
return str;
}
#endregion
BossFriday 2009-03-06
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 zzxap 的回复:]
参数化+过滤单引号 就足够了,不要想那么复杂。
[/Quote]
参数化本身就能过滤单引号.

如果要逐一过滤,就不是仅仅过滤单引号一个所能解决的.
总之,sql放注入的原则,就是防止sql被截断后,可能导致的去执行其他的恶意的操作.
mqc507 2009-03-06
  • 打赏
  • 举报
回复
老僧畅谈,小生无言。
BossFriday 2009-03-06
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 tianyu_lianxin 的回复:]
对了,网页被挂马是怎么回事,是不是代码写的不够完善造成的,
能不能防止网页被挂马呢?
[/Quote]
目前站点被挂马通常原因是ARP!所以装一个ARP防火墙是必须的.

如有排除了ARP的原因,那么方式可能是:
1.中毒了
2.确实server被注入了.(那么你再查是通过什么方式被注入的
)
tianyu_lianxin 2009-03-06
  • 打赏
  • 举报
回复
对了,网页被挂马是怎么回事,是不是代码写的不够完善造成的,
能不能防止网页被挂马呢?
feifeiyiwen 2009-03-06
  • 打赏
  • 举报
回复
参数化+过滤单引号
feifeiyiwen 2009-03-06
  • 打赏
  • 举报
回复
参数化+过滤单引号
walkghost 2009-03-06
  • 打赏
  • 举报
回复
纯静态html,不试用任何js,用unix+apache做服务器,软硬防火墙要架好,这样的话,只要服务器安全了,这个网站就肯定安全了。
huyidao21 2009-03-06
  • 打赏
  • 举报
回复
最主要的还是服务器本身问题,权限和安全策略.
程序方面,采用参数形式而不是拼凑SQL语句,另外就是特定的一些正则匹配.(用户名,邮箱等)
zzxap 2009-03-04
  • 打赏
  • 举报
回复
参数化+过滤单引号 就足够了,不要想那么复杂。
liudanking 2009-03-04
  • 打赏
  • 举报
回复
参数化就很有效了。不要把代码搞冗杂了,这样效率就底下了
wdzr_826 2009-03-04
  • 打赏
  • 举报
回复
DbParamter最方便有效的方法。
Teng_s2000 2009-03-04
  • 打赏
  • 举报
回复
哈哈,不过没有绝对的安全的啊!
pgameli 2009-03-04
  • 打赏
  • 举报
回复
学习
hhxxcj 2009-03-04
  • 打赏
  • 举报
回复
用参数化SQL语句那是必然但,但我觉得最好在入库时最好先给它过滤一遍,那样更能提高它的安全性,最好多些验证吧
chenyoujin 2009-03-04
  • 打赏
  • 举报
回复
aspnet30 说的不错啊!----“参数化查询,如@ID
还有就是get, 或post时,加上过滤 ”可以去看看!
dandysunny 2009-03-04
  • 打赏
  • 举报
回复


程序部分:
地址传值时加密参数。
危险字符的替换。
当然服务器的安全是首要的
chenyoujin 2009-03-04
  • 打赏
  • 举报
回复
我认为可以进行多重语言设置!容入数据库系统信息。。。。。。。。
加载更多回复(3)

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧