Abstract: 修改新闻管理系统,防止 SQL 注入

Table of Contents

  1. login.php
  2. xinwenmoreandpinglun.php
  3. zengjiaxinwen.php
  4. index.php
  5. 个人信息和安全设置
    1. personal_information.php
    2. anquanshezhi.php
  6. 问题与改进

login.php

在登录界面,存在万能密码漏洞,用户名输入 admin' or 1 点击提交按钮,可以登录。对输入的用户名进行函数处理,可以防止此类问题发生。

xinwenmoreandpinglun.php

查看新闻及评论功能界面,在 URL 后输入 ' --+ ,页面可以正常显示, 存在 SQL 注入。

对传入的 action 进行函数处理

再次尝试 SQL 注入

zengjiaxinwen.php

在增加新闻界面,在标题中写入 标题' or sleep(1) -- |,点击提交插入成功。

之后再新闻展示,新闻排序等功能时,都会出现延时现象。在这里做简单的防止注入措施。

index.php

index.php 页面的搜索框,输入 admin%'# 发现能正常搜索。

修改后再次输入 admin%' #,搜索失败

个人信息和安全设置

personal_information.php

个人信息界面,邮箱存在时间盲注漏洞。

anquanshezhi.php

问题与改进

  1. 增加新闻界面,对标题和内容的处理不合理,当标题和内容输入的内容包含预定义字符时,页面显示的效果与预期不符。
  2. 存在潜在的 SQL 注入漏洞。