Psexec'i hedef makinede yönetici hakları olmadan nasıl kullanabilirim?


27

psexecUzak makinede yönetici haklarına sahip olmadan bir uzak makinede komut yürütmek mümkün mü ?

Çalışan ve yönetici olmayan kimlik bilgileri psexec \\<machine> -u <username> -p <password>olan yerlerde çalışmayı denedim , ancak "erişim reddedildi" hatası alıyorum<username> <password>

Herhangi bir sorun yaşamadan uzak masaüstünü aynı kimlik bilgileriyle uzak makineye yerleştirebilirim.

Yerel makinem Windows 7 Enterprise 64-bit kullanıyor ve uzak makine Windows Server 2008 64-bit kullanıyor. Yerel makinede yönetici haklarına sahibim.

EDIT : Bu soruyu küçümseyen herkese: Herhangi bir güvenlik önlemini atlatmaya çalışmıyorum . Zaten çalıştırabilirsiniz uzaktan masaüstüne-ing uzak makineye ve onu çalıştırarak uzak makinede süreci. Sadece bir GUI ile yapabileceğim bir şeyi yapmanın komut satırı yolunu arıyorum.


Bu kötü bir soru çünkü bu sitede son kullanıcıların bize güvenlik sistemlerini nasıl aşacaklarını sormalarına itiraz ediyoruz. Belki de bunu okumalısınız: meta.serverfault.com/questions/1659/… , ardından SSS bölümünü okuyun.
John Gardeniers,

7
Ben am değil tüm güvenlik sistemlerine aşmak için çalışıyoruz. Zaten bir GUI ile yapabileceğim, bunun yerine komut satırı aracılığıyla yapabileceğim bir şey yapmaya çalışıyorum, daha uygun buluyorum. Lütfen bana bunun bir güvenlik sistemini nasıl atlattığını açıklayın.
HC4 - Monica

4
Yönetici olan bir kişinin, tam idari haklar kullanmadan bir işlemi yürütmenin bir yolunu bulmak için iyi nedenleri olduğu birçok zaman vardır. Bazen, elbette, bu mümkün değildir veya pratik değildir, ancak sisteme birkaç değişiklik yapılması, sistemin tamamen açılması ile daha sınırlı bir hesap kullanılarak erişilebilmesi için yapılandırılması arasında bir fark yaratabilirse, o zaman genellikle daha sınırlı bir hesap altında çalışmak için gereken işler.
Shannon Wagner,

8
İş rolümde Windows, Linux ve UNIX sunucularını yönetiyorum ve soruyu sormak için ona saldırarak bir kullanıcının sorusunu ele alacak olsaydım, yakında işsiz kalırdım. Bu kişi idari hakların aşılması için bir yöntem talep etmiyor. GUI'den geçme haklarına sahip olduğu bir süreci yürütmek için sınırlı haklarla PSEXEC'i kullanma yöntemini istiyor.
Robert Ebers

Yanıtlar:


26

Bulunduğu gibi: https://stackoverflow.com/questions/534426/psexec-help-needed

Psexec'in bir parçası olarak hedefe yönelik bir windows hizmeti başlattığında hedefte yönetici haklarına sahip olmanız ve bunu yapabilmek için yönetici haklarına ihtiyacınız var.

psexec, bir psexecsvc dosyasını yönetici paylaşımına kopyalar ve ardından uzaktan yönetimi kullanarak bu dosyayı kullanarak bir hizmet başlatır. Adlandırılmış boruları açar ve daha fazla iletişim için kullanır. Tamamlandığında, kendisinden sonra toparlanır.

Yine de aynı şeyi yazan RESMİ belgeleri bulamıyorum.


5

Makinede yerel yönetici olmasını isteyin.

Düzenleme: Veya komutu zamanlanmış bir görev olarak çalıştırın. Veya -Ex anahtarını PsExec: Run işlemi sınırlı kullanıcı olarak kullanın (Administrators grubunu çıkarır ve yalnızca Kullanıcılar grubuna atanmış ayrıcalıklara izin verir). Windows Vista'da işlem Düşük Bütünlük ile çalışır. Buraya bakın: http://technet.microsoft.com/en-us/sysinternals/bb897553 . RTFM ama söylediğim için üzgünüm!

Örneğin: Internet Explorer'ı sınırlı kullanıcı ayrıcalıklarına sahip olarak çalıştırmak için bu komutu kullanın:

psexec -l -d "c: \ program dosyaları \ internet explorer \ iexplore.exe"

Parolanın açık metin olarak uzak sisteme iletildiğini unutmayın.


1
Sistem yöneticileri buna izin vermez ve gerekli olmamalıdır. Linux'ta gerekli değil.
HC4 - Monica

4
@ HighCommander4, Linux'ta gerekli olup olmamasının ne önemi var? Bu bir Windows ortamıdır. Elmaları portakallarla karşılaştırmayı bırak.
John Gardeniers

2
@John: Sadece yönetici ayrıcalıkları gerektiren bir şey yapmaya çalışmıyorum. Her birinde bir hesabın olduğu iki makinem var ve bir makinede diğer makineden uzaktan bir işlem başlatmaya çalışıyorum. Bu bana yapılacak çok doğal bir şey gibi geliyor ve bunu yapmak için yönetici ayrıcalıklarına ihtiyaç duymak saçma görünüyor.
HC4 - Monica

@ HighCommander4, ne yapmaya çalıştığınız, uzak bir bilgisayara yönetici olarak erişen, Windows'ta yönetici erişimi gerektirir. Bu size saçma gelse de, bir Windows ağını yönetmek zorunda olanlar için mükemmel bir anlam ifade ediyor.
John Gardeniers

4
@John: Bir programı kendi hesabına çalıştırmanın "idari" si nedir?
HC4 - Monica

2

Hayır, faydalı bir şekilde değil. Neden bunu yapmak ve yönetici olmak istemesin?


2
Etki Alanı Yöneticinizden bunu sizin için yapmasını isteyin. Yaptığın şey balık olmadıkça, hangisi sorun olmaz?
Safado

2
Etki Alanı Yöneticimden benim için ne yapmasını isteyin? Yönetici olmayan hesabı kullanarak makineye uzak masaüstünü kullanarak ve işlemi o hesap altında çalıştırarak, işlemi zaten çalıştırabilirim, yani işlemin yürütülmesi için yönetici ayrıcalıklarına gerek yok. Bunu sadece makineye uzak masaüstüne yapmak yerine komut satırından yapabilmek istiyorum.
HC4 - Monica

1
Ssh'yi yönetici hakları olmadan bir Windows Server'a kurmak mümkün müdür? Eğer öyleyse, beni bir bağlantıya yönlendirir misiniz? OpenSSH'yi denedim ancak yönetici ayrıcalıkları gerektiriyor.
HC4 - Monica

1
@ tony roth: Linux'ta bir SSH arka plan programı çalıştırmak için yükseltilmiş izinlere ihtiyacınız yoktur. Ayrıcalıklı bir bağlantı noktasında çalıştırmak için yükseltilmiş izinlere ihtiyacınız var (0-1023). Hem istemciyi hem de sunucuyu, herhangi bir makinede yükseltilmiş izinlere gerek olmadan ayrıcalıklı olmayan bir bağlantı noktası kullanacak şekilde yapılandırabilirsiniz.
HC4 - Monica

2
Aslında, SSSS arka planını ayrıcalıklı olmayan bir bağlantı noktasında çalıştırarak, OpenSSH'yi Windows sunucusunda herhangi bir yönetici ayrıcalığı olmadan kurmayı başardım. Önce Kutsal Sysadmins’e danışmadan işimdeki verimliliğimi arttırma girişimi benimseme cesaret edince beni alçaltın.
HC4 - Monica


0

Çözüm, iş istasyonunuzdaki bir programda uzak masaüstünüze giriş yapmak için bir AutoIT komut dosyası kullanmak olacaktır. "Başlatma" klasörünüzün işleminizi bir toplu komut dosyası veya başka bir AutoIT komut dosyası ile yürütmesini sağlayın (böylece başka işler yaparsanız iptal edebilirsiniz). Bu komut satırı değil, ancak çalışmanızı sysadmin'inizin verdiği parametreler dahilinde otomatikleştiriyor. Umarım yardımcı olur.


-1

Muhtemelen bunu yapmanın bir yolu vardır. Muhtemelen makinedeki WMI izinlerini düzenlemek kadar basittir. Bu mümkün değilse, WinRM gibi bir şey kullanmak kesinlikle işe yarar.

Bunların hepsi gerçekte sizin içindir. Makineye hiç yönetici erişiminiz yok. Bu nedenle, bunun gerçekleşmesi için gereken değişikliklerden hiçbirini yapamazsınız. Bunu, onun etrafından dolaşmanıza yardım etmemizi istemek yerine, sysadmin'inizle çözmelisiniz. Bir şeyi çok net bir şekilde hatırlayın, burada çoğumuz sistem yöneticileriyiz ve etrafımızda dolaşmaya çalışan kullanıcıların hoşuna gitmiyor. Bu bizi sistem yöneticilerinde dolaşma denemenize yardımcı olma ihtimalini arttırmaz.


2
Hiçbir şeyi "dolaşmaya" çalıştığımı anlamıyorum. Sistem yöneticileri bu makinede işlemleri çalıştırmamı istiyor, aksi halde içine masaüstünü uzak tutamazdım. Tek istediğim, uzak masaüstü GUI'si yerine komut satırını kullanarak işlemi yürütmenin bir yolu. Şimdi gidip sistem yöneticilerini bu konuda rahatsız edebilirim ya da basitçe kendim yapmanın bir yolunu bulabilirim. Profesyonel sysadmins topluluğunun bana ders vermeye değil, bana yardım etmeye çalışacağını düşündüm.
HC4 - Monica

@HighCommander - Cevap, sistem yöneticilerinin size bu yeteneği sağlamaları gerektiğidir. Makinede idari haklarınız olmadığı için kendiniz yapamazsınız. Bunu gerçekten onaylarlarsa, onlardan yapmanız gerekenleri yapabilmeniz için gereken hakları size vermelerini isteyin.
Jason Berg

-1

`const string subkey =" Yazılım \ Sysinternals \ PsExec ";

        if (Environment.Is64BitOperatingSystem)
        {
            // For 64 Bit PC
            RegistryKey registryKey64 = RegistryKey.OpenBaseKey(RegistryHive.CurrentUser, RegistryView.Registry64);
            RegistryKey NDPKey64 = registryKey64.OpenSubKey(subkey);
            if (NDPKey64 != null)
            {
                Registry.CurrentUser.OpenSubKey(subkey, true).SetValue("EulaAccepted", 1, RegistryValueKind.DWord);
            }
            else
            {
                RegistryKey regKey64 = registryKey64.OpenSubKey("Software", true);
                regKey64.CreateSubKey("Sysinternals\\PsExec", RegistryKeyPermissionCheck.ReadWriteSubTree);
                Registry.CurrentUser.OpenSubKey(subkey, true).SetValue("EulaAccepted", 1, RegistryValueKind.DWord);
            }
        }
        else
        {
            //For 32 bit PC
            RegistryKey registryKey32 = Registry.CurrentUser.OpenSubKey(subkey);
            if (registryKey32 != null)
            {
                Registry.CurrentUser.OpenSubKey(subkey, true).SetValue("EulaAccepted", 1, RegistryValueKind.DWord);
            }
            else
            {
                RegistryKey regKey32 = Registry.CurrentUser.OpenSubKey("Software", true);
                regKey32.CreateSubKey("Sysinternals\\PsExec", RegistryKeyPermissionCheck.ReadWriteSubTree);
                Registry.CurrentUser.OpenSubKey(subkey, true).SetValue("EulaAccepted", 1, RegistryValueKind.DWord);
            }
        }`

4
Kendinizi sistemin dikkatine sunmanın kesin bir yolu, eski sorulara aynı cevapları vermektir. Sadece açıklama olmadan kod atma ya da büyük değil. Lütfen cevaplarınızı, kodun ne yaptığına ve OP sorununun nasıl çözüldüğüne ilişkin bir açıklama ile güncelleyin.
user9517

1
Tamam, bazen yüklü olsa da PsExec olayı istendiğinde diğer exes'leri çağırmaz. Sorun, EulaAccepted DWORD değerini 1 olarak ayarlamakla ilgili. Bu sorunu tartışan bir sayfa bulamadım, buraya eklendi.
Shyam

-1

Neden biri sadece bunun mümkün olmadığını söylemiyor? Bu sunucuya RDP koyarsam erişebileceğim benzer bir şey yapmam gerekiyor (Remote Exec SAS Programı), yani sunucuya oturum açma erişimim var. Kaynak kod klasörüne dosya sistemi erişimim var ve SAS'ı çalıştırmak için erişim).

Hiçbir sysadmin haklı aklı bana sadece uzaktan çalıştırmak için o kutu üzerinde tam yönetici hakları vermeyecek. Temel olarak PSTools, gerçek BT ​​sistem çözümlerinin dağıtılması için kullanılmak üzere tasarlanmamış bir sysadmin aracıdır.


1
Bu rant, soruyu hiç cevaplamıyor.
Flup

Aslında öyle. +1
Amit Naidu
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.