## 計算機概論Lab-6
### Processes

<p>https://hackmd.io/@IMOK/Lab6</p>
---
<img src="https://hackmd.io/_uploads/ryUSIqnJT.jpg" width=400 style="border-radius:1000px;"/>
講師: 賴昱有
---
## Quick hide
<img src="https://hackmd.io/_uploads/SyryQGfmp.png" width=250 style="float : left ;margin : px 0px 0px px"/>
<font size =5>快速隱藏 Windows工作列中所有開啟的檔案、程式等。</font>
<font size =5>為什麼要這麼做? 也許你正在做一些不應該做的事情(?</font>
<font size =5>你的父親或老闆進來了。</font>
<font size =5>QuickHide 可以成為你的救星</font>
<font size =5>QuickHide.exe 在背景運行。</font>
<font size =5>您可以在任務管理器中看到它,但不會顯示在通知區域中。</font>
<font size =5>僅適用Win7,Win8.1,Win10</font><br>
<font size =4>下載: https://www.thewindowsclub.com/hide-taskbar-processes-and-applications-quickly-with-quickhide</font>
----
## how to use?

<font size =5>若要隱藏程序,請按鍵盤上的右或左 CTRL 鍵。</font>

<font size =5>若要顯示程序,請按鍵盤上的右或左 SHIFT 鍵。</font>
<font size =5>End以退出.exe,結束quickhide背景執行</font>
---
## WinVisible
<font size =5>什麼你已經升級window11了沒關西試試這款WinVisible</font>
<img src="https://hackmd.io/_uploads/H1gBjffQT.png" width=400 style=" ;margin : px 0px 0px px"/>
<font size =4>載點:https://ncs-winvisible.software.informer.com/</font>
----
<img src="https://hackmd.io/_uploads/BJYt2MMQp.png" width= 700px/>
<font size =5>選擇想要hide的processes</font>
----
<img src="https://hackmd.io/_uploads/ryUuRMfma.png" width= 350px/>
<font size =5>點選設定,看個人習慣可自行勾選是否開機即起用</font>

----
<img src="https://hackmd.io/_uploads/HkAAAMM76.png" width= 600px/>
<font size =5>可自行更改Hide& Show的 hotkey,不建議使用kill詳情請閱讀Warning</font>
----
<img src="https://hackmd.io/_uploads/BJYlxXG76.png" width= 350px/>
<font size =5>右下角,右鍵點選icon,選擇exit結束.exe的背景執行</font>
---
## Security Task Manager
<font size =4>在 Windows 系統上,您可以開啟工作管理員並查看正在執行的程序。
但有些程序被隱藏起來並沒有顯示,
Security Task Manager可以幫助你查看他們(被隱藏的程序),並提供程序駐留在哪裡、
誰製造了它們、它們的名稱是什麼、它們是否包含隱藏組件等資訊。
此外,您可以將程序隔離或在網際網路上搜尋有關該程序的資訊。</font>
<font size =4>載點:https://www.neuber.com/taskmanager/taskmanager.html</font>
----
<img src= "https://hackmd.io/_uploads/Bk7M7xHQT.png" width=850/>
----


----

<img src= "https://hackmd.io/_uploads/ByLCVeSXT.png" width=400 style="float : left ;margin : 0px 0px 0px 100px"/>
<img src= "https://hackmd.io/_uploads/SkalSeSXT.png" width=400 style="margin : 150px 0px 0px 0px"/>
----

<font size =5>可以勾選想要顯示的資訊</font>
---
## Intervening Memory
<font size =4>Intel處理器使用little endian分配內存,即最高有效位元組位於較低位址。
考慮下面的程式碼實作一個簡單的猜數字遊戲。
使用Cheat Engine v6.8.1工具鎖定程序內存,嘗試檢查內存以1 guess獲勝。</font>
<font size =4>載點:https://file.gdaily.org/625-2/</font>
----

----


----
<img src= "https://hackmd.io/_uploads/SkZl9WH7T.png" width=1800/>
<font size=5>選擇正在執行的.exe開啟</font>
----

<font size=5>guess = 50 讓memory有資料可以被偵測</font>
<font size=5>scan已找到在memory中的value為50的address</font>
----

<font size=5>guess = 100 讓memory資料被更動</font>
<font size=5>已確定input在memory中的address</font>
----
<img src= "https://hackmd.io/_uploads/S1AZoZH7p.png" width=500/>
----
<img src= "https://hackmd.io/_uploads/ByZbhWr76.png" width=500/>
<font size =5> start : 0x0061FE18(address)
4 byte integer(0x0061FE18 to 0x0061FE1B) </font>
<font size =5>data : 0x64000000 (big endian)</font>
<font size =5>Intel CPUs store : 0x00000064(little endian)</font>
----

<font size =4>找到input的位址之後我們可以大膽的假設,answer應該儲存在我們的輸入附近,
並且對於大多數Intel編譯器來說,分配的記憶體與電腦程式碼的順序相反。
所以接下來的 4 個位元組 0x0061FE1C to 0x0061FE1F這4個位元組
answer : 0x00006D5F,即27999 ( little endian )</font>
----


<font size =5>我們確認了answer的位址之後,我們只需要一次猜測就可以得到答對囉!</font>
----
<img src= "https://hackmd.io/_uploads/rJjm-MH7a.png" width=500/>
<font size =5>answer : 0x0000157C,即5500 ( big endian )</font>
---
## Secret Maryo Chronicles
<font size =4>這是一款單機遊戲,我們要怎麼使用Cheat engine來達到金手指的效果?</font>

<font size =4>載點:http://www.secretmaryo.org/</font>
----

----
<img src= "https://hackmd.io/_uploads/ry7vrzBmp.png" width=700/>
---
## Scanning and Modifying Memory Contents

<font size =4>一開始我們只會有3條命,我們來嘗試讓他變成99,就不必擔心會game over了</font>
----

----
<img src= "https://hackmd.io/_uploads/BJqsDzH7T.png" width=500/>
<font size =4>「生命」數(在遊戲的開頭是 3)
我們在搜尋目標中輸入值“3”並按掃描。 你
應該會看到如下圖所示的內容以及許多帶有該值的位址「3」</font>
----
<img src= "https://hackmd.io/_uploads/rk7sOzBQT.png" width=500/>
<font size =4>掃描完成後,返回 SMC 並自殺。 剩下2條命。
使用這個值作為下一次掃描
第二次掃描後,符合的位址會減少。 </font>
----

<font size =4>再次自殺並使用數值「1」掃描,我們找到了存放生命值的位址</font>
----

<img src= "https://hackmd.io/_uploads/H1A2tzHma.png" width=500/>
----
<img src= "https://hackmd.io/_uploads/HyZb5MSX6.png" width=200/>
<font size =4>更改完成後回到遊戲中,現在我們有了99條命了</font>
---
### Reading and Identifying Memory Contents
<font size =4>對於大多數計算機程序,喜歡將變數放在一起。
我們可以嘗試識別一些其他資訊來進行更改。
SMC還有其他屬性,例如收集的硬幣數量和當前分數。</font>
<img src= "https://hackmd.io/_uploads/rk7R9Mr7a.png" width=400/>
----

----
<img src= "https://hackmd.io/_uploads/rkL22MrX6.png" width=700/>
----


----

<font size =4>我們將金幣及分數對調後再回到遊戲中</font>
----
<img src= "https://hackmd.io/_uploads/HknpAMrQ6.png" width=700/>
---
## Lab Questions
----
## Question 1
+ <font size=5>Open SMC.</font>
+ <font size=5>Show the TA you can hide SMC and reveal it.</font>
+ <font size=5>In addition, locate the process of Quick Hide using the task manager in windows and tell the TA how much memory is it using.</font>
<font size=5>You only need to complete it by Quick hide or WinVisible.</font>
----
## Question 2
<font size=4>Execute Security Task Manager using “Administrator” privileges.
How many “extra” process are found compared to the normal windows task manager?
Save the process table to a file. How many “Toolbars” applications are running on your computer?
</font>
----
## Question 3
<font size=4>Show the TA you can always win the guessing game in 1 try
(without modifying the source code).
</font>
----
## Question 4
<font size=4>For the following piece of computer code, it is much harder to lock into the address of the solution.
Can you explain why?
</font>
----
<img src= "https://hackmd.io/_uploads/ryfUMXBma.png" width=600/>
----
## Question 5
<font size=5>
For the game intervention:
• Lock the number of life of your character to 60 life.
• Lock the number of coins of your character to 90.
• Set your current score to 1234567.
• Freeze the current playing time to 0:10.
</font>
---
## 作業網站
http://140.121.197.13/tutorial
{"title":"計算機概論Lab-6","description":"image.png","contributors":"[{\"id\":\"738dd674-cd6a-462c-87e2-b67e68f12ac0\",\"add\":16033,\"del\":8276}]"}