Python - paramiko 环境变量问题

场景:使用Python 利用dumpdecrypted.dylib自动化脱壳

安装: Mac环境下 直接sudo pip install paramiko , 估计会缺少pip 环境, 那就先安装pip , easy_install pip

1.使用paramiko 用ssh连接iPhone
2.ssh.exec_command("DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib;echo $DYLD_INSERT_LIBRARIES")
3.发现echo $DYLD_INSERT_LIBRARIESs 是空的 空的 空
1.想了很多方案, 与试验 , 最后自己创建了一个.bashrc文件,文件里写export DYLD_INSERT_LIBRARIES=/var/tmp/dumpdecrypted.dylib
4.ssh.exec_command("su mobile;source ~/.bashrc")
5.结果卡在这了, 卡主了, 卡主, 卡

2.发现是su mobile 他出的问题 ,也就是说在用paramiko切换用户的时候并不是简单的su mobile /su root就可以的 ,代码如下(有问题直接百度就找到了)

channel = ssh.invoke_shell()    
        try:    
            channel.send("su mobile\n") 
            while not channel.recv_ready(): 
                print "Working..."  
                time.sleep(2) 
            print channel.recv(1024)
                # channel.send("whoami\n")   
                # break
            channel.send("cd /var/tmp;source ~/.bashrc;/private/var/containers/Bundle/Application/0E2E526C-BFD5-4863-879A-504C0FF010B6/XXX.app/XXX\n")  
            while not channel.recv_ready(): 
                print "Authenticating..."   
                time.sleep(2)
            print channel.recv(1024)    
        except Exception, e:
            print e

3.搞定

你可能感兴趣的:(Python - paramiko 环境变量问题)