Mặc dù đã lock nhưng firmwave vẫn có thể được đọc ra. Vậy các cao thủ Nam - Bắc có cao kiến gì phòng chống vụ này không?
Thông báo
Collapse
No announcement yet.
Phòng chống hack firmwave
Collapse
X
-
Nguyên văn bởi BinhAnh Xem bài viếtMặc dù đã lock nhưng firmwave vẫn có thể được đọc ra.
Các cao nhân có thể chỉ bảo cho em hiểu cách thức đặt chế độ lock khi nạp được không (cho các loại vxl 89x,PICx,AVRx,....).|
Comment
-
Tui đưa thử 1 giải pháp :
* MCU phải luôn được cấp nguồn, tức là phải có battery.
* Power supply phải lọc thật tốt, tránh reset hoặc hang.
* MCU khi được cấp điện lần đầu (khi xuất xưởng) sẽ tiến hành đọc 1 đoạn code bí mật (lưu trong 1 con 24C04 chẳng hạn, hoặc EEPROM built-in), nếu đúng sẽ tiến hành xóa toàn bộ con 24C04 rồi chạy chương trình như bình thường.
Như vậy nếu chép được firmware mà không dò được code thì vẫn không chạy !Imagine all the people
Living life in peace...
Comment
-
Nguyên văn bởi toymaker Xem bài viếtTui đưa thử 1 giải pháp :
* MCU phải luôn được cấp nguồn, tức là phải có battery.
* Power supply phải lọc thật tốt, tránh reset hoặc hang.
* MCU khi được cấp điện lần đầu (khi xuất xưởng) sẽ tiến hành đọc 1 đoạn code bí mật (lưu trong 1 con 24C04 chẳng hạn, hoặc EEPROM built-in), nếu đúng sẽ tiến hành xóa toàn bộ con 24C04 rồi chạy chương trình như bình thường.
Như vậy nếu chép được firmware mà không dò được code thì vẫn không chạy !
Nếu so sánh code ID của MCU với một code ngoài nào đó phải không ạ, việc xóa code để việc thực hiện so sánh 1 lần và đảm bảo không có reset để không so sánh lần nữa !
Nhưng theo em làm thế còn dễ bị hack hơn, nếu đã đọc được firmware thì tất nhiên trong đoạn chương trình của anh sẽ còn một đoạn:
if(code đọc được==code định sẵn) {cho chạy chương trình}
Thì nó sẽ toi ở lệnh này, chỉ cần cho if(1==1) sửa thế thôi, thì chạy ngon ngay.
Comment
-
Về lý thuyết thì ***** code của VDK dễ hơn rất nhiều so với trên PC vì VDK mã lệnh ASM đơn giản và dễ đọc nên khả năng bị bẻ khóa sẽ rất cao. Các chương trình phần mềm có các đoạn mã chống ***** thường là các đoạn mã giả nhằm đánh lạc hướng cracker. Nếu như firmware không quan trọng lắm thì chỉ cần bảo vệ đơn giản như KEY hay ID của CHIP. Nếu quan trọng hơn thì có thể gán mỗi firmware(khi nạp) bằng 1 cái KEY. Khi bắt đầu chạy thì bắn ra 1 cái Console đòi: ENTER PASSWORD: ********. Dùng thuật toán mã hóa KEY và mã giả khi check KEY thì cracker cũng đã rất rất khó để phá rồi. Thuê một thằng ***** được nó thì cũng tốn vài K $
Comment
-
Vậy sau khi Password entered thì sao??? Lại:
if(Pass đọc được==Pass định sẵn) {cho chạy chương trình} chăng. Vậy thì lại vô nghĩa rồi
PT.Núi cao bởi có đất bồi
Núi chê đất thấp, núi ngồi ở đâu?
Muôn dòng sông đổ biển sâu
Biển chê sông nhỏ, biển đâu nước còn?
Comment
-
Nói chung cách chống hack đơn giản nhất là sử dụng các bảng tham chiếu . Sử dụng ramdom địa chỉ ánh xạ 2 chiều. Để khi người debug hack code thì cũng không thể tìm ra được chỗ chứa câu lệnh IF. Chúc mọi người giáng sinh vui vẻ!Cũ người mới ta!
Comment
-
Nguyên văn bởi phanta Xem bài viếtVậy sau khi Password entered thì sao??? Lại:
if(Pass đọc được==Pass định sẵn) {cho chạy chương trình} chăng. Vậy thì lại vô nghĩa rồi
PT.
nếu như dễ như thế thì ai cũng có thể trở thành cracker nổi tiếng
mấy cái đoạn mã giả của tôi nói chẳng lẽ khi dissasembly nó đều biến mất.
thường các đoạn mã check pass sẽ nằm trong 1 lệnh call (cracking for newbie)
...
call 0x43738 <--- tính pass
jnc 0x47643 <---- check nếu carry = 0 ---> false
mov a,bcda
lds xymqk
...
nếu trước lệnh call đặt 1 vài đoạn check giả, trong lệnh call đặt vài cái jump thẳng tới phương trời xa tít nứa. Rồi jump về sau lại call, rồi mov linh tinh sau rồi check jb, jnc, jnb .... linh tinh ----> debug một hồi nó cũng chán luôn.
Vì thế đã có người ví: ***** là một môn nghệ thuật, cũng như bao môn nghệ thuật khác nó đòi hỏi người chơi phải có năng khiếu, sự tìm tòi và cần mẫn ...
Comment
-
***** soft cả trên PC và MCU đều không có gì khó. Cái khó là đọc được firmware. Nếu đọc được thì mọi việc đơn giản.
To Cuongquay. Trên PC lại càng dễ vì tool rất nhiều.
MCU cũng không phải là khó.
Trên dòng MPU như 386 hay cao hơn có khó hơn đôi chút vì nó dùng bảng tham chiếu chồtan bộ ứng dụng global và local. Nhưng kẽ hở lại là debug mode rất mạnh. Nếu bị khai thác tính năng này thì cũng toi ngay.
Ví dụ về ***** soft trên PC.
(ví dụ đơn giản là bản demo cho thời gian thử 30 ngày).
Bạn chỉ cần tìm hàm thời gian trong 1 DLL ( chạy SIM thấy ngay) Nếu lười thì sau nó là je hay j gì đó sử thành jmp là OK. Không tin bạn cứ thử xem.
Với phần mềm có bảo mật cao hơn.
Ví dụ: Dùng các thông số do window lưu trong visual mem ( trên đĩa cứng). Cái này chỉ kiểm tra ngày tháng cũng đã khó. Vì nó không lấy timer hệ thống mà lấy của WINDOWS. Do vậy cần hiểu cấu trúc mà WIN đã dùng để chuyển HD thành RAM ( tổ chức như RAM nhưng trên đĩa cứng).
Còn trên MCU. Cũng không ai lại đi debug từ đầu cả. Tùy theo cách chống debug thì sẽ có cách debug tương ứng.
Ví dụ: Nếu kiểm tra bằng pass đọc từ ngoại vi. Đầu tiên tìm tới các lệnh truy cập ngoại vi. Chọn lọc sẽ được lệnh hỏi pass.
Lúc này cần xem nó xử lý ngay hay lưu vào đâu. Sau đó có cách tiếp theo.
Nếu có firmware thì cái thằng định copy đó chắc chắn nó còn thêm tính năng vào được chứ không nói đến việc bẻ khóa.
Dẫn chứng: Chúng tôi thêm tính năng gọi thẻ 1719 vào PAYPHONE của ASCOM mặc dù chỉ có file.bin. Sau khi ***** thì ngoài tính năng cũ còn thêm tính năng mới mà nguyên bản không có. Như dùng được các loại thẻ mà mình sản xuất ra hay thêm tính năng mà khách hàng yêu cầu.
Nói chung khóa chỉ phòng người ngay chứ không chống được kẻ gian.
Làm sao không khóa mà kẻ gian vẫn chịu.
1. Phải có thương hiệu khi đó copy vô ích.
2. Giá thành hợp lý ( Một số sản phẩm telecom không hiểu sao china làm cực rẻ mà tốt. Đã hỏi thử giá linh kiện cho 1K sản phẩm thì tổng giá thành linh kiện chưa kể PCB, công hàn và test mà giá đã bằng 120% giá nó bán. Lúc đó copy vô ích).
3. Chế độ hậu mãi tốt, quan hệ khách hàng tốt.
Nói chung anh em mình lo làm sản phẩm thì tốt hơn lo bị copy.Nhà sản xuất chuyên nghiệp các sản phẩm OEM cho gia dụng và công nghiệp.
Biến tần
Máy giặt
Lò vi sóng
Bếp từ.
Tủ lạnh.
Điều hòa
Comment
-
Nhưng như CQ nói nó là cả một nghệ thuật. Lập trìng cũng vậy chứ hack thì còn cao cấp hơn. Không phải cứ học là làm được mà 50% được quyết định bởi năng khiếu. Có thể người khác mất 5 phút còn mình thì không bao giờ làm được.Nhà sản xuất chuyên nghiệp các sản phẩm OEM cho gia dụng và công nghiệp.
Biến tần
Máy giặt
Lò vi sóng
Bếp từ.
Tủ lạnh.
Điều hòa
Comment
-
Nguyên văn bởi MinhHa Xem bài viếtNhưng như CQ nói nó là cả một nghệ thuật. Lập trìng cũng vậy chứ hack thì còn cao cấp hơn. Không phải cứ học là làm được mà 50% được quyết định bởi năng khiếu. Có thể người khác mất 5 phút còn mình thì không bao giờ làm được.
Comment
-
Nguyên văn bởi MinhHa Xem bài viết***** soft cả trên PC và MCU đều không có gì khó. Cái khó là đọc được firmware. Nếu đọc được thì mọi việc đơn giản.
To Cuongquay. Trên PC lại càng dễ vì tool rất nhiều.
MCU cũng không phải là khó.
Trên dòng MPU như 386 hay cao hơn có khó hơn đôi chút vì nó dùng bảng tham chiếu chồtan bộ ứng dụng global và local. Nhưng kẽ hở lại là debug mode rất mạnh. Nếu bị khai thác tính năng này thì cũng toi ngay.
Ví dụ về ***** soft trên PC.
nhanh chóng các điểm gọi hàm, các string tham chiếu chứ nó không thể giúp cho crker biết đâu là điểm check pass chính xác.
Nếu chúng ta viết 1 CT firmware cho VDK bằng C sau đó dịch ra và debug bằng ASM thì chúng ta sẽ dễ dàng hiểu được CT sử dụng
những ngắt nào, trong vòng lặp chính sẽ gọi các call nào vì số lượng mã và các thủ tục là hữu hạn và ít.
CT trên PC khi chạy nó load 1 đống DLL hệ thống, có những DLL chỉ dùng có 1 vài hàm. Windows sử dụng user32.dll và kernel32.dll
là chính. 1 Chương trình trên PC bác có biết nó phải làm bao nhiêu thứ để tạo ra được 1 cái cửa sổ Dialog không? Khi C check nhiều
điểm ngẫu nhiên thì phải patch đến bao giờ. Thường thì crker phải tìm được cái thủ tục key_decode để tín ngược trở lại thành key_gen
để không phải ngồi patch quá nhiều điểm. Thế khi 1 soft sử dụng dongle làm khoấ thì key_gen kiểu gì? ---> bắt buộc phả patch hoặc
dongle_emulator .... Đấy là chưa kể soft bảo vệ bằng giải thuật pack (Amadillo, ASPack, ASProtect): image của chương trình được mã hoá
và giải mã runtime nên debug một cái soft bị pack là vô nghĩa. <---- cái này có thể áp dụng cho VDK sử dụng DES Bootloader
Nguyên văn bởi MinhHa Xem bài viết
(ví dụ đơn giản là bản demo cho thời gian thử 30 ngày).
Bạn chỉ cần tìm hàm thời gian trong 1 DLL ( chạy SIM thấy ngay) Nếu lười thì sau nó là je hay j gì đó sử thành jmp là OK. Không tin bạn cứ thử xem.
Với phần mềm có bảo mật cao hơn.
các quá trình đồ hoạ refresh, .... Cái khó là phải tìm được đúng điểm check <--- đây chính là một nghệ thuật cũng như bao nghệ thuật khác nó cần sự nhạy cảm, tỉ mỉ
và một chút năng khiếu. Chính vì thế em mới nói rằng ***** soft trên PC khó hơn rất rất nhiều.
Nguyên văn bởi MinhHa Xem bài viết
Ví dụ: Dùng các thông số do window lưu trong visual mem ( trên đĩa cứng). Cái này chỉ kiểm tra ngày tháng cũng đã khó. Vì nó không lấy timer hệ thống mà lấy của WINDOWS. Do vậy cần hiểu cấu trúc mà WIN đã dùng để chuyển HD thành RAM ( tổ chức như RAM nhưng trên đĩa cứng).
Còn trên MCU. Cũng không ai lại đi debug từ đầu cả. Tùy theo cách chống debug thì sẽ có cách debug tương ứng.
Ví dụ: Nếu kiểm tra bằng pass đọc từ ngoại vi. Đầu tiên tìm tới các lệnh truy cập ngoại vi. Chọn lọc sẽ được lệnh hỏi pass.
Lúc này cần xem nó xử lý ngay hay lưu vào đâu. Sau đó có cách tiếp theo.
Nếu có firmware thì cái thằng định copy đó chắc chắn nó còn thêm tính năng vào được chứ không nói đến việc bẻ khóa.
Dẫn chứng: Chúng tôi thêm tính năng gọi thẻ 1719 vào PAYPHONE của ASCOM mặc dù chỉ có file.bin. Sau khi ***** thì ngoài tính năng cũ còn thêm tính năng mới mà nguyên bản không có. Như dùng được các loại thẻ mà mình sản xuất ra hay thêm tính năng mà khách hàng yêu cầu.
cảm giác này (như cầu thủ cảm giác bóng khi đánh đầu )
Nguyên văn bởi MinhHa Xem bài viết
Nói chung khóa chỉ phòng người ngay chứ không chống được kẻ gian.
Làm sao không khóa mà kẻ gian vẫn chịu.
1. Phải có thương hiệu khi đó copy vô ích.
2. Giá thành hợp lý ( Một số sản phẩm telecom không hiểu sao china làm cực rẻ mà tốt. Đã hỏi thử giá linh kiện cho 1K sản phẩm thì tổng giá thành linh kiện chưa kể PCB, công hàn và test mà giá đã bằng 120% giá nó bán. Lúc đó copy vô ích).
3. Chế độ hậu mãi tốt, quan hệ khách hàng tốt.
Nói chung anh em mình lo làm sản phẩm thì tốt hơn lo bị copy.
Tại sao thuật toán DES lại được coi là an toàn trong 1 trường hợp thông tin chỉ có giá trị trong vòng 72 giờ. Sau 72 giờ thông tin không còn giá trị thì giải mã được cũng vô ích rồi.
Comment
-
Danh sách các CHIP đã bị hạ gục đến thời điểm năm 2004
Motorola HC05
MC68HC05B6
MC68HC05B8
MC68HC05B16
(MC68HC05B32)
(MC68HC05X4)
MC68HC05X16
MC68HC05X32
Motorola HC11
MC68HC11A8
MC68HC11E9
(MC68HC11E20)
MC68HC11L6
(MC68HC11KA2)
(MC68HC11KA4)
(MC68HC11KG2)
(MC68HC11KG4)
Microchip PIC
PIC16C84
Microchip PIC
PIC16F83
PIC16F84
HCS512
Microchip PIC
PIC16F84A
PIC16F627
PIC16F628
(PIC16F870)
(PIC16F871)
(PIC16F872)
PIC16F873
PIC16F874
PIC16F876
PIC16F877
Atmel 8051
AT89C51
AT89C52
AT89C55
AT89C1051
AT89C2051
(AT89C4051)
Atmel AVR
AT90S1200
AT90S2313
AT90S2323
(AT90S2343)
AT90S8515
Texas Instruments MSP430
MSP430F110
MSP430F112
MSP430F1101
MSP430F1121
MSP430F122
MSP430F123
MSP430F133
MSP430F135
MSP430F147
MSP430F148
MSP430F149
MSP430F412
MSP430F413
Comment
-
Bài viết mới nhất
Collapse
-
bởi Ng.Phuong.5Vấn đề cũ: khi in mạch ra pdf và bấm chọn Keep Drill Holes Open, in ra thì pdf trắng đen các lỗ chân linh kiện như nhau. Mặc dù có linh kiện phần Drill là 1mm, có linh kiện thì là 3mm. Cho em hỏi cách sửa phần này ở Orcad 9.2 với ạ.
Mấy con...-
Channel: Cadence ORCAD
hôm nay, 19:44 -
-
Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.bởi viettinhBác nói đúng quá. Cơ mà muốn mua hàng chính hãng, hàng thương hiệu mà tai lại hợp hàng tầu mới khổ chứ.
Đang tính mua cái loa tầu nữa cột đằng sau loa này, Loa sony chỉ để hát nhép thôi, có dc k các bác ...-
Channel: Điện thanh
hôm nay, 18:12 -
-
Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.bởi nguyendinhvanTheo tôi thì khi hpj sản xuất ra cái loa đó, đã có nhiều chuyên gia kỹ thuật hiệu chỉnh, tính toán các phần tử kỹ lưỡng rồi.
Bây giờ tính toán hiệu chỉnh lại cần có đội ngũ tương đương với nhà sản xuất.
Cách đơn giản...-
Channel: Điện thanh
hôm nay, 00:04 -
-
Trả lời cho Sửa bộ nguồn DC 60V 45Abởi mèomướpDạ cháu có ý tốt muốn động viên chú ấy ngâm cứu khoa học thôi ạ. Về phần kiểm tra dao động thì chú ấy chưa biết thì sẽ tìm hiểu được là cần những gì ạ, chắc chắn là khi hướng dẫn phần ấy các cô chú nào đó sẽ lưu ý cần loại sò công suất ra tránh cháy nổ rồi ạ....
-
Channel: Điện tử công suất
Hôm qua, 19:02 -
-
Trả lời cho Sửa bộ nguồn DC 60V 45Abởi tuyennhanChủ thớt hỏi có kiểm tra được dao động mà không cấp nguồn thì rõ trình ở mức nào mà mèo còn xúi ngâm cứu nữa ác vậy ....
-
Channel: Điện tử công suất
Hôm qua, 15:43 -
-
Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.bởi tuyennhanLoa bass đấu trực tiếp không qua phân tần để thành loa toàn dải xem có thoát tiếng khộng , nếu không thoát cần phải sửa lại mạch cs hay âm sắc nếu đủ trình còn nếu thoát ca hay nhưng chưa vừa ý vì bass kém chăc thì đấu lại như cũ và đấu thêm loa mid treble bên ngoài .
-
Channel: Điện thanh
Hôm qua, 15:28 -
-
Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.bởi mèomướpDạ loa tép bé xíu như ngón chân cái thôi ạ. Thiếu gì chỗ để đâu. Quan trọng là gắn thêm nó loa nghe ok hay ko thôi ạ...
-
Channel: Điện thanh
Hôm qua, 11:44 -
-
Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.bởi viettinhNó không phải cái loa rời. Chả nhẽ đèo thêm 2 con loa tép ngoài thì kỳ lắm....
-
Channel: Điện thanh
Hôm qua, 09:45 -
-
Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.bởi mèomướpDạ chú mua thêm loa tép nối tiếp qua con tụ rồi mắc vào cùng loa trung là được ạ...
-
Channel: Điện thanh
07-01-2025, 19:53 -
-
Trả lời cho Tìm datasheet linh kiện điện tử.bởi mèomướpDạ cháu hỏi bạn cháu thì bạn ấy trả lời như thế này ạ. Cháu cũng hông bít có đúng hông nữa ạ
Linh kiện điện tử với mã "943BA" và "W58BAL" là một loại cầu chì tự động (circuit breaker) do TE Connectivity sản...-
Channel: Điện tử dành cho người mới bắt đầu
07-01-2025, 19:50 -
Comment