Linux sunucusunu örtmek için kabuk komut dosyasını kullanın

Bir Linux sunucusundaki herhangi bir şeyi kontrol etmek, yok etmek veya elde etmek için Shell komut dosyalarını kullanan bilgisayar korsanları, bazı akıllı saldırı yöntemleriyle büyük değer kazanabilir, ancak çoğu saldırı da izler bırakır. Elbette bu izler, Kabuk betikleri gibi yöntemlerle de gizlenebilir.

Bir saldırıya ilişkin kanıt arayışı, dosyanın değiştirilme tarihi gibi saldırganın bıraktığı izlerle başlar. Her Linux dosya sistemindeki her dosya, değişiklik tarihini kaydeder. Sistem yöneticisi, dosyanın en son değişiklik zamanını keşfettiğinde, onlara sistemin saldırı altında olduğunu bildirir ve sistemi kilitlemek için harekete geçer. Neyse ki, değişiklik zamanı kesinlikle güvenilir bir kayıt değildir. Değişiklik zamanının kendisi kandırılabilir veya değiştirilebilir. Bir kabuk betiği yazarak, bir saldırgan değişiklik zamanını yedekleme ve geri yükleme işlemini otomatik hale getirebilir.

Adımlar

1. Adım: Zaman damgasını görüntüleyin ve değiştirin

Çoğu Linux sistemi, zaman damgasını hızlı bir şekilde görüntülememizi ve değiştirmemizi sağlayan bazı araçlar içerir. En etkili olanı, yeni dosyalar oluşturmamıza ve bir dosya / dosya grubuna en son "dokunduğumuz" zamanı güncellememize izin veren "Dokunma" dır.

dokunma dosyası

Dosya yoksa, yukarıdaki komutu çalıştırmak "dosya" adında yeni bir dosya oluşturur; zaten varsa, bu komut değişiklik tarihini mevcut sistem saatine günceller. Aşağıdaki dize gibi bir joker karakter de kullanabiliriz.

dokunma *

Bu komut çalıştırdığı klasördeki her dosyanın zaman damgasını güncelleyecektir. Bir dosyayı oluşturduktan ve değiştirdikten sonra, ayrıntılı bilgilerini görüntülemenin birkaç yolu vardır: Birincisi "stat" komutudur.

stat dosyası

Çalışan istatistik, erişim, değişiklik veya güncelleme zaman damgaları dahil olmak üzere dosya hakkında bazı bilgiler döndürür. Bir grup dosya için, her dosyanın zaman damgasını görüntülemek için ls parametresini kullanabilirsiniz, "-l" veya "long" kullanın, bu komut çıktı zaman damgası da dahil olmak üzere ayrıntılı dosya bilgilerini listeler.

ls l

Artık geçerli zaman damgasını ayarlayabilir ve ayarlanmış zaman damgasını görüntüleyebilir veya özel bir zaman damgası tanımlamak için dokunmayı kullanabilirsiniz, "d" işaretini kullanabilir, tarihi tanımlamak için yyyy-aa-gg biçimini kullanabilir ve ardından saati hemen ayarlayabilirsiniz Saatleri, dakikaları ve saniyeleri aşağıdaki gibidir:

touch -d "2001-01-0120:00:00" dosyası

Değişiklik bilgilerini ls komutuyla onaylayın:

ls -l dosyası

Bu yöntem, bireysel zaman damgalarını değiştirmek için uygundur.Bu yöntem, sunucudaki işlemlerin izlerini gizlemek için çok etkili değildir. İşlemi otomatikleştirmek için kabuk komut dosyaları kullanılabilir.

Adım 2: Kabuk Komut Dosyasını Düzenleyin

Bir komut dosyası yazmaya başlamadan önce, hangi işlemlerin yapılması gerektiğini düşünmeniz gerekir. Sunucudaki izleri gizlemek için saldırganın klasörün orijinal zaman damgasını bir dosyaya yazması gerekir ve aynı zamanda herhangi bir değişiklik yaptıktan sonra orijinal dosyaya geri dönebilir.

Bu iki farklı işlev, kullanıcının girdisine veya parametrelerine göre tetiklenecektir.Betik, karşılık gelen işlevleri bu parametrelere göre yürütecektir.Aynı zamanda, hataları ele almak için bir yola ihtiyacımız var. Kullanıcının girdisine göre, üç olası işlem gerçekleştirilecektir:

Parametre yok - bir hata mesajı döndürür;

Zaman damgasını kaydedin - zaman damgasını dosyaya kaydedin;

Zaman damgasını geri yükle-kaydetme listesine göre dosyanın zaman damgasını geri yükle.

Komut dosyaları oluşturmak için iç içe geçmiş if / veya ifadeleri kullanabilir veya her işlevi koşullara göre kendi "if" ifadesine atayabilir ve bir metin düzenleyicide veya nano'da komut dosyaları yazmaya başlamayı seçebiliriz.

3. Adım: Komut dosyasını başlatın

Nano'yu komut satırından başlatın ve aşağıdaki komutla "timestamps.sh" adlı bir komut dosyası oluşturun:

nano timestamps.sh

Ardından aşağıdaki komutları yürütün:

#! / bin / bash

eğer ; o zaman

echo "Bir kaydetme (-s) veya geri yükleme (-r) parametresini kullan."

çıkış 1

fi

Bu dosyayı kaydetmek için nano'da Ctrl + O tuşlarına basın ve chmod komutuyla çalıştırılabilir bir komut dosyası olarak işaretleyin.

chmod + x timestamps.sh

Ardından, parametresiz bir hata mesajı döndürme işlevini test etmek için komut dosyasını çalıştırın. Eğer betik yankı ifademizi döndürürse, sonraki koşula geçebiliriz.

./timestamps.sh

4. Adım: Zaman damgasını dosyaya yazın

İf ifadesinin koşulunu tanımlayın, "-s" kaydetme işlevini yürütmek anlamına gelir:

ise; o zaman

fi

Elbette, kaydetmeyi planladığınız zaman damgası dosyasının var olup olmadığını kontrol etmeniz gerekir. Varsa, tekrarlanan veya hatalı girişi önlemek için onu silebiliriz (zaman damgaları adlı dosya). Aşağıdaki komutu kullanın:

rm -f zaman damgaları;

Ardından, tüm dosyaları ve bu girdiyi daha sonra temizlememize yardımcı olmak için sed gibi başka bir programa verilebilecek değişiklik zamanlarını listelemek için "ls" komutunu kullanın.

ls l

Aşağıdaki görüntüleme sonuçları genellikle görünür:

-rw-r - r-- 1 kullanıcı kullanıcı 0 Ocak 12017 dosya

Zaman damgasını kaydetmek için sadece yıl, ay, gün ve dosya adına ihtiyacımız var. Aşağıdaki komut "Jan" dan önce bilgileri temizleyebilir:

ls -l dosyası | sed's / ^.* Jan / Jan / p '

Bu, programımızın ihtiyaç duyduğu bilgileri gösterir, ancak ay biçimini bir sayı biçimine değiştirmemiz gerekir:

ls -l dosyası | sed's / ^.* Jan / 01 / p '

Tüm ayları rakamlarla değiştirin:

ls -l | sed -n's / ^. * Oca / 01 / p; s / ^. * Şubat / 02 / s / ^. * Mart / 03 / s / ^. * Nisan / 04 / s; s / ^. * Mayıs / 05 / s; s / ^ .* Haziran / 06 / s / ^. * Tem / 07 / s; s / ^. * Ağu / 08 / p; s / ^. * Eylül / 09 / p; s / ^. * Ekim / 10 / s; s / ^. * Kasım / 11 / s; s / ^. * Aralık / 12 / p; '

Bir klasörde çalıştırın ve sonucu aşağıdaki şekilde gösterildiği gibi göreceğiz:

Ardından çıktı sonucunu " > > "Zaman damgaları" adlı bir dosyaya:

do echo $ x | ls -l | sed -n / ^ .* Oca / 01 / s; s / ^ .* Şubat / 02 / s; s / ^. - Mart / 03 / p; s / ^. * Nisan / 04 / s; s / ^. * Mayıs / 05 / s; s / ^. * Haz / 06 / s / ^. * Tem / 07 / s; s / ^. * Ağu / 08 / p ; s / ^.* Eylül / 09 / p; s / ^. * Ekim / 10 / s; s / ^. * Kasım / 11 / s; s / ^.* Aralık / 12 / p; ' > > zaman damgaları

Bu noktada betiğin ilk iki işlemi tamamlanmış olur ve sonuçlar şu şekilde gösterilir:

Aşağıdakiler, test komut dosyasını işaretlemek için "-s" kullanabilir ve kaydedilen bilgileri kontrol etmek için cat kullanabilir:

./timestamps.sh s

kedi zaman damgaları

5. Adım: Dosyanın zaman damgasını geri yükleyin

Orijinal zaman damgasını kaydettikten sonra, başkalarının dosyanın değiştirildiğini fark etmemesi için zaman damgasını geri yüklemeniz gerekir. Aşağıdaki komutu kullanabilirsiniz:

$ 1 = "-r" ise; o zaman

fi

Ardından, metin dosyasının içeriğini iletmek ve satır satır çalıştırmak için aşağıdaki komutu kullanın:

kedi zaman damgaları | okunurken satır

yapmak

bitti

Ardından, dosya verilerinin kullanımını kolaylaştırmak için bazı değişkenler atayın:

AY = $ (echo $ satır | cut -f1 -d \);

GÜN = $ (echo $ satır | kes -f2 -d \);

FILENAME = $ (echo $ satır | cut -f4 -d \);

YIL = $ (echo $ satır | kes -f3 -d \)

Bu dört değişken kaydedilen zaman damgası dosyasında tutarlı olsa da, zaman damgası geçen yıl meydana gelmişse, yıl yerine yalnızca zamanı gösterecektir. Mevcut yılı belirlemeniz gerekiyorsa, bunu komut dosyası yazmak için yıl olarak atayabilir veya yılı sistemden döndürebilir ve takvimi görüntülemek için cal komutunu kullanabiliriz.

Ardından, yalnızca istenen yıl bilgilerini görüntülemek için ilk satırı alın:

GÜNCEL YIL = $ (cal | head -1 | cut -f6- -d \ | sed's / // g ')

Tüm değişkenleri tanımladıktan sonra, dokunma sözdizimini kullanarak dosyanın zaman damgasını biçimlendirilmiş tarihe göre güncellemek için "if else" ifadesini kullanabilirsiniz:

touch -d "2001-01-0120:00:00" dosyası)

Her seferinde iki nokta üst üste bulunduğundan, işlemi tamamlamak için aşağıdaki "ifelse" ifadesini kullanabilirsiniz. Genel işlem aşağıdaki şekilde gösterilmiştir:

; o zaman

dokunun -d $ CURRENTYEAR- $ AY- $ GÜN \ $ YEAR: 00 $ FILENAME;

Başka

-d "" $ YIL- $ AY- $ GÜN "" $ FILENAME;

fi

6. Adım: Komut dosyasını kullanın

Kullanılan komutlar esas olarak aşağıdaki gibidir:

./timestamps.sh -s dosya zaman damgasını kaydet

touch -d "2050-10-1210:00:00" * Dizindeki tüm dosyaların zaman damgasını değiştirin

ls -a Değiştirilen dosyayı onaylayın

./timestamps.sh -r dosyanın orijinal zaman damgasını geri yükleyin

Son olarak, dosyanın zaman damgasının önceki yedeklemenin zaman damgasıyla tutarlı olup olmadığını kontrol etmek için tekrar "ls -a" komutunu çalıştırabilirsiniz ve aşağıdaki şekilde gösterildiği gibi tüm komut dosyası yürütülür:

sonuç olarak

Bu komut dosyası yalnızca sunucuya saldırdıktan sonra kalan bazı izleri temizlemek için kullanılır. İzleri gizlemek için bilgisayar korsanları, sunucuya belirli saldırılar gerçekleştirirken kullanılan her yöntemi ve sunucuyu işgal ettikten sonra izlerini nasıl gizleyeceklerini dikkatlice düşünmelidir.

Yukarıdaki giriş sayesinde, zaman damgalarının da "sorumlu" olduğunu öğrendik, bu nedenle sistem yöneticileri, herhangi bir anormallik yok gibi görünse de, günlüklerinin ve koruma önlemlerinin çoğunun manipüle edilebileceğini anlamalıdır.

70.000 / 18-inç jantlar / elektronik vites kolu Haval H2 Chuangxiang Edition, gençler için ilk otomobil olabilir mi?
önceki
8 Ağustos'ta BlackBerry geri geliyor! 6666 yuan ön satış, parmaklar ve klavye arasındaki yakın teması yeniden yaşayın
Sonraki
AI Chip Zirvesi geliyor! Kurumlar: Cips kısaltılmaya devam edecek 8 hisse senedi hala fırsatlara sahip
Dingil mesafesi 2,7 metreyi aşıyor, tüm sistem standart olarak lastik basıncı izleme ile donatılmıştır, iki LCD ekran, 80.000'den fazlası H6'yı kesin olarak terk eder
1.5T + CVT'li Baojun 530'a ne dersiniz? Satın alabilir misin
Günlük limit devam ettirme: Jiadu Technology'nin ikinci bağlantı panosu, tek boynuzlu at günlük limit dalgasını tetikler. Bu hisse senetlerine odaklanılması gerekir
Araba logosunun engellenmesi, milyon dolarlık lüks bir otomobil, Palamera'dan daha yakışıklı, otonom V6 hibrit, yerli üretim
Hangi SUV satın alınırsa, bağımsız markaların bu 4100.000 sınıfı yüksek kaliteli sedanı güvenilirdir
Ejderha ve Kaplan Listesi: Kurumlar arka kapı konseptini satın almaya, mutlu alışveriş yapmaya devam ediyor ve iki katına çıkan bir trendden çıktı.
Şubat ayı ortak girişim orta seviye otomobili hakkında bir cümle yorumu: bağımsız markalar tarafından birer birer aşıldı, Fransızca ve Korece sadece başlangıç
2,80 metrelik dingil mesafesi ve standart sunroof üç bölgeli kliması ile Geelynin en aşağılayıcı otomobili, muhteşem görünümü nedeniyle kullanımdan kaldırıldı
Lahana turşusu ve kurbağa dolgusu, peynir ve karides dolgusu, ay keki veya turta? Bu ne be?
LOLG2, Mithy ve Zven ikilisinin serbest ajan olduklarını ve G2'nin bir sonraki OG olabileceğini resmen doğruladı!
Audi'nin yeni A4 Allroad casus fotoğrafları ortaya çıktı, güveç tozu favorisi
To Top