[Çözüldü] C de pc ye reset attırmak

Başlatan juanito, 25 Mart 2009 - 17:40:05

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

juanito

Selam c de reset atmak istiyorum ama yapamadım basit bir mantık şöyle düşündüm ama yeni başladığım için çözemedim.

#include <stdlib.h>

#include <stdio.h>

#include <unistd.h>



int main(){


    pid_t pid;

    pid = fork();



    if (pid == 0) {



execv("/sbin/reboot");
}




}
nasıl çözecem bilmiyorum sanırım su şifresini girmem gerekiyor.
Ve basit bir ölümcül kilitlenme kodu yazmak istiyorum. Herkese teşekkürler

mtilhan

execv komutu ile normalde konsoldan verdiğiniz komutu mu veriyorsunuz?
You're beatiful but you will never be mine.
Ash nazg durbatulûk, ash nazg gimbatul, ash nazg thrakatulûk agh burzum-ishi krimpatul.

juanito

evet bunu programda nasıl işletirim ?

mtilhan

You're beatiful but you will never be mine.
Ash nazg durbatulûk, ash nazg gimbatul, ash nazg thrakatulûk agh burzum-ishi krimpatul.

juanito

yani şöyle mi yapmak gerekiyor

execl("/bin/sh","/bin/sh", "sudo shutdown -h now",NULL);

böyle olsa da şifre verilmesi gerekir mi gerekiyorsa nasıl olacak son hali böyle

int main(){
   pid_t pid;
   pid=fork();
   if(pid==0)
   {
   execl("/bin/sh","/bin/sh","-c","shutdown -r now",NULL);
   getchar();
   return 0;
}

mtilhan

Bilgisayara elinde sonunda şifre girilmesi gerekir tabi eğer sudo komutunda oto olarak şifre kabul etme etkin değilse.
You're beatiful but you will never be mine.
Ash nazg durbatulûk, ash nazg gimbatul, ash nazg thrakatulûk agh burzum-ishi krimpatul.

bytan

Aklıma gelen iki ihtimal var:


  • Uygulamayı çalıştırırken root haklarını kullandırmak. Sudo kullanmaya zorlamak.
  • sudoers dosyasında oynama yaparak shutdown komutunun kullanımına izin vermek

Umut en büyük kötülüktür; işkenceyi uzatır. - F.N.


Bir şey ne ise odur, bu kadar. Öyleyse, iki şey arasında bağdaşıklık varsa, bu aralarında iletişim kuruyorlar demek değildir.
"... kavrayışını bilgi ile derinleştir ..."
PF @ ST

juanito

evet denedim biraz ama olmadı konsoldan yapınca şifre istiyor şifreyi girince restart atıyor ama program da şifreyi ekleyemedik. programa root yetkisi versek nasıl olur ve nasıl verebiliriz

bytan

Programa root yetkisi vermek için sudo kullandırmak yeterli:

sudo program_adı
Umut en büyük kötülüktür; işkenceyi uzatır. - F.N.


Bir şey ne ise odur, bu kadar. Öyleyse, iki şey arasında bağdaşıklık varsa, bu aralarında iletişim kuruyorlar demek değildir.
"... kavrayışını bilgi ile derinleştir ..."
PF @ ST

juanito

salih@juanito:~$ gcc reset.c -o reset.out
salih@juanito:~$ sudo reset.out
[sudo] password for salih:
sudo: reset.out: command not found
salih@juanito:~$

acaba işletim sistemimden kaynaklanan bir hata olabilir mi

bytan

sudo ./reset.out

İşletim sisteminde sorun yok.
Umut en büyük kötülüktür; işkenceyi uzatır. - F.N.


Bir şey ne ise odur, bu kadar. Öyleyse, iki şey arasında bağdaşıklık varsa, bu aralarında iletişim kuruyorlar demek değildir.
"... kavrayışını bilgi ile derinleştir ..."
PF @ ST

juanito

ilgin için teşekkür ederim işe yaradı. aslında vize sorularımızdan biriydi katkılarınızla tamamlayabildik teşekkür ederiz.

bytan

Puanın yarısını alırım.  :)

Konuyu etiketleyip kapatıyorum.
Umut en büyük kötülüktür; işkenceyi uzatır. - F.N.


Bir şey ne ise odur, bu kadar. Öyleyse, iki şey arasında bağdaşıklık varsa, bu aralarında iletişim kuruyorlar demek değildir.
"... kavrayışını bilgi ile derinleştir ..."
PF @ ST

juanito

hakkındır al valla teşekkürler tekrar :)

bytan

Umut en büyük kötülüktür; işkenceyi uzatır. - F.N.


Bir şey ne ise odur, bu kadar. Öyleyse, iki şey arasında bağdaşıklık varsa, bu aralarında iletişim kuruyorlar demek değildir.
"... kavrayışını bilgi ile derinleştir ..."
PF @ ST