小编Mik*_*ith的帖子

TinyMCE,AntiXSS,MVC3和GetSafeHtmlFragment

我已经阅读了很多关于XSS以及如何处理的帖子.通常,共识是黑名单上的白名单,并避免使用正则表达式(太多的变体来处理).

我正在研究ASP.Net MVC3应用程序.我需要能够从用户条目中显示HTML(例如<strong>,<ul>,<li>等...)但我不想要任何XSS风险.

我正在通过Nuget使用AntiXSS软件包.在我的模型中,我有

[AllowHtml]
public string UserDetails{ get; set; }
Run Code Online (Sandbox Code Playgroud)

在我看来,我有TinyMCE迷上了textarea.

在我的控制器中,我从View获取帖子并清理它:

using Microsoft.Security.Application;
...
string SanitizedDetails = Sanitizer.GetSafeHtmlFragment(model.UserDetails);
Run Code Online (Sandbox Code Playgroud)

我的问题:我做得对吗?我是否受到大多数XSS问题的保护,还是我咆哮着错误的树?

asp.net xss tinymce antixsslibrary asp.net-mvc-3

6
推荐指数
1
解决办法
1717
查看次数

SQL在子网中查找IP地址

我们最近开始使用 MaxMind Geolite Database 作为基于 IP 的城市查找。有很多关于将数据导入 SQL Server 的说明(我已经完成了)。现在我需要弄清楚如何在子网中搜索给定的 IP。

数据库架构:

CREATE TABLE GeoIP (   
    network varchar(20) not null,
    geoname_id varchar(20) not null,
    registered_country_geoname_id varchar(20) not null,
    represented_country_geoname_id varchar(20) not null,
    is_anonymous_proxy int,
    is_satellite_provider int,
    postal_code varchar(20),
    latitude Decimal(9,6),
    longitude Decimal(9,6),
    accuracy_radius int
); 
Run Code Online (Sandbox Code Playgroud)

“网络”列包含带有 IP/子网的行数据(例如:1.0.32.0/19、1.0.64.0/20、1.0.80.0/22)

给定一个 IP 地址,我正在尝试编写一个将返回 geoname_id 的 SELECT 语句。

Ex: SELECT geoname_id FROM GeoIP where @user_ip in {some expression}
Run Code Online (Sandbox Code Playgroud)

我想这样做而不必将网络列分解为“low_ip”和“high_ip”BIGINT 列。但是,如果这是唯一的方法,我还可以使用有关如何编写全局 UPDATE 语句以从现有数据添加这些列的一些帮助。

SQL SERVER 2008 需要这个,所以不能使用任何很酷的 Postgres 等功能。

谢谢!!

sql-server

3
推荐指数
1
解决办法
6387
查看次数