apologize කරන්න එන්න.. අනේ..

Status
Not open for further replies.

sachith19920726

Well-known member
  • Jan 20, 2011
    35,672
    11,509
    113
    34
    Crynet Solutions
    Ok OK, මචෝ, මට උබ තරම් නම් දැනුමක් නැ, නම නම් හැකිං කියන එක මොන පාටද කියල වත් දන්නෙ නැ. :shocked:

    ඔය md5 කතාව සචිත්ගෙයි මගෙයි පරන කතාවක් Crystal Shield එක ගැන, (ඌ හදපු Anti Virus System එක) :nerd:

    උබ දන්නෙ නැති උනාට FILE MD5 එකකට සර්වසම තව File එකක් හදන්න පුලුවන්, ඒකට ක්‍රම තියෙනවා. මෙතන කියන්න නම් වෙලා නැ, MD5 එක cal වෙන හැටි පොඩ්ඩක් බලපන්. .:)

    මේක කරන්න ක්‍රම දෙකක් තියෙන්වා එක
    File එකේ යම් යම් data අරගෙන (Size, first bytes, .data .rs .text sections, PE headers, compile date, Resources, Internal Strings, ApiCalls වඒ දේවල් ) ඒකෙන් calculate කරනවා.;)

    අනිත් ක්‍රමේ

    File එක Binary හරි, base64 හරි String එකකට අරගෙන md5 එක කැල් කරනවා, (මේක ගොඩාක් ලොකු ෆයිල් වලට කරන්න බැ max 20mb)

    ඉතින් මේක bypass කරන්න පුලුවන් ගොඩක් ලේසියෙන්. .මේකට ක්‍රම තියෙන්වා. Custom Compiler එකක් ගහනවා ඒ MD5 එකට එනකල්, pe හදන්න, exe 1 billion වගේ හදලා අන්තිමට ඒ md5 එකම තියෙන File එකක් හදලා දෙයි. md5 pattern එක හිතාගන්න පුලුවන් ලොකු Hash Chain එකක් තිබ්බා නම්. .

    අතිත් එක මම නම් SetWindowsHookEx API එක ගන්නෙ Form Grabbers හදන්න, Keyloggers හදද්දි Keystoke එක අල්ල ගන්නෙ, getasynckeystate සහ getkeystate දෙකෙන්, බැරිම තැන් වල Windows message loop එකෙන් ගන්නවා.

    SetWindowsHookEx, getasynckeystate, getkeystate තුනම Keylogger වල විතරක් නෙමෙයි, ගොඩාක් Software වල ඔය API call කරනවා, Global Hot Keys use කරන ඕනම Player එකක තියෙන්නෙ ඔය API.



    Neo කියන්නෙ උබව හැක් කරන්න උදව් කරපු එකක් බං, චාටර් ම සීන් එක මේ එලකිරියෙකුත් හැකාට උදව් කරලා තියෙන්වා වගේ, (හොද මෙම්බරයෙක් කියලා අපි හිතන් ඉන්න එකක්, ඌත් මේකට සම්භන්ද ද කියලා අනිත් ත්‍රෙඩ් එකේ නම් එකෙක් කෙලින්ම අහලා තියෙන්වා, කවුරුත් Reply කරලා නැ.)

    මම හිතන්නෙ COD4 සීන් එකට වැඩිය සචියා එක්ක වෙන තරහක් ඇති, උබ ක්ලාස් එකක හරි හම්බ උන එකක් තමයි, උබේ ඉස්කෝලෙ කොහෙද බං සචියො. .

    අනේ මන්ද බං මට එහෙම හතුරො කියල විශේෂයෙන් නැහැ.. මේ එළකිරියෙ නම් ඕන තරම් ඉන්නව.. ඔය පේනව නෙ එකපාරට ඇවිත් මෙතනත් ඔය බුරාගෙන බුරාගෙන යන්නෙ හේතුවක් නැතිව.. කලින් හොදටම රිද්ද ගත්ත කට්ටිය තමයි ඒ..
    දැක්ක දැක්ක තැන බනිනව මානසික රෝගියො වගේ ලොල්
     

    ^Night Fury^

    Well-known member
  • Jan 8, 2011
    9,132
    4,997
    113
    -In Darkness-
    මෙතන පච කිය කිය ඉන්නෙ නැතුව ගිහින් profile pic එක change කරපන් උට්ටො. . ..
    :lol::lol::lol::lol::lol::lol::lol::lol:

    මම admit කරන්නම් ඒක වැරදියි කියලා මචෝ. මම පික් එකත් මාරු කරන්නම්. බට් අපි ඇහැරෙනවා කියලා කියන්නේ ඇස් අරින් කියන අදහස නිසා මට ඒ උත්තරේ එක්ක 100% එකඟ නම් වෙන්න බෑ :oo::oo::nerd:
     

    Honest-killer

    Member
    Feb 11, 2012
    20,634
    1,117
    0
    e wage thamai birthday password eka hack karagena sim details walin hacker wa hoyanawa ubala police yata giya gaman ahanne sim details gaththe kohenda kiyala :lol:mama danna widiyata usawi niyogayak nethiwa owa gannath be :dull: oya number ekata call ekak dila ahapan ubada mewa kale kiyala nethnam gedara gihilla ahapan ahinsakayo allagena uba methana raganawa :lol::lol:
    :lol::lol::lol: true
     

    Honest-killer

    Member
    Feb 11, 2012
    20,634
    1,117
    0
    machan uge mahansiyen hadapu av eka source code release karanawa qwama eka deepala horakamak. uge accounts athpath karaganeema horakamak. uta apahasa kirieema wardak. ewa keyboard mouse thalayen ehata giya aparada.
    telephone number ekakin owner hoyagaththa eka oya seratama wadiya lokui..
    eka illegal ;)
     

    Honest-killer

    Member
    Feb 11, 2012
    20,634
    1,117
    0
    මචන් ඇම්ටීඒ එකේ එහෙම දෙයක් උනෙ නැති නම්. මේක ඉරිසියාවට,කුහක කමට කරපු එකක්ද බං ? ඇයි අයිටී කාපර්ල මූ වගේ අළුත් පොඩි එකෙක්ට කෙළින්න උදවු කරන්නෙ? මු මොකුත් කරලා නැත්තං ? මට තේරෙන්නෙ නැහැ ඒක.
    හා හා ලොල්. මූට පේනවට වැඩිය හතුරො ඉන්නව, බලපන් ඉස්සරහට.. මුගෙ වටේ ඉන්න උන් තමයි මුලින්ම කෙලින්නෙ;)
     

    MihiCherub

    Well-known member
  • Sep 14, 2009
    18,937
    1
    9,739
    113
    Gampaha
    කොහොමද බං කටක් ඇරලා කියන්නෙ PW එකට තිබ්බෙ B.Day එක කියලා.

    සචියා, උඹේ PC එකේ RAT එකක් තියෙනවද කියලා පොඩ්ඩක් බලපන්, AV වලින් බලලා වැඩක් නැ, 100% FUD කරපු එකක්, Wireshark / ettercap /Fiddler වගෙ එකක් දාලා උඹේ Network එක පොඩ්ඩක් බලපං, මොකද මචො, මට උබේ ඔය බර්ත්ඩේ පාස්වර්ඩ් කතාව ගැන නම් කිසිම විශ්වසයක් නැ,

    පාස්වර්ඩ් එක b.day එක වෙලා තියෙන්න ඇති, ඒත් බන් PW එකේ උනත් Combination කීයක් තියෙනවද ? 10 ක් වත් තියෙන්වා, මම නම් හිතන්නෙ වෙන ගේමක් දීලා තියෙන්නෙ, උබේ අලුත් PW උනත් ඌ දන්නවද දැන්නෙ නැ .. ලොල්. .

    හැකර් චූ වැඩ කරන්නෙ ඌ පොඩි එකෙක් හින්දා බං, පොඩි එකක් උනාට ඌ ටිකක් දන්න එකක්, ඌට ඉන්න යාලුවො නම් ඌට වඩා දන්න ඌන්, ටිකක් නම ගිය උන්, n00b හැකාට Defacement page එක උනත් දීලා තියෙන්නෙ උන්. ..
    K_Zoneමාත් හිතනව පාස්වර්ඩ් එක ගෙස් කලාට වඩා වැඩි දෙයක් තියෙනව කියල.
    මේ Defacement page එක සාමන්‍යයෙන් සයිට් එකක් Attack කරල දාන Defacement page එකකට සමානයි. ඉතින් නිකන්ම key logger අනාතයෙක් පාස්වර්ඩ් ගත්ත නම් ඔය Defacement page දදා ඉදීද කියලත් හිතනව. :dull: අනික phone no එකක් ඇයි දැන්මෙ කියනෙ එකෙත් අවුලක් තියෙනව. අද ඕනම පොඩි එකෙක් දන්නව phone no එකකින් ඕනෙම හොරෙක් අල්ලගන්න පුලුවන් කියල. මූ ඕක නොදැන ඉන්න විදියක් නෑ :sorry:
     

    K_ZONE

    Well-known member
  • May 28, 2009
    5,170
    4,076
    113
    invoke db "Injected Memory"
    මම admit කරන්නම් ඒක වැරදියි කියලා මචෝ. මම පික් එකත් මාරු කරන්නම්. බට් අපි ඇහැරෙනවා කියලා කියන්නේ ඇස් අරින් කියන අදහස නිසා මට ඒ උත්තරේ එක්ක 100% එකඟ නම් වෙන්න බෑ :oo::oo::nerd:

    Furry ට රිදිලා™
    1jnqS.jpeg


    අද මමයි ෆුරියයි , මල්පප්පියි තුන් දෙනාම ජිරාපියො උනා, තව කව්ද එන්නෙ ? :lol::lol:

    K_Zoneමාත් හිතනව පාස්වර්ඩ් එක ගෙස් කලාට වඩා වැඩි දෙයක් තියෙනව කියල.
    මේ Defacement page එක සාමන්‍යයෙන් සයිට් එකක් Attack කරල දාන Defacement page එකකට සමානයි. ඉතින් නිකන්ම key logger අනාතයෙක් පාස්වර්ඩ් ගත්ත නම් ඔය Defacement page දදා ඉදීද කියලත් හිතනව. :dull: අනික phone no එකක් ඇයි දැන්මෙ කියනෙ එකෙත් අවුලක් තියෙනව. අද ඕනම පොඩි එකෙක් දන්නව phone no එකකින් ඕනෙම හොරෙක් අල්ලගන්න පුලුවන් කියල. මූ ඕක නොදැන ඉන්න විදියක් නෑ :sorry:

    Defacement page එක නම් මරුසිරා ඩොටේ කොම් admin G2, D2, අපේ elakiri Premium Account අනාතයා 3rd, NihM, MyZh™, Mihiranga
    වගේ මේ දවස් වල ඉන්න හැකර් පොඩි උන් සෙට් එකම Use කරන එකම Defacement Page එක ඕක, උන්ම හදාගනිපු එකක් වගේ. මොකද උන් සෙට් එකේ ඉනනවා හොද Web Designing වැඩ්ඩො, ගොඩක් උන් ජොබට කරන්නෙත් Web.

    Music එක නම්, ‍Youtube Video එකක් යන්නෙ invisible frame එකක, ඒකත් ඔක්කොගෙම එකම Video එක තියෙන්නෙ.
    Images ටික Base64 encode කරලා Embed කරලා තියෙන්නෙ.

    මේක කරපු එකා හරියටම හොයාගන්න බැරිත් ඔය නිසාම තමයි ඌ ඌටම කියල Identity එකක් නැති එකෙක්, අපි නම් යකො මලත් එකම ID එකනෙ, Subject එකේ ඉන්න කාලෙ ඇස්දෙක වගේ පරිස්සම් කලේ ID එක, මුන් එහෙම නැ, ඔය Ghost කියන එකා මෙතන විතරයි Ghost කියලා පාවිච්චි කරලා තියෙන්නෙ වෙන වෙන තැන් වල වෙන වෙන නම්.

    ඒකත් ලංකාවෙ Mature hackers ලා පාවිචිචි කරන නම්, ඒහින්දා මේ බච්චො හොයාගන්න බැ.

    Phone No එකෙන් හෙව්වෙ Company Call කරලා නෙමෙයි නේද Sachiyo. . . ඒ Number එක Google කලාම ඕනම එකෙක්ට ඒ විස්තර එනවා..
    පව් අසරනයා,

    හැබැයි බං සචියා ඌව Call කරලා බය කරා නම් හරි. ඌ අනිවා කියයි කවුද කරන්න ඇත්තෙ කියලා..
    :lol::lol::lol::lol::lol::lol:
     
    Last edited:

    moonrock

    Member
    Sep 1, 2013
    3,024
    202
    0


    Ok OK, මචෝ, මට උබ තරම් නම් දැනුමක් නැ, නම නම් හැකිං කියන එක මොන පාටද කියල වත් දන්නෙ නැ. :shocked:


    මම එහෙම එකක් කියලා නෑ. උබට දැනුම තිබුනත් නැතත් මට ඒක වැඩක් නෑ මචන්. මම කිව්වේ උබ කියපු එක වැරදියි කියලයි. උබ කවුරු වුනත් උබ කියලා තිබුන එක වැරදියි.

    මේකට ක්‍රම තියෙන්වා. Custom Compiler එකක් ගහනවා ඒ MD5 එකට එනකල්, pe හදන්න, exe 1 billion වගේ හදලා අන්තිමට ඒ md5 එකම තියෙන File එකක් හදලා දෙයි. md5 pattern එක හිතාගන්න පුලුවන් ලොකු Hash Chain එකක් තිබ්බා නම්. .

    වැරදියි. සම්පූර්ණයෙන්ම වැරදියි. MD5 Value එක calculate කරන්නේ Virus Guard එකෙන්. එතකොට Custom Compiler එකක් ගහලා ඒක කරන්න බෑ. මොකද Custom Compiler එක තියෙන්නේ Hackers ගේ Side එකේ මිසක් User ගේ Side එකේ නෙවෙයි. උබ මට පේන්නේ Virus Guard එකක් වැඩ කරන විදිය වත් දන්නේ නෑ වගේ.

    Virus Guard එකක් Virus/Malware අල්ලන ප්‍රධාන ක්‍රම දෙකක් තියෙනවා එකක් Hash comparing, අනෙක් එක heuristic detection එක. Hash comparing එකේදි වෙන්නේ Antivirus guard එකෙන් යම් file එකක් scan කරලා එකේ MD5 අගය calculate කරන එකයි ඊට පස්සේ මේ value එක compare කරනවා antivirus guard එකේ database එකේ තියෙන values එක්ක, antivirus guard එකේ database එකේ තියෙන මේ values malware,virus වල md5 values මේක signature එකක් වගේ. එතකොට මේ database එකේ තියෙන MD5 value එකට scan කරපු files වල md5 values සමාන වෙනවා නම් ඒක threat එකක් හැටියට හදුන ගෙන ඒක quarantine කරන්න යවනවා.

    Virus එකක් කියන්නේ හැම තිස්සේම Standalone file එකක් නෙවෙයි. Virus එකකින් කරන්නේ මොකක් හරි binary file එකක් (library file එකක් හෝ exe file එකක්) අස්සට එකේ තියෙන codes inject කරන එකයි (මේකට කියන්නේ hooking කියලයි ,hooking එකේ basic ක්‍රමය තමයි function එකක end එකට custom function එකක් රිංගන වන එකයි ඊට පස්සේ process එකෙන් original file එකේ function එක execute වෙන කොට අර virus එකෙන් දාපු function එකට call එකක් වෙනවා (මේක අනිවාර්යෙන්ම වෙනවා මොකද Codes වැඩ කරන්නේ Sequence එකකට අනුව නිසා)ඊට පස්සේ මේ call එක යනවා අර virus එකේ function එකට ඊට පස්සේ ඒක execute වෙනවා ,ඒක execute වුනාම virus එකේ තියෙන ඔක්කොම වැඩ කරනවා. මේ විදියටමයි FRAPS, Steam, Evolve වගේ Software වැඩ කරන්නේ (ඒවා virus නෙවෙයි නමුත් ඒවා භාවිතා කරන්නේ මේ hooking mechanism එකයි) මට මේක කියලා දෙන්න එපා මචන් මොකද මම Process Hooking කරන්න හොදට දන්නවා මේක කරන්නේ Assembly Level එකෙන් නැතුව C# වලින් වත් .NET වගේ High Level Language එකකින් නෙවෙයි). මේක real time වෙනවා නම් (file එකේ memory address වලට code inject කරනවා නම් cheat engine එකෙන් වගේ) heuristic detection එකෙන් අල්ලනවා. මොකද heuristic detection එකේ මූලික සිද්ධාන්තය තමයි සැක කටයුතු විදියට වැඩ කරන Process නවත්වන එක. නමුත් real time නැතුව Virus එක Standalone විදියට ක්‍රියාත්මක වෙලා හැම file එකක්ම Infect කරන්න ගත්තොත් සහා එතකොට antivirus guard එකෙන් ඇල්ලුවේ නැත්නම් සහා පස්සේ antivirus guard එකෙන් scan කරගෙන යනකොට එතකොට Md5 value එක calculate කෙරුවම මේක අහුවෙනවා. ඒක ලේසියි. සමහර antivirus guard වලින් MD5 values calculate කරනවා යම් file එකක කොටස් කොටස් වලට මුළු file එකේම නැතුව. ඒ කියන්නේ Md5 value එක calculate කරනවා Strings වල, Manifest value වල,icons වල, dialog boxes වල, header එකේ values වල, සහා binary pattern එකේ. මම කලින් කිව්වා වගේ virus එක file එකක් infect කරාම එකේ තියෙන codes යනවා binary file එක ඇතුලට ඊට පස්සේ මේක සටහන් වෙන්නේ binary pattern එකක් හැටියටයි.

    උදාහරණයක් වශයෙන් හිතන්න virus එකක binary patter එක
    0110011100011011011 කියලා

    හොද software එකක binary pattern එක
    00110000110101110100110011010101010101
    01010101010010101010101001010100101010
    කියලා

    දැන් virus එකෙන් මේ හොද file එක infect කරනව ඊට පස්සේ virus එකේ codes යනවා මේ හොද file එකේ codes වලට ඊට පස්සේ හොද file එකේ binary pattern එක එන්නේ මේ විදියටයි.
    001100001101011011001110001101101110100110011010101010101
    01010101010010101010101001010100101010

    දැන් antivirus guard එකෙන් file එක සමස්තයක් වශයෙන් scan කරොත් මේ virus එකේ codes අහුවෙන්නේ නෑ නමුත් කොටස් වශයෙන් scan කරලා md5 value එක calculate කරනවා නම් අහුවෙනවා මොකද එතකොට virus එකේ code එකේ md5 අගය හරියටම calculate වෙන නිසා එහෙම calculate වුනාම මේක compare කරනවා antivirus guard එකේ database එකේ තියෙන values වලට ඊට පස්සේ මේක සමාන නම් file එක infected කියලා mark කරනවා.

    virus එකක් file එකක් infect කරාම ඒ file එක infect ද නැද්ද කියලා හොයන්න පුලුවන් හොද antivirus guard එකක් නම් ඒක නමුත් සම්පූර්නයෙන්ම file එක scan කරලා md5 values එක calculate කරනවා නම් මේක කරන්න බෑ මොකද එතකොට virus එකේ codes එකේ md5 value එක හරියටම calculate වෙන්නේ නැති නිසා. උබ කියපු එක දෙයක් හරි ලොකු file වල මේක කරන්න බෑ මොකද මේක ගොඩක් processing power එක යන ගොඩක් time consuming වැඩක්.

    virus එකක original file එකට නම් බේරෙන්න පුලුවන් FUD crypt වෙලා නමුත් ඒකෙන් infect කරන file එකක් infect ද නැද්ද කියලා හොයාගන්න පුලුවන් ලේසියෙන්ම antivirus guard එක file එකක් කොටස් වශයෙන් md5 calculate කරනවා නම් සහා
    heuristic detect කරනවා නම්

    අතිත් එක මම නම් SetWindowsHookEx API එක ගන්නෙ Form Grabbers හදන්න, Keyloggers හදද්දි Keystoke එක අල්ල ගන්නෙ, getasynckeystate සහ getkeystate දෙකෙන්, බැරිම තැන් වල Windows message loop එකෙන් ගන්නවා.

    *FACE PALM* මට හිතාගන්න බෑ මොකක් කියන්නද කියලා.
    SetWindowsHookEx function එකේ mechanism එක ගැන උබට කිසිම අවබෝධයක් නෑ කියලා මේකෙන් පැහැදිලියි. මුලින්ම මම විස්තර කරන්නම් කොහොමද Windows API එකේ Basic වැඩ කරන්නේ කියලා.
    Windows API එකේ තියෙනවා Windows Procedure කියලා එකක් මේක වැඩ කරන්නේ මේ විදියටයි. System එකේ තියෙනවා Message Queue එකක් අපි Input Device වලින් දෙන හැම Command එකක්ම මේ Queue එකට System එකෙන් pass කරනවා. ඒ වගේම හැම Application එකකටම Message Queue එකක් තියෙනවා.

    උදාහරණයකට කිව්වොත්. හිතන්න අපි Video Game එකක් ගහන කොට Keyboard එකේ ESC Button එක ඔබනවා. ඊට පස්සේ Video Game එක Top Most තියෙනවා System එකෙන් කරන්නේ Video game එකේ (application) Message Queue එකට මේ Message එක යවන එකයි. ඊට පස්සේ Application එකෙන් කරන්නේ GetMessage() function එක හරහා මේ message එක ගන්න එකයි ඊට පස්සේ message එක translate function එකක් හරහා translate කරනවා (translate කරනවා කියන්නේ ESC Key එකට අදාළ Hexa value එක වගේ value එකක් ගන්න එකයී) ඊට පස්සේ Dispatch function එකෙන් කරන්නේ මේ Message එක System එකට යවනවා ,System එකෙන් කරන්නේ මේ Application එකේ තියෙන Win Procedure function එකට call කරන එකයි.application එකකට Win Procedure එකකට වඩා තියෙන්න පුලුවන් ඒක තීරණය කරන්නේ RegisterClassEx function එකෙන්. Windows API තියෙනවා WNDCLASSEX කියලා structure එකක් මේකේ තියෙනවා elements එකක් lpfnWndProc කියලා, මේ element එකට අපිට දෙන්න තියෙන්නේ Windows Procedure එකේ function එකේ නමයි එතකොට. ඊට පස්සේ අපිට තියෙන්නේ
    WNDCLASSEX structure එක RegisterClassEx function එකේ argument එකක් හැටියට pass කරන එකයි එහෙම pass කෙරුවම මේ Window එකට අදාළ windows procedure එක register වෙනවා. එතකොට මේ windows එකට message එකක් ආපු ගමන් system එකෙන් කරන්නේ මේ windows එකට අදාළ windows procedure එකට call කරන එකයි.

    ඉතින් මේ මූලධර්මය දන්නවා නම් අපිට පුලුවන් ඕනෙම Application එකක් අපේ යටතට ගන්නේ. මේකම තමයි Hooking Mechanism එකේ basic සිද්ධාන්තයත්. SetWindowsHookEx එකෙන් සරලවම කියනවා නම් කරන්නේ Hook එකක් Install කරන එකයි. ඊට පස්සේ System එකට එවන හැම Message එකක්ම මේ Hook එක මගින් කරන්නේ ඒකට associated කරලා තියෙන
    Windows Procedure එකට යවන එකයි.

    SetWindowsHookEx එකේ පළවෙනි argument එකේ ඉල්ලන්නේ මොන වර්ගයේ Hook එකක්ද Install කරන්න ඕනේ කියලයි. එතකොට අපිට දෙන්න තියෙන්නේ KEYBoard එකේ Keys Monitor කරන Hook එකක් Install කරන ඕනේ කියලයි ඒක දෙන්න පුලුවන් WH_KEYBOARD කියන Integer Variable එක SetWindowsHookEx function එකට pass කරලා. එතකොට මේ Hook එකෙන් කරන්නේ හැම Key එකක්ම Monitor කරන එකයි.

    ඊට පස්සේ මේ Function එකේ දෙවැනි argument එකට දෙන්න ඕනේ
    Windows Procedure එකේ නම. මම කලින් පැහැදිලි කරා හැම Window Procedure එකක්ම ඊට අදාල Window එකට සම්බන්ධ වෙලා තියෙන්නේ කියලා, එතකොට අපි Window Procedure එකට හැම Message එකක්ම Process වෙලා කරන්නේ එකේ Result එක ඊට අදාළ Window එකේ පෙන්වන එකයි.සලරව කිව්වොත්
    Windows Procedure එකෙන් ඒ message capture කරනවා ඊට පස්සේ ඒවා process කරනවා ඊට පස්සේ Result එක පෙන්වනවා අදාළ window එකේ.

    උදාහරණයටක් කිව්වොත්.
    හිතන්න අපේ ළග තියෙනවා Keylogger එකක්. අපිට ඕනේ කාගේ හරි Computer එකක තියෙන Keystroke Monitor කරන්න. එතකොට අපිට කරන්නේ තියෙන්නේ මේකයි. හදනවා Software එකක්. ඊට පස්සේ ඒකට දානවා
    SetWindowsHookEx function එක ඊට පස්සේ ඒකේ පළවෙනි argument එක හැටියට දෙඅන්වා KEYBOARD Integer එක එතකොට දැන් System එකෙන් Monitor කරන්නේ Keystroke විතරයි, ඊට පස්සේ දෙවැනි argument එකට දෙනවා අපේ Application එකේ ප්‍රධාන Window එකේ Windows Procedure එක. ඊට පස්සේ අපිට කරන්න තියෙන්නේ
    Windows Procedure function එකේ තව code ටිකක් ගහලා Keys Display වෙන්න හදනවා Application එකේ Main Window එකේ. දැන් User Key එකක් ගහපු ගමන් වෙන්නේ මේ Application එකේ ඒ Keys පෙන්වන එකයි.

    මේක තමයි
    Keylogger එකක BASIC MECHANISM එක. මේක C# වත් Visual Basic වත් නෙවෙයි මේක C/C++/Windows API වලින් කරන්න පුලුවන් Low Level එකක්. මේ ක්‍රමය දන්නවා නම් ඕනෙම එකෙක්ට Keylogger එකක් හදන්න පුලුවන් මේ දැන් වුනත්.

    අන්තිමට කියන්න තියෙන්නේ මම hacker කෙනෙක් නෙවෙයි නමුත් මම Windows API/C++ ගැන හොදට දන්නවා.




    Ok OK, මචෝ, මට උබ තරම් නම් දැනුමක් නැ, නම නම් හැකිං කියන එක මොන පාටද කියල වත් දන්නෙ නැ. :shocked:

    ඔය md5 කතාව සචිත්ගෙයි මගෙයි පරන කතාවක් Crystal Shield එක ගැන, (ඌ හදපු Anti Virus System එක) :nerd:

    උබ දන්නෙ නැති උනාට FILE MD5 එකකට සර්වසම තව File එකක් හදන්න පුලුවන්, ඒකට ක්‍රම තියෙනවා. මෙතන කියන්න නම් වෙලා නැ, MD5 එක cal වෙන හැටි පොඩ්ඩක් බලපන්. .:)

    මේක කරන්න ක්‍රම දෙකක් තියෙන්වා එක
    File එකේ යම් යම් data අරගෙන (Size, first bytes, .data .rs .text sections, PE headers, compile date, Resources, Internal Strings, ApiCalls වඒ දේවල් ) ඒකෙන් calculate කරනවා.;)

    අනිත් ක්‍රමේ

    File එක Binary හරි, base64 හරි String එකකට අරගෙන md5 එක කැල් කරනවා, (මේක ගොඩාක් ලොකු ෆයිල් වලට කරන්න බැ max 20mb)

    ඉතින් මේක bypass කරන්න පුලුවන් ගොඩක් ලේසියෙන්. .මේකට ක්‍රම තියෙන්වා. Custom Compiler එකක් ගහනවා ඒ MD5 එකට එනකල්, pe හදන්න, exe 1 billion වගේ හදලා අන්තිමට ඒ md5 එකම තියෙන File එකක් හදලා දෙයි. md5 pattern එක හිතාගන්න පුලුවන් ලොකු Hash Chain එකක් තිබ්බා නම්. .

    අතිත් එක මම නම් SetWindowsHookEx API එක ගන්නෙ Form Grabbers හදන්න, Keyloggers හදද්දි Keystoke එක අල්ල ගන්නෙ, getasynckeystate සහ getkeystate දෙකෙන්, බැරිම තැන් වල Windows message loop එකෙන් ගන්නවා.

    SetWindowsHookEx, getasynckeystate, getkeystate තුනම Keylogger වල විතරක් නෙමෙයි, ගොඩාක් Software වල ඔය API call කරනවා, Global Hot Keys use කරන ඕනම Player එකක තියෙන්නෙ ඔය API.




     
    • Like
    Reactions: sachith19920726

    K_ZONE

    Well-known member
  • May 28, 2009
    5,170
    4,076
    113
    invoke db "Injected Memory"



    මම එහෙම එකක් කියලා නෑ. උබට දැනුම තිබුනත් නැතත් මට ඒක වැඩක් නෑ මචන්. මම කිව්වේ උබ කියපු එක වැරදියි කියලයි. උබ කවුරු වුනත් උබ කියලා තිබුන එක වැරදියි.



    වැරදියි. සම්පූර්ණයෙන්ම වැරදියි. MD5 Value එක calculate කරන්නේ Virus Guard එකෙන්. එතකොට Custom Compiler එකක් ගහලා ඒක කරන්න බෑ. මොකද Custom Compiler එක තියෙන්නේ Hackers ගේ Side එකේ මිසක් User ගේ Side එකේ නෙවෙයි. උබ මට පේන්නේ Virus Guard එකක් වැඩ කරන විදිය වත් දන්නේ නෑ වගේ.

    Virus Guard එකක් Virus/Malware අල්ලන ප්‍රධාන ක්‍රම දෙකක් තියෙනවා එකක් Hash comparing, අනෙක් එක heuristic detection එක. Hash comparing එකේදි වෙන්නේ Antivirus guard එකෙන් යම් file එකක් scan කරලා එකේ MD5 අගය calculate කරන එකයි ඊට පස්සේ මේ value එක compare කරනවා antivirus guard එකේ database එකේ තියෙන values එක්ක, antivirus guard එකේ database එකේ තියෙන මේ values malware,virus වල md5 values මේක signature එකක් වගේ. එතකොට මේ database එකේ තියෙන MD5 value එකට scan කරපු files වල md5 values සමාන වෙනවා නම් ඒක threat එකක් හැටියට හදුන ගෙන ඒක quarantine කරන්න යවනවා.

    Virus එකක් කියන්නේ හැම තිස්සේම Standalone file එකක් නෙවෙයි. Virus එකකින් කරන්නේ මොකක් හරි binary file එකක් (library file එකක් හෝ exe file එකක්) අස්සට එකේ තියෙන codes inject කරන එකයි (මේකට කියන්නේ hooking කියලයි ,hooking එකේ basic ක්‍රමය තමයි function එකක end එකට custom function එකක් රිංගන වන එකයි ඊට පස්සේ process එකෙන් original file එකේ function එක execute වෙන කොට අර virus එකෙන් දාපු function එකට call එකක් වෙනවා (මේක අනිවාර්යෙන්ම වෙනවා මොකද Codes වැඩ කරන්නේ Sequence එකකට අනුව නිසා)ඊට පස්සේ මේ call එක යනවා අර virus එකේ function එකට ඊට පස්සේ ඒක execute වෙනවා ,ඒක execute වුනාම virus එකේ තියෙන ඔක්කොම වැඩ කරනවා. මේ විදියටමයි FRAPS, Steam, Evolve වගේ Software වැඩ කරන්නේ (ඒවා virus නෙවෙයි නමුත් ඒවා භාවිතා කරන්නේ මේ hooking mechanism එකයි) මට මේක කියලා දෙන්න එපා මචන් මොකද මම Process Hooking කරන්න හොදට දන්නවා මේක කරන්නේ Assembly Level එකෙන් නැතුව C# වලින් වත් .NET වගේ High Level Language එකකින් නෙවෙයි). මේක real time වෙනවා නම් (file එකේ memory address වලට code inject කරනවා නම් cheat engine එකෙන් වගේ) heuristic detection එකෙන් අල්ලනවා. මොකද heuristic detection එකේ මූලික සිද්ධාන්තය තමයි සැක කටයුතු විදියට වැඩ කරන Process නවත්වන එක. නමුත් real time නැතුව Virus එක Standalone විදියට ක්‍රියාත්මක වෙලා හැම file එකක්ම Infect කරන්න ගත්තොත් සහා එතකොට antivirus guard එකෙන් ඇල්ලුවේ නැත්නම් සහා පස්සේ antivirus guard එකෙන් scan කරගෙන යනකොට එතකොට Md5 value එක calculate කෙරුවම මේක අහුවෙනවා. ඒක ලේසියි. සමහර antivirus guard වලින් MD5 values calculate කරනවා යම් file එකක කොටස් කොටස් වලට මුළු file එකේම නැතුව. ඒ කියන්නේ Md5 value එක calculate කරනවා Strings වල, Manifest value වල,icons වල, dialog boxes වල, header එකේ values වල, සහා binary pattern එකේ. මම කලින් කිව්වා වගේ virus එක file එකක් infect කරාම එකේ තියෙන codes යනවා binary file එක ඇතුලට ඊට පස්සේ මේක සටහන් වෙන්නේ binary pattern එකක් හැටියටයි.

    උදාහරණයක් වශයෙන් හිතන්න virus එකක binary patter එක
    0110011100011011011 කියලා

    හොද software එකක binary pattern එක
    00110000110101110100110011010101010101
    01010101010010101010101001010100101010
    කියලා

    දැන් virus එකෙන් මේ හොද file එක infect කරනව ඊට පස්සේ virus එකේ codes යනවා මේ හොද file එකේ codes වලට ඊට පස්සේ හොද file එකේ binary pattern එක එන්නේ මේ විදියටයි.
    001100001101011011001110001101101110100110011010101010101
    01010101010010101010101001010100101010

    දැන් antivirus guard එකෙන් file එක සමස්තයක් වශයෙන් scan කරොත් මේ virus එකේ codes අහුවෙන්නේ නෑ නමුත් කොටස් වශයෙන් scan කරලා md5 value එක calculate කරනවා නම් අහුවෙනවා මොකද එතකොට virus එකේ code එකේ md5 අගය හරියටම calculate වෙන නිසා එහෙම calculate වුනාම මේක compare කරනවා antivirus guard එකේ database එකේ තියෙන values වලට ඊට පස්සේ මේක සමාන නම් file එක infected කියලා mark කරනවා.

    virus එකක් file එකක් infect කරාම ඒ file එක infect ද නැද්ද කියලා හොයන්න පුලුවන් හොද antivirus guard එකක් නම් ඒක නමුත් සම්පූර්නයෙන්ම file එක scan කරලා md5 values එක calculate කරනවා නම් මේක කරන්න බෑ මොකද එතකොට virus එකේ codes එකේ md5 value එක හරියටම calculate වෙන්නේ නැති නිසා. උබ කියපු එක දෙයක් හරි ලොකු file වල මේක කරන්න බෑ මොකද මේක ගොඩක් processing power එක යන ගොඩක් time consuming වැඩක්.

    virus එකක original file එකට නම් බේරෙන්න පුලුවන් FUD crypt වෙලා නමුත් ඒකෙන් infect කරන file එකක් infect ද නැද්ද කියලා හොයාගන්න පුලුවන් ලේසියෙන්ම antivirus guard එක file එකක් කොටස් වශයෙන් md5 calculate කරනවා නම් සහා
    heuristic detect කරනවා නම්



    *FACE PALM* මට හිතාගන්න බෑ මොකක් කියන්නද කියලා.
    SetWindowsHookEx function එකේ mechanism එක ගැන උබට කිසිම අවබෝධයක් නෑ කියලා මේකෙන් පැහැදිලියි. මුලින්ම මම විස්තර කරන්නම් කොහොමද Windows API එකේ Basic වැඩ කරන්නේ කියලා.
    Windows API එකේ තියෙනවා Windows Procedure කියලා එකක් මේක වැඩ කරන්නේ මේ විදියටයි. System එකේ තියෙනවා Message Queue එකක් අපි Input Device වලින් දෙන හැම Command එකක්ම මේ Queue එකට System එකෙන් pass කරනවා. ඒ වගේම හැම Application එකකටම Message Queue එකක් තියෙනවා.

    උදාහරණයකට කිව්වොත්. හිතන්න අපි Video Game එකක් ගහන කොට Keyboard එකේ ESC Button එක ඔබනවා. ඊට පස්සේ Video Game එක Top Most තියෙනවා System එකෙන් කරන්නේ Video game එකේ (application) Message Queue එකට මේ Message එක යවන එකයි. ඊට පස්සේ Application එකෙන් කරන්නේ GetMessage() function එක හරහා මේ message එක ගන්න එකයි ඊට පස්සේ message එක translate function එකක් හරහා translate කරනවා (translate කරනවා කියන්නේ ESC Key එකට අදාළ Hexa value එක වගේ value එකක් ගන්න එකයී) ඊට පස්සේ Dispatch function එකෙන් කරන්නේ මේ Message එක System එකට යවනවා ,System එකෙන් කරන්නේ මේ Application එකේ තියෙන Win Procedure function එකට call කරන එකයි.application එකකට Win Procedure එකකට වඩා තියෙන්න පුලුවන් ඒක තීරණය කරන්නේ RegisterClassEx function එකෙන්. Windows API තියෙනවා WNDCLASSEX කියලා structure එකක් මේකේ තියෙනවා elements එකක් lpfnWndProc කියලා, මේ element එකට අපිට දෙන්න තියෙන්නේ Windows Procedure එකේ function එකේ නමයි එතකොට. ඊට පස්සේ අපිට තියෙන්නේ
    WNDCLASSEX structure එක RegisterClassEx function එකේ argument එකක් හැටියට pass කරන එකයි එහෙම pass කෙරුවම මේ Window එකට අදාළ windows procedure එක register වෙනවා. එතකොට මේ windows එකට message එකක් ආපු ගමන් system එකෙන් කරන්නේ මේ windows එකට අදාළ windows procedure එකට call කරන එකයි.

    ඉතින් මේ මූලධර්මය දන්නවා නම් අපිට පුලුවන් ඕනෙම Application එකක් අපේ යටතට ගන්නේ. මේකම තමයි Hooking Mechanism එකේ basic සිද්ධාන්තයත්. SetWindowsHookEx එකෙන් සරලවම කියනවා නම් කරන්නේ Hook එකක් Install කරන එකයි. ඊට පස්සේ System එකට එවන හැම Message එකක්ම මේ Hook එක මගින් කරන්නේ ඒකට associated කරලා තියෙන
    Windows Procedure එකට යවන එකයි.

    SetWindowsHookEx එකේ පළවෙනි argument එකේ ඉල්ලන්නේ මොන වර්ගයේ Hook එකක්ද Install කරන්න ඕනේ කියලයි. එතකොට අපිට දෙන්න තියෙන්නේ KEYBoard එකේ Keys Monitor කරන Hook එකක් Install කරන ඕනේ කියලයි ඒක දෙන්න පුලුවන් WH_KEYBOARD කියන Integer Variable එක SetWindowsHookEx function එකට pass කරලා. එතකොට මේ Hook එකෙන් කරන්නේ හැම Key එකක්ම Monitor කරන එකයි.

    ඊට පස්සේ මේ Function එකේ දෙවැනි argument එකට දෙන්න ඕනේ
    Windows Procedure එකේ නම. මම කලින් පැහැදිලි කරා හැම Window Procedure එකක්ම ඊට අදාල Window එකට සම්බන්ධ වෙලා තියෙන්නේ කියලා, එතකොට අපි Window Procedure එකට හැම Message එකක්ම Process වෙලා කරන්නේ එකේ Result එක ඊට අදාළ Window එකේ පෙන්වන එකයි.සලරව කිව්වොත්
    Windows Procedure එකෙන් ඒ message capture කරනවා ඊට පස්සේ ඒවා process කරනවා ඊට පස්සේ Result එක පෙන්වනවා අදාළ window එකේ.

    උදාහරණයටක් කිව්වොත්.
    හිතන්න අපේ ළග තියෙනවා Keylogger එකක්. අපිට ඕනේ කාගේ හරි Computer එකක තියෙන Keystroke Monitor කරන්න. එතකොට අපිට කරන්නේ තියෙන්නේ මේකයි. හදනවා Software එකක්. ඊට පස්සේ ඒකට දානවා
    SetWindowsHookEx function එක ඊට පස්සේ ඒකේ පළවෙනි argument එක හැටියට දෙඅන්වා KEYBOARD Integer එක එතකොට දැන් System එකෙන් Monitor කරන්නේ Keystroke විතරයි, ඊට පස්සේ දෙවැනි argument එකට දෙනවා අපේ Application එකේ ප්‍රධාන Window එකේ Windows Procedure එක. ඊට පස්සේ අපිට කරන්න තියෙන්නේ
    Windows Procedure function එකේ තව code ටිකක් ගහලා Keys Display වෙන්න හදනවා Application එකේ Main Window එකේ. දැන් User Key එකක් ගහපු ගමන් වෙන්නේ මේ Application එකේ ඒ Keys පෙන්වන එකයි.

    මේක තමයි
    Keylogger එකක BASIC MECHANISM එක. මේක C# වත් Visual Basic වත් නෙවෙයි මේක C/C++/Windows API වලින් කරන්න පුලුවන් Low Level එකක්. මේ ක්‍රමය දන්නවා නම් ඕනෙම එකෙක්ට Keylogger එකක් හදන්න පුලුවන් මේ දැන් වුනත්.

    අන්තිමට කියන්න තියෙන්නේ මම hacker කෙනෙක් නෙවෙයි නමුත් මම Windows API/C++ ගැන හොදට දන්නවා.



    මචෝ, සොරි බං,... උබට සැහෙන්න රිදිලා™ වගේ මගේ Reply එකට
    මම ආයේ උඹේ ඒවට Reply නොදා ඉන්නම්. .. ;)

    පොඩි දෙයක් විතරක් අහන්නම්, SetWindowsHookEx ට පාස් කරන්නෙ WH_KEYBOARD_LL නේද, WH_KEYBOARD කියන්නෙ 2, WH_KEYBOARD_LL කියන්නෙ 13.

    වැරදියි. සම්පූර්ණයෙන්ම වැරදියි. MD5 Value එක calculate කරන්නේ Virus Guard එකෙන්. එතකොට Custom Compiler එකක් ගහලා ඒක කරන්න බෑ. මොකද Custom Compiler එක තියෙන්නේ Hackers ගේ Side එකේ මිසක් User ගේ Side එකේ නෙවෙයි.

    එතකොට මචං, ඔය MD5 Hash එක AV එකෙන් ගත්තම එන්නෙ වෙනම එකක්, අපි ගත්තම එන්නෙ වෙනම එකක්ද බං ? මාරයි. .

    (library file එකක් හෝ exe file එකක්) අස්සට එකේ තියෙන codes inject කරන එකයි (මේකට කියන්නේ hooking කියලයි

    අපේ පැත්තෙ නම් මේකට කියන්නෙ Injection කියලම තමයි බං, අපේ පැත්තෙ Hooking කියන්නෙ වෙනම දෙයකට, ඒක FWB, FWB++ වගේ Firewall bypass method වලදි පාවිච්චි කරන එකක්. අපේ පැත්තෙ ඕකට කියන්නෙ Custom Function Injection එහෙම නැත්නම් Binary Injection කියලා.
    Sality, Kido, Nimda, Virut, TDS වගේ Virus වල කරන්නෙ Injection කියලා තමයි අපේ පැත්තෙ අය කියන්නෙ. Hooking කරන්නෙ ගොඩක් ම වෙලාවට Ring-0 Rootkit වල කියලයි අපේ සීයා කියන්නෙ.

    (file එකේ memory address වලට code inject කරනවා නම් cheat engine එකෙන් වගේ) heuristic detection එකෙන් අල්ලනවා.

    අපේ පැත්තෙ නම් මචො, Virus වලින් memory එකට කCode Inject කරන්නෙ නැ, එහෙම කරන්නෙ Exploits, සමහර වෙලාවට FUD Crypters වලින් නම් අපේ පැත්තෙ එහෙම කරනවා RunPE API වලින්. . ඒත් එහෙම කරන එකත් හැම Virus Guard එකෙන්ම අල්ලන්නෙ නැ Avira වලිට විතරයි එහෙම Detection System එකක් තියෙන්නෙ කියලයි අපේ සීයා කිව්වෙ.

    දැන් antivirus guard එකෙන් file එක සමස්තයක් වශයෙන් scan කරොත් මේ virus එකේ codes අහුවෙන්නේ නෑ නමුත් කොටස් වශයෙන් scan කරලා md5 value එක calculate කරනවා නම් අහුවෙනවා මොකද එතකොට virus එකේ code එකේ md5 අගය හරියටම calculate වෙන නිසා එහෙම calculate වුනාම මේක compare කරනවා antivirus guard එකේ database එකේ තියෙන values වලට ඊට පස්සේ මේක සමාන නම් file එක infected කියලා mark කරනවා.

    එතකොට මචො Virus Guard වල Database වල මේලෝකෙ තියෙන හැම File එකක්ම හැම Virus එකකින්ම infect උනාම එන Hash එක තියෙනවද මචෝ ??
    අපේ පැත්තෙ Virus Guard නම් Address එක එක්ක එකම එක Hash එකයි තියන් ඉන්නෙ, ඒ හින්දා තමයි අපේ පැත්තෙ අය AV Bypass කරන්න එකම එක Hex එකක් Nop කරලා UD කරගන්නෙ,.

    මට නිදිමතයි බං, මම යනවා, උබේ දැනුම පට්ට මචො, තව හොදට C++ ඉගන ගන්න, මම හෙන මෝඩ පොරක් බං, C++ කිව්වම චූ ගියා මට.

    (තරහ ගන්න එපා සහෝ, නිදිමත වෙලාවට කියවෙන දේවල්...)
     

    moonrock

    Member
    Sep 1, 2013
    3,024
    202
    0
    මම කෙරුවේ මචන් වරද පෙන්වපු එකයි නමුත් උබ මාත් එක්ක argue කරන්න එනවා මේ පොඩි දේට. මට තේරේන්නෙ නෑ උබට මොකද වෙලා තියෙන්නේ කියලා. උබ දන්නවා ඇති යම් කිසි දෙයක් ගැන නමුත් උබ නිහතමානි නෑ. අපි කරන්න ඕනේ argue කර කර යන එක නෙවෙයි නොදන්න දෙයක් තියෙනවා නම් ඉගෙන ගන්න එකයි ඊට පස්සේ ඒක අනුන්ගේ යහපතට යොදවන එකයි. අපේ ආච්චි කියලා තියෙන්නේ තමන් යම් කිසි දෙයක් ගැන දන්නවා නම් ඒක ගැන කයිවාරු ගහන්න එපා නොදන්නවා වගේ පෙන්වලා තවත් තමන් නොදන්න දේවල් ගැන ඉගෙන ගන්න කියලයි. ඕනෙම කෙනෙක්ගෙන් අපිට ඉගෙන ගන්න දේවල් තියෙනවා. මම ඔය ලොකුවට ලියලා දැම්මෙත් උබ තේරුම් අරගෙන තිබිච්ච විදියට වැරදි නිසා ඒක හරි ගස්සවා ගැනීමේ චේතනාවෙන් මිසක් argue කරන්න නෙවෙයි.
     

    M E T H

    Active member
  • Oct 23, 2013
    647
    48
    28
    මචෝ, සොරි බං,... උබට සැහෙන්න රිදිලා™ වගේ මගේ Reply එකට
    මම ආයේ උඹේ ඒවට Reply නොදා ඉන්නම්. .. ;)

    පොඩි දෙයක් විතරක් අහන්නම්, SetWindowsHookEx ට පාස් කරන්නෙ WH_KEYBOARD_LL නේද, WH_KEYBOARD කියන්නෙ 2, WH_KEYBOARD_LL කියන්නෙ 13.



    එතකොට මචං, ඔය MD5 Hash එක AV එකෙන් ගත්තම එන්නෙ වෙනම එකක්, අපි ගත්තම එන්නෙ වෙනම එකක්ද බං ? මාරයි. .



    අපේ පැත්තෙ නම් මේකට කියන්නෙ Injection කියලම තමයි බං, අපේ පැත්තෙ Hooking කියන්නෙ වෙනම දෙයකට, ඒක FWB, FWB++ වගේ Firewall bypass method වලදි පාවිච්චි කරන එකක්. අපේ පැත්තෙ ඕකට කියන්නෙ Custom Function Injection එහෙම නැත්නම් Binary Injection කියලා.
    Sality, Kido, Nimda, Virut, TDS වගේ Virus වල කරන්නෙ Injection කියලා තමයි අපේ පැත්තෙ අය කියන්නෙ. Hooking කරන්නෙ ගොඩක් ම වෙලාවට Ring-0 Rootkit වල කියලයි අපේ සීයා කියන්නෙ.



    අපේ පැත්තෙ නම් මචො, Virus වලින් memory එකට කCode Inject කරන්නෙ නැ, එහෙම කරන්නෙ Exploits, සමහර වෙලාවට FUD Crypters වලින් නම් අපේ පැත්තෙ එහෙම කරනවා RunPE API වලින්. . ඒත් එහෙම කරන එකත් හැම Virus Guard එකෙන්ම අල්ලන්නෙ නැ Avira වලිට විතරයි එහෙම Detection System එකක් තියෙන්නෙ කියලයි අපේ සීයා කිව්වෙ.



    එතකොට මචො Virus Guard වල Database වල මේලෝකෙ තියෙන හැම File එකක්ම හැම Virus එකකින්ම infect උනාම එන Hash එක තියෙනවද මචෝ ??
    අපේ පැත්තෙ Virus Guard නම් Address එක එක්ක එකම එක Hash එකයි තියන් ඉන්නෙ, ඒ හින්දා තමයි අපේ පැත්තෙ අය AV Bypass කරන්න එකම එක Hex එකක් Nop කරලා UD කරගන්නෙ,.

    මට නිදිමතයි බං, මම යනවා, උබේ දැනුම පට්ට මචො, තව හොදට C++ ඉගන ගන්න, මම හෙන මෝඩ පොරක් බං, C++ කිව්වම චූ ගියා මට.

    (තරහ ගන්න එපා සහෝ, නිදිමත වෙලාවට කියවෙන දේවල්...)

    නිහතමානී වෙයන් සුට්ටො. පොඩි එකෙක්ගෙන් හරි ගන්න දෙයක් තියෙනව නම් ගනින්. දැනුම කියන්නේ තොරතුරු ටිකක් විතරයි බන්. ඒක අඩු වැඩි වශයෙන් ලෝකේ ගොඩක් උන්ට තියෙන දෙයක්. එකෙක් දෙයක් කිව්වට පස්සේ ඌට රිදිල කියල කින්ඩි දාන එක මහ දෙකයි පනහෙ වැඩ බන්. ඒකෙන්ම පේනවා උබගේ පෞර්ෂයේ හැටි.
     

    1118lakmalkumara

    Well-known member
  • May 21, 2009
    30,482
    3,169
    113
    斯里蘭卡
    ## BIO Personal Details Name with initials : D.L.K Kirieldeniya

    lk5Mqqa.png


    Name denoted by initials : Don Lahiru Kanchana Kirieldeniya

    Gender : Male

    Date of birth : 10th February 1992

    Age : 19 years

    Nationality : Sri Lankan

    Marital status : Single Address : 28, Galanigama, Bandaragama

    Telephone number : 0712418641

    School attended : Sri Sumangala College, Panadura
    Educational Qualifications Passed G.C.E. O/L Examination in 2008 Subject Grade Science & Technology C Mathematics B English C Sinhala C Information & Communication Technology B Social Studies & History B Buddhism A Dancing A

    Pending results for G.C.E A\L Examination in 2011 Subject ##

    Area of Expertise IT fundamentals Microsoft Office applications PC Hardware Networking essentials Internet, Email, and Web Designing basics Graphics and Animation Software Engineering Programming with C#.net Programming with Java Web Applications Development with ASP.net Software Development Project

    මල බත කන්න ලෑස්ති වෙයන් හැකර් අම්මි..

    webcache



    :cool::cool::cool:
    මට එච්චර දෙයක් කරගන්න බෑ බං.. ඒත් අපේ ගෙදර කට්ටිය නම් නිකං ඉන්න එකක් නෑ.. :rofl: මල්ලි කාරය මගේ රෙද්ද ගලවල කුජීත විදියට.. අලි වැඩර් පොඩි එකෙක් අතින් අතවරයට ලක් වෙලා කියල :(

    තාත්ත අදුරනව බං ඕන තරම් උන්.. army camp එක ගෙවල් ගාව.. ඉතින් ඕන තරම් උන් ඉන්නවා.. stf එකේ උන් ඉන්නවා.. පොලිස්සියේත් දෙතුන් දෙනෙක් ඉන්නවා..



    මම තාම පොඩි එකා

    2.gif

    Mekatanam Hina :lol:
     

    1118lakmalkumara

    Well-known member
  • May 21, 2009
    30,482
    3,169
    113
    斯里蘭卡
    Yako Me monawada Me ubala Dala Thiyenne Ubala Randu wenne Mokada yakaw pissuda thopita ekekta ekek second wenna kemathi nae oka nawaththapalla Ubala serama weda karayo ban :yes:
     

    K_ZONE

    Well-known member
  • May 28, 2009
    5,170
    4,076
    113
    invoke db "Injected Memory"
    මම කෙරුවේ මචන් වරද පෙන්වපු එකයි නමුත් උබ මාත් එක්ක argue කරන්න එනවා මේ පොඩි දේට. මට තේරේන්නෙ නෑ උබට මොකද වෙලා තියෙන්නේ කියලා. උබ දන්නවා ඇති යම් කිසි දෙයක් ගැන නමුත් උබ නිහතමානි නෑ. අපි කරන්න ඕනේ argue කර කර යන එක නෙවෙයි නොදන්න දෙයක් තියෙනවා නම් ඉගෙන ගන්න එකයි ඊට පස්සේ ඒක අනුන්ගේ යහපතට යොදවන එකයි. අපේ ආච්චි කියලා තියෙන්නේ තමන් යම් කිසි දෙයක් ගැන දන්නවා නම් ඒක ගැන කයිවාරු ගහන්න එපා නොදන්නවා වගේ පෙන්වලා තවත් තමන් නොදන්න දේවල් ගැන ඉගෙන ගන්න කියලයි. ඕනෙම කෙනෙක්ගෙන් අපිට ඉගෙන ගන්න දේවල් තියෙනවා. මම ඔය ලොකුවට ලියලා දැම්මෙත් උබ තේරුම් අරගෙන තිබිච්ච විදියට වැරදි නිසා ඒක හරි ගස්සවා ගැනීමේ චේතනාවෙන් මිසක් argue කරන්න නෙවෙයි.

    අනිවා මචො, මම උබ කියන දේ පිලිගන්නවා, උබේ දැනුම ගැන උනත් මට සතුටුයි, එක එක Institute පස්සෙ ගිහින් බොරු කාරයින්ට අහුවෙච්ච Software කාරයො ගස් ගල් ගානට ඉන්න මේ කාලෙ, උබ වගේ එකෙක් මාර වටිනවා, විභාග පාස් වෙන්න ඉගෙන ගනුපු එකයි, ඇත්තටම උවමනාවෙන් ඉගෙන ගත්ත එකයි අතර වෙනස ඒක තමයි.

    මම නෙමෙයිනෙ මචං උබත් එක්ක Argue කරන්න පටන් ගතතෙ? මමයි සචියයි කතා කර කර හිටියෙ උගේ Virus Guard එකේ Detection System එකේ තියෙන Loop Holes ගැන, ඒ මගේ තියෙන දැනුම ඌත් එක්ක බෙදාගන්න මිසක් මගේ තියෙන ලොකු කමකට නෙමෙයි. ඒක මම ගැන දන්න උන් දන්නවා, කෙනෙක් දෙයක් ඇහුවට පස්සෙ මම කවදාවත් ලොකු කම් කියවලා නැ සහෝ, ඒක මේ ත්‍රෙඩ් එකේ Reply දාලා තියෙනගොඩක් උන් දන්නවා. නොදන්න දෙයක් නම්, දන්නෙ නැ කියලා නිහතමානීව ඕනම තැනක කියවලා තියෙනවා.

    ඒ වගේම දෙයක් කියපු ගමන් ඒක ඒ විදියටම පිලිගන්න මම මුස්ලිම් කෙනෙක් නෙමෙයි මචො, ඕනම දෙයක් තර්ක කරලා හරි කියලා දැන ගෙන දැන ගන්න කෙනෙක්, මේ Forum එකේ ඕනම එකෙක් එක්ක මම රන්ඩු වෙලා ඇති, ඒත් කවුරුවත් මට මෙහෙම කියලා නම් නැ. හිත නම් රිදුනා,
    :dull::dull::dull::dull:
    මේ ත්‍රෙඩ් එකේ මුල ඉදලම හිටියෙ අවුරුදු ගනන් එකාට එකා දන්න, එකාට එකක් උදව් කරගන්න, එකාට එකෙක් කැවද බීවද කියලා උනත් හොයලා බලන හොද යාලුවො ටිකක්, උන් එක්ක නම් ඕන දෙයක් කියන්න පුලුවන් ඔන් ඔක්කොම හොද කොල්ලො නිසා.
    :D:D:D
    නොදන්න මෙම්බර්ස් ලව අතේ දුරින් කතා කරන්න අපිට හොද පාඩම් මේවා.
    :no::no::no::no::no::no::no::no:
    Sorry මචො, මේකෙ ඉන්න අනිත් උන් ඉතින් දින පතා සෙට් වෙන පව්ලෙ උන් වගේ උන් ටිකක්, උන්ට කතා කර්න ටෝන් එකෙන් උබටත් කතාකලේ යාලු කමට, උබ ඒක වැරදියට වටහ ගත්තා නම් සොරි.:yes::yes::yes:
    නිහතමානී වෙයන් සුට්ටො. පොඩි එකෙක්ගෙන් හරි ගන්න දෙයක් තියෙනව නම් ගනින්. දැනුම කියන්නේ තොරතුරු ටිකක් විතරයි බන්. ඒක අඩු වැඩි වශයෙන් ලෝකේ ගොඩක් උන්ට තියෙන දෙයක්. එකෙක් දෙයක් කිව්වට පස්සේ ඌට රිදිල කියල කින්ඩි දාන එක මහ දෙකයි පනහෙ වැඩ බන්. ඒකෙන්ම පේනවා උබගේ පෞර්ෂයේ හැටි.

    මේ උබනම් කට අරින්න එපා, mr.Fake, උබ මාත් එක්ක තියෙන්නෙ වෙනම කෝන්තරයක්. Original ID එකෙන් වරෙන් පුතා. එත්කොට Reply කරන්නම් උබට, මම මොනා කිව්වත් Quote කරන්න උබට මාර අමාරුවක් තියෙන්නෙ, :D:D:D:D:D:D:D තෝ නම් අනිවා පරන මෙම්බරයෙක්. . .

    ඔව් ඩෝ, මේ මගේ පෞර්ෂයේ හැටි තමයි ඩෝ, වලි නම් වලි, මොනා හරි කිව්වට පස්සෙ අඩන්නෙ නැ.
    උබ ඉතින් මෙතන Fake වලින් ඇවිත් වැඩක් නැ, උබ කලින් ඉදන් ඉන්න එකෙක් නම් දන්නවා ඇතිනෙ, පෞර්ෂයේ හැටි, උබටත් රිදිච්ච නිසා තමයි මේ වෙන ඒවගෙන් ඇවිත් දගලන්නෙ, මගෙ PM වලට Reply කෝ ?

    :P:P:P
     
    Last edited:

    පූස්

    Member
    Jan 17, 2011
    13,107
    258
    0
    54.0081° N, 1.6900° W



    මම එහෙම එකක් කියලා නෑ. උබට දැනුම තිබුනත් නැතත් මට ඒක වැඩක් නෑ මචන්. මම කිව්වේ උබ කියපු එක වැරදියි කියලයි. උබ කවුරු වුනත් උබ කියලා තිබුන එක වැරදියි.



    වැරදියි. සම්පූර්ණයෙන්ම වැරදියි. MD5 Value එක calculate කරන්නේ Virus Guard එකෙන්. එතකොට Custom Compiler එකක් ගහලා ඒක කරන්න බෑ. මොකද Custom Compiler එක තියෙන්නේ Hackers ගේ Side එකේ මිසක් User ගේ Side එකේ නෙවෙයි. උබ මට පේන්නේ Virus Guard එකක් වැඩ කරන විදිය වත් දන්නේ නෑ වගේ.

    Virus Guard එකක් Virus/Malware අල්ලන ප්‍රධාන ක්‍රම දෙකක් තියෙනවා එකක් Hash comparing, අනෙක් එක heuristic detection එක. Hash comparing එකේදි වෙන්නේ Antivirus guard එකෙන් යම් file එකක් scan කරලා එකේ MD5 අගය calculate කරන එකයි ඊට පස්සේ මේ value එක compare කරනවා antivirus guard එකේ database එකේ තියෙන values එක්ක, antivirus guard එකේ database එකේ තියෙන මේ values malware,virus වල md5 values මේක signature එකක් වගේ. එතකොට මේ database එකේ තියෙන MD5 value එකට scan කරපු files වල md5 values සමාන වෙනවා නම් ඒක threat එකක් හැටියට හදුන ගෙන ඒක quarantine කරන්න යවනවා.

    Virus එකක් කියන්නේ හැම තිස්සේම Standalone file එකක් නෙවෙයි. Virus එකකින් කරන්නේ මොකක් හරි binary file එකක් (library file එකක් හෝ exe file එකක්) අස්සට එකේ තියෙන codes inject කරන එකයි (මේකට කියන්නේ hooking කියලයි ,hooking එකේ basic ක්‍රමය තමයි function එකක end එකට custom function එකක් රිංගන වන එකයි ඊට පස්සේ process එකෙන් original file එකේ function එක execute වෙන කොට අර virus එකෙන් දාපු function එකට call එකක් වෙනවා (මේක අනිවාර්යෙන්ම වෙනවා මොකද Codes වැඩ කරන්නේ Sequence එකකට අනුව නිසා)ඊට පස්සේ මේ call එක යනවා අර virus එකේ function එකට ඊට පස්සේ ඒක execute වෙනවා ,ඒක execute වුනාම virus එකේ තියෙන ඔක්කොම වැඩ කරනවා. මේ විදියටමයි FRAPS, Steam, Evolve වගේ Software වැඩ කරන්නේ (ඒවා virus නෙවෙයි නමුත් ඒවා භාවිතා කරන්නේ මේ hooking mechanism එකයි) මට මේක කියලා දෙන්න එපා මචන් මොකද මම Process Hooking කරන්න හොදට දන්නවා මේක කරන්නේ Assembly Level එකෙන් නැතුව C# වලින් වත් .NET වගේ High Level Language එකකින් නෙවෙයි). මේක real time වෙනවා නම් (file එකේ memory address වලට code inject කරනවා නම් cheat engine එකෙන් වගේ) heuristic detection එකෙන් අල්ලනවා. මොකද heuristic detection එකේ මූලික සිද්ධාන්තය තමයි සැක කටයුතු විදියට වැඩ කරන Process නවත්වන එක. නමුත් real time නැතුව Virus එක Standalone විදියට ක්‍රියාත්මක වෙලා හැම file එකක්ම Infect කරන්න ගත්තොත් සහා එතකොට antivirus guard එකෙන් ඇල්ලුවේ නැත්නම් සහා පස්සේ antivirus guard එකෙන් scan කරගෙන යනකොට එතකොට Md5 value එක calculate කෙරුවම මේක අහුවෙනවා. ඒක ලේසියි. සමහර antivirus guard වලින් MD5 values calculate කරනවා යම් file එකක කොටස් කොටස් වලට මුළු file එකේම නැතුව. ඒ කියන්නේ Md5 value එක calculate කරනවා Strings වල, Manifest value වල,icons වල, dialog boxes වල, header එකේ values වල, සහා binary pattern එකේ. මම කලින් කිව්වා වගේ virus එක file එකක් infect කරාම එකේ තියෙන codes යනවා binary file එක ඇතුලට ඊට පස්සේ මේක සටහන් වෙන්නේ binary pattern එකක් හැටියටයි.

    උදාහරණයක් වශයෙන් හිතන්න virus එකක binary patter එක
    0110011100011011011 කියලා

    හොද software එකක binary pattern එක
    00110000110101110100110011010101010101
    01010101010010101010101001010100101010
    කියලා

    දැන් virus එකෙන් මේ හොද file එක infect කරනව ඊට පස්සේ virus එකේ codes යනවා මේ හොද file එකේ codes වලට ඊට පස්සේ හොද file එකේ binary pattern එක එන්නේ මේ විදියටයි.
    001100001101011011001110001101101110100110011010101010101
    01010101010010101010101001010100101010

    දැන් antivirus guard එකෙන් file එක සමස්තයක් වශයෙන් scan කරොත් මේ virus එකේ codes අහුවෙන්නේ නෑ නමුත් කොටස් වශයෙන් scan කරලා md5 value එක calculate කරනවා නම් අහුවෙනවා මොකද එතකොට virus එකේ code එකේ md5 අගය හරියටම calculate වෙන නිසා එහෙම calculate වුනාම මේක compare කරනවා antivirus guard එකේ database එකේ තියෙන values වලට ඊට පස්සේ මේක සමාන නම් file එක infected කියලා mark කරනවා.

    virus එකක් file එකක් infect කරාම ඒ file එක infect ද නැද්ද කියලා හොයන්න පුලුවන් හොද antivirus guard එකක් නම් ඒක නමුත් සම්පූර්නයෙන්ම file එක scan කරලා md5 values එක calculate කරනවා නම් මේක කරන්න බෑ මොකද එතකොට virus එකේ codes එකේ md5 value එක හරියටම calculate වෙන්නේ නැති නිසා. උබ කියපු එක දෙයක් හරි ලොකු file වල මේක කරන්න බෑ මොකද මේක ගොඩක් processing power එක යන ගොඩක් time consuming වැඩක්.

    virus එකක original file එකට නම් බේරෙන්න පුලුවන් FUD crypt වෙලා නමුත් ඒකෙන් infect කරන file එකක් infect ද නැද්ද කියලා හොයාගන්න පුලුවන් ලේසියෙන්ම antivirus guard එක file එකක් කොටස් වශයෙන් md5 calculate කරනවා නම් සහා
    heuristic detect කරනවා නම්



    *FACE PALM* මට හිතාගන්න බෑ මොකක් කියන්නද කියලා.
    SetWindowsHookEx function එකේ mechanism එක ගැන උබට කිසිම අවබෝධයක් නෑ කියලා මේකෙන් පැහැදිලියි. මුලින්ම මම විස්තර කරන්නම් කොහොමද Windows API එකේ Basic වැඩ කරන්නේ කියලා.
    Windows API එකේ තියෙනවා Windows Procedure කියලා එකක් මේක වැඩ කරන්නේ මේ විදියටයි. System එකේ තියෙනවා Message Queue එකක් අපි Input Device වලින් දෙන හැම Command එකක්ම මේ Queue එකට System එකෙන් pass කරනවා. ඒ වගේම හැම Application එකකටම Message Queue එකක් තියෙනවා.

    උදාහරණයකට කිව්වොත්. හිතන්න අපි Video Game එකක් ගහන කොට Keyboard එකේ ESC Button එක ඔබනවා. ඊට පස්සේ Video Game එක Top Most තියෙනවා System එකෙන් කරන්නේ Video game එකේ (application) Message Queue එකට මේ Message එක යවන එකයි. ඊට පස්සේ Application එකෙන් කරන්නේ GetMessage() function එක හරහා මේ message එක ගන්න එකයි ඊට පස්සේ message එක translate function එකක් හරහා translate කරනවා (translate කරනවා කියන්නේ ESC Key එකට අදාළ Hexa value එක වගේ value එකක් ගන්න එකයී) ඊට පස්සේ Dispatch function එකෙන් කරන්නේ මේ Message එක System එකට යවනවා ,System එකෙන් කරන්නේ මේ Application එකේ තියෙන Win Procedure function එකට call කරන එකයි.application එකකට Win Procedure එකකට වඩා තියෙන්න පුලුවන් ඒක තීරණය කරන්නේ RegisterClassEx function එකෙන්. Windows API තියෙනවා WNDCLASSEX කියලා structure එකක් මේකේ තියෙනවා elements එකක් lpfnWndProc කියලා, මේ element එකට අපිට දෙන්න තියෙන්නේ Windows Procedure එකේ function එකේ නමයි එතකොට. ඊට පස්සේ අපිට තියෙන්නේ
    WNDCLASSEX structure එක RegisterClassEx function එකේ argument එකක් හැටියට pass කරන එකයි එහෙම pass කෙරුවම මේ Window එකට අදාළ windows procedure එක register වෙනවා. එතකොට මේ windows එකට message එකක් ආපු ගමන් system එකෙන් කරන්නේ මේ windows එකට අදාළ windows procedure එකට call කරන එකයි.

    ඉතින් මේ මූලධර්මය දන්නවා නම් අපිට පුලුවන් ඕනෙම Application එකක් අපේ යටතට ගන්නේ. මේකම තමයි Hooking Mechanism එකේ basic සිද්ධාන්තයත්. SetWindowsHookEx එකෙන් සරලවම කියනවා නම් කරන්නේ Hook එකක් Install කරන එකයි. ඊට පස්සේ System එකට එවන හැම Message එකක්ම මේ Hook එක මගින් කරන්නේ ඒකට associated කරලා තියෙන
    Windows Procedure එකට යවන එකයි.

    SetWindowsHookEx එකේ පළවෙනි argument එකේ ඉල්ලන්නේ මොන වර්ගයේ Hook එකක්ද Install කරන්න ඕනේ කියලයි. එතකොට අපිට දෙන්න තියෙන්නේ KEYBoard එකේ Keys Monitor කරන Hook එකක් Install කරන ඕනේ කියලයි ඒක දෙන්න පුලුවන් WH_KEYBOARD කියන Integer Variable එක SetWindowsHookEx function එකට pass කරලා. එතකොට මේ Hook එකෙන් කරන්නේ හැම Key එකක්ම Monitor කරන එකයි.

    ඊට පස්සේ මේ Function එකේ දෙවැනි argument එකට දෙන්න ඕනේ
    Windows Procedure එකේ නම. මම කලින් පැහැදිලි කරා හැම Window Procedure එකක්ම ඊට අදාල Window එකට සම්බන්ධ වෙලා තියෙන්නේ කියලා, එතකොට අපි Window Procedure එකට හැම Message එකක්ම Process වෙලා කරන්නේ එකේ Result එක ඊට අදාළ Window එකේ පෙන්වන එකයි.සලරව කිව්වොත්
    Windows Procedure එකෙන් ඒ message capture කරනවා ඊට පස්සේ ඒවා process කරනවා ඊට පස්සේ Result එක පෙන්වනවා අදාළ window එකේ.

    උදාහරණයටක් කිව්වොත්.
    හිතන්න අපේ ළග තියෙනවා Keylogger එකක්. අපිට ඕනේ කාගේ හරි Computer එකක තියෙන Keystroke Monitor කරන්න. එතකොට අපිට කරන්නේ තියෙන්නේ මේකයි. හදනවා Software එකක්. ඊට පස්සේ ඒකට දානවා
    SetWindowsHookEx function එක ඊට පස්සේ ඒකේ පළවෙනි argument එක හැටියට දෙඅන්වා KEYBOARD Integer එක එතකොට දැන් System එකෙන් Monitor කරන්නේ Keystroke විතරයි, ඊට පස්සේ දෙවැනි argument එකට දෙනවා අපේ Application එකේ ප්‍රධාන Window එකේ Windows Procedure එක. ඊට පස්සේ අපිට කරන්න තියෙන්නේ
    Windows Procedure function එකේ තව code ටිකක් ගහලා Keys Display වෙන්න හදනවා Application එකේ Main Window එකේ. දැන් User Key එකක් ගහපු ගමන් වෙන්නේ මේ Application එකේ ඒ Keys පෙන්වන එකයි.

    මේක තමයි
    Keylogger එකක BASIC MECHANISM එක. මේක C# වත් Visual Basic වත් නෙවෙයි මේක C/C++/Windows API වලින් කරන්න පුලුවන් Low Level එකක්. මේ ක්‍රමය දන්නවා නම් ඕනෙම එකෙක්ට Keylogger එකක් හදන්න පුලුවන් මේ දැන් වුනත්.

    අන්තිමට කියන්න තියෙන්නේ මම hacker කෙනෙක් නෙවෙයි නමුත් මම Windows API/C++ ගැන හොදට දන්නවා.








    මේ ඔයාල රන්ඩු වෙනවද? :baffled:
     

    ela

    Well-known member
  • Jul 4, 2006
    6,425
    4,299
    113
    N/A
    එළ.
    ඔය Meth නමෙන් එන අනාථයට තියෙන්නෙ කුහක කමයි ඉරිසියාවයි. උට ඕනෙවෙලා තියෙන්නෙ උඹව පජාත කරන්න. ඒකයි පස්සෙන් පන්න පන්න කොට් කරන්නෙ. නැතුව වරදක් පෙන්නල දෙන්නවත් අහඹු ලෙසවත් නෙවෙ. උඹෙ ත්‍රෙඩ් එකෙන්ම වෙන්න ඇති ඌ ෆේක් එක හදාගන්න Meth කෑල්ල කොපි කරගන්න ඇත්තෙ. ලොල්. මෙහෙමත් අනාථයෙක්. තමන්ට කිසි වරදක් කරලා නැති එකෙක්ව අපහසුතාවයට පත් කරන්න හදනව. මොනව ලැබෙනවටද බං ඔහොම කරන්නෙ.
     
    Last edited:
    Status
    Not open for further replies.