2020年9月12日 星期六

How I Hacked Facebook Again! Unauthenticated RCE on MobileIron MDM


Author: Orange Tsai

This is a cross-post blog from DEVCORE中文版請參閱這裡


Hi, it’s a long time since my last article. This new post is about my research this March, which talks about how I found vulnerabilities on a leading Mobile Device Management product and bypassed several limitations to achieve unauthenticated RCE. All the vulnerabilities have been reported to the vendor and got fixed in June. After that, we kept monitoring large corporations to track the overall fixing progress and then found that Facebook didn’t keep up with the patch for more than 2 weeks, so we dropped a shell on Facebook and reported to their Bug Bounty program!

This research is also presented at HITCON 2020. You can check the slides HERE


As a Red Teamer, we are always looking for new paths to infiltrate the corporate network from outside. Just like our research in Black Hat USA last year, we demonstrated how leading SSL VPNs could be hacked and become your Virtual “Public” Network! SSL VPN is trusted to be secure and considered the only way to your private network. But, what if your trusted appliances are insecure?

Based on this scenario, we would like to explore new attack surfaces on enterprise security, and we get interested in MDM, so this is the article for that!


What is MDM?

Mobile Device Management, also known as MDM, is an asset assessment system that makes the employees’ BYOD more manageable for enterprises. It was proposed in 2012 in response to the increasing number of tablets and mobile devices. MDM can guarantee that the devices are running under the corporate policy and in a trusted environment. Enterprise could manage assets, install certificates, deploy applications and even lock/wipe devices remotely to prevent data leakage as well.

UEM (Unified Endpoint Management) is a newer term relevant to MDM which has a broader definition for managed devices. Following we use MDM to represent similar products!


Our target

MDM, as a centralized system, can manage and control all employees’ devices. It is undoubtedly an ideal asset assessment system for a growing company. Besides, MDM must be reachable publicly to synchronize devices all over the world. A centralized and public-exposing appliance, what could be more appealing to hackers?

Therefore, we have seen hackers and APT groups abusing MDM these years! Such as phishing victims to make MDM a C&C server of their mobile devices, or even compromising the corporate exposed MDM server to push malicious Trojans to all devices. You can read the report Malicious MDM: Let’s Hide This App by Cisco Talos team and First seen in the wild - Malware uses Corporate MDM as attack vector by CheckPoint CPR team for more details!

From previous cases, we know that MDM is a solid target for hackers, and we would like to do research on it. There are several MDM solutions, even famous companies such as Microsoft, IBM and Apple have their own MDM solution. Which one should we start with?

We have listed known MDM solutions and scanned corresponding patterns all over the Internet. We found that the most prevalent MDMs are VMware AirWatch and MobileIron!

So, why did we choose MobileIron as our target? According to their official website, more than 20,000 enterprises chose MobileIron as their MDM solution, and most of our customers are using that as well. We also know Facebook has exposed the MobileIron server since 2016. We have analyzed Fortune Global 500 as well, and found more than 15% using and exposing their MobileIron server to the public! Due to above reasons, it became our main target!


Where to Start

From past vulnerabilities, we learned there aren’t too many researchers diving into MobileIron. Perhaps the attack vector is still unknown. But we suspect the main reason is that the firmware is too hard to obtain. When researching an appliance, turning a pure BlackBox testing into GrayBox, or WhiteBox testing is vital. We spent lots of time searching for all kinds of information on the Internet, and ended up with an RPM package. This RPM file is supposed to be the developer’s testing package. The file is just sitting on a listable WebRoot and indexed by Google Search.




Anyway, we got a file to research. The released date of the file is in early 2018. It seems a little bit old but still better than nothing!

P.S. We have informed MobileIron and the sensitive files has been removed now.


Finding Vulnerabilities

After a painful time solving the dependency hell, we set the testing package up finally. The component is based on Java and exposed three ports:

  • 443 - the user enrollment interface
  • 8443 - the appliance management interface
  • 9997 - the MobileIron device synchronization protocol (MI Protocol)


All opened ports are TLS-encrypted. Apache is in the front of the web part and proxies all connections to backend, a Tomcat with Spring MVC inside.




Due to the Spring MVC, it’s hard to find traditional vulnerabilities like SQL Injection or XSS from a single view. Therefore, examining the logic and architecture is our goal this time!

Talking about the vulnerability, the root cause is straightforward. Tomcat exposed a Web Service that deserializes user input with Hessian format. However, this doesn’t mean we can do everything! The main effort of this article is to solve that, so please see the exploitation below.

Although we know the Web Service deserializes the user input, we can not trigger it. The endpoint is located on both:

  • User enrollment interface - https://mobileiron/mifs/services/
  • Management interface - https://mobileiron:8443/mics/services/


We can only touch the deserialization through the management interface because the user interface blocks the Web Service access. It’s a critical hit for us because most enterprises won’t expose their management interface to the Internet, and a management-only vulnerability is not useful to us so that we have to try harder. :(

Scrutinizing the architecture, we found Apache blocks our access through Rewrite Rules. It looks good, right?

RewriteRule ^/mifs/services/(.*)$ https://%{SERVER_NAME}:8443/mifs/services/$1 [R=307,L]
RewriteRule ^/mifs/services [F]


MobileIron relied on Apache Rewrite Rules to block all the access to Web Service. It’s in the front of a reverse-proxy architecture, and the backend is a Java-based web server.

Have you recalled something?




Yes, the Breaking Parser Logic! It’s the reverse proxy attack surface I proposed in 2015, and presented at Black Hat USA 2018. This technique leverage the inconsistency between the Apache and Tomcat to bypass the ACL control and reaccess the Web Service. BTW, this excellent technique is also applied to the recently F5 BIG-IP TMUI RCE vulnerability!

https://mobileiron/mifs/.;/services/someService

Exploiting Vulnerabilities

OK, now we have access to the deserialization wherever it’s on enrollment interface or management interface. Let’s go back to exploitations!

Moritz Bechler has an awesome research which summarized the Hessian deserialization vulnerability on his whitepaper, Java Unmarshaller Security. From the marshalsec source code, we learn the Hessian deserialization triggers the equals() and hashcode() while reconstructing a HashMap. It could also trigger the toString() through the XString, and the known exploit gadgets so far are:

  • Apache XBean
  • Caucho Resin
  • Spring AOP
  • ROME EqualsBean/ToStringBean


In our environment, we could only trigger the Spring AOP gadget chain and get a JNDI Injection.

Name Effect
x Apache XBean JNDI Injection
x Caucho Resin JNDI Injection
Spring AOP JNDI Injection
x ROME EqualsBean RCE


Once we have a JNDI Injection, the rest parts of exploitations are easy! We can just leverage Alvaro Muñoz and Oleksandr Mirosh’s work, A Journey From JNDI/LDAP to Remote Code Execution Dream Land, from Black Hat USA 2016 to get the code execution… Is that true?




Since Alvaro Muñoz and Oleksandr Mirosh introduced this on Black Hat, we could say that this technique helps countless security researchers and brings Java deserialization vulnerability into a new era. However, Java finally mitigated the last JNDI/LDAP puzzle in October 2018. After that, all java version higher than 8u181, 7u191, and 6u201 can no longer get code execution through JNDI remote URL-Class loading. Therefore, if we exploit the Hessian deserialization on the latest MobileIron, we must face this problem!

Java changed the default value of com.sun.jndi.ldap.object.trustURLCodebase to False to prevent attackers from downloading remote URL-Class to get code executions. But only this has been prohibited. We can still manipulate the JNDI and redirect the Naming Reference to a local Java Class!

The concept is a little bit similar to Return-Oriented Programming, utilizing a local existing Java Class to do further exploitations. You can refer to the article Exploiting JNDI Injections in Java by Michael Stepankin in early 2019 for details. It describes the attack on POST-JNDI exploitations and how to abuse the Tomcat’s BeanFactory to populate the ELProcessor gadget to get code execution. Based on this concept, researcher Welkin also provides another ParseClass gadget on Groovy. As described in his (Chinese) article:

除了 javax.el.ELProcessor,当然也还有很多其他的类符合条件可以作为 beanClass 注入到 BeanFactory 中实现利用。举个例子,如果目标机器 classpath 中有 groovy 的库,则可以结合之前 Orange 师傅发过的 Jenkins 的漏洞实现利用


It seems the Meta Programming exploitation in my previous Jenkins research could be used here as well. It makes the Meta Programming great again :D


The approach is fantastic and looks feasible for us. But both gadgets ELProcessor and ParseClass are unavailable due to our outdated target libraries. Tomcat introduced the ELProcessor since 8.5, but our target is 7. As for the Groovy gadget, the target Groovy version is too old (1.5.6 from 2008) to support the Meta Programming, so we still have to find a new gadget by ourselves. We found a new gadget on GroovyShell in the end. If you are interested, you can check the Pull Request I sent to the JNDI-Injection-Bypass project!


Attacking Facebook

Now we have a perfect RCE by chaining JNDI Injection, Tomcat BeanFactory and GroovyShell. It’s time to hack Facebook!

Aforementioned, we knew the Facebook uses MobileIron since 2016. Although the server’s index responses 403 Forbidden now, the Web Service is still accessible!



Everything is ready and wait for our exploit! However, several days before our scheduled attack, we realized that there is a critical problem in our exploit. From our last time popping shell on Facebook, we noticed it blocks outbound connections due to security concerns. The outbound connection is vital for JNDI Injection because the idea is to make victims connecting to a malicious server to do further exploitations. But now, we can’t even make an outbound connection, not to mention others.




So far, all attack surfaces on JNDI Injection have been closed, we have no choice but to return to Hessian deserialization. But due to the lack of available gadgets, we must discover a new one by ourselves!




Before discovering a new gadget, we have to understand the existing gadgets’ root cause properly. After re-reading Moritz Bechler’s paper, a certain word interested me:

Cannot restore Groovy’s MethodClosure as readResolve() is called which throws an exception.



A question quickly came up in my mind: Why did the author leave this word here? Although it failed with exceptions, there must have been something special so that the author write this down.

Our target is running with a very old Groovy, so we are guessing that the readResolve() constrain might not have been applied to the code base yet! We compared the file groovy/runtime/MethodClosure.java between the latest and 1.5.6.

$ diff 1_5_6/MethodClosure.java 3_0_4/MethodClosure.java

>     private Object readResolve() {
>         if (ALLOW_RESOLVE) {
>             return this;
>         }
>         throw new UnsupportedOperationException();
>     }


Yes, we are right. There is no ALLOW_RESOLVE in Groovy 1.5.6, and we later learned CVE-2015-3253 is just for that. It’s a mitigation for the rising Java deserialization vulnerability in 2015. Since Groovy is an internally used library, developers won’t update it if there is no emergency. The outdated Groovy could also be a good case study to demonstrated how a harmless component can leave you compromised!

Of course we got the shell on Facebook in the end. Here is the video:




Vulnerability Report and Patch

We have done all the research on March and sent the advisory to MobileIron at 4/3. The MobileIron released the patch on 6/15 and addressed three CVEs for that. You can check the official website for details!

  • CVE-2020-15505 - Remote Code Execution
  • CVE-2020-15506 - Authentication Bypass
  • CVE-2020-15507 - Arbitrary File Reading


After the patch has been released, we start monitoring the Internet to track the overall fixing progress. Here we check the Last-Modified header on static files so that the result is just for your information. (Unknown stands for the server closed both 443 and 8443 ports)




At the same time, we keep our attentions on Facebook as well. With 15 days no-patch confirm, we finally popped a shell and report to their Bug Bounty program at 7/2!


Conclusion

So far, we have demonstrated a completely unauthenticated RCE on MobileIron. From how we get the firmware, find the vulnerability, and bypass the JNDI mitigation and network limitation. There are other stories, but due to the time, we have just listed topics here for those who are interested:

  • How to take over the employees’ devices from MDM
  • Disassemble the MI Protocol
  • And the CVE-2020-15506, an interesting authentication bypass


I hope this article could draw attention to MDM and the importance of enterprise security! Thanks for reading. :D


111 則留言:

  1. can you share the exp.py 's content!

    回覆刪除
  2. although this article is less informative then past articles, still an awesome read.
    Thanks for sharing :)

    回覆刪除
  3. Are you going to post the custom marshaller gadget and the exp.py script PoC?

    回覆刪除
  4. 太强了,我的神

    回覆刪除
  5. 太强了!mark,学习了!

    回覆刪除
  6. Very impressive research, thank you, bro.

    回覆刪除
  7. 請問 ~
    1. Apache、Tomcat 和 MobileIron 是在同一台機器上嗎? 若不是,那是什麼樣的架構呢?
    2. 序列化是在哪個地方做的呢?
    3. Hessian 是指 RPC 嗎?
    4. 最後一步到位的方式,Groovy 和 Hessian 是什麼關係呢?
    5. 整個攻擊鏈順序是
    5.1 Hessian 反序列化 + JNDI Injection + GroovyShell (由於版本問題無法使用)
    5.2 groovy 一步到位(由於舊版沒有限制,可使用)
    所以最後進入 FB 的攻擊鏈是用 5.2 而已嗎?
    6. 關於論文的意思是說由於有限制而無法用 5.2 的攻擊手法,所以轉向 Hessian 反序列化的攻擊手法嗎?

    謝謝 <(_ _)>

    回覆刪除
  8. Dear Orange Tsai,
    I'm Huang Pei Yu from Taiwan, a third-year Management and Digital Innovation student from University of London at Singapore Institute of Management (SIM). My final year project will be doing a research topic on "Using crowd-sourcing to find security bugs in software: The emerging role of bug bounty program"

    I found your contact information on HackerOne website, and you are the ideal respondent for the survey. I am interested to hear your opinion regarding how penetration testers think about Bug-bounty programs. Your answers will prove valuable to the study.

    This survey may take 5~10 minutes to complete.
    Link: https://forms.gle/6KGdWK7QiC9Qi6ZE8
    All information and answers will remain anonymous and be used for research study only.
    Thank you for your time! I really appreciate your help.

    If you have any questions or issues, please feel free to contact me!
    Email: pyhuang001@mymail.sim.edu.sg
    Linkin: www.linkedin.com/in/pei-yu-huang-10702
    Address:
    Huang Pei Yu, Department of Management and Digital Innovation, University of London, 461 Clementi Road, Singapore 599491

    Yours faithfully,
    Huang Pei Yu

    回覆刪除
  9. I'm writing on this topic these days, , but I have stopped writing because there is no reference material. Then I accidentally found your article. I can refer to a variety of materials, so I think the work I was preparing will work! Thank you for your efforts. Feel free to visit my website; 먹튀검증가이드

    回覆刪除
  10. Your post is very great.i read this post this is a very helpful. i will definitely go ahead and take advantage of this. You absolutely have wonderful stories.Cheers for sharing with us your blog. Feel free to visit my website; 카지노사이트링크

    回覆刪除
  11. The next time I read a blog, I hope that it doesnt disappoint me as much as this one. I mean, I know it was my choice to read, but I actually thought you have something interesting to say. All I hear is a bunch of whining about something that you could fix if you weren't too busy looking for attention Feel free to visit my website; 온라인카지노사이트넷

    回覆刪除
  12. Hey There. I found your blog using msn. This is an extremely well written article. I will be sure to bookmark it and return to read more of your useful information. Thanks for the post. I will certainly return. Feel free to visit my website; 배트맨토토프로

    回覆刪除
  13. "I would like to thanks' 무료야설 for the efforts you have put in writing this blog. I’m hoping the same high-grade blog post from you in the upcoming also. Actually your creative writing abilities has encouraged me to get my own web site now. Actually the blogging is spreading its wings quickly. Your write up is a good example of it."

    回覆刪除
  14. What an excellent you are 오피헌터. Your presentation was so good.

    回覆刪除
  15. "It’s amazing, your posts are really impressive, I hope to see more of this wonderful article from you 마사지"

    回覆刪除
  16. "What’s up, of course this piece of writing is truly good and I have learned lot of things from it about blogging. thanks 건전마사지."

    回覆刪除


  17. In the late spring before Mike's last yea

    안전놀이터r at school he looked as the principal wave of Black Lives Matter fights carried out across the US, however partaking was t

    回覆刪除
  18. You are doing agood work keep it up Thanks

    回覆刪除
  19. Thisis good info i have some side effects of timing capsules info

    回覆刪除
  20. This article is an appealing wealth of informative data that is interesting and well-written. I commend your hard work on this and thank you for this information. You’ve got what it takes to get attention.
    꽁머니

    回覆刪除
  21. Thank you for sharing the great information with us. this blog is
    very good and informative.
    igoal88 ทางเข้า

    回覆刪除
  22. great article In this article is very good and make the article better quality. Thank you very much for posting this information. สล็อตออนไลน์

    回覆刪除
  23. I obtained everything you mean, thanks regarding posting. Woh I will be pleased to get this amazing site by means of yahoo. "I was walking down the street wearing glasses when the prescription ran out." by Steven Wright. เว็บเล่นบาคาร่าที่คนเล่นเยอะที่สุด

    回覆刪除
  24. Hey friend, it is very well written article, thank you for the valuable and useful information you provide in this post. Keep up the good work! FYI, Pet Care adda
    Credit card processing, Klara and the Sun PDF Download ,My Favorite Movie Essay Harry Potter

    回覆刪除
  25. Very nice article, I enjoyed reading your post, very nice share
    123bet แนะนำเพื่อน

    回覆刪除
  26. Howdy! Do you know if they make any plugins to assist with SEO? I’m trying to get my blog to rank for some targeted keywords but I’m not seeing very good results. If you know of any please share. Cheers! 안전토토사이트

    回覆刪除
  27. หลักการเล่น เกมออนไลน์ที่เดียวในไทย ae casino เว็บหลัก aecasino

    回覆刪除
  28. สำหรับผู้ที่รักการพนันออนไลน์ ชอบเล่น สล็อตออนไลน์ ชอบเสี่ยงด่วง วันนี้ bet form home เดิมพันสล็อต เว็บตรง

    回覆刪除
  29. ทางเข้าเว็บตรง เซ็กซี่ ขนาดใหญ่ สามารถเล่นได้ทุกที่ ทุกเวลา ไม่ว่าจะผ่านมือถือ ผ่าน PC คอมพิวเตอร์ Ipat ทางเข้า เว็บตรง sexy เครดิตฟรี

    回覆刪除
  30. I want to see you and hug you that has given me knowledge every day. โปรโมทชั่น pragmatic play

    回覆刪除
  31. Biotox Gold 2.0 formula is manufactured by reputed healthcare and nutrition brand called Biotox Nutrition. Biotox Nutrition is one of the top supplement makers in America. They primarily use natural ingredients to make their supplements, and all of the ingredients of Biotox Gold are known to be safe. They have a large following, around half a million active users. All of their supplements are manufactured in FDA-approved labs. They follow strict GMO policies during the development cycle. Biotox Gold Reviews

    回覆刪除
  32. Watch and Download world's famous Turkish action drama Kurulus Osman Season 3 in English on link below
    👇
    Kurulus Osman Season 3

    Kurulus Osman Season 3 Episode 1
    On link below
    Kurulus Osman Season 3 Episode 1

    Crypto trading course
    👇
    Crypto quantum leap

    YouTube course
    Be a professional YouTuber and start your carrier
    Tube Mastery and Monetization by matt

    回覆刪除
  33. After registering and playing pgslot888 is pgslot99
    stable, beautiful graphics with 3D visuals, looks modern and is constantly being updated. low budget players You can play with a lot of budget. Deposit no minimum 1 baht, you can play. Play on our website. Guarantee that you will not be bored for sure. With more than 1000 slots

    回覆刪除
  34. It's an honor to visit this blog by chance.
    I'd appreciate it if you could visit my blog.
    This is my blog.
    woorimoney.com

    回覆刪除
  35. It's a very good content.
    I'm so happy that I learned these good things.
    Please come to my website and give me a lot of advice.
    It's my website address.

    온라인홀덤

    回覆刪除
  36. สล็อตโจ๊กเกอร์ เว็บไซต์ สล็อต ที่มีโบนัส เครดิตฟรีในตัวเกม ดาวน์โหลด Joker ได้ง่ายๆ ผ่านโทรศัพท์มือถือหรือคอมพิวเตอร์
    สามารถ ทดลองเล่นสล็อต ได้ทั้งในระบบ Android และ iOS

    回覆刪除
  37. Always give everyone the right information pgslot99
    in the blink of an eye. Sign up for open positions Inquire or apply now with our smart merchant program and convenient withdrawal

    回覆刪除
  38. you will need support or suggestions, write me privately.
    I interested in your implementation/use case.
    the best situs slot terbaik
    Togel2win
    daftar bo bonanza

    回覆刪除
  39. superslot เกมสล็อตออนไลน์ เว็บตรงที่ดีที่สุดมีเกมสล็อตที่แตกง่ายที่สุดให้ท่านได้เลือกเล่นมากมาย ทดลองเล่นสล็อต ทุกค่ายเกม
    อาทิ PG SLOT , EVOPLAY , SLOTXO , PRAGMATIC PLAY , JILI GAME , RELAX GAMING , DAFABET , JOKER เราชื่อเว็บสล็อตเว็บตรงที่ให้บริการไม่ผ่าน agent สมัครซุปเปอร์สล็อต

    回覆刪除
  40. Really appreciate you sharing this blog post.Thanks Again. Keep writing. โรงแรมรถอุบล

    回覆刪除
  41. Watch and Download world's famous Turkish action drama Kurulus Osman Season 3 in English on link below
    👇
    Kurulus Osman Season 3

    Kurulus Osman Season 3 Episode 1
    On link below
    Kurulus Osman Season 3 Episode 1

    Crypto trading course
    Join on link below
    Crypto quantum leap

    YouTube course
    Be a professional YouTuber and start your carrier
    Tube Mastery and Monetization by matt

    Best product for tooth pain ,
    Cavity ,
    Tooth decay ,
    And other oral issues
    Need of every home
    With discount
    And digistore money back guarantee
    Steel Bite Pro

    回覆刪除
  42. I just got to this amazing site not long ago. I was actually captured with the piece of resources you have got here. Big thumbs up for making such wonderful blog page Feel free to visit my website; 바카라사이트

    回覆刪除
  43. Thanks for sharing. I found a lot of interesting information here. A really good post, very thankful and hopeful that you will write many more posts like this one. Feel free to visit my website; 바카라사이트

    回覆刪除
  44. betflixsupervip is the casino online you can play a slot game on this site and have fun with a profit you can make. we have a promotion to support player to play and make more profit. see my blog : สล็อต ออนไลน์

    回覆刪除
  45. ufabet1688x is the sportsbook you can play betting for winner who win by high score by score between home and away we provide a true 50 50 for a player who's want to play and believe in a team you picked.คาสิโน่

    回覆刪除
  46. insert funny Instagram caption here FUN88

    回覆刪除
  47. สล็อตโจ๊กเกอร์ เกมสล็อตออนไลน์ หรือการพนันออนไลน์ ตรวจสอบเกมสล็อตที่ดีที่สุดในบรรดาเกมสล็อตออนไลน์ เครื่องสล็อตออนไลน์พร้อมที่จะสัมผัสประสบการณ์ผู้ใช้ที่ดีที่สุดในเอเชีย คาสิโนออนไลน์ที่มีเอกลักษณ์เฉพาะตัวพร้อมบรรยากาศที่เป็นกันเองที่โดดเด่น เข้าถึงบริการทั้งหมดได้ง่าย สมัครสล็อตออนไลน์ โหลดซ้ำ, ฝาก, ถอน, เครดิตฟรี, แก้ไขโปรไฟล์ผู้เล่น บริการของพนักงานที่ผ่านการฝึกอบรมของเราทำให้ทุกอย่างรวดเร็วและง่ายดาย ผู้เล่นที่เป็นมิตรและเป็นที่รู้จักมากที่สุดคือผู้เล่นที่ดีที่สุด

    สล็อตแมชชีน คืนยอดเสีย slot joker Slot Joker คืนยอดที่เสีย จัดโปรโมชั่นคืนสล็อตให้สมาชิกทุกวันเพื่อคืนเงินด้วยการเล่นเกมสล็อตแมชชีนและให้ลูกค้าเล่นเกมสล็อตออนไลน์บนเว็บไซต์ของตนได้ ไม่ว่าคุณจะเป็นสมาชิก ลูกค้าใหม่ หรือลูกค้าประจำ เรายังคงดำเนินโปรโมชั่นที่ไม่สมดุลทุกวันในขณะที่สร้างสมดุลให้กับเกม เราจะคืน 10% ของโจ๊กเกอร์สล็อต เข้าไปกดรับโบนัสของคุณเอง บนหน้าการเงินของเว็บไซต์ Joker roma

    回覆刪除
  48. Really good website keep posting this content.


    Generator for rent

    回覆刪除
  49. Incredible post I should state and much obliged for the data. Instruction is unquestionably a sticky subject. Be that as it may, is still among the main themes of our opportunity. I value your post and anticipate more. 메이저저사이트

    回覆刪除
  50. 作者已經移除這則留言。

    回覆刪除
  51. I like to write a little comment to support you.
    123 คาสิโน

    回覆刪除
  52. Slots In the game Tree of Fortune Tree of Fortune is written as a fairy tale. and the movie came before it came Slot games in the pgslot game camp in the garden that no one can reach. There is a special tree that is different from other trees. that can produce fruit It’s a red envelope that represents money. and whenever there is enough fertilizer regular watering will become a golden tree and then those who plant it will receive the fruit of raising this tree well. in the form of double the amount of money

    回覆刪除
  53. เล่นสล็อตแตกง่าย BETFLIX เครดิตฟรี 100 ทางเข้าเล่นPG SLOT AUTO พบโปรโมชั่นพิเศษตอนรับสมาชิกใหม่ สมัครเล่นสล็อต รับโบนัสฟรี 100% ทันที เล่นง่าย จ่ายจริงบริการตลอด 24 ชั่วโมง เล่นสล็อต PG SLOT BETFLIX เครดิตฟรี 100

    回覆刪除
  54. รีวิวเกมสล็อต Cyber Race มาในแนวใหม่ BETFLIX แต่คงความ เล่นง่ายได้กำไรจริง เกมbetflix นี้ อัพเดตตาม ยุคสมัย มาพร้อมกับความทันสมัย ขั้นสุด กับไซเบอร์เรส เล่นแล้ว รับรองมันส์สุด ๆ เล่นเกมสร้างรายได้ คุ้ม ๆ กับเราได้แล้ว วันนี้

    回覆刪除
  55. สล็อต ในตอนนี้ต้องยอมรับ เลยว่าเว็บ MEGA GAME บาคาร่า เป็นเกม ที่ร้อนแรงที่สุด ซึ่งพร้อมแล้วกับบริการ ทดลองเล่นบาคาร่าฟรี ให้ได้เข้ามาสัมผัส และทำความรู้จัก กับเกม โดยไม่มีฝาก ไม่มีสมัคร เล่น บาคาร่าทดลอง แบบฟรีๆ ไม่มีเงื่อนไข โอกาสพิเศษ สำหรับ ท่านที่เป็นหน้าใหม่ และท่านที่สนใจ แต่ยังมีความ กังวล ซึ่งพูดได้เลย ว่าเกมนี้ นอกจากจะได้รับ


    回覆刪除
  56. ในวันนี้เราจะมา พบกับ เว็บตรง BETFLIX เกมสล็อตออนไลน์ เว็บตรง BETFLIX ไม่ผ่านเอเย่นต์ เกมสล็อตเว็บแท้ จากต่างประเทศ สามารถทดลองเล่นฟรี ผ่านระบบ PG SLOT เล่นเกมแท้ 100 เปอร์เซ็นต์ ไม่ผ่านตัวแทน ไม่ว่าจะเล่นผ่านเว็บไซต์ PG SLOT

    回覆刪除
  57. BETFLIX เครดิตฟรี 100 เมื่อค้นหา เครดิตฟรี กดรับ เอง BETFLIX เครดิตฟรี 100 เกมสล็อตจะเห็นได้ ว่ามีเว็บไซต์คาสิโนดูหนังออนไลน์ หลายแห่งบอกว่า แจก เครดิตฟรีกดรับเอง นั้นแต่จะรับจริงมีเงื่อนไข เยอะแยะไปหมด แต่ไม่ใช่กับเว็บเราอย่างแน่นอน เพราะเครดิตฟรีกดรับเองแล้ว ยืนยันเบอร์ของท่าน เพื่อรับฟรีเครดิตจาก เครดิตฟรีกดรับเอง เว็บของเราได้ ผ่านหน้าเว็บได้ทันที อีกทั้งข้อแตกต่าง และ สาเหตุที่เราได้รับ ความนิยมกว่าที่อื่น คือจำนวนเกมบนเว็บ โปรโมชั่น

    回覆刪除
  58. want to see you You made me fall in love with your article. สมัครสมาชิก all bet

    回覆刪除
  59. โปรโมชั่นใหม่สำหรับสมาชิกทุกท่านที่มีโอกาสได้รับโปรโมชั่นสูงสุด แทงบอล
    สล็อตออนไลน์ เครดิตฟรีทำเงิน เพื่อเพิ่มต้นทุนในการทำเงินอย่างต่อเนื่อง ไม่มีเงื่อนไข ทั้งยังมีโอกาสได้รับเครดิตฟรีในการเข้าเล่นได้อีกด้วย.

    回覆刪除
  60. รับโปรโมชั่นสูงสุดทีเด็ดแทงบอล
    เกมสล็อตมีโอกาสได้รับเครดิตฟรีในการเข้าเล่น

    回覆刪除
  61. รับโปรโมชั่นสูงสุด ฝากถอนไม่มีขั้นต่ำ ไม่ต้องทำเทิร์นใดๆ โบนัส 100% สมัครแทงบอลออนไลน์
    สมัครเว็บสล็อต มีโอกาสได้รับเครดิตฟรีในการเข้าเล่น เครดิตฟรี

    回覆刪除
  62. Hello, i think that i saw you visited my website thus i came to “return the favor”.I’m trying to find things to enhance my
    site!I suppose its ok to use a few of your ideas!!
    บาคาร่า

    回覆刪除
  63. This post is really informative. Thanks for sharing this great piece of article with us.
    เว็บ igoal

    回覆刪除
  64. BETFLIX สำหรับเกม สล็อตแตกง่าย ได้เงินไว เป็นเกมสล็อตที่มาในรูปแบบใหม่ ที่ทางเว็บ BETFLIX แนะนำ เว็บสล็อตแตกดี ได้เปิดโอกาส ให้ผู้เล่นนั้น ได้เข้ามาเดิมพัน สล็อตแตกง่าย ได้เงินไว อย่างสนุกสนาน พร้อมทั้งยัง สามารถทำเงิน สร้างรายได้ ดูหนังออนไลน์ฟรี จากการเล่นเกมออนไลน์ได้เป็นอย่างดี และทำเงินได้อย่างรวดเร็ว จากการที่เข้าไปเล่นเกม แค่เพียงมี่กี่เกม ก็สามารถได้รับผลกำไรตอบแทนกลับมาอย่างมากมาย

    回覆刪除
  65. ผู้เล่นทุก ๆ คน เข้าสู่เว็บเราได้ เลยเว็บเราเป็นเว็บตรง มาแรงที่สุด ในขณะนี้ มาร่วมความ สนุกสนานกับทาง เราได้เลย สล็อตแตกง่าย ได้เงินจริง สล็อตไม่ผ่านคนกลางใด เลยที่มาพร้อม ระบบที่รวดเร็วมาก ๆดูหนังออนไลน์ฟรี ใช้งานเกม มากกว่า 3,500 เกม MEGA GAME ทางเราได้คัดเลือกแต่ เกมสนุกสนาน มาให้ทุก ๆ คนเล่นกันแบบสะใจ ตลอดเวลา เล่นได้ง่าย ๆ สล็อตเว็บใหม่แตกดี

    回覆刪除
  66. sexy สมัคร
    Very nice post and blog, I found it very explanatory and informative, thank you very much for sharing your knowledge and wisdom with us.

    回覆刪除
  67. เกมสล็อตออนไลน์ของค่าย betflix pg slot นั้น จะมีความพิเศษที่แตกต่างจากเกมสล็อต BETFLIX ของค่ายอื่นๆ อย่างชัดเจน หนังใหม่ เนื่องจากเกมสล็อตออนไลน์ ของค่าย pg slot นั้น จะมีเกมให้เลือกเล่นได้หลายแนว หลากหลายสไตล์ โดยเกมสล็อต pg slot แต่ละเกมนั้นหนังใหม่

    回覆刪除
  68. เมื่อผ่านมาไม่นานนี้ ทางค่ายเกม ฟอร์มยักษ์ ค่าย MEGA GAME ก็ได้ปล่อย เกมสล็อต สุดมัน มาใหม่ล่าสุด 2022 ทาง MEGA GAME ของเราก็อดไม่ได้ที่ จะหยิบหยก นำเสนอเกมนี้ให้กับ นักเล่นสล็อตทุกท่าน นั่นก็คือ เกม “ Battleground Royale MEGA GAME

    回覆刪除
  69. 回覆
    1. สมัครเล่นเว็บสล็อตออนไลน์ยอดนิยม สล็อตเว็บตรงไม่ผ่านเอเย่นต์ รวมเกมสล็อตทุกค่าย สมัครฟรี ลุ้นรับเครดิตฟรีกับเว็บสล็อตแตกง่ายใหญ่ที่สุด BSLOT สล็อตออนไลน์

      刪除
  70. ฟรีเครดิตเป็นหนึ่งในโปรโมชั่นที่ดีจาก บาคาร่า
    เว็บคาสิโนออนไลน์ยกตัวอย่างเช่น เว็บไซต์รวมเกมไพ่ บาคาร่า โดยส่วนมากชอบมีการพรีเซ็นท์คุณลักษณะเด่นของเว็บเพื่อผู้เล่นพอใจและก็ยั่วยวนใจผู้เล่นใหม่ให้เข้ามาเล่นเกมบนเว็บมากขึ้น
    ดังนี้หนึ่งในข้อดีดังกว่าก็น่าจะหนีไม่พ้น “โปรโมชั่น” ที่จะสามารถช่วยให้เหล่าผู้เล่นสามารถเล่นเกมบนเว็บถัดไปได้อย่างสนุกแล้วก็รู้สึกคุ้มไปกับการเล่นเกมผ่านทางเว็บไซต์มากขึ้นเรื่อยๆกว่าเดิม บาคาร่า บาคาร่า

    โปรโมชั่นฟรีเครดิต โปรสุดคุ้มที่ใครๆก็รู้จัก
    ถ้าเกิดเอ๋ยถึงโปรโมชั่นทุกคนก็น่าจะรู้จักอย่างดีเยี่ยม เนื่องจากว่าเป็นสิ่งที่เหล่านักพนันบาคาร่า รู้สึกชื่นชอบเนื่องจากว่าจัดว่าผู้เล่นได้ประโยชน์จากสิ่งนี้อยู่ไม่มากมายก็น้อย ดังนี้โปรโมชั่นดีๆที่พวกเราจะกล่าวถึงในวันหนีอาจหนีไม่พ้นโปรโมชั่นฟรีเครดิตที่จะทำให้เหล่าผู้เล่นรู้สึกคุ้มไปกับการเล่นเกมผ่านทางเว็บไซต์คาสิโนโดยยิ่งไปกว่านั้นเหล่าผู้เล่นมือใหม่
    ดังนี้เรียกได้ว่าโปรโมชั่นฟรีเครดิตเป็นโปรโมชั่นที่ไม่ว่าใครก็ล้วนแต่รู้จักเพราะว่าเป็นโปรโมชั่นที่ใช้งานง่ายทั้งผู้เล่นยังได้เงินลงทุนไปเลยฟรีๆโดยโปรนี้โดยมากชอบมอบให้แก่สมาชิกใหม่ ด้วยเหตุว่าเป็นกรุ๊ปที่จะสามารถนำเงินไปลงทุนได้อย่างคุ้มเยอะที่สุดนั้นเอง

    การนำเงินไปลงทุนเล่นเกมให้ได้กำไร
    บาคาร่า นับได้ว่าเป็นอีกหนึ่งเกมที่นอกเหนือจากการที่จะเล่นง่าแล้วยังเล่นแล้วได้เงินไว ก็เลยไม่ใช่เรื่องที่น่ามหัศจรรย์อะไรแม้คนนิยมนำฟรีเครดิตมาใช้กับเกมไพ่นี้ โดยส่วนมากก็สามารถได้กำไรจากการเล่นเกมได้ผ่านทางแนวทางผลกำไรต่อยอดผลกำไร กล่าวอีกนัยหนึ่งเป็นกรรมวิธีการที่ผู้เล่นจะนำผลกำไรที่ได้มาวางเดิมพันเยอะขึ้นโดยเงินที่ใช้จะเพิ่มเยอะขึ้นตามผลกำไรที่ได้ ซึ่งกรรมวิธีการนี้ก็เป็นอีกหนึ่งแนวทางที่จะทำให้ผู้เล่นสามารถทำเงินจากการเล่นเกมมากมากขึ้นเรื่อยๆกว่าเดิม
    สำหรับเว็บคาสิโนออนไลน์ที่เหมาะสมกับการลงทุนก็ยกตัวอย่างได้ยกตัวอย่างเช่น บาคาร่า เว็บที่มีเกมไพ่ให้เลือกเล่น นอกเหนือจากนี้ยังมีเกมอีกหลายๆเกมให้ทดลองเล่นด้วย โดยผู้เล่นสามารถใช้งานระบบอินเทอร์เฟสต่างๆของเว็บได้อย่างสะดวกสบายโดยที่ไม่ต้องวิตกกังวลว่าจะใช้งานไม่เป็นอะไร

    สรุปได้ว่า บาคาร่า เป็นอีกหนึ่งเกมคาสิโนออนไลน์น่าเล่นที่ชอบมากับโปรโมชั่นฟรีเครดิต ซึ่งจะมีผลให้ผู้เล่นรู้สึกคุ้มไปกับการเล่นเกมผ่านทางเว็บอยู่ไม่มากมายก็น้อย แม้กระนั้นเกมไพ่เกมนี้ก็ยังคงน่าเล่นรวมทั้งเป็นที่นิยมมาตลอดอยู่ดีแม้ว่าจะไม่มีฟรีเครดิตก็ตาม

    回覆刪除