01/10/2018, 14:20

Vấn đề đường dẫn file

Có gì sai trái ở đây không vậy mọi người Cao nhân cho em xin ý kiến …

Khoa Nguyen viết 16:24 ngày 01/10/2018

Windows không cho phép kí tự : trong tên file. Nên theo mình nghĩ, khả năng cao đây là một kí tự tương tự : trong Unicode

Đây là danh sách các kí tự nhìn giống : nhưng mà không phải là ASCII :

https://unicode-search.net/unicode-namesearch.pl?term=COLON

Dark.Hades viết 16:21 ngày 01/10/2018

chắc là compile kiểu remote debug trên linux rồi mang qua windows

Vuio viết 16:24 ngày 01/10/2018

Code trên Free Pascal. Copy 1 file .exe có sẵn vào D::Virus.exe rồi run nó.
Không biết các ngôn ngữ khác như thế nào.
(Dấu hai chấm là chính xác nhé, Free Pascal không gõ được unicode.

Khoa Nguyen viết 16:29 ngày 01/10/2018

Ha. Thế thì mình không biết. Không có Windows để test nên bó tay. Nếu nó chạy thì nó cứ chạy thôi

*grab popcorn* viết 16:21 ngày 01/10/2018

Gửi file pas đó sang cho mọi người xem. Nhiều khi nó là unicode không chừng.

Code bằng vscode, compile bằng tay thì nó ra lỗi ntn. Bỏ : đi lại bình thường như cân đường hộp sữa.

uses crt, sysutils;
var
  f, f1: file of char;
  c:char;
begin
  clrscr;
  assign(f, 'D:\Code\Pascal\a.exe');
  reset(f);
  assign(f1, 'D:\Code\Pascal\:b.exe');
  rewrite(f1);
  while not eof(f) do
  begin
    read(f, c);
    write(f1, c);
  end;
  close(f1);
  close(f);
end.
Vuio viết 16:31 ngày 01/10/2018

Chỉ lưu được trong D::b.exe thôi anh. Không lưu trong thư mục được

*grab popcorn* viết 16:21 ngày 01/10/2018

Đúng thiệt nha :o
Ngộ ghê, dùng process explorer explore thì nó ko ra file đó luôn.

*grab popcorn* viết 16:26 ngày 01/10/2018

Mò ra rồi đây
Cảm ơn @thanhtrung2314 cho mượn acc SO để hỏi nhé.

Ngắn gọn: Alternative Data Streams.
Xem bằng cách gõ
dir /R
trong cmd

stackoverflow.com
Grak T

How can this code generate a file with a filename containing a colon on Windows?

windows, security, pascal, internal
asked by Grak T on 05:07PM - 30 Jan 18

Xem thêm:
http://techgenix.com/alternate_data_streams/
https://msdn.microsoft.com/en-us/library/aa364404

Và cuối cùng cho mình xin phép hỏi bạn một câu, là đoạn code trên bạn lấy ở đâu thế? Vì mình không nghĩ tự nhiên mà bạn nghĩ ra được. Cũng như đặt một filename rất ư là nhạy cảm và dùng kỹ thuật ẩn malware thời Thánh Gióng này.

Vuio viết 16:21 ngày 01/10/2018

Hồi hôm kia đang code Pascal, nhập nhầm dấu hai chấm vào đường dẫn nhưng không thấy báo lỗi, vẫn run bình thường, hôm nay mò lại post bài lên hỏi

*grab popcorn* viết 16:25 ngày 01/10/2018

Hehe, mình cứ tưởng bạn lấy ở chỗ nào về malware nên hỏi đặng mò vô xem ấy mà.

Dù sao cũng cảm ơn vì câu hỏi :3

明玉 viết 16:27 ngày 01/10/2018

Đây có phải 1 lỗ hổng bảo mật của Windows không ?

Khoa NTA viết 16:35 ngày 01/10/2018

Cảm ơn chụy Gồng nhé. Em dùng mấy cái công cụ GNU trên Windows cũng xài được này. Nhưng nay mới giải thích được (hồi đó xài thì xài thôi chứ không giải thích được) Em thường dùng nó vào việc đổi tên thư mục chứa cái-mà-ai-cũng-biết-là-gì-đấy ( ͡° ͜ʖ ͡°) để tránh việc người không phận sự lỡ táy máy vào máy của em.

@MeigyokuThmn: cái này là tính năng nhé ( ͡° ͜ʖ ͡°)

*grab popcorn* viết 16:24 ngày 01/10/2018

Cái term nào ngon ế. Mình xài cmder nó hú lỗi chả được như hình :<

Henry viết 16:33 ngày 01/10/2018

Lên stack hỏi. EZ

Khoa NTA viết 16:34 ngày 01/10/2018

Hehe xài bộ công cụ PentestBox rồi có cái term đó luôn (đã chỉnh lại chút xíu cho hợp nhãn) Chính xác là cái terminal đó của ConEmu

Florastamine viết 16:29 ngày 01/10/2018

Mình lại chả muốn bọc cmd.exe lại nên bê nguyên con shell *nix qua luôn (MSYS2)

Bài liên quan
0