mysql_real_escape_string / Говнокод #24817 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
https://ru.wikipedia.org/wiki/Хранимая_процедура#Возможности_программирования
Начиная с версии Oracle 10g поддерживается так называемая естественная компиляция
(native compilation) хранимого процедурного кода в Си и затем в машинный код целевой
машины, после чего при вызове хранимой процедуры происходит прямое выполнение её
скомпилированного объектного кода.

Можно сделать вирусню, живущую в этих самых хранимых процедурах в машинном коде и инфицирующую другие БД с хранимыми процедурами

Запостил: j123123 j123123, (Updated )

Комментарии (42) RSS

  • Пажжи, там ведь PL/SQL транслируется в Си? Если так, то вся петушня ограничена кодогенерацией самого Сракла.
    Ответить
    • Надо попробовать найти баг в кодогенерации Сракла и написать такую хранимку, которая бы этот баг юзала. Хотя вот если в самой БД хранится именно уже машинный откомпиленый код, то тогда это не надо
      Ответить
      • для этого тебе нужен доступ на запись к БД, которая обычно живёт в интранете.

        > живущую в этих самых хранимых процедурах в машинном коде и инфицирующую другие БД с хранимыми процедурами

        Вот это я вообще не понял.
        Ответить
        • > живущую в этих самых хранимых процедурах в машинном коде и инфицирующую другие БД с хранимыми процедурами

          Ну а че тут непонятного? Хранимая процедура — объект базы данных, представляющий собой набор SQL-инструкций, который компилируется один раз и хранится на сервере.

          Если хранимая процедура в самой БД (.dba файле) оракла хранится не как набор SQL-инструкций, а как набор инструкций процессора x86-64, то в хранимку можно насрать кодом, который найдет другие .dba файлы с хранимками, и их тоже завирусует
          Ответить
  • Смотря как они запускаются. Если в том же адресном пространстве что и СУБД то да, в теории можно.

    Интересно посмотреть на систему где с ботлнеком боряца посредством копеляции хранимок
    Ответить
    • Настоящие цари не признают эти заедушные говноязычки вроде SQL. В царской БД все запросы пишутся прямо в машинном коде
      Ответить
      • БД — это лишняя абстракция, которую придумали заедушные анскилябры чтобы имитировать деятельность и не вылететь с заедушной работы. Цари же, как известно, хранят данные только в массивах, а сами массивы записывают в строго заданные сектора жёсткого диска.
        Ответить
        • Поэтому я за "PHP" - с помощью "file_get_contents", "json_decode", "json_encode" и "file_put_contents" "MySQL" может и приотсосать; но лишь в том случае, если сайт примитивен.
          P.S.: Возможна замена "json_decode" и "json_encode" на "unserialize" и "serialize".
          Ответить
        • А слабо́ замапить какой-нибудь диапазон адресного пространства процессора на сектора жёсткого диска, чтобы запись в определённый массив в божественной сишечке сразу приводила к записи на жёсткий диск?
          Ответить
  • Ты и без нативного кода можешь заражать процедуры на других серваках.

    Вроде одно время на mssql подобный червь по сервакам прыгал.
    Ответить
  • Ну учитывая что на ораклах и mssqlях DBAшники могут чуть ли не полные CRMы писать (включая генерацию веб страниц, отчетов в pdf, и отсылку оных на email), это логичное решение

    Вот когда в PL/SQL можно будет делать вставки на машинных кодах (чтобы использовать инструкции процессора, неизвестные софту) вот тогда будет кайф
    Ответить
    • Можно из Berkeley DB такое сделать. Хранить в базе позиционно-независимый код, грузить его в память и запускать.
      Ответить
      • типа просто считать бинарные данные, пометить страничку как executable, и запустить?

        А потом пустить туда ПХПшника, чтобы он в этой базе сохранил данные, переданные гетом

        Хорошо, что кое-где есть W^X
        Ответить
        • > сохранил данные, переданные гетом

          Ну охуенно же! Не хватает какой-то фичи в серваке -- пишешь, компилишь, заливаешь и радуешься. И себе и людям. Да ещё и пирфоманс хороший.
          Ответить
          • да, получается довольно гибко.. В CMS на PHP можно через веб-интерфейс править шаблоны, а тут можно добавлять вообще весь функционал

            <html>
            <?asm
            Ответить

Добавить комментарий

Семь раз отмерь — один отрежь, guest!

    А не использовать ли нам bbcode?


    8