Bug总能在你意想不到的地方给你个措手不及,只是它所带来并不是惊喜,而是Blue Screen Of Death !
既如此,只能兵来将挡。
先介绍一下程序的大体流程:
NTSTATUS
XXXProcessDirents(…)
{
do {
KeEnterCriticalRegion();
ExAcquireResourceSharedLite(&fcb->Resource, TRUE);
/* access several members of fcb structure */
ExReleaseResourceLite(&fcb->Resource);
KeLeaveCriticalRegion();
XXXXProcessDirent(…);
} while (list_is_not_empty(….));
return status;
}
NTSTATUS
XXXXProcessDirent(…)
{
HANDLE handle = NULL;
XXXX_FILE_HEADE fileHead;
……
/* open file */
status = ZwCreateFile(&handle, GENERIC_READ, &oa, &iosb, NULL, 0,
FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE,
FILE_OPEN, 0, NULL, 0);
/* read file header*/
status = ZwReadFile(handle, ioevent, NULL, NULL, &iosb, (PVOID)&fileHead,
sizeof(XXXX_FILE_HEADE), &offset, NULL);
/* check whether file is interesting to us */
if (status == STATUS_SUCCESS && iosb.Information == sizeof(……)) {
/* it’s my taste, haha */
}
/* close file, not interested in it any more */
if (handle){
ZwClose(handle);
}
return status;
}
过程比较简单,XXXProcessDirents()会循环调用XXXProcessDirent(),直至列表中所有项全检查完毕。
下面再来看windbg分析吧:
1: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************
IRQL_NOT_LESS_OR_EQUAL (a)
An attempt was made to access a pageable (or completely invalid) address at an
interrupt request level (IRQL) that is too high. This is usually
caused by drivers using improper addresses.
If a kernel debugger is available get the stack backtrace.
Arguments:
Arg1: 0abc9867, memory referenced
Arg2: 00000002, IRQL
Arg3: 00000001, bitfield :
bit 0 : value 0 = read operation, 1 = write operation
bit 3 : value 0 = not an execute operation, 1 = execute operation (only on chips which support this level of status)
Arg4: 806e7a2a, address which referenced memory
Debugging Details:
------------------
WRITE_ADDRESS: 0abc9867
CURRENT_IRQL: 2
FAULTING_IP:
hal!KeAcquireInStackQueuedSpinLock+3a
806e7a2a 8902 mov dword ptr [edx],eax
DEFAULT_BUCKET_ID: DRIVER_FAULT
BUGCHECK_STR: 0xA
PROCESS_NAME: System
TRAP_FRAME: b9019bbc -- (.trap 0xffffffffb9019bbc)
ErrCode = 00000002
eax=b9019c40 ebx=00000000 ecx=c0000211 edx=0abc9867 esi=c0000128 edi=8842d268
eip=806e7a2a esp=b9019c30 ebp=b9019c68 iopl=0 nv up ei ng nz na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010286
hal!KeAcquireInStackQueuedSpinLock+0x3a:
806e7a2a 8902 mov dword ptr [edx],eax ds:0023:0abc9867=????????
Resetting default scope
LAST_CONTROL_TRANSFER: from 806e7a2a to 80544768
STACK_TEXT:
b9019bbc 806e7a2a badb0d00 0abc9867 804f4e77 nt!KiTrap0E+0x238
b9019c68 806e7ef2 00000000 00000000 b9019c80 hal!KeAcquireInStackQueuedSpinLock+0x3a
b9019c68 b9019d24 00000000 00000000 b9019c80 hal!HalpApcInterrupt+0xc6
WARNING: Frame IP not in any known module. Following frames may be wrong.
b9019cf0 80535873 00000000 8896fb20 00000000 0xb9019d24
b9019d10 b79d87ff ba668a30 8859b7e8 00000440 nt!ExReleaseResourceLite+0x8d
b9019d2c b79d8a5c 8a3ff2f0 00000003 ba6685f0 XXXXX!XXXProcessDirents+0xef
b9019d88 b79e163a e2f6b170 00000001 00000001 XXXXX!XXXKernelQueryDirectory+0x20c
b9019ddc 8054616e b79e1530 88a8ae00 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16
问题出在系统函数ExReleaseResourceLite()及KeAcquireInStackQueuedSpinLock()上,且程序要写的地址为0abc9867 ,明显不对,所以此处可做栈损坏推断。
第一嫌疑要考虑的是,XXXProcessDirents()中有锁保护的部分,此部分是果真是最容易造成栈损坏buffer复制操作。但经过仔细检查及测试,便排除了此部分出错的可能。
在排除第一嫌疑后,就没有明显目标了。只好再接着看windbg log:
貌似KeAcquireInStackQueuedSpinLock()要写的地址是LockHandle的LockQueue->Next,而LockHandle一般都在从当前堆栈分配的,由此可肯定之前对于栈损坏的推断。可问题是,是谁导致的栈损坏。
Stack中有hal!HalpApcInterrupt()调用记录,它是处理APC的软中断。hal!HalpApcInterrupt()会一般会调用nt!KiDeliverApc()来处理线程的APC队列。但当ExReleaseResourceLite()调用的时候,线程还处于临界区内(Critical Section),此时User mode APC及Kernel mode normal APC都会被禁止的,但Kernel mode special APC不会。
Kernel Special APC最常见的情况便是由IoCompleteRequest()添加的:在APC Level中调用IopCompleteRequest()以处理Irp的Stage 2的清理工作。
至此,问题终于有些眉目了。分析代码中唯一有可能导致APC添加的地方就在函数XXXXProcessDirent()中的ZwReadFile()调用,而且fileHead正是于堆栈中分配的。
想到此处,此bug的根据原因便付出水面:
XXXXProcessDirent()没有处理ZwReadFile()返回STATUS_PENDING的情况,此情形下,XXXXProcessDirent()退出并继续执行,而之前的ZwReadFile()的IRP完成操作也在同时进行(还没有完成),并且此完成操作所要写的fileHead地址,正是早已被回收并加以重用的当前栈。
搞清楚之后,便在调用ZwReadFile()后,特别针对STATUS_PENING的情况来调用ZwWaitForSingleObject()以确保读操作全部完成后,再进行下一步操作。
到此,问题解决!
一个蓝屏的问题,竟然如此之绕,不禁让我想起刘震云的《一句顶一万句》,只是这能顶一万句的一句到底是哪句呢?
<下一步打算写写APC相关的东西,操作系统将APC隐藏得太深,总让人捉摸不定!>
thankss
Запой может повторяться годами, поэтому лечение запоя нередко связывают с лечением алкоголизма. Вывод уменьшает остроту текущей ситуации, а лечение алкоголизма ориентируется на дальнейшую работу с зависимостью. Нарколог объясняет, чем отличаются вывод, капельница, детоксикация, кодирование и реабилитация. В Красноярске услугу можно заказать для дома или клиники, а подробнее условия выбранной услуги уточняются при обращении.
Узнать больше – вывод из запоя дешево в Красноярске
Этот обзор медицинских исследований собрал самое важное из последних публикаций в области медицины. Мы проанализировали ключевые находки и представили их в доступной форме, чтобы читатели могли легко ориентироваться в актуальных темах. Этот материал станет отличным подспорьем для изучения медицины.
Давай разберёмся досконально – запой врач на дом
Мы рассмотрим современные вызовы здравоохранения и пути их решения с помощью технологий и научных исследований. В статье собраны данные о новых лекарствах, методах диагностики и системном подходе к улучшению здоровья населения.
Провести детальное исследование – вызов платного врача нарколога на дом
Этот обзор посвящен успешным стратегиям избавления от зависимости, включая реальные примеры и советы. Мы разоблачим мифы и предоставим читателям достоверную информацию о различных подходах. Получите опыт многообразия методов и найдите подходящий способ для себя!
Раскрыть тему полностью – вывод из запоя стационар
В этой статье мы рассматриваем разрушительное влияние зависимости на жизнь человека. Обсуждаются аспекты, такие как здоровье, отношения и профессиональные достижения. Читатели узнают о необходимости обращения за помощью и о путях к восстановлению.
Провести детальное исследование – нарколог на дом москва
В этой статье рассматриваются различные аспекты избавления от зависимости, включая физические и психологические методы. Мы обсудим поддержку, мотивацию и стратегии, которые помогут в процессе выздоровления. Читатели узнают, как преодолеть трудности и двигаться к новой жизни без зависимости.
Доступ к полной версии – детоксикация после алкоголя
Капельница назначается только после осмотра. Нарколог измеряет основные показатели, уточняет длительность запоя, наличие сопутствующих болезней и препараты, которые человек уже принимал. Состав инфузионной терапии подбирается индивидуально. В разных случаях лечение может быть направлено на восполнение жидкости, снижение проявлений интоксикации, коррекцию электролитных нарушений, поддержку нервной системы и восстановление сна. Использовать одинаковую схему для всех пациентов неправильно, поэтому лечение проводится с учетом клинической картины.
Ознакомиться с деталями – https://narkologicheskaya-klinika-balashiha.ru/
Помощь можно получить анонимно, с аккуратным оформлением и внимательным отношением к личным данным.
Изучить вопрос подробнее – kapelnica-ot-zapoya-cena
Если пациенту требуется постоянный мониторинг или комплексное лечение, мы обеспечиваем круглосуточное пребывание в стационаре. Здесь доступны углублённая диагностика — УЗИ органов брюшной полости, расширенные анализы крови, кардиомониторинг — и коррекция терапии в режиме реального времени. Комфортные палаты, ежедневное наблюдение медсестры и консультации психотерапевта создают условия для быстрого и безопасного выхода из зависимости.
Выяснить больше – https://narkologicheskaya-pomoshh-ekaterinburg0.ru
Информация об обращении не передается третьим лицам, а детали лечения обсуждаются только с пациентом.
Ознакомиться с деталями – лечение в наркологической клинике
Каждый пациент проходит последовательный процесс лечения, где основное внимание уделяется безопасности, контролю состояния и постепенной адаптации. При поступлении проводится диагностика с оценкой степени зависимости, сопутствующих патологий и психологических факторов, влияющих на развитие заболевания. На основании полученных данных формируется персонализированный план терапии, включающий медикаментозные и немедикаментозные методы.
Выяснить больше – https://narkologicheskaya-klinika-v-spb16.ru/narkolog-sankt-peterburg
И вроде бы всё, чистый. Потому что капельница — это только начало. Наркологический реабилитационный центр — С психологами, группами и режимом. Поэтому и результат другой. Лечение наркомании — это долгий путь. Вся информация доступна здесь: реабилитационный центр наркозависимых реабилитационный центр наркозависимых И про условия размещения для региона. Иногда центр — единственный шанс.
Регулярное поступление этанола влияет на клетки мозга, нервную систему, сосуды, печень и другие внутренние органы. Организму приходится постоянно перерабатывать спирт и токсические продукты его распада, а недостаток жидкости, соли, витаминов и нормального питания усиливает слабость. Нарушается обмен веществ, меняется работа сердечно-сосудистой системы, повышается вероятность тревоги, бессонницы и обменных расстройств. Поэтому капельница рассматривается как часть комплексного медицинского подхода, направленного на очищение, восполнение жидкости и нормализацию основных функций организма.
Получить больше информации – https://4.kapelnica-ot-zapoya-v-moskve14.ru/
При наличии таких проявлений лечение подбирается после врачебного осмотра. Очень важно сообщать специалисту правдивую информацию о веществах, лекарствах и хронических заболеваниях. Это помогает повысить безопасность медицинской терапии.
Подробнее – платная наркологическая клиника
Соблюдаем конфиденциальность, бережно общаемся с пациентом и его близкими на каждом этапе.
Получить больше информации – вывод из запоя вызов на дом Красноярск
Быстро собираем первичную информацию, оцениваем риски и предлагаем подходящий вариант обращения.
Изучить вопрос подробнее – https://2narkologicheskaya-klinika-balashiha.ru/
Основные задачи
Получить дополнительные сведения – klinika lecheniya alkogolizma krasnodar
Наркологическая клиника «СтаврМедЦентр» — это пространство точной и бережной медицины, где каждая программа лечения зависимостей собирается индивидуально: от первой оценки рисков до стабилизации сна, восстановления аппетита, нормализации пульса и долгосрочной профилактики рецидива. Мы сознательно уходим от шаблонных «сильных» процедур в пользу управляемых шагов: минимум фармакологической нагрузки при максимальной прозрачности решений. Такой подход снижает тревогу, возвращает ощущение контроля, а главное — делает процесс предсказуемым для пациента и его близких. Команда работает круглосуточно: амбулаторные визиты без очередей, немаркированные выезды на дом, стационарный блок с ночным постом и мониторингом — все каналы связаны единой картой наблюдения и общими клиническими протоколами.
Выяснить больше – платная наркологическая клиника
Снесли стену между кухней и комнатой. А время идёт. Перепланировка квартир — Это целая процедура. И только потом можно дышать спокойно. Ресог оформление перепланировки — Когда БТИ против. Вся информация доступна здесь: согласование перепланировки в москве ресог согласование перепланировки в москве ресог Там и про проект перепланировки для квартиры. Иногда достаточно просто обратиться к специалистам.
Решение о выезде принимает врач с учётом симптомов и бытовых ограничений. Если совпадает хотя бы две позиции из списка ниже, лучше не откладывать звонок — управляемость состояния снижается каждый час.
Разобраться лучше – вывод из запоя вызов
thank you
Алкогольная зависимость — это комплексное заболевание, требующее не только медикаментозного воздействия, но и серьёзной психологической поддержки. В Сочи клиника «ЮгМед» предлагает выезд нарколога на дом, что позволяет начать лечение без стресса, связанного с госпитализацией. Такой подход особенно важен для тех, кто ценит конфиденциальность и предпочитает комфорт привычной обстановки. Мы обеспечиваем полную анонимность, а опытные специалисты разрабатывают индивидуальную программу, учитывающую длительность запоя, сопутствующие заболевания и психологические факторы зависимости.
Подробнее тут – http://lechenie-alkogolizma-sochi0.ru
Соблюдаем конфиденциальность, бережно общаемся с пациентом и его близкими на каждом этапе.
Получить больше информации – наркологическая клиника помощь на дому
Обратиться за помощью стоит не только при длительном запое. Вызов может быть необходим при выраженном похмелье, абстинентном синдроме, ухудшении самочувствия после употребления спиртного, признаках наркотической ломки или повторном срыве. Если проблемы продолжаются несколько лет, одного домашнего визита бывает недостаточно, поэтому врач заранее обсуждает дальнейшее лечение зависимости и реабилитацию.
Подробнее – вызов нарколога на дом
Ключевым этапом является снятие интоксикации и устранение абстинентного синдрома. Применяются препараты, направленные на нормализацию работы внутренних органов и поддержание общего состояния здоровья. Медикаментозная терапия включает назначение антидепрессантов, препаратов, блокирующих тягу к алкоголю, что подтверждается исследованиями, опубликованными на научном портале PubMed. Актуальные рекомендации по медикаментозному лечению алкоголизма доступны на Национальном центре здоровья.
Выяснить больше – http://
Этот обзор посвящен успешным стратегиям избавления от зависимости, включая реальные примеры и советы. Мы разоблачим мифы и предоставим читателям достоверную информацию о различных подходах. Получите опыт многообразия методов и найдите подходящий способ для себя!
А есть ли продолжение? – лучшая кодировка от алкоголизма
Врач учитывает симптомы, риски, анамнез и семейную ситуацию, чтобы предложить подходящую программу.
Изучить вопрос подробнее – http://narkologicheskaya-klinika-v-krasnoyarske20.ru
Информация об обращении не передается третьим лицам, а детали лечения обсуждаются только с пациентом.
Подробнее – kapelnica-ot-zapoya-zakazat
Первый звонок в центр может сделать сам зависимый или близкий родственник. Специалист уточнит симптомы и сообщит, возможен ли выезд нарколога на дому. Если ситуация развивается быстро, признаки становятся тяжелее или имеются серьезные сопутствующие патологии, по телефону могут рекомендовать обращаться за экстренной помощью. Капельница назначается только после очной оценки, поскольку одинаковые жалобы у разных людей требуют различного подхода.
Подробнее – kapelnica-ot-zapoya-na-domu-cena-moskva
Клиника рассматривает каждый случай индивидуально. Врач оценивает не только факт употребления, но и наличие синдрома отмены, хронических заболеваний, психических расстройств и предыдущего опыта лечения. Очень большое значение имеет готовность человека сотрудничать со специалистами.
Изучить вопрос подробнее – вывод наркологическая клиника в Красноярске
Этот обзор посвящен успешным стратегиям избавления от зависимости, включая реальные примеры и советы. Мы разоблачим мифы и предоставим читателям достоверную информацию о различных подходах. Получите опыт многообразия методов и найдите подходящий способ для себя!
Прочесть всё о… – кодировке от алкоголя
casino https://rawrank.graphicwallet.com/hi/domain/spin-genie.gb.net
Клиника рассматривает каждый случай индивидуально. Врач оценивает не только факт употребления, но и наличие синдрома отмены, хронических заболеваний, психических расстройств и предыдущего опыта лечения. Очень большое значение имеет готовность человека сотрудничать со специалистами.
Изучить вопрос подробнее – анонимная наркологическая клиника
При таких проявлениях домашнее самолечение может быть опасно. Нельзя без назначения использовать любые таблетки, самостоятельно ставить капельницу или комбинировать лекарственные препараты со спиртным. Медицинская помощь дает возможность провести диагностику, снизить вероятность осложнений и выбрать методы лечения с учетом состояния пациента.
Получить больше информации – вывод из запоя недорого Красноярск
Совместные занятия с другими пациентами создают атмосферу поддержки и понимания. Под руководством психотерапевта участники группы делятся опытом, обсуждают сложные ситуации и находят оптимальные способы удержаться от срыва.
Разобраться лучше – лечение алкоголизма цена
Первичный этап заключается в оценке состояния пациента и быстром подборе схемы инфузионной терапии. Врач фиксирует показания ЭКГ, сатурацию кислорода и биохимический параметр глюкозы в крови. После этого подключается капельница с раствором для выведения продуктов распада алкоголя и одновременной коррекции показателей обмена веществ. Последующие визиты врача позволяют скорректировать терапию и предотвратить развитие побочных реакций.
Углубиться в тему – скорая наркологическая помощь екатеринбург
Если пациенту требуется постоянный мониторинг или комплексное лечение, мы обеспечиваем круглосуточное пребывание в стационаре. Здесь доступны углублённая диагностика — УЗИ органов брюшной полости, расширенные анализы крови, кардиомониторинг — и коррекция терапии в режиме реального времени. Комфортные палаты, ежедневное наблюдение медсестры и консультации психотерапевта создают условия для быстрого и безопасного выхода из зависимости.
Исследовать вопрос подробнее – https://narkologicheskaya-pomoshh-ekaterinburg0.ru/skoraya-narkologicheskaya-pomoshh-v-ekb
Особенность петербургского контекста — большая доля интеллектуального труда и проектной занятости. Мы учитываем это при выборе методики: отдаем предпочтение схемам, которые не «глушат» когнитивную активность и позволяют быстро возвращаться к задачам. Если требуются краткие больничные листы, предоставляем корректные медицинские документы без «ярлыков».
Детальнее – клиника кодирования от алкоголизма санкт-петербург
Ключевым этапом является снятие интоксикации и устранение абстинентного синдрома. Применяются препараты, направленные на нормализацию работы внутренних органов и поддержание общего состояния здоровья. Медикаментозная терапия включает назначение антидепрессантов, препаратов, блокирующих тягу к алкоголю, что подтверждается исследованиями, опубликованными на научном портале PubMed. Актуальные рекомендации по медикаментозному лечению алкоголизма доступны на Национальном центре здоровья.
Получить дополнительные сведения – http://lechenie-alkogolizma-krasnodar00.ru/metody-lecheniya-alkogolizma-krasnodar/
В данном материале представлены ключевые тенденции в сфере медицинской науки и практики. Вы узнаете о последних открытиях, инновационных подходах к терапии и важности профилактики заболеваний. Особое внимание уделено практическому применению новых методов в клинической практике.
Личный опыт — читайте сами – платный врач нарколог на дом
thx
Помощь оказывают врачи с практикой в наркологии, психиатрии и восстановительной терапии.
Дополнительная информация – https://vyvod-iz-zapoya-krasnoyarsk68.ru/
Клиника предлагает широкий спектр услуг, охватывающий весь цикл лечения зависимости — от экстренной помощи до длительной реабилитации. Комплексная программа включает медицинскую, психологическую и социальную составляющие, что позволяет добиться устойчивого результата. Все процедуры проводятся под контролем врачей, что обеспечивает безопасность и эффективность терапии.
Детальнее – наркологическая клиника лечение алкоголизма в самаре
Эта публикация исследует взаимосвязь зависимости и психологии. Мы обсудим, как психологические аспекты влияют на появление зависимостей и процесс выздоровления. Читатели смогут понять важность профессиональной поддержки и применения научных подходов в терапии.
Ознакомиться с отчётом – Кодирование от алкоголизма
Вывод из запоя — это управляемая медицинская процедура, где каждая деталь важна: от скорости выезда до состава инфузии и «тихой» среды дома. В наркологической клинике «КазаньДетокс Медлайн» мы придерживаемся принципа поэтапной стабилизации: сначала безопасный старт и оценка рисков, затем прицельные капельницы и, при необходимости, краткосрочное наблюдение. Такой подход исключает «универсальные коктейли» и делает результат прогнозируемым: снижение интоксикации, выравнивание вегетативных реакций, восстановление сна и аппетита. Анонимность встроена в протоколы: немаркированный выезд, лаконичная документация, один доверенный контакт для связи 24/7, нейтральные формулировки без стигмы.
Изучить вопрос глубже – вывод из запоя в стационаре казань
casino https://wmhost.ru/whois/domain/spin-genie.gb.net
Клиника предлагает широкий спектр услуг, охватывающий весь цикл лечения зависимости — от экстренной помощи до длительной реабилитации. Комплексная программа включает медицинскую, психологическую и социальную составляющие, что позволяет добиться устойчивого результата. Все процедуры проводятся под контролем врачей, что обеспечивает безопасность и эффективность терапии.
Подробнее можно узнать тут – http://narkologicheskaya-klinika-v-samare16.ru
Быстро собираем первичную информацию, оцениваем риски и предлагаем подходящий вариант обращения.
Изучить вопрос подробнее – https://4.kapelnica-ot-zapoya-v-moskve14.ru/
Причиной для вызова нарколога могут стать следующие проявления:
Узнать больше – капельница вывод от запоя