.Sudo_as_admin_successful oluşturulmasını durdurmak mümkün mü?


45

Ne zaman bir komut ile çalıştırsam, giriş dizinimde sudobir dosya .sudo_as_admin_successfuloluşturulur. Söyleyebildiğim kadarıyla, bash başlangıçta basılan bu iletiyi devre dışı bırakmak için bu yalnızca var:

To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.

İlgili iletiyi yorumlayarak bu iletiyi durdurmak mümkün /etc/bash.bashrc, ancak sudoyine de giriş dizinimde sinir bozucu bir dosya oluşturuyor.

Bu web sayfası dosya kendinizi çıkararak oluşturulan durdurabilirsiniz düşündürmektedir admin- grubundan, ama ben böyle bir grupta değilim idben olduğumu gösterir josh, adm, cdrom, sudo, dip, plugdev, lpadminve sambashare, ve admindeğil /etc/group.

Bu dosyanın oluşturulmasını durdurmanın bir yolu var mı?


Bunun, bu sorunun bir kopyası olmadığına inanıyorum , çünkü bash ile basılan bildirimin, yarattığı dosyayı durdurmak mümkün olmasa da, ortadan kaldırılması mümkün mü diye soruyordu sudo.


1
Bu kadar sinir bozucu olan ne? Zorlukla yer kaplar.
edwinksl

12
@ edwinksl Başka bir şey bulmaya çalışırken görsel karışıklık. Asla değiştirmediğim için varlığının farkında olmamalıydım.
Josh,

5
ve bu yüzden bir var. önde. Neden görünümlerinize gizli dosyalar ekliyorsunuz?
Rinzwind

11
En azından bu dosya kendini .config veya .local konumuna getirmelidir. Özellikle ev dizinindeki gizli dosyalara göz atmamız gerekmiyor. Bu yüzden, .config / .local icat edilmedi, çünkü bu dosyanın ana sayfa dizinindeki saçma aşırı yük, muhtemelen en kırılgan örneğidir?
NeilG

1
Distro savaş başlatmama (askubuntu.com'da bu soruluyor), ancak iki kez kontrol ettim: Bu aslında Ubuntu'nun akıntıya giren Debian dağıtımında bulunmayan bir şey. Muhtemelen "kullanıcı dostu" olarak eklendi ama OP gibi ben de bu rahatsız edici gibi rastgele dosyaların varlığını buluyorum.
Per Lundberg,

Yanıtlar:


38

plugins/sudoers/sudoers.cKaynak kod dosyasının aşağıdaki bölümüne dayanarak, işlem öncesi makronun sudotanımını değiştirmeden, yeniden derlemeden mümkün görünmüyor USE_ADMIN_FLAG.

Ayrıca her iki grup üyeliği için kontrol ediyor unutmayın admin ve sudo . Değişikliği kontrol etmedim, ancak sudoayrıcalıklı kullanıcılar için varsayılan grup haline geldiğinde ikinci kontrolün eklendiğinden şüpheleniyorum - belki de dosya adı hala adminuyumluluk için kullanılıyor.

   1229 #ifdef USE_ADMIN_FLAG
   1230 static int
   1231 create_admin_success_flag(void)
   1232 {
   1233     struct stat statbuf;
   1234     char flagfile[PATH_MAX];
   1235     int len, fd = -1;
   1236     debug_decl(create_admin_success_flag, SUDOERS_DEBUG_PLUGIN)
   1237
   1238     /* Check whether the user is in the admin group. */
   1239     if (!user_in_group(sudo_user.pw, "admin") &&
   1240         !user_in_group(sudo_user.pw, "sudo"))
   1241         debug_return_int(true);
   1242
   1243     /* Build path to flag file. */
   1244     len = snprintf(flagfile, sizeof(flagfile), "%s/.sudo_as_admin_successful",
   1245         user_dir);
   1246     if (len <= 0 || (size_t)len >= sizeof(flagfile))
   1247         debug_return_int(false);
   1248
   1249     /* Create admin flag file if it doesn't already exist. */
   1250     if (set_perms(PERM_USER)) {
   1251         if (stat(flagfile, &statbuf) != 0) {
   1252             fd = open(flagfile, O_CREAT|O_WRONLY|O_EXCL, 0644);
   1253             if (fd != -1)
   1254                 close(fd);
   1255         }
   1256         if (!restore_perms())
   1257             debug_return_int(-1);
   1258     }
   1259     debug_return_int(fd != -1);
   1260 }
   1261 #else /* !USE_ADMIN_FLAG */
   1262 static int
   1263 create_admin_success_flag(void)
   1264 {
   1265     /* STUB */
   1266     return true;
   1267 }
   1268 #endif /* USE_ADMIN_FLAG */

Tabii ki yeniden derlemeden mümkün sudo! Sadece dışarı çıkın objdump -d, bu çeke dahil olan mantığı izleyin, ardından bazı hex hexdumpameliyatları için güvenilir hex editörünüze (ya da düzenli bir metin editörünün bir tutam olarak yapacağı) devam edin. Ne yanlış gidebilir ki?
mtraceur
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.