标签: sql-injection

LINQ to SQL InsertOnSubmit()是否受SQL注入攻击?

我有这样的代码:

var newMsg = new Msg
{
    Var1 = var1,
    Var2 = var2
};

using (AppDataContext appDataContext = new AppDataContext(ConnectionString))
{
    appDataContext.CClass.InsertOnSubmit(newMsg);
    appDataContext.SubmitChanges();
}
Run Code Online (Sandbox Code Playgroud)

阅读这篇文章后,我相信同样的逻辑适用.

有谁认为这是受SQL注入攻击?

.net c# sql-injection linq-to-sql

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

为什么我不能使用mysql和php进行sql注入测试

我试图检查一个网站的SQL注入攻击,并惊讶地发现它不是很简单,因为下面是简单的代码.

$sql="select * from user_acount where login_id='".$username."' and password='".$password."' and status='1' ";
Run Code Online (Sandbox Code Playgroud)

我不能做任何SQL注入来测试它.我写了以下内容

第一次尝试检查sql注入

Login:  admin'--
Password:'i typed nothing here '
Run Code Online (Sandbox Code Playgroud)

结果您无法登录密码错误.

第二:

Login:  admin or 1=1 --' 
Password:''
Run Code Online (Sandbox Code Playgroud)

结果您无法登录密码错误.

第三:

Login:  admin' or 1=1 
Password:''
Run Code Online (Sandbox Code Playgroud)

第4名:登录:admin或1 = 1' - 密码:''

结果您无法登录密码错误.

有谁能解释是什么阻止了我?我没有使用预处理语句,我也没有使用任何过滤器类,我没有real_escape_string?

php mysql sql-injection

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

如何创建SQL注入测试站点

我想创建一个简单的登录和注册表单,这允许我演示SQL注入,但我目前无法这样做.每次我尝试一个示例表单时,SQLmap都无法攻击它.有人可以给我一个非常简单的基本登录和注册表单,我可以用它来演示SQL注入吗?

php sql sql-injection

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

是否可以使用存储过程进行sql注入?

我看到了一些类似的问题,没有关于mysql ...
有没有办法将sql注入SP?如何在SP级别上保护此功能?
换句话说,可以通过传入参数以任何方式修改SP内部的查询结构吗?
如果我向存储过程发送参数"1; DELETE FROM users; - "并且查询是:

select *
from T
where = @p
Run Code Online (Sandbox Code Playgroud)

mysql stored-procedures sql-injection mysql-5.1

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

这个登录系统是否安全?

这个登录系统安全吗?

    if ($_POST[$submit]){

$user = $_POST[$user];
$pass = $_POST[$pass];

if ($user && $pass){ //if user and pass is enterered

        require("vars.php"); //require MySQL conection settings
        mysql_connect($auth_mysql_server, $auth_mysql_user, $auth_mysql_pass); //connect to MySQL
        mysql_select_db($auth_mysql_db); // select MySQL database

        $pass = md5($pass); // hash password

        $query = mysql_query("SELECT * FROM $auth_mysql_table WHERE user='$user'"); // run query
        $numrows = mysql_num_rows($query);

        if ($numrows == 1){ //check if user exists
            $row = mysql_fetch_assoc ($query);
            $dbid = $row[$auth_mysql_id_row];
                $dbuser = $row[$auth_mysql_user_row];
                $dbpass = $row[$auth_mysql_pass_row];

                if ($pass == $dbpass){ …
Run Code Online (Sandbox Code Playgroud)

php mysql security sql-injection login

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

防止SQL注入

是否有一个接受字符串作为参数并返回"已清理"字符串的函数,以便支持SQL注入保护?

c# sql asp.net protection sql-injection

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

防止SQL注入和XSS攻击

以下此功能是否能够阻止XSS攻击SQL注入

require_once('security.class.php');
function secure_data($data) {
    $data = mysql_real_escape_string($data);
    $filtered_data = filter_var($data, FILTER_SANITIZE_STRING);
    $secure_class = new security_class();
    $clean_data = $secure_class->xss_clean($filtered_data);         
    return $clean_data;
}
Run Code Online (Sandbox Code Playgroud)

安全类是笨.

php xss sql-injection codeigniter

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

除了SQL注入,如果你必须选择其他两个安全漏洞来防范,那会是什么?

我有一个使用各种数据库操作的站点,例如SELECT,INSERT,UPDATE和DELETE.我正在将我的所有mysqli切换到PHP PDO.我被告知切换到PDO应该有助于保持我的网站免受SQL注入,所以应该涵盖.

除了SQL注入,如果你必须选择其他两个安全漏洞来防范,那会是什么?

如果你能为我提供每个场景的一些代码示例,那将非常感激.

php security pdo sql-injection

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

如果页面上只显示一个结果,是否无法进行SQL注入?

我在大学里为我的安全模块做了一个SQL注入项目,我正在努力学习它是如何工作的.

我可以看到当脚本不过滤输入时它是如何工作的,然后循环遍历DB结果集,在屏幕上显示数据.但据我所知,以下代码容易受SQL注入,因为它只期望在屏幕上显示一组值:

<?php
mysql_connect("localhost", "root", "");
mysql_select_db("testdb");

$result = mysql_query("SELECT id, name, description FROM test_table WHERE id = ".$_GET['id']);

list($id, $name, $description) = mysql_fetch_row($result);

echo "ID: $id \n";
echo "Name: $name \n";
echo "Description: $description \n";

?>
Run Code Online (Sandbox Code Playgroud)

如果我将id的值设置为:

1 OR 1 = 1 UNION SELECT id, username, password FROM users LIMIT 1, 1 -- 
Run Code Online (Sandbox Code Playgroud)

除非我运行两次mysql_fetch_row($ result)语句,否则不会显示查询的UNION部分中的值,如下所示:

<?php
$result = mysql_query("SELECT id, name, description FROM test_table WHERE id = ".$_GET['id']);

list($id, $name, $description) = mysql_fetch_row($result);

echo "ID: …
Run Code Online (Sandbox Code Playgroud)

php mysql security sql-injection

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

Coldfusion SQL注入?未通过Web应用程序检查

好吧,我很难过,我有一个CF11 Web应用程序,它没有通过SQL注入的Web应用程序审计报告,这个报告是由Acunetix制作的.

无论如何,该报告在我的网站上给了我10页,容易受到sql注入,但我检查了代码,我实际上在每个实例中使用cfqueryparam

处理程序调用的其中一个查询的示例

<cfquery datasource="#application.DSN#" name="qResult" result="r">
        update  #table# s
        set s.loader_status = <cfqueryparam cfsqltype="cf_sql_varchar" value="#ucase(arguments.status)#">
        <cfif isDefined("bio_loader_status") and bio_loader_status neq ''>
         , s.bio_loader_status = <cfqueryparam cfsqltype="cf_sql_varchar" value="#ucase(bio_loader_status)#">
         </cfif>
         , s.session_id = NULL
         , s.session_expiration = NULL
         <cfif isDefined("arguments.rowid") and arguments.rowid neq ''>
                where s.rowid = CHARTOROWID(<cfqueryparam cfsqltype="cf_sql_varchar" value="#arguments.rowid#">)
         </cfif>

    </cfquery>
Run Code Online (Sandbox Code Playgroud)

我读过的所有内容都告诉我,我可以防止sql攻击(使用cfquery param,使用datasurce和table变量等),但报告另有说法

URL encoded GET input rowid was set to 1'"
Error message found: Error Executing Database Query
GET /index.cfm/status?rowid=1'%22&type=billing HTTP/1.1
Run Code Online (Sandbox Code Playgroud)

有人能说清楚我做错了吗?或者报告的假设是否正确?

coldfusion sql-injection

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