当前位置:首页 » 编程语言 » mysqlphp注入

mysqlphp注入

发布时间: 2023-01-18 11:06:37

php + mysql 检测到注入漏洞,如何注入脚本删除数据

同一句语句里是不允许出现你这种格式的
如果你是有两条语句需要依次运行,那你可以用分号隔离。
比如:
insert into article_tmp select * from article;
delete from article;
不过你这两句语句有严重的逻辑性问题
delete from article;这句已经把article表里的数据都删了。你紧接着要select * from article,那你返回的肯定是空值,都被你前一句删了。

⑵ 如何预防PHP MYSQL注入【攻击】

补充:
对于16进制入侵还没确切防御手段,只能自己手动查有没有被入侵这样
你可以用javascript做客户端限制输入数据,治标不治本而已,填用户名的表单用username做name

function validate(){
var username = $("#username").val();
if (username.match(/[^a-zA-Z0-9]/) || username.length < 3)
{
alert('Invalid username: \'' + username+'\'' );
return false;
}
}

-------------------------------------------------------
php 漏洞已经相对很少了,告诉你个简单的预防单引号的方法

写下这个function

function sql_quote( $value )
{
if( get_magic_quotes_gpc() )
{
$value = stripslashes( $value );
}
if( function_exists( "mysql_real_escape_string" ) )
{
$value = mysql_real_escape_string( $value );
}
else
{
$value = addslashes( $value );
}
return $value;
}

然后写sql的时候这么写
$username = $_POST['username'];

query = "SELECT * FROM users WHERE username='".sql_quote($username) . "'";

如果有注入攻击的话必定用到单引号
//没有用sql_quote的sql语言

query = "SELECT * FROM users WHERE username='' OR '1'='1'";

//用了的,单引号就被避免了

query = "SELECT * FROM users WHERE username='\' OR \'1\'=\'1'";

⑶ php 如何防止 万能密码登录(mysql注入)

你可以使用内置的addslashes函数,或者使用我下面自己封装的函数,把$_GET 或者 $_POST的值做处理。

functionaddslashes2($str){
return(!get_magic_quotes_gpc())?addslashes($str):$str;
}

⑷ PHP MYSQL网站注入扫描工具如何使用

先明白注入类型! 一般是比如网站.PHP?id=5 and 1=1 正常 1=2错误 就表明有漏洞 然后在把 网站.PHP?id=5 复制到工具里,使查字段,然后找到注入字段 插入相应的PHP注入代码就可以了如 database(),user() load_file 这些,网上一大把

⑸ 关于php mysql 防注入,我的思路,求指点

一般思路就是这样。
但如果过滤太多字符,那你网站的正常使用也会受到很大影响。
php的addslashes()可以实现你所说的功能,但当你的SQL语句为$sql="select * from article where id=".$_GET['id'];时,过滤单引号什么的就不会起到什么作用。
再者,即使你的SQL语句换为$sql="select * from article where id='{$_GET['id']}'";也不见得保险。提交/t.php?id=%cf' or 1=1--%20也可以注入。具体可以网络一下双字节漏洞。
不过SQL注入也不是什么可怕的东西。例如对于要获取的数值数据,使用intval()过直接(int) $str;就可杜绝。对于字符变量就要注意了,要认真设置好数据库编码等等。
如果有好的编程习惯,注入什么的都不会怕滴。我也是php学习者,用php写了个博客www.fuxkit.com,欢迎来跟我交流^_^

⑹ 求一段php防mysql注入病毒代码。

//POST过滤安全
$_POST=check_input($_POST);
function check_input($value)
{
if(get_magic_quotes_gpc()){
$value = htmlspecialchars(trim($value));

} else {
$value = addslashes(htmlspecialchars(trim($value)));
}
return $value;
}
另一种如下:PHP整站防注入程序,需要在公共文件中require_once本文件
<?PHP
//判断magic_quotes_gpc状态
if (@get_magic_quotes_gpc ()) {
$_GET = sec ( $_GET );
$_POST = sec ( $_POST );
$_COOKIE = sec ( $_COOKIE );
$_FILES = sec ( $_FILES );
}
$_SERVER = sec ( $_SERVER );
function sec(&$array) {
//如果是数组,遍历数组,递归调用
if (is_array ( $array )) {
foreach ( $array as $k => $v ) {
$array [$k] = sec ( $v );
}
} else if (is_string ( $array )) {
//使用addslashes函数来处理
$array = addslashes ( $array );
} else if (is_numeric ( $array )) {
$array = intval ( $array );
}
return $array;
}
//整型过滤函数
function num_check($id) {
if (! $id) {
die ( '参数不能为空!' );
} //是否为空的判断
else if (inject_check ( $id )) {
die ( '非法参数' );
} //注入判断
else if (! is_numetic ( $id )) {
die ( '非法参数' );
}
//数字判断
$id = intval ( $id );
//整型化
return $id;
}
//字符过滤函数
function str_check($str) {
if (inject_check ( $str )) {
die ( '非法参数' );
}
//注入判断
$str = htmlspecialchars ( $str );
//转换html
return $str;
}
function search_check($str) {
$str = str_replace ( "_", "\_", $str );
//把"_"过滤掉
$str = str_replace ( "%", "\%", $str );
//把"%"过滤掉
$str = htmlspecialchars ( $str );
//转换html
return $str;
}
//表单过滤函数
function post_check($str, $min, $max) {
if (isset ( $min ) && strlen ( $str ) < $min) {
die ( '最少$min字节' );
} else if (isset ( $max ) && strlen ( $str ) > $max) {
die ( '最多$max字节' );
}
return stripslashes_array ( $str );
}
//防注入函数
function inject_check($sql_str) {
return eregi ( 'select|inert|update|delete|\'|\/\*|\*|\.\.\/|\.\/|UNION|into|load_file|outfile', $sql_str );

}
function stripslashes_array(&$array) {
if (is_array ( $array )) {
foreach ( $array as $k => $v ) {
$array [$k] = stripslashes_array ( $v );
}
} else if (is_string ( $array )) {
$array = stripslashes ( $array );
}
return $array;
}
?>

热点内容
古玩源码 发布:2025-07-17 18:22:49 浏览:87
ie浏览历史文件夹 发布:2025-07-17 18:07:05 浏览:261
php还是c 发布:2025-07-17 18:02:57 浏览:456
androidasp 发布:2025-07-17 17:57:34 浏览:475
采访直播脚本 发布:2025-07-17 17:53:46 浏览:881
怎样启用远程访问 发布:2025-07-17 17:52:19 浏览:559
c删除文件夹中的文件 发布:2025-07-17 17:52:17 浏览:487
我的世界梦服务器地址 发布:2025-07-17 17:30:30 浏览:323
c语言函数传递参数 发布:2025-07-17 17:24:50 浏览:923
ftp自动备份怎么用 发布:2025-07-17 17:19:41 浏览:887