الكشف عن الأساليب الخبيثة التي تتبعها شركات الأونلاين بوكر


هذه المقالة هي عبارة عن ملخص بسيط لبحث دام العمل عليه طوال 9 أشهر, في هذا البحث تمت دراسة بداية نشأة شركات الأونلاين بوكر ووضعها القانوني على مستوى العالم لاسيما في الولاية المتحدة الأمريكية, ثم بعد ذلك تم تحليل أكبر ألعاب الأونلاين بوكر "الربحية" لمعرفة مدى إحترامهم لخصوصية اللاعبين على شبكاتهم.

ماهو الأونلاين بوكر؟ وما الهدف من هذا البحث؟

الأونلاين بوكر عبارة عن مسمى للعبة البوكر الكلاسيكية عبر شبكة الإنترنت, حيث يتم لعب اللعبة على طاولة إفتراضية بإستخدام نقود حقيقة أو غير حقيقية. الهدف من هذا البحث هو أن يتم إكتشاف الطرق المضادة للغش التي تتبعها الشركات المشغلة لمثل هذا النوع من الألعاب على أجهزة مستخدميها, ومن ثم معرفة مدى تعدي هذه الشركات على خصوصية مستخدميها.

الوضع القانوني للأونلاين بوكر في الولايات المتحدة الأمريكية

الأونلاين بوكر وضعه غير مستقر في الولاية المتحدة الأمريكية, حيث قامت الحكومة الأمريكية بشن هجمات قانونية ضد أكبر الشركات لألعاب البوكر على مستوى العالم حيث قامت وبمساعدة الإف بي آي بإغلاق مواقع هذه الشركات بعد إثبات أن هذه الشركات تقوم بعمليات غسيل أموال وبعض عمليات الإحتيال البنكية, وتم أيضاً اتهامهم بخرق قانون "Unlawful Internet Gambling Enforcement Act" الذي ينص على عدم مشروعية لعب القمار عن طريق الإنترنت مع العلم بأن هذا القانون فدرالي يطبق في جميع الولايات الأمريكية, لكن هناك القليل من الولايات الأمريكية أصدرت نصوص ضد هذا القانون حيث تشرع وبدون أي عواقب لعب الأونلاين بوكر بنقود حقيقة في تلك الولايات فقط. في 15 أبريل 2011 قامت الـ FBI بإغلاق أكبر خمسة شبكات للبوكر على شبكة الإنترنت مما عطل حسابات ملايين من المستخدمين حول العالم سمي هذا اليوم بـ "الجمعة السوداء" والمواقع التي أغلقت في تلك الفترة هي:
pokerstars.com, absolutepoker.com, Fulltilitpoker.com, Ultimatebet.com, UB.com.
وعندها قامت الحكومة الأمريكية وبحسب النشرة المنشورة من وزارة العدل الأمريكية "U. S. v. Scheinberg et al. (10 Cr. 336)" بتاريخ 15 أبريل 2011 بإصدار قائمة بأسماء المتورطين في تهم عدة من أكبرها غسيل بلايين الدولارات من الأموال وهؤلاء المتورطين هم:
alt

حيث قررت الحكومة الأمريكية أن تحبسهم مع الغرامة لفترات تتراوح ما بين 30 عام إلى 5 أعوام على الأقل مع غرامات تصل مابين المليون والربع مليون دولار على كل تهمة على حذى.

الوضع القانوني للأونلاين بوكر في أوروبا

تختلف الدول الأوروبية في أنظمتها لكن أغلبيتها تتفق بسماح الأونلاين بوكر ولعبها بنقود حقيقية, من الدول التي تسمح بالأونلاين بوكر وبدون أي عوائق هي بريطانيا, حيث قامت بريطانيا بوضع نظام ذكي بسماح هذه الشركات بالعمل في جميع دول المملكة المتحدة مع شرط بأن تكون جميع العمليات تتم داخل بريطانيا, حيث هذا النظام يسمح للحكومة البريطانية بمراقبة جميع العمليات المالية عن كثب. القليل من الدول الأوروبية تمنع الأونلاين بوكر بشكل تام إلا في حال تم أخذ رخصة من الحكومة ومن هذه الدول ألمانيا, أما بقية الدول الأوروبية سوف نجد بأن الأونلاين بوكر لا يواجه أي معوقات فيها, بل تقوم حكومات تلك الدول بفرض ضرائب على هذه الشركات حتى تستفيد من كميات الأموال الضخمة التي تضخ إلى مثل هذه النشاطات المربحة جداً.


الوضع القانوني للأونلاين بوكر في الشرق الأوسط

للأسف في الشرق الأوسط لا يوجد أي قوانين ضد اللعب في مثل هذه المواقع وأغلبها تكتفي فقد بحجب الوصول لمثل هذا النوع من المواقع حيث يمكن تخطي ذلك بسهولة. غالبية الدول في الشرق الأوسط تحكم بحكم الشريعة الإسلامية بتحريم لعب القمار كما ذكر في القرآن وسنة محمد صلى الله عليه وسلم, لكن مع ذلك لا نجد رقابة مثل الحكومات الأوروبية والأمريكية على مثل هذه النشاطات التي قد تنعكس سلباً على إقتصاد دولها.

طرق مكافحة الغش والبوتات في غير ألعاب القمار

من المواضيع المشابهة لنفس الطرق المتبعة لمكافحة الغش في ألعاب البوكر, وجود أيضاً آليات لمكافحة الغش في ألعاب الأونلاين العادية المتوفرة على الشبكة. حيث تقوم شركات الألعاب العالمية بدمج نظام حماية لألعابهم ضد الغش والبوتات لتوفير بيئة آمنة وعادلة للعب على الشبكة. البوت في ألعاب الشبكة هو عبارة عن برنامج يستخدم تقنيات توفر لبعض اللاعبين أمكانية اللعب دون تدخل منهم, حيث تقوم هذه البرامج باللعب بالنيابة عن اللاعبين لفترات طويلة أو على حسب رغبة اللاعب لجمع الأموال أو للتطوير بطريقة غير عادلة. وعلى سبيل المثال في هذه الحالة تقوم بعض شركات الألعاب من نوع MMORPG بدمج أداة أسمها GameGuard حيث تقوم هذه الأداة بمراقبة النظام وجميع البرامج وإرسال تقارير للشركة المطورة للعبة حتى تقوم بالتأكد بأن لاعبيها يلعبون بطريقة قانونية. للأسف هذه الأداة تتعدى بشكل خطير على خصوصية اللاعبين, ولإثبات ذلك هذا ملف السجلات "log file" الخاص بـ GameGuard في إحدى الألعاب الإجتماعية على الشبكة وفيه سوف يتضح لكم مدى تعديه على خصوصية اللاعبين.
========== Log Started at 2006/10/05 03:53:21:625 ==========
03:53:21:625 --- GameMon.des version 566 : Mon Oct 24 21:51:04 2005 ---
03:53:21:625 cmd: 0 3780 1 168 164 MapleStoryUS 90 84 0
03:53:21:625 argc: 9, argv: 0 3780 1 168 164 MapleStoryUS 90 84 0
03:53:21:625 CommThread(58) ID: 3836 03:53:21:625 CPID: 3824, CTID: 3828
03:53:21:625 OS type: Microsoft Windows XP Professional
03:53:21:625 OS version: 5.1 Service Pack 2 (Build 2600)
03:53:21:625 Computer Name: BARTON, User name: Administrator
03:53:21:640 Country: United States(1), Language: English(0409)
03:53:21:640 Number of processors: 1
03:53:21:640 Processor type: AuthenticAMD, stepping 0, model 10, instruction family 6
03:53:21:640 Processor name: AMD Athlon(tm) XP 2600+
03:53:21:640 Processor features: FPU, MMX, SSE, MMX extensions, 3DNow, 3DNow extensions, RDTSC, CMPXCHG8B, CMOV More processor features: VME, DE, PSE, MSR, PAE, MCE, APIC, SEP, MTRR, PGE, MCA, PAT, PSE36, FXSR,
03:53:21:640 AC Power Status: Online, Battery Status: No System Battery
03:53:21:640 Memory(Available/Total/Page): 317248KB / 523760KB / 1279532KB, Use: 39%
03:53:21:640 Drive C: Total: 20002MB, Free: 14713MB, Free Quota: 14713MB 03:53:21:640 Drive E: Total: 28301MB, Free: 20250MB, Free Quota: 20250MB 03:53:21:640 idp: 0 03:53:21:640 Video Driver(0) : , Driver date : 8-22-2006
03:53:21:640 Video Driver(1) : , Driver date : 8-22-2006
03:53:21:640 unknown DirectX version()
في هذه الجزئية من الواضح بأن البرنامج قام بجمع جميع المعلومات المتعلقة بالنظام وإسم اللعبة التي تم تشغيلها مع ذكر إسم المستخدم وإسم الكمبيوتر وتفاصيل الذاكرة العشوائية والأقراص الصلبة.

03:53:21:843 !Process Name PID Threads Priority 03:53:21:843 ![System Process] 0 1 0
03:53:21:843 !System 4 70 8
03:53:21:843 !smss.exe 676 3 11
03:53:21:843 !csrss.exe 748 10 13
03:53:21:843 !winlogon.exe 776 24 13
03:53:21:843 !services.exe 820 14 9
03:53:21:843 !lsass.exe 832 23 9
03:53:21:843 !svchost.exe 984 20 8
03:53:21:843 !svchost.exe 1064 9 8
03:53:21:843 !svchost.exe 1092 71 8
03:53:21:843 !svchost.exe 1140 5 8
03:53:21:843 !svchost.exe 1200 14 8
03:53:21:843 !explorer.exe 1540 12 8
03:53:21:843 !spoolsv.exe 1628 13 8
03:53:21:843 !NvMixerTray.exe 1716 2 8
03:53:21:843 !daemon.exe 1724 2 8
03:53:21:843 !ApacheMonitor.exe 1736 1 8
03:53:21:843 !httpd.exe 1924 3 8
03:53:21:843 !guard.exe 1944 8 8
03:53:21:843 !httpd.exe 452 252 8
03:53:21:843 !alg.exe 2676 7 8
03:53:21:843 !Cheat Engine.exe 3724 6 8
03:53:21:843 !MapleStory.exe 3780 2 8
03:53:21:843 !GameGuard.des 3788 2 8
03:53:21:843 !GameMon.des 3824 2 8
03:53:21:843 !!! ProcessCount 25

هنا من الواضح بأن الأداة قامت بإنشاء قائمة لجميع البرامج التي تعمل في قائمة العمليات مع ذكر عددها ورقم كل برنامج



03:53:21:937 -- InitGameHook
03:53:21:937 gamemon: E:\MapleStory Global\GameGuard\GameMon.des
03:53:21:937 HOOKSDLL: E:\MapleStory Global\GameGuard\npggNT.des
03:53:21:937 MDOI: ntdll.dll
03:53:21:937 MDOI: kernel32.dll
03:53:22:000 MDOI: user32.dll
03:53:22:046 MDOI: advapi32.dll
03:53:22:078 MDO: 0 0 0 0
03:53:22:078 CloneFile: E:\MapleStory Global\MapleStory.exe
03:53:22:093 SmssPID: 676, \systemroot\system32\smss.exe
03:53:22:093 CsrssPID: 748, \??\c:\windows\system32\csrss.exe
03:53:22:093 LsassPID: 832, c:\windows\system32\lsass.exe
03:53:22:093 ClonePID: 3780, e:\maplestory global\maplestory.exe
03:53:22:093 LdrGetDllHandle: 7c916586
03:53:22:093 NtQuerySystemInformation: 7c90e1aa
03:53:22:093 NtResumeThread: 7c90e45f 03:53:22:093 Admin Account
03:53:22:093 now try to load ggdrv 03:53:22:093 Attached sys success
03:53:22:093 InitGmguardSvcReg : New setup ==> \??\C:\WINDOWS\system32\drivers\dump_wmimmc.sys
03:53:22:093 LoadDriver() 03:53:22:093 LoadGGDriver() : 126 = \Registry\Machine\System\CurrentControlSet\Services\dump_wmimmc
03:53:22:093 Success to NtLoadDriver()
03:53:22:093 SetExcludePid()
03:53:22:109 SetDriverEnable()
03:53:22:109 GGDrv loaded.
03:53:22:109 DoHideProcess(3824)
03:53:22:109 DoHideProcess(3780)
03:53:22:109 VirtualProtectEx: 8B ff 55 8B EC 56 8B 35 B8 12
03:53:22:109 DebugActiveProcess: 8B ff 55 8B EC E8 D7 55 02 00
03:53:22:109 GameModule start: 00400000, limit: 00ACB000 03:53:22:109 N/A, 4, N/A (error4)
03:53:22:109 NATIVE SYSTEM PROCESS, smss.exe, skip
03:53:22:109 GameHook: Hooking 748='csrss.exe' ..
03:53:22:125 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 748
03:53:22:156 LAC IGG Success
03:53:22:156 GameHook: Hooking 776='winlogon.exe' ..
03:53:22:156 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 776
03:53:22:187 LAC IGG Success 03:53:22:187 GameHook: Hooking 820='services.exe' ..
03:53:22:187 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 820
03:53:22:218 LAC IGG Success
03:53:22:218 GameHook: Hooking 832='lsass.exe' ..
03:53:22:234 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 832
03:53:22:250 LAC IGG Success
03:53:22:250 GameHook: Hooking 984='svchost.exe' ..
03:53:22:265 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 984
03:53:22:281 LAC IGG Success 03:53:22:281 GameHook: Hooking 1064='svchost.exe' ..
03:53:22:296 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 1064
03:53:22:312 LAC IGG Success
03:53:22:312 GameHook: Hooking 1092='svchost.exe' ..
03:53:22:328 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 1092
03:53:22:343 LAC IGG Success 03:53:22:359 GameHook: Hooking 1140='svchost.exe' ..
03:53:22:375 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 1140
03:53:22:390 LAC IGG Success
03:53:22:390 GameHook: Hooking 1200='svchost.exe' ..
03:53:22:406 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 1200
03:53:22:421 LAC IGG Success
03:53:22:421 GameHook: Hooking 1540='Explorer.EXE' ..
03:53:22:437 : --- npggNT.des version 153 : Mon Oct 24 21:50:09 2005 ---
03:53:22:437 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 1540
03:53:22:453 LAC IGG Success
03:53:22:453 GameHook: Hooking 1628='spoolsv.exe'
.. 03:53:22:484 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 1628
03:53:22:500 LAC IGG Success
03:53:22:500 GameHook: Hooking 1716='NVMixerTray.exe' ..
03:53:22:531 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 1716
03:53:22:546 LAC IGG Success
03:53:22:546 GameHook: Hooking 1724='daemon.exe' ..
03:53:22:562 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 1724
03:53:22:578 LAC IGG Success
03:53:22:578 GameHook: Hooking 1736='ApacheMonitor.exe' ..
03:53:22:593 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 1736
03:53:22:609 LAC IGG Success
03:53:22:609 GameHook: Hooking 1924='httpd.exe' ..
03:53:22:625 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 1924
03:53:22:640 LAC IGG Success 0
3:53:22:656 GameHook: Hooking 1944='guard.exe' ..
03:53:22:671 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 1944
03:53:22:703 LAC IGG Success
03:53:22:703 GameHook: Hooking 452='httpd.exe' ..
03:53:22:718 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 452
03:53:22:734 LAC IGG Success
03:53:22:734 GameHook: Hooking 2676='alg.exe' .
03:53:22:765 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 2676
03:53:22:781 LAC IGG Success
03:53:22:781 GameHook: Hooking 3724='Cheat Engine.exe' ..
03:53:22:828 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 3724
03:53:22:843 LAC IGG Success
03:53:22:843 GameHook: Hooking 3788='GameGuard.des' ..
03:53:22:875 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 3788
03:53:22:890 LAC IGG Success
03:53:22:890 -- InitGameHook Oncemore
03:53:22:890 GameHook: Hooking 3780='MapleStory.exe' ..
03:53:22:921 not load. load now
03:53:22:937 : InitNPGG, GamePID: 3780, GameWnd: 0, MonPID: 3824, CurrPID: 3780
03:53:22:953 LAC IGG Success
03:53:22:968 GameMon Process, GameMon.des, skip
03:53:22:968 version E:\MapleStory Global\GameGuard\npggNT.des, 2005060901, 2005012801
03:53:22:968 -- InitGameHook Done.
03:53:22:968 GameMonThread(108) ID: 3940
03:53:22:968 -- InitNPGM Done
03:53:22:968 == InitGameMon done

هنا نرى الطامة الكبرى التي قامت بها الأداة حيث قامت بربط "دمج" نفسها مع جميع البرامج في قائمة العمليات بالإضافة لذلك قامة بإخفاء بعض العمليات DoHideProcess(3824) ونرى من ذلك بأن الأداة تحمل خصائص الـ rootkit. السؤال هنا, بناء على الخصائص التي تحملها هذه الأداة, وبحكم أن الشركات المشغلة للألعاب الأونلاين تضعها كحماية لعملائها من الغش والبوتات وتوفير بيئة لعب عادلة, هل ذلك يعتبر تعدي للخصوصية أم لا؟ هل ترضى بأن تقوم الشركات بتنصيب مثل هذه البرامج في حاسوبك الخاص؟

طرق مكافحة الغش والبوتات في ألعاب القمار والبوكر

قامت شركات البوكر بتطوير طرق مشابهة ومثيلة مثل GameGuard, لكن لا يخبروا ذلك للعامة, ولإثبات ذلك تمت مراسلة إثنان من الشركات الخاصة بالأونلاين بوكر عن كيفية إضافة طرق مكافحة الغش في ألعابهم مع عدم التدخل في خصوصية اللاعبين والمستخدمين وكانت إجابتهم كالتالي:
Thank you for your inquiry.
We would like to inform you that we use a layered approach to our
security monitoring, combining various tools, reports and a manual
efforts. Unfortunately, due to security measures we cannot disclose
particularities of our methodologies. However, we are continuously
evolving our tools to keep the community safe and our security measures
and practices are in-line with our licensor, the Gibraltor Regulatory
Authority.
Hello,
By creating an account with us the user agrees to the terms of service of holding that account. One of those terms is that you agree to the techniques and methods used by us to detect illegal programs and software use. To disclose to the public these techniques and methods would render them ineffective and as such they cannot be disclosed. However, we can state that in terms of reviewing accounts for illegal programs/software our software is solely interested in detecting such programs only.
Regards,
Poker Security

الشركة الأولى رفضت أن تخبرني ماهي الطرق التي تتبعها, في نظر بعض الناس قد يكون تجاوبهم معقول, لكن هنالك صنف آخر من الناس يقول بأنه إذا لم أرتكب جريمة لماذا أخفي ما أفعل؟ أليس من حق أي شخص أن يعرف ماذا يقوم أي برنامج بالفعل في الجهاز الكمبيوتر الشخصي الخاص به؟
الشركة الثانية أيضاً رفضت الإفصاح عن أساليبهم التقنية في كشف محاولات الغش, بل زادوا من الشعر بيتاً مخبرين بأنه أي شخص يستخدم ويسجل في اللعبة الخاصة بهم يوافق على جميع الطرق "مهما كان شكلها وطريقة عملها" وفي هذه النقطة في الحقيقة لفته لجميع من يستسهل شروط الخدمة أو لا يقرأها حتى ولو بشكل سريع!
إذاً, حتماً ردهم مريب ومثير للشك, ومن هذا المنطلق يجب توضيح الطرق التي تستخدمها هذه الشركات للناس عامة حتى تعلم ماذا تفعل هذه الألعاب أو البرامج في أجهزتهم الخاصة, ولذلك سوف يتم فحص مجموعة مختارة من عملاء ألعاب البوكر المشهورة بإستخدام رزمة من أفضل البرامج المتخصصة في تحقيق في مثل هذا النوع من الحالات.



العينة التي سوف يتم إجراء البحث عليها

تم اختيار مجموعة من أشهر ألعاب البوكر على شبكة الإنترنت, هذا الإختيار بناءاً على بعض مواقع البوكر المشهورة المتخصصة في ترتيب الشركات على الشبكة من ناحية الأفضلية مثل pokerlistings.com و top10bestpokersites.co.uk.

حيث تم إختيار عملاء الشركات التالية:
  • 888Poker
  • PartyPoker
  • PokerStars
  • BWIN Poker
  • Bodog Poker
  • Winner Poker
  • Cake Poker
  • Intertops Poker
  • Paddy Power Poker

البدء في عملية التحقيق الجنائي

التحقيق الجنائي لبرامج العميل الخاصة بألعاب شركات البوكر مركّز بشكل كبير على الهندسة العكسية, حيث بعد ما يتم عمل الهندسة العكسية ودراسة أسلوب العميل الخاص باللعبة نتائج التحليل سوف يتم تسطيرها مع توضيح النقاط التي يتم فيها كسر خصوصية المستخدمين. ولبدء عملية التحليل نحتاج لعدة من الأدوات وعلى سبيل المثال ما تم استخدامه في هذا البحث:
  • LordPE: برنامج يساعد في عملية أخذ نسخة من البرامج التي تعمل في الذاكرة العشوائية بشكل مباشر, هذا البرنامج سوف يساعدنا في فك تشفير البرامج المشفرة أو المضغوطة حتى يتم فحصها بإستخدام OllyDbg بدون مشاكل.
  • OllyDbg: أداة من أدوات الهندسة العكسية الغنية عن التعريف, حيث تساهم في عرض الكود المصدري على هيئة أكواد أسيمبلي حيث تساهم في تحليل البرنامج ومعرفة مايجري بداخل البرامج التي يتم تحليلها.
  • Volatility Framework: مجموعة من الأدوات مبرمجة بالبايثون يتم إستخدامها بكثافة في التحقيقات الجنائية, الأدوات مفتوحة المصدر ومجانية. تساهم هذه الأدوات في عرض كافة التفاصيل الخاصة بنسخ الذاكرة العشوائية التي يتم الإستحواذ عليها "RAM IMAGE DUMP".
  • MoonSols Windows Memory Toolkit: مجموعة من الأدوات التي تساعد في الإستحواذ على صور أو نسخ الذاكرة العشوائية حتى يتم تحليلها من قبل أدوات التحقيق الجنائي.
  • Regshot: برنامج يساعد في إكتشاف التغييرات التي تحصل في نظام قاعدة البيانات الخاص بالويندوز "الريجستري" حيث يقوم بتصوير الريجستري على سبيل المثال قبل وبعد تنصيب البرامج لمعرفة التغييرات التي أجرتها.
  • Process Monitor: أداة مشهورة من Sysinternals حيث تقوم بعرض جميع النشاطات والتغييرات التي تقوم بها البرامج التي تعمل في النظام من إنشاء مجلدات أو تشغيل برامج و خلافه.
  • Process Explorer: أداة أخرى من Sysinternals تساعد في استكشاف البرامج في حال قامت بتنفيذ برامج أخرى, حيث سوف يعرض كافة البرامج التي تعمل على النظام على هيئة شجرة لعرض الـ Parent and Child Processes.
  • Wireshark: أداة غنية عن التعريف حيث سوف تساعدنا في تحليل الإتصال الذي تقوم به البرامج على الشبكة ومعرفة كافة البيانات التي يتم إرسالها وإستقبالها.

نتائج التحقيق الجنائي

    Cake Poker : -
    بعدما تم تشغيل العميل, قام البرنامج بإنشاء العمليتين التالية: CakeNotifier.exe و PokerClient.exe حيث PokerClient.exe هو البرنامج الرئيسي. ما تم ملاحظته هو أن CakeNotifier.exe يعمل على الدوام حتى بعد اغلاق البرنامج الرئيسي, أيقونته المصغره سوف تتواجد في شريط المهام.

    alt
    أثناء مراقبة سلوك البرنامج عن طريق Process Monitor وجدت السلوك المريب التالي:

    alt
    كان العميل يقوم بفحص كافة العمليات في النظام, حيث لوحظ بأن العميل أيضاً يقوم بتحليل برامج المتصفح مثل إنترنت إكسبلورر وفايرفوكس وكروم. هذا السلوك يتكرر من البرنامج كل 6 دقائق تقريباً, هل يرغب أي أحد بأن يقوم أي برنامج لديه بتفحص كافة برامجة بالذات جلسات المتصفح؟
    عند فحص التغييرات التي حصلت في الريجستري, وجدت بأن البرنامج بعد التنصيب قام بتعديل صلاحيات الجدار الناري الخاصة بالنظام كالتالي : -

    HKLM\SYSTEM\ControlSet001\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List\C:\Program Files\Cake Poker 2.0\PokerClient.exe: "C:\Program Files\Cake Poker 2.0\PokerClient.exe:*:Enabled:Cake Poker 2.0



    بالإضافة لذلك, عند محاولة فحص البرنامج عن طريق OllyDbg كان البرنامج مشفر بشكل تام, و LordPE لم يستطع سحب النسخة المفتوحة في الذاكرة العشوائية مما اضطرني للجوء وإستخدام أداة win32dd من حزمة MoonSols لأخذ صورة كاملة للذاكرة العشوائية وتحليلها عن طريق Volatility Framework.
    alt
    الخطأ الذي يظهر عند محاولة قراءة PokerClient.exe من الذاكرة العشوائية عن طريق LordPE

    alt
    إستخراج PokerClient.exe من الميموري بإستخدام Volatility Framework

    وبعد تحليل البرنامج بعد العملية الشاقة لإستخراجه من الذاكرة العشوائية وجدت الدوال (Functions) التالية المريبة للشك:

    EnemyWindowNames() EnemyProcessNames() EnemyProcessHashs() EnemyDLLNames() EnemyURLs() GetRunningProcesses() GetActiveWindowTitle() TakeScreenShot() GetMouse()
    البرنامج فعلاً يقوم بمراقبة الجهاز بشكل تام, وجود دوال مثل EnemyURLs() يعني أن البرنامج يقوم بالتنصت على جميع جلسات المتصفح, ويقوم بإرسال تقارير بكافة المواقع التي يتم زيارتها, وفي حال أكتشف البرنامج بأنك قمت بزيارة موقع "محظور أو عدو" فذلك قد يعرضك للطرد من اللعبة وربما مصادرة كافة الأموال في الحساب الخاص بالبوكر. لكن الدالة EnemyProcessNames() شدة إنتباهي مما جعلني أبحث عن هذه البرامج الممنوعة حتى وجدت القائمة التالية:
    OLLYDBG BRING WINPUSH WINPULL OPENBRING PROCESS MONITOR TSEARCH POKEREDGE POKERRNG WINHOLDEM OPENHOLDEM WINSCRAPE OPENSCRAPE bring winpush vmware vmware-authd vmware-tray vmnat openholdem winholdem sharkscope pokertracker pokertrackerhud HoldemInspector!HoldemInspector2 HoldemManager HMHud

    حيث من ضمن هذه القائمة برامجBot  مشهورة مثل HoldemManager, لكن القائمة أيضاً تحتوي على برامج مثل OLLYDBG و vmware وذلك ربما بهدف منع الهندسة العكسية أو منع الإتصال على أكثر من حساب واحد على شبكة البوكر بإستخدام أي بيئة نظام إفتراضية.


    888Poker : -


    بعد دراسة العمليات والبرامج التي يقوم برنامج العميل الخاص بشركة البوكر هذه وجدت البرنامج قام بتنصيب الملفات التالية في بداية عملية التنصيب:


    *** Installation Started 04/23/2012 19:24 *** Title: 888poker Source: C:\DOCUME~1\Lab\LOCALS~1\Temp\setup_2411796\888pokersetup 04-23-2012 | 19:24:22 | 20778240 Made Dir: C:\Program Files\PacificPoker File Copy: C:\Program Files\PacificPoker\pv.exe | 11-17-2011 | 14:24:36 | | 61440 | f806624c File Copy: C:\Program Files\PacificPoker\ListProc.exe | 11-17-2011 | 14:24:36 | | 32768 | 2a1758dd
    مما شد إنتباهي, حيث بعد تحليلها وجدت أنها عبارة عن برنامج لمراقبة البرامج التي تعمل على الجهاز, حيث يمكن تشغيلها من سطر الأوامر, فعند تشغيل pv.exe على سبيل المثال نتج التالي:

    C:\Users\LAB\FP\clients\888poker>pv -h
    PrcView v 3.7.2.5 command line utility by Igor Nys
    Usage: pv -[] -[] ...-[]
    Modes:
    -h,-?    --help      display this help information
    -k       --kill      kill PROCESS
    -a       --activate  activate PROCESS
    -c       --close     close (send WM_CLOSE) to the PROCESS
    -m       --module    show modules used by specified PROCESS
    -g       --getenv    get startup environment for the  PROCESS
    -p[nihr] --priority  set priority to "Normal", "Idle", "High", "Real Time"
    [ba]               "Below Normal" and "Above Normal" only on W2K or higher
    -t       --tree      display process tree, -te for computer-readable format
    -u       --usage     show processes that uses specified MODULE
    -s       --summary   show MODULE usage summary
    Options:
    -f,      --force     never prompt
    -e,      --extend    show additional information if available
    -i,      --id        use process ID instead of the PROCESS name
    -q,      --quiet     supress headers and produce a tab-separated list
    -d[time] --delay     delay time in milliseconds before executing command
    -l[mask] --long      include process command line
    -w[mask] --window    show only processes with visible windows, -e show hidden
    -r       --repeat    repeat command in a cycle
    Arguments can contain '*' and '?' wildcards.
    Process return code (%ERRORLEVEL%) can be used in batch files
    0 - process found, 1 - empty result set, 2 - programm error
    Examples:
    pv myprocess.exe        get process ID for myprocess.exe.
    pv -e                   get extended list of running processes.
    pv -k sleep*            kill all processes starting with "sleep"
    pv -m -e explorer.exe   get extended information about explorer's modules
    pv -u oleaut*.dll       list of all processes that use matching dll
    pv -ph w*.exe           set priority to hight for all matching processes
    pv explorer.exe -l"*/S" looks for explorer process with /S switch
    وعند تشغيل ListProc.exe تكون الملف ProcessList.txt وبداخله التالي:

    IDMan.exe
    Dropbox.exe
    jusched.exe
    mintty.exe
    bash.exe
    ListProc.exe

    فأي وقاحة هذه التي وصلت لها هذه الشركة, البرنامج الخاص بها يستطيع التحكم بشكل كامل بجميع البرامج التي في النظام, يستطيع أن يشغل أي برنامج ويغلق أي برنامج وقت ما شاء, بالإضافة إلى عرض كافة البرامج الموجودة في قائمة المهام وإرسالها كتقارير للشركة المسؤولة عن اللعبة.
    وعند فحص البرنامج بإستخدام OllyDbg وجدت الدالة TrackMouseEvent() التي تقوم بتسجيل كافة ضغطات الفأرة على الشاشة لمعرفة إذا كان الشخص الذي يلعب إنسان أم مجرد برنامج Bot.


    Bodog UK : -


    أكثر عميل مريب من قائمة عملاء البوكر التي تم تحليلها, والسبب يعود اولاً لأن الإتصال بين العميل والخادم الخاص باللعبة غير مشفر, بل تمكنت من إكتشاف ثغرة فيه تساعد على عمل هجمات MitM ضد أي شخص يلعب اللعبة على الشبكة.
    alt
    البرنامج يستخدم آلية ضعيفة لتحميل بيانات العضوية من الخادم الخاص باللعبة
    alt

    إستخدام الكوكيز من قبل العميل

    أي شخص على الشبكة يمكنه إلتقاط البيانات التي تم توضيحها في الأعلى, بعد عمل عدد من التجارب تمكنت من إختراق الحساب الخاص بي بدون إستخدام كلمة المرور الأصلية الخاصة بي عن طريق تعديل القيم الموضحة في الصورتين أعلاه بإستخدام BurpSuite. ومن الثغرات الأمنية الأخرى التي وجدتها هي أن العميل يقوم بإنشاء أسماء المستخدمين المستخدمة في عمليات تسجيل الدخول بشكل آلي مكونة من 7 أرقام, بإستخدام أداة بسيطة مثل Hydra أستطعت إختراق حساب عدد من اللاعبين لدى هذه الشركة بمساعدة الموقع الخاص باللعبة وإستخدام الصفحة في الصورة التالية:

    alt
    آلية تسجيل الدخول بإستخدام الـ Account ID كما هو واضح أعلاه
    وأخيراً وليس آخراً بعد تحليل البرنامج بإستخدام OllyDbg وجدت الدوال المريبة التالية:
    alt
    إذاً البرنامج يقوم بتسجيل المفاتيح, عرض ملفات النظام, تسجيل ضغطات الفأرة, التحكم في النوافذ, وإمكانية عمل إتصال FTP! كأنني أطلع على خادم تروجان وليس لعبة بوكر ! ما زاد الأمر ريبة وجدت قائمة مكونة من 3731 نطاق مسجلة بداخل البرنامج لا أعرف لماذا هي هنالك بالذات (السعوديةcom.) و )مصرcom.) و (الاماراتcom.) وهذه بعض النطاقات التي وجدتها:
    alt
    لم أستطع الحصول على أي نتيجة ببرنامج Wireshark بما يتعلق بخصوص هذه النطاقات المسجلة, وجودهم غريب ولم أتمكن من شرحه !

    الخلاصة

    • جميع ألعاب البوكر تقريباً وحتى التي عن طريق المتصفح تقوم بإستخدام هذه الطرق ضد لاعبيها بإستخدام الجافا.
    • حتى ألعاب الـPC  العادية تستخدم نفس الطرق تقريباً!
    • أحرص على قراءة شروط الإستخدام والإتفاقية قبل التسجيل أو لعب أي لعبة أو تحميل أي برنامج.
    • للأسف شركات "السوفت وير" تنكر التدخل في خصوصية مستخدميها, لذلك أحرص أن لا تصدق كل مايقال, فليس من الضروري بأن مايقولونه حقيقة مهما كانت الشركة معروفة أو غير معروفة.

    أخيراً:

    حتى لا يطيل هذا الملخص ويصبح ممل, تم كتابة نتائج تحليل بعض من برامج العميل الخاصة بالبوكر, في حال كنت مهتم النسخة الكاملة من البحث متواجدة لدي لكن باللغة الإنجليزية, البحث يتكون من 100 صفحة تقريباً. يرجى مراسلتي في هذه الحالة إذا رغبت في نسخة وعدم وضع بريدكم الإلكتروني في التعليقات رجاءاً.

    السابق
    التالى