标签: sanitization

PHP preg_replace()模式,字符串清理

我有一个正则表达式的电子邮件模式,并希望从字符串中删除所有但模式匹配的字符,简而言之我想要清理字符串...

我不是正则表达式大师,所以我在正则表达式中缺少什么?

<?php

$pattern = "/^([\w\!\#$\%\&\'\*\+\-\/\=\?\^\`{\|\}\~]+\.)*[\w\!\#$\%\&\'\*\+\-\/\=\?\^\`{\|\}\~]+@((((([a-z0-9]{1}[a-z0-9\-]{0,62}[a-z0-9]{1})|[a-z])\.)+[a-z]{2,6})|(\d{1,3}\.){3}\d{1,3}(\:\d{1,5})?)$/i";

$email = 'contact<>@domain.com'; // wrong email

$sanitized_email = preg_replace($pattern, NULL, $email);

echo $sanitized_email; // Should be contact@domain.com

?>
Run Code Online (Sandbox Code Playgroud)

模式取自:http://fightingforalostcause.net/misc/2006/compare-email-regex.php(第一个...)

php regex sanitization preg-replace

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

Activerecord:这个MySQL安全吗?如果不是,我该如何消毒呢?

我正在使用find_by_sql方法,我不确定我所做的是否安全?如果不是我怎么能消毒我的变量?

Table.find_by_sql("SELECT * FROM TABELS
     WHERE table.`table_id` = '#{params[:table]}'
           and insights.`created_at` >= '#{@stime}'
           and insights.`created_at` <= '#{@etime}'
     GROUP BY places.`id`
     ORDER BY sum(insights.`checkins`) DESC").paginate(:page => params[:page], :per_page => Place.per_page)
Run Code Online (Sandbox Code Playgroud)

mysql activerecord sanitization ruby-on-rails

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

当我将样式的span保存到MySQL时,样式将被删除

我使用TinyMCE作为我的PHP/CodeIgniter CMS后端输入.但是,当我使用文本颜色时,某些代码不会保存,也不会显示正确的颜色.

我怎么解决这个问题?

提前致谢.

<span style="color: #ff00ff;">Some text</span>
Run Code Online (Sandbox Code Playgroud)

<span  #ff00ff;">Some text</span>
Run Code Online (Sandbox Code Playgroud)

在数据库中


有些代码在这里.

在我的控制器中.

function _fields()
{
    $data = array(
       ....
        'content'          => $_POST['content'],
        ....
    );
    return $data;
}


function create()
{
    // We need TinyMCE, so load it
    $this->bep_assets->load_asset_group('TINYMCE');
    ...
    if ($this->input->post('name'))
    {
        $data = $this->_fields();
        $this->MKaimonokago->addItem($this->module,$data);
...
Run Code Online (Sandbox Code Playgroud)

在我的模型中.

function addItem($module,$data,$return_id=FALSE)
{
    $module_table = 'omc_'.$module;
    ...
    $this->db->insert($module_table, $data);
    ...
}
Run Code Online (Sandbox Code Playgroud)

php sanitization codeigniter tinymce

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

迭代所有mongoid字段的最佳方法

说我有一个mongoid类

Class User
    include Mongoid::Document
    field :username, type: String
    field :age, type: Integer

    before_save :remove_whitespace

    def remove_whitespace
        self.username.strip!
        self.age.strip!
    end
end
Run Code Online (Sandbox Code Playgroud)

在方法中remove_whitespace; 有没有更好的方法迭代所有字段使用块和迭代器去除它们而不是单独键入每个字段(self.username.strip!)?我班上有大约15个领域,正在寻找一个优雅的解决方案.

ruby validation sanitization mongodb mongoid

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

使用perl使用多个命令进行安全系统调用

我有一个Perl脚本,可以从Web表单中读取一些信息.为了做适当的卫生,我想使用这里system描述的语法.

他们建议你应该用以下形式形成系统命令,system ("cat", "/usr/stats/$username");这样username变量才会被解释为cat的参数.

如果我的命令的形式system("export REPLYTO=\"$from\"; echo \"$body\" | mail -s \"$subject\"");有多个系统命令,我该如何正确清理系统调用?

perl sanitization system input

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

检查输入的电子邮件是否是有效的公司电子邮件

是否有任何电子邮件检查 API 可用于验证电子邮件是否是公司电子邮件而不是个人电子邮件?

  1. 我不想接受@gmail @yahoo @bing @aol @any_other_public_providers
  2. 我想接受有效的公司电子邮件
  3. 我不想接受不存在的电子邮件@inexistentdomain

我还考虑在电子邮件主机的端口 25 上进行 ping 操作,但在这种情况下 @gmail,仍然会回复肯定,即使它是公共提供商。

多谢

javascript php email sanitization

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

如何在wordpress中使用html清理文本字段

嗨,我的问题是如何正确清理包含 html 的输入字段。现在我这样做:

if( isset( $_POST[ 'obecnie' ] ) ) { update_post_meta( $post_id, 'obecnie', sanitize_text_field($_POST['obecnie' ])); }

sanitize_text_field 是一个 Wordpress 函数,它从输入中删除所有 html。我需要实现的实际上是允许用户在输入中插入中断标记或新行实体并在前端显示它。

validation wordpress sanitization

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

我怎么知道我的输入正在被 express-validator 清理?

我已经实施express-validator并正在尝试清理用户正在搜索特定查询的输入字段。

我使用的测试查询是<script>Malicious code</script. 当请求进来时,我使用:

req.sanitizeQuery('searchQuery');
Run Code Online (Sandbox Code Playgroud)

当我然后检查查询是否已被清理时,该字符串没有以任何方式被更改/清理。

我在这里可能从根本上误解了消毒,在这种情况下,请指出。如果我是,那么我可以去填补我的知识空白,但与此同时,我可以向我的消毒剂抛出什么“测试”查询以检查它是否有效?

javascript sanitization node.js express express-validator

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

为什么 sanitizer.bypassSecurityTrustStyle 在设置 [style.background-image] 属性时返回警告?

我有一段简单的代码无法工作:

<div class="cover"
    [style.background-image]="sanitizer.bypassSecurityTrustStyle('url(/assets/img/picture (1).jpg)')">
</div>
Run Code Online (Sandbox Code Playgroud)

返回sanitizer.bypassSecurityTrustStyle以下消息:

SafeValue must use [property]=binding: url(/assets/img/picture (1).jpg) (see http://g.co/ng/security#xss)
Run Code Online (Sandbox Code Playgroud)

还尝试将消毒转移到自定义管道,结果是相同的。

当尝试以下解决方案时,Angularstyle.background-image完全忽略:

  1. [style.background-image]="'url(' + photo + ')'"
  2. [ngStyle]="{'background-image': 'url(' + photo + ')'}"

为什么?

角度:5.2.4

sanitization angular

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

Perl DBD::MySQL 执行不支持限制关键字后的字符串参数。始终被视为数字

我们最近使用最新的 DBI MySQL、Perl 等设置了一个新操作系统。

这种模式发现了我们的几个应用程序,并且在安装在新操作系统上时被破坏了。

my $sth = $dbh->prepare('select null colname, null colname2 limit 0'
        . ' union all select x, y from tbl where col like ?'
        . ' union all select z, a from tbl2 where col like ?');
$sth->execute('%test%', '%test%') or die ...;
Run Code Online (Sandbox Code Playgroud)

该错误是 MySQL 语法错误。我们已经确定了参数引用方式中的问题。

在上面的例子中,它在 MySQL 中是这样解析的。

select null colname, null colname2 limit 0
union all select x, y from tbl where col like 
union all select z, a from tbl2 where col like 
Run Code Online (Sandbox Code Playgroud)

但是,如果 …

mysql quotes perl sanitization limit

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