TDI Filter Driver 동적 언로딩 가능한가??

보통 필터 드라이버를 만드는 경우 하위 장치객체에 Attach 시키는 방법과, DriverObject의 Major Function 을 Hook 하는 방법중
선택하여 사용하게 된다.(일반적으로 전자는 Filter 드라이버라고, 후자는 Hook 드라이버라고 말하기도 한다.)

그동안 TDI Filter Driver를 Attach 방식을 사용한 필터드라이버로 개발해 왔었다.
(TDI Attach 드라이버인 경우 동적으로 언로딩 시 블루스크린이 발생함)
하지만 SysInternals 의 TDIMon 을 보면 Attach 방식이 아닌 Hook 방식을 사용한 것으로 보인다.
(왜 그랬을까?)
아마 언로딩 문제 때문이라고 할 수 있는데, 그 이유는 아래와 같다.

우리가 만든 TDI Filter Driver 윗단에 Afd.sys (TDI Client)가 있는데, 여기서 사용된 알고리즘을 이해하여야 한다.
간단히 말하면…
1. 소켓단에서 바인딩 할 때 파일 객체를 엔드포인트에 대한 파일 객체를 얻는다.
2. 파일오브젝트를 이용하여 장치 객체를얻는다.
3. 하위로 내려 보낼 경우 위에서 얻어진 장치 객체로 CallDriver를 한다.

즉, 소켓이 열릴때 마다 하위 장치 객체를 얻는데, 우리가 만든 필터 드라이버가 있는 경우, 우리 필터 드라이버의 장치 객체를 소켓이 얻게 된다는 것이다. 이 경우 통신(Send, Receive 등)이 이루어 지고 있는 상황에서 우리 드라이버가 언로딩 되어 버린다면,
소켓이 이미 알고 있는 장치객체가 사라져 버리게 된는 것이고, 이를 알았다 해도 이미 연결 된 상태에서 이 부분을 재설정 하지 않는다. 이로 인해서 블루스크린이 발생하는 것이다.

그러므로 TDI Filter Driver는 Hook 방식을 사용하든가, 동적 언로딩이 안되게 하던가, afd.sys를 리프레시 해주던가 하여야 할것이다.
(아마 Hook 방식이 최선의 방법이 될 것이다)

TDI Filter Driver 동적 언로딩 가능한가??”에 대한 212개의 생각

  1. 핑백: Casino 1277065745

  2. 핑백: Phentermine.

  3. 핑백: Viagra affects on women.

  4. 핑백: Free viagra.

  5. 핑백: Soma.

  6. 핑백: Tramadol.

  7. 핑백: Vicodin addiction.

  8. 핑백: Vicodin.

  9. 핑백: Buying xanax online.

  10. 핑백: Percocet and greece.

  11. 핑백: Vicodin.

  12. 핑백: Ritalin and multiple sclerosis.

  13. 핑백: Ephedra liquid gel products.

  14. 핑백: Fioricet and blood work.

  15. 핑백: Tramadol.

  16. 핑백: Phentermine cheap no prescription.

  17. 핑백: Viagra.

  18. 핑백: Discount soma.

  19. 핑백: Viagra.

  20. 핑백: Atlanta ephedra attorneys.

  21. 핑백: Generic cialis.

  22. 핑백: Amoxicillin alternative.

  23. 핑백: Xanax withdrawal symptoms.

  24. 핑백: Soma.

  25. 핑백: Ambien cr addiction.

  26. 핑백: Cialis.

  27. 핑백: Xanax.

  28. 핑백: Ritalin.

  29. 핑백: Buy xanax online.

  30. 핑백: Adderall.

  31. 핑백: Ephedra yellow bullets.

  32. 핑백: Order soma.

  33. 핑백: Adderall xr side effects.

  34. 핑백: Fioricet message board.

  35. 핑백: Adderall.

  36. 핑백: Buy cheap cialis.

  37. 핑백: Xanax.

  38. 핑백: Buy ambien.

  39. 핑백: Discount phentermine.

  40. 핑백: Percocet.

  41. 핑백: Ritalin.

  42. 핑백: Georgia ephedra attorneys.

  43. 핑백: Buy tramadol online best prices limited time off.

  44. 핑백: Percocet.

  45. 핑백: Vicodin.

  46. 핑백: What is amoxicillin.

  47. 핑백: Taking amoxicillin while pregnant.

  48. 핑백: Buy tramadol.

  49. 핑백: Buy vicodin in mexico.

  50. 핑백: Fioricet 120.

  51. 핑백: Xanax online.

  52. 핑백: Vicodin and no consults and no prescription.

  53. 핑백: Amoxicillin for acne.

  54. 핑백: Yellow bullet ephedra review.

  55. 핑백: Tramadol.

  56. 핑백: Buy xanax online.

  57. 핑백: Buy xanax.

  58. 핑백: Vicodin.

  59. 핑백: Tramadol sr 100.

  60. 핑백: Amoxicillin and strep b.

  61. 핑백: Ritalin.

  62. 핑백: Buy vicodin.

  63. 핑백: Antidote soma valium.

  64. 핑백: Phentermine.

  65. 핑백: Amoxicillin anti inflammatory.

  66. 핑백: Ambien cr 12.5 photo.

  67. 핑백: Fioricet.

  68. 핑백: Extract codeine from fioricet.

  69. 핑백: Generic ambien.

  70. 핑백: Amoxicillin and strep b.

  71. 핑백: Casino 1284489093

  72. 핑백: Casino 1287049828

  73. 핑백: Casino 1290150952

  74. 핑백: Casino 1292242824

  75. 핑백: Casino 1299683121

  76. 핑백: Buy terbinafine.

  77. 핑백: Buy fioricet.

  78. 핑백: Buy oxycontin.

  79. 핑백: Xanax no prescription.

  80. 핑백: Buy codeine.

  81. 핑백: Snort a vicodin.

  82. 핑백: Buy oxycontin.

  83. 핑백: Buy phentermine.

  84. 핑백: Buy percocet.

  85. 핑백: Valtrex.

  86. 핑백: Clonazepam.

  87. 핑백: Buy elavil.

  88. 핑백: Order butalbital overnight no prescription.

  89. 핑백: Diazepam.

  90. 핑백: Buying lortab.

  91. 핑백: Adipex.

  92. 핑백: Buy clonazepam.

  93. 핑백: Lortab.

  94. 핑백: Tramadol.

  95. 핑백: Hydrocodone.

  96. 핑백: Fioricet.

  97. 핑백: Buy terbinafine.

  98. 핑백: Buy oxycodone.

  99. 핑백: Soma.

  100. 핑백: Lorazepam.

  101. 핑백: Lortab.

  102. 핑백: Buy lorazepam.

  103. 핑백: Carisoprodol.

  104. 핑백: Xanax no prescription.

  105. 핑백: Buy 30 mg adderall.

  106. 핑백: Buy terbinafine without prescription.

  107. 핑백: Codeine.

  108. 핑백: Adipex no prescription.

  109. 핑백: No prescription fedex valium.

  110. 핑백: Oxycontin.

  111. 핑백: Order didrex adderall no prescription.

  112. 핑백: Azithromycin.

  113. 핑백: Buy alprazolam.

  114. 핑백: Valtrex.

  115. 핑백: Buy terbinafine.

  116. 핑백: Buy fioricet bloghoster.

  117. 핑백: Valtrex overnight.

  118. 핑백: Adderall no prescription.

  119. 핑백: Codeine.

  120. 핑백: Buying oxycontin over the net.

  121. 핑백: Buy phentermine.

  122. 핑백: Phentermine adipex.

  123. 핑백: Lorazepam.

  124. 핑백: Generic lexapro.

  125. 핑백: Ashes of soma lyrics.

  126. 핑백: Card master no phentermine prescription.

  127. 핑백: Fentadex robaxin elavil pop.

  128. 핑백: Buy elavil.

  129. 핑백: Vicodin no prescriptionon.

  130. 핑백: Buy robitussin ac codeine.

  131. 핑백: Phentermine.

  132. 핑백: Buy carisoprodol.

  133. 핑백: Vicodin without prescription.

  134. 핑백: Elavil drug test.

  135. 핑백: Fioricet.

  136. 핑백: Oxycodone.

  137. 핑백: Vicodin without prescription.

  138. 핑백: Diazepam.

  139. 핑백: Tramadol.

  140. 핑백: Half life of elavil.

  141. 핑백: Petechiae and levothyroxine.

  142. 핑백: Buy vicodin online.

  143. 핑백: Lorazepam.

  144. 핑백: Xanax.

  145. 핑백: Tramadol.

  146. 핑백: Order soma.

  147. 핑백: Discount phentermine.

  148. 핑백: Buy cheap no prescription vicodin.

  149. 핑백: Adipex.

  150. 핑백: Duromine identification.

  151. 핑백: Buy lortab 10 online no prescription.

  152. 핑백: Valtrex.

  153. 핑백: Klonopin.

  154. 핑백: Butalbital in pregnancy.

  155. 핑백: Buy carisoprodol.

  156. 핑백: Fioricet.

  157. 핑백: Phentermine.

  158. 핑백: Buy duromine.

  159. 핑백: Buy carisoprodol.

  160. 핑백: Elavil.

  161. 핑백: Soma to florida.

  162. 핑백: Vicodin.

  163. 핑백: Zolpidem.

  164. 핑백: Adderall.

  165. 핑백: Buy plavix.

  166. 핑백: Buy xanax precrition needed.

  167. 핑백: Azithromycin next day.

  168. 핑백: Buy fioricet online without a prescription.

  169. 핑백: Buy alprazolam 2mg bars.

  170. 핑백: Phentermine no prescription.

  171. 핑백: Buy xanax.

  172. 핑백: Pharmacy buy diazepam.

  173. 핑백: Buy ephedrine hcl guafenison.

  174. 핑백: Ephedrine.

  175. 핑백: Taking elavil for migraine when will it work.

  176. 핑백: Generic ambien.

  177. 핑백: Ephedrine for sale.

  178. 핑백: Pillinc buy phentermine adipex meridia online.

  179. 핑백: Tramadol.

  180. 핑백: Ephedrine to buy.

  181. 핑백: Birth defects and oxycontin use.

  182. 핑백: Pharmacy buy diazepam.

  183. 핑백: Soma.

  184. 핑백: Clonazepam use for anxiety.

  185. 핑백: Codeine 3.

  186. 핑백: Male infertility levothyroxine ehypothyroidism com.

  187. 핑백: Valtrex dosing.

  188. 핑백: Alprazolam.

  189. 핑백: Vicodin no prescription.

  190. 핑백: Taking kelp as levothyroxine replacement.

  191. 핑백: Lorazepam 32.

  192. 핑백: Buy lorazepam.

  193. 핑백: Clonazepam.

  194. 핑백: Buy valtrex.

  195. 핑백: Buy meridia.

  196. 핑백: Valtrex.

  197. 핑백: Buy xanax.

  198. 핑백: Synthroid vs levothyroxine.

  199. 핑백: Azithromycin.

  200. 핑백: Elavil.

  201. 핑백: Lorazepam overdose.

  202. 핑백: Buy online oxycodone 30mg.

  203. 핑백: Buy cheap oxycontin.

  204. 핑백: Adderall.

  205. 핑백: Lorazepam ativan information and resources.

  206. 핑백: Levothyroxine.

  207. 핑백: homepage

  208. 핑백: cool page

  209. 핑백: provillus ingredients

  210. 핑백: pocket pussy

  211. 핑백: led t8 tubes

  212. 핑백: オンラインカジノ

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다