ОЗУ и менеджер памяти.

Тема в разделе "WASM.BEGINNERS", создана пользователем DoctorWho, 18 авг 2010.

  1. DoctorWho

    DoctorWho New Member

    Публикаций:
    0
    Регистрация:
    16 июл 2010
    Сообщения:
    87
    Вот интересная вещь. Когда мы юзаем аллокатор памяти, он, прежде чем дать нам адрес нового блока затирает прошлое содержимое чем-нибудь вроде 0xBAADFOOD или просто нолями. Так вот вопрос: если убить в ядре функцию "затирания" то теоретически мы можем получить чужие данные? Спрашиваю потому что в ядре я нуб.
     
  2. SII

    SII Воин против дзена

    Публикаций:
    0
    Регистрация:
    31 окт 2007
    Сообщения:
    1.483
    Адрес:
    Подмосковье
    Именно так. Поэтому для обеспечения безопасности и производится затирание. Хотя, понятное дело, это отрицательно влияет на производительность.
     
  3. DoctorWho

    DoctorWho New Member

    Публикаций:
    0
    Регистрация:
    16 июл 2010
    Сообщения:
    87
    А какими примерно путями можно убить затирание? И если убивать то учитывать флаги GPTR(GlobalAlloc) LPTR(LocalAlloc) и им подобные в функциях МП, т.к. другие приложения использующие МП будут ожидать обнулённые блоки?
     
  4. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    DoctorWho
    Заполнит указанным вами значением, либо нулями. В ядре не нужно обходить никакие функции затирания, там читается всё что нужно напрямую.
     
  5. DoctorWho

    DoctorWho New Member

    Публикаций:
    0
    Регистрация:
    16 июл 2010
    Сообщения:
    87
    Clerk
    Т.е. нужно копаться в kernel32.dll и ntdll.dll?
     
  6. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    DoctorWho
    Вопрос формулируйте нормально.
     
  7. DoctorWho

    DoctorWho New Member

    Публикаций:
    0
    Регистрация:
    16 июл 2010
    Сообщения:
    87
    Сорри) Память затирают переходники к ядру в kernel32 и ntdll?
     
  8. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    DoctorWho
    Память ядро затирает.
     
  9. DoctorWho

    DoctorWho New Member

    Публикаций:
    0
    Регистрация:
    16 июл 2010
    Сообщения:
    87
    Но в посте №4 вы сказали, что в ядре ничего обходить не надо, а мне бы хотелось, чтобы ничего не затиралось вовсе. Исключая случаи когда приложение уровня пользователя просит заранее обнулённые блоки.
     
  10. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    DoctorWho
    Ага, как ты представляеш такую защиту? пропатчил у себя в процессе, и читай ядро "сколько угодно" (выделяй много памяти и ищи по сигнатурам то что нужно)