.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.