首页 > 代码库 > sqlmap进阶: 坎坷地安装cx_Oracle模块,直接连接oracle来dump

sqlmap进阶: 坎坷地安装cx_Oracle模块,直接连接oracle来dump

在sqlmap.conf里填好oracle连接信息(ip,sid,user,password)后,想直接连接oracle,而不是通过注入点。

直接python sqlmap.py -c sqlmap.conf就可以了,提示cx_Oracle模块未安装,那就安装吧。

由于之前在kali安装过,这次在redhat上信心满满,

可惜世事难料!


odat上的cx_Oracle模块安装过程,拿来用用。

Installation (optional)

  • Get instant client basic, sdk (devel) and sqlplus from the Oracle web site:

    • X64: http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html
    • X86: http://www.oracle.com/technetwork/topics/linuxsoft-082809.html
  • 首先到oracle官网下载三个rpm安装包(需要先注册),因为是redhat可直接安装rpm,不用像kali需要转换成deb,

  • 方便不少,本以为往下也一路顺风的,唉...


  • 安装下载的三个包,我下载的是11.1.0.1版的。
oracle-instantclient11.2-basic-???.x???.rpm
oracle-instantclient11.2-sqlplus-???.x???.rpm
oracle-instantclient11.2-devel-???.x???.rpm
  • 安装好,开始配置变量
  • 在/etc/profile最后加上这几行(这几句是不对的,卡在这里差点崩溃):
export ORACLE_HOME=/usr/lib/oracle/11.2/client64/
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export PATH=$ORACLE_HOME/bin:$PATH
正确的应该是
export ORACLE_HOME=/usr/lib/oracle/11.1.0.1/client64

export LD_LIBRARY_PATH=:$ORACLE_HOME/lib:/usr/local/lib:$LD_LIBRARY_PATH:.

export TNS_ADMIN=$ORACLE_HOME

export PATH=$PATH:$ORACLE_HOME/bin:.

  • 断开ssh,或者重启(使配置生效),重新连接redhat,敲下命令:
sqlplus

如果没错的话,那就太好了,继续吧,但如果提示sqlplus吧唧吧唧的,那就说明上面的/etc/profile写错了。


  • 然后Create a symlink to your so file.
cd $ORACLE_HOME/lib/
sudo ln -s libclntsh.so.11.1   libclntsh.so
  • 然后Create the /etc/ld.so.conf.d/oracle.conf file and add the path to Oracle home:
/usr/lib/oracle/11.2/client64/lib/
  • 然后Update the ldpath using:
sudo ldconfig
  • 然后开始安装 CX_Oracle
sudo -s
source /etc/profile
pip install cx_Oracle
安装时是python2.6
pip提示出错,重新下载2.7.8的源代码编译安装python,
不过自己编译的python将提示more extensions(‘gzip‘, ‘ssl‘, ‘sqlite3‘))
current oython has been built without吧唧的,
因为redhat缺少某某,于是没有编译sqlite3模块

需要自己下载sqlite3编译,再重新编译python

参考http://www.redicecn.com/html/Python/20110419/251.html

 先安装SQLite3,然后重新编译安装Python。

 

1 安装SQLite3。

 

1)wget http://www.sqlite.org/sqlite-3.5.6.tar.gz

2)tar -xzvf sqlite-3.5.6.tar.gz

3)cd sqlite-3.5.6

4)./configure --disable-tcl

5)make 

6)make install

 

然后重新编译最新的python2.7.8

参考http://m.blog.chinaunix.net/uid-26000296-id-4356738.html

一、升级到2.7.8

1. 升级安装

首先下载源tar包

可利用linux自带下载工具wget下载,如下所示:

# wget http://www.python.org/ftp/python/2.7.8/Python-2.7.8.tar.gz

下载完成后到下载目录下,解压

# tar -zxvf Python-2.7.3.tar.gz

进入解压缩后的文件夹

cd Python-2.7.3

在编译前先在/usr/local建一个文件夹python2.7.3(作为python的安装路径,以免覆盖老的版本)

# mkdir /usr/local/python2.7.3

在解压缩后的目录下编译安装

# ./configure --prefix=/usr/local/python2.7.3

# make

# make install

此时没有覆盖老版本,再将原来/usr/bin/python链接改为别的名字

# mv /usr/bin/python /usr/bin/python_old

再建立新版本python的链接

# ln -s /usr/local/python2.7.3/bin/python2.7 /usr/bin/python

这个时候输入

# python

就会显示出python的新版本信息

view sourceprint?

Python 2.7.3 (default, Sep 29 2013, 11:05:02)

[GCC 4.1.2 20080704 (Red Hat 4.1.2-54)] on linux2

Type "help", "copyright", "credits" or "license" for more information.

>>>

  • pip安装cx_Oracle, 测试一下:
python -c ‘import cx_Oracle‘ 

成功了



最后,python sqlmap.py -c sqlmap.conf直接连接oracle进行dump...


速度杠杠的。

sqlmap进阶: 坎坷地安装cx_Oracle模块,直接连接oracle来dump