引言
本人手機(jī)越獄的坑吞加,算是踩的差不多了,不同手機(jī)型號(hào)尽狠,不同系統(tǒng)的版本的越獄在網(wǎng)上其實(shí)都可以找到衔憨,花點(diǎn)時(shí)間踩坑是有必要的,如果讀者看到跟我介紹的iOS系統(tǒng)版本袄膏、環(huán)境不同的情況下請(qǐng)自行去度娘践图、谷爹尋找不同之處以改進(jìn)
手機(jī):Iphone6 plus
iOS: 10.3.3
Mac:10.13.4
注
文章提到的所有插件源地址:http://apt.so/zacharyspark
在cydia中添加這個(gè)源里面有相關(guān)插件
什么是SSH
SSH是遠(yuǎn)程登錄會(huì)話和其他網(wǎng)絡(luò)服務(wù)提供安全性的協(xié)議,用于計(jì)算機(jī)之間的加密登錄
早期都是明文通信
95年 芬蘭人發(fā)明ssh協(xié)議當(dāng)時(shí)最安全的一種協(xié)議
立刻馬上就普及沉馆,且迅速蔓延
并且現(xiàn)在各大系統(tǒng)之間也都支持這個(gè)码党,比如說unix分之Mac、linux都支持ssh斥黑,在終端中都可以敲命令ssh
OpenSSH
是一個(gè)運(yùn)用ssh的一個(gè)軟件揖盘,提供ssh登錄的一個(gè)軟件
SSH怎么保證安全、以及它的過程是什么
準(zhǔn)備: client锌奴、server
- client首先向server發(fā)送登錄請(qǐng)求
- server收到請(qǐng)求以后發(fā)送一個(gè)公鑰給client
- client將密碼用公鑰加密以后發(fā)給server
- server收到這段信息兽狭,用私鑰解密,如果是正確的密碼就登錄成功
SSH的安全隱患鹿蜀?
中間人攻擊(Man-in-the-MiddleAttack箕慧,簡稱“MITM攻擊”)
通過各種技術(shù)手段將受入侵者控制的一臺(tái)計(jì)算機(jī)虛擬放置在網(wǎng)絡(luò)連接中的兩臺(tái)通信計(jì)算機(jī)之間,通過劫持茴恰、攔截正常的網(wǎng)絡(luò)數(shù)據(jù)并進(jìn)行篡改颠焦,而通信的雙方卻并不知道
曾經(jīng)猖獗一時(shí)的SMB會(huì)話劫持、DNS欺騙等技術(shù)都是典型的MITM攻擊手段
實(shí)現(xiàn)原理:
- 在client向server發(fā)送請(qǐng)求的時(shí)候往枣,在client與server之間架起偽server然后攔截client的請(qǐng)求
- 用偽server向server發(fā)送一個(gè)登錄請(qǐng)求伐庭,
- server生成密鑰A:公鑰A粉渠,私鑰A 反給偽server
- 偽server拿到公鑰A以后,立馬生成一對(duì)密鑰B:公鑰B似忧、私鑰B渣叛,將公鑰B反給client
- client拿到公鑰B以后進(jìn)行密碼加密,發(fā)送server盯捌,然后偽server攔截
- 偽server拿到這段密文淳衙,用私鑰B進(jìn)行解密拿到密碼,發(fā)送給黑客server饺著,再將密碼用公鑰A進(jìn)行加密發(fā)送給server
這個(gè)過程就是整個(gè)中間人攻擊的原理
說白了就是箫攀,client只知道去連接了server,并不知道這個(gè)server其實(shí)是MITMServer幼衰,Server收到登錄請(qǐng)求并給予回應(yīng)靴跛,但它不知道這個(gè)client是MITMServer。
SSH的隱患防護(hù)
將server的公鑰進(jìn)行公開渡嚣,讓所有的client知道公鑰
每次登錄的時(shí)候梢睛,對(duì)返回的公鑰跟公開的公鑰進(jìn)行肉眼識(shí)別,正確在進(jìn)行密碼輸入
Wi-Fi使用SSH進(jìn)行遠(yuǎn)程登錄
準(zhǔn)備
- 請(qǐng)?jiān)谕粋€(gè)Wi-Fi下使用ssh
- 手機(jī)需要安裝OpenSSH
登錄操作
1. 在準(zhǔn)備完成的情況下识椰,輸入命令
$ ssh 用戶名@手機(jī)ip
- 須知:
- 用戶名為你手機(jī)的權(quán)限名稱:
- root 越獄所需要拿到的root用戶
- Mobile 普通用戶
- 手機(jī)ip绝葡,在你的手機(jī)設(shè)置->Wi-Fi中查看
- 用戶名為你手機(jī)的權(quán)限名稱:
- 例
$ ssh root@192.168.1.10
2. 根據(jù)提示進(jìn)行操作
The authenticity of host '172.16.107.9 (172.16.107.9)' can't be established.
ECDSA key fingerprint is SHA256:wv1CCBadfRIKUcK9Jdm/6tRyM7v1Zpu9ebRDc8y66jg.
Are you sure you want to continue connecting (yes/no)?
輸入yes
The authenticity of host '172.16.107.9 (172.16.107.9)' can't be established.
ECDSA key fingerprint is SHA256:wv1CCBadfRIKUcK9Jdm/6tRyM7v1Zpu9ebRDc8y66jg.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '172.16.107.9' (ECDSA) to the list of known hosts.
Connection closed by 172.16.107.9 port 22
再次連接
$ ssh root@192.168.1.10
輸入你手機(jī)的ssh登錄密碼,因?yàn)?code>OpenSSH是cydia作者寫的腹鹉,鼻祖人物
Jay Freeman大佬已經(jīng)將連接的服務(wù)寫成一個(gè)軟件OpenSSH藏畅,默認(rèn)的密碼是
alpine
、默認(rèn)端口是22功咒,在Cydia的首頁有介紹SSH登錄操作輸入
alpine
$ ssh root@172.16.107.9
root@172.16.107.9's password:
gaoganggangde-iPhone:~ root#
連接成功愉阎!
SSH免密登錄
免密登錄的原理是
- 將公鑰發(fā)給Server
- server收到公鑰,隨機(jī)生成功一段字符串A發(fā)給client
- client用私鑰加密字符串A生成密文A力奋,
- server利用私鑰A對(duì)密文A進(jìn)行解密榜旦,如果可以解密那就代表登錄成功
如果配置完成以后還需要輸入密碼,server端請(qǐng)直接給/var/root/.ssh文件配置chmod 755的權(quán)限
操作過程
1. 生成一對(duì)密鑰
$ ssh-keygen
中間的密碼什么的可以直接略過只要這對(duì)密鑰
$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/zacharyspark/.ssh/id_rsa):
/Users/zacharyspark/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/zacharyspark/.ssh/id_rsa.
Your public key has been saved in /Users/zacharyspark/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:jFggUQGYs5qOhAvemc75dgirSRy0n8eCilXfsFh3Sv4 zacharyspark@localhost
The key's randomart image is:
+---[RSA 2048]----+
| o+++. |
|+ . . |
| + . |
|o . o o |
|o+ o + S . |
|*.+oo+ B o |
|*=o+*o+ + |
|*+o=+o . . |
|ooo+o.. E |
+----[SHA256]-----+
看到最下面的圖就代表你成功的生成了一對(duì)密鑰
$ cd ~/.ssh
$ ls
id_rsa id_rsa.pub known_hosts
得到了私鑰景殷、公鑰
2. 將公鑰給Server
$ ssh-copy-id root@172.16.107.9
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/Users/zacharyspark/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@172.16.107.9's password:
Number of key(s) added: 1
Now try logging into the machine, with: "ssh 'root@172.16.107.9'"
and check to make sure that only the key(s) you wanted were added.
3. 輸入SSH登錄命令
$ ssh root@172.16.107.9
xxx-iPhone:~ root#
直接登錄成功沒有在輸入密碼章办!