ايران ويج

نسخه‌ی کامل: مخفي كردن برنامه در msconfig و Registry و processes
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2
اين اولين پست من هست.
براي مخفي كردن برنامه در msconfig و Registry و processes
نمي خوام از محدود كردن استفاده كنم Disable يا بستن اين برنامه ها.
hiden process كه الان سورس تو سايت هست آنتي ويرس ها شناسايي ميشه.

تئوري براي ريجستر اينكه قبل از خاموش شدن سييتم در استارت آپ قرار بگير و موقع بالا آمدن از استارت آپ پاك بشهWhistle .
تئوري پروسس هم اينكه جايگذين يكي از برنامه سيستمي بشه.

...حال چجوري عملي بشه ؟Whistle
باید با یه فایل svchostادغام بشه و تایمر پروسس خاموش بشه
[quote='kimiafars' pid='134367' dateline='1283553739']
باید با یه فایل svchostادغام بشه و تایمر پروسس خاموش بشه
[/q
اگر برنامه با اين اسم بسازي svchost آنتي ويروس شناسايش مي كنم
و اگر منظور از ادغام چسبندن به فايل svchost باشه از طريق ريسور وبي باز
شناسايي ميشه.
راه حلي براي ادغام دارين كه آنتي ويروس شناسايي نكنه؟Whistle
سوال 2-و مي خوام برنامه قبل از هاموش با ريست شدن كامپيوتر بسن بشه يعني تشخيص بده كه داره خاموش مي شه .
شوت دان كپشن ندارن و اگر نه از طريق هندل ميشد فهميد؟Whistle

(۱۳-شهریور-۱۳۸۹, ۲۲:۰۴:۰۷)aliyarat نوشته است: [ -> ][quote='kimiafars' pid='134367' dateline='1283553739']
باید با یه فایل svchostادغام بشه و تایمر پروسس خاموش بشه
[/q
اگر برنامه با اين اسم بسازي svchost آنتي ويروس شناسايش مي كنم
و اگر منظور از ادغام چسبندن به فايل svchost باشه از طريق ريسور وبي باز
شناسايي ميشه.
راه حلي براي ادغام دارين كه آنتي ويروس شناسايي نكنه؟Whistle
سوال 2-و مي خوام برنامه قبل از هاموش با ريست شدن كامپيوتر بسن بشه يعني تشخيص بده كه داره خاموش مي شه .
شوت دان كپشن ندارن و اگر نه از طريق هندل ميشد فهميد؟Whistle

سلام.
مطلع شدن از شات دان رو در دات میشه فهمید. میتونی یه dll بسازی و بیاری تو vb6 به کار بگیری.
ولی تؤریت اصلا تؤری خوبی نیست. اومدیمو برق رفت. اومدیمو طرف برنامه رو end task کرد. اومدیمو برنامه ارور داد بسته شد. بعد تکلیف چیه؟
[
سلام.
مطلع شدن از شات دان رو در دات میشه فهمید. میتونی یه dll بسازی و بیاری

....اين روش اول و معمول فهمين شوت دان خيلي كاربرد داره .اگه ميتونين سورس اين كار بدينWhistle
فهمیدن shutdown-reset شدن سیستم کار سختی نیست وقتی یکی از این اتفاقها میافته پیغام WM_QueryEndSession و WM_EndSession به برنامه های در حال اجرا ارسال میشه با مانیتور کردن اینپیغامها میتونین تشخیص بدین که سیستم در حال Shutdown میباشد

نمونه کد به زبان شیرین دلفی
کد:
procedure TForm1.WMEndSession(var Msg : TWMEndSession);
begin
if Msg.EndSession = TRUE then
ShowMessage(‘Windows is shutting down ‘ + #13 + ‘at ‘ +
FormatDateTime(‘c’, Now));
inherited;
end;

procedure WMQueryEndSession(var Msg : TWMQueryEndSession); message
WM_QueryEndSession;


procedure TForm1.WMQueryEndSession(var Msg : TWMQueryEndSession);
begin
if MessageDlg(‘Close Windows ?’, mtConfirmation, [mbYes,mbNo], 0) = mrNo then
Msg.Result := 0
else
Msg.Result := 1;
end;
من به دلفي آشنايي ندارم .به وبي تبدل كنيد.
توی شیء گرایی متد تخریب کننده داریم وقتی شیئی از بین میره اون متد اجرا میشه
وقتی برنامه میخواد طبیعی بسته بشه فکر کنم تمام تخریب کننده ها را اجرا میکنه.

آیا از این روش میشه پایان یافتن برنامه را فهمید؟؟ مثلا یک شیء بسازیم و توی تخریب کننده اش کارهای خاصی انجام بدیم و این شیئ را در تمام طول برنامه نگه داریم.

البته با این شرط که هنگام شات دان کردن سیستم پراسز ها را معمولی خاتمه بده.

این به نظر بود نمیدونم جواب بده یا نه...
سلام.

(۱۴-شهریور-۱۳۸۹, ۰۳:۲۹:۰۳)Payman62 نوشته است: [ -> ]سلام.
مطلع شدن از شات دان رو در دات میشه فهمید. میتونی یه dll بسازی و بیاری تو vb6 به کار بگیری.
ولی تؤریت اصلا تؤری خوبی نیست. اومدیمو برق رفت. اومدیمو طرف برنامه رو end task کرد. اومدیمو برنامه ارور داد بسته شد. بعد تکلیف چیه؟

آقا جون چرا لقمه رو دور سرت میچرخونی.
گفتم تو دات نت امکان پذیره. این کدش. به C#.

کد:
private void Form2_FormClosing(object sender, FormClosingEventArgs e)
        {
            if (e.CloseReason == CloseReason.WindowsShutDown)
                MessageBox.Show("Windows is shutting down");
            else if (e.CloseReason == CloseReason.TaskManagerClosing)
                MessageBox.Show("the program closed by task manager");
        }

یه نگاه به ویبی انداختم دیدم خود ویبی هم این قابلیت رو داره. اینم به زبون ویبی.


کد:
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
    If UnloadMode = vbAppWindows Then
        Cancel = True
        'run your code here
        MsgBox "windows is shutting down"
    ElseIf UnloadMode = vbAppTaskManager Then
        MsgBox "the program closed by task manager"
    End If
End Sub

Cancel = True که هنگام شات دان اجرا میشه یه درخواست به سیستم عامل جهت یه فرصت کوتاه میده. تا برنامه خودش رو جمع جور کنه و بسته شه.

اینم به روشی که مبین جان گفتن.
این کد رو بذار تو یه ماژول.

کد:
Public Const GWL_WNDPROC = (-4)
Public Const WM_ENDSESSION = &H16
Public Const WM_QUERYENDSESSION = &H11
Public WndProc As Long

Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long

' exiting from windows
'-------------------------------------------------------
Public Declare Function ExitWindowsEx Lib "user32.dll" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long
'EWX_FORCE = 4 Force any applications to quit instead of prompting the user to close them.
'EWX_LOGOFF = 0 Log off the network.
'EWX_POWEROFF = 8 Shut down the system and, if possible, turn the computer off.
'EWX_REBOOT = 2 Perform a full reboot of the system.
'EWX_SHUTDOWN = 1

'call this from your form
Public Sub Hook(Lwnd As Long)
    Dim uProcess As Long
    WndProc = SetWindowLong(Lwnd, GWL_WNDPROC, AddressOf WindowProc)
End Sub

Public Function WindowProc(ByVal hw As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
    If uMsg = WM_QUERYENDSESSION Then
       WindowProc = False
       MsgBox "hw:" + CStr(hw) + " uMsg:" + CStr(uMsg) + " wParam:" + CStr(wParam)
       'run your code here
       Exit Function
    ElseIf uMsg = WM_ENDSESSION Then
       WindowProc = False
       MsgBox "hw:" + CStr(hw) + " uMsg:" + CStr(uMsg) + " wParam:" + CStr(wParam)
       'run your code here
       Exit Function
    End If
    WindowProc = CallWindowProc(WndProc, hw, uMsg, wParam, lParam)
End Function

اینم بذار تو فرمت.

کد:
Private Sub Form_Load()
    Hook (Me.hwnd)
End Sub

البته من روش اول رو توصیه میکنم. چون هم کوتاه تره هم کدت سبک تر میشه و هم CPU کمتر درگیره.
سلام دوستان Form_QueryUnload خوب بود حتي جلوي شوت دان سيستم رو هم گرفت.
من تو Form_Unload گذاشتم اما بسته شد. باCancel=1 .فرقش فكر كنم همين باشهWhistle
روش دوم Hook متوجه نشدم چه كار ميكتهWhistle

روش جديدتر يا ترفندي براي Run كردن هست جز ريجستري و استارت آپ؟Whistle
حال براي مخفي ماندن در processes چه بايد كرد. بايد فايل سيستمي بشم تا به دانلود و كار هاي ديگر گير ندن
دراين بصورت رسمي در processes نمايش داده شوم يا ادغام بشم به فايل هاي سيستمي ؟Whistle
را حل نیست .؟
سورس بیندر استفاده کردم اما آنتی ویروس شناسایی می کنه ؟
از برنامه ASPack استفاده کردم باز فاییده نداره؟
برای مخفی ماندن از دست آنتی ویروس ها باید چه کار کرد؟

این سورس بیندر هست.

صفحه‌ها: 1 2