|
|
Mình đã làm theo bài hướng dẫn trên downlaod mod_security tại đây :
Code:
http://www.modsecurity.org/download/modsecurity-apache_2.1.3.tar.gz
Nhưng khi dùng winrar unrar nó ra thì không tìm thấy file mod_security.so đâu cả chỉ có file .c và .h.
đây là list của các file trong thư mục modsecurity-apache_2.1.3 sau khi mình unrar :
Code:
modsecurity-apache_2.1.3
============================================================================================
APACHE2
DOC
RULES
CHANGES
LICENSE
modsecurity.conf-minimal
README.TXT
APACHE2
====================================================================================================
API
.deps
apache2.h
apache2_config.c
apache2_io.c
apache2_util.c
LICENSE
Makefile
Makefile.win
mod_security2.c
modsecurity.c
modsecurity.h
modules.mk
msc_logging.c
msc_logging.h
msc_multipart.c
msc_multipart.h
msc_parsers.c
msc_parsers.h
msc_pcre.c
msc_pcre.h
msc_reqbody.c
msc_util.c
msc_util.h
msc_xml.c
msc_xml.h
persist_dbm.c
persist_dbm.h
re.c
re.h
re_actions.c
re_operators.c
re_tfns.c
re_variables.c
API
========================================================================================================
mod_op_strstr.c
mod_tfn_reverse.c
README
DOC
================================================================================================
HTML-MULTIPAGE
apache_request_cycle-modsecurity.jpg
breach-logo-small.gif
index.html
modsecurity-reference.css
modsecurity.gif
modsecurity2-apache-reference.html
modsecurity2-apache-reference.pdf
modsecurity2-apache-reference.xml
HTML-MULTIPAGE
===============================================================================================================
01-introduction.html
02-installation.html
03-configuration-directives.html
04-processing-phases.html
05-variables.html
06-transformation-functions.html
07-actions.html
08-operators.html
apache_request_cycle-modsecurity.jpg
ar01s02.html
ar01s10.html
breach-logo-small.gif
index.html
modsecurity-reference.css
modsecurity.gif
RULES
==================================================================================================
BLOCKING
CHANGELOG
LICENSE
modsecurity_crs_10_config.conf
modsecurity_crs_20_protocol_violations.conf
modsecurity_crs_21_protocol_anomalies.conf
modsecurity_crs_30_http_policy.conf
modsecurity_crs_35_bad_robots.conf
modsecurity_crs_40_generic_attacks.conf
modsecurity_crs_45_trojans.conf
modsecurity_crs_50_outbound.conf
modsecurity_crs_55_marketing.conf
README
BLOCKING
===========================================================================================================
modsecurity_crs_20_protocol_violations.conf
modsecurity_crs_21_protocol_anomalies.conf
modsecurity_crs_40_generic_attacks.conf
Cái file mod_security.so đó là file có sẵn hay là mình phải biên dịch ra từ mấy cái file kia :? .
|
|
|
Em có đọc một số bài viết có nói về mod_security là một công cụ bảo mật khá hay dành cho apache webserver (nhẹ , có thể cấu hình firewall theo ý mình nên mức độ bảo mật cao và có tính mềm dẻo, linh hoạt hơn so với các soft firewall như ISA hay zonealarm...). Mình đã down bản mod_security 2.5.0 về nhưng không biết cách cài đặt cho nó chạy cùng apache (rất tiếc phần help của nó chỉ hướng dẫn cách config cho linux và unix chứ không có đề cập đến winodws).
Mong mọi người đã cài đặt thành công mod_security cho apache trên windows hướng dẫn mình setup và config nó nhé.
P/s : nếu ai có kinh nghiệm sử dụng mod_security thì cho mình xin một chút kinh nghiệm sử dụng nhé .
|
|
|
Nối theo kiểu ấy thì còn tùy vào máy chủ có tích hợp những kiểu quản lý nào. Nếu phần mềm quản lý (chạy trên server) tích hợp càng nhiều thì quản lý càng nhiều.
Lấy ví dụ là cái cms của bọn vinagame có thể quản lý giờ ra vào của các máy client có thể cấm không cho khách hàng sử dụng máy client khi chưa có sự đồng ý của máy chủ hoặc có thể cấm một số chương trình ứng dụng chạy trên máy con ...
Nhưng nó không thể remote máy con (điều khiển máy con từ máy chủ) như thằng netsupport manager được.
Nếu muốn biết nó làm được những gì thì bạn có thể vào help để xem các chức năng của nó.
|
|
|
Mình đang cần flash demo raid (tức là cái flash nó mô tả phương thức ghi dữ liệu trên các HDD của các dạng raid) mình tìm chỉ có cái cuat bọn intel (cái này mô tả không chi tiết lắm và nó hơi khó nhìn) bạn nào có cái flash này cho mình xin nha.
|
|
|
Bạn thử dùng ADSL của truyền hình cáp xem cái đó lắp đặt trên đường dây của cáp chứ không dùng đường dây điện thoại .
|
|
|
To big-bird : Logmein chỉ xài để remote server thui nhưng cài nó ra thì không hay lắm (thỉnh thoảng mất kết nối tới server và tốc độ cũng không nhanh) mình muốn sử dụng 1 soft để làm việc này (thao tác trực tiếp trên các trình duyệt) cho đơn giản.
|
|
|
Đây là code mình tìm được post lên cho những ai quan tâm :
Code:
; Subroutine to Read all 16 Sectors of Boot Code into Memory
7CC7 6660 * pushad ; Push all "Double" Registers onto the
; stack: EAX, ECX, EDX, EBX, original
; ESP, EBP, ESI, and EDI.
7CC9 1E PUSH DS
7CCA 06 PUSH ES
7CCB 66A11000 * mov eax,[0010] ; "Must always be zero for NTFS!"
7CCF 6603061C00 * add eax,[001C] ; Number of "Hidden Sectors"
7CD4 663B062000 * cmp eax,[0020] ; Apparent Sectors in partition.
7CD9 0F823A00 * jb 7D17 ; Can't have more "Hidden Sectors"
; than the total you start with!
7CDD 1E PUSH DS
7CDE 666A00 * push 00000000
7CE1 6650 * push eax
7CE3 06 PUSH ES
7CE4 53 PUSH BX
7CE5 6668100001 * push 00010010
00
7CEB 803E140000 CMP BYTE PTR [0014],00
7CF0 0F850C00 * jnz 7D00
7CF4 E8B3FF CALL 7CAA ; Check for Extended INT13 code.
7CF7 803E140000 CMP BYTE PTR [0014],00
7CFC 0F846100 * jz 7D61 ; Extensions are not installed.
; -> "A disk read error..." etc.
7D00 B442 MOV AH,42 ; Function 42h of INT 13:
; " Extended Read "
7D02 8A162400 MOV DL,[0024] ; -> "80h" (first hard drive).
7D06 16 PUSH SS
7D07 1F POP DS
7D08 8BF4 MOV SI,SP
7D0A CD13 INT 13
7D0C 6658 * pop eax
7D0E 5B POP BX
7D0F 07 POP ES
7D10 6658 * pop eax
7D12 6658 * pop eax
7D14 1F POP DS
7D15 EB2D JMP 7D44
7D17 6633D2 * xor edx,edx
7D1A 660FB70E18 * movzx ecx,word [0018] ; [7C18] = Sectors per Track
00
7D20 66F7F1 * div ecx
7D23 FEC2 INC DL
7D25 8ACA MOV CL,DL
7D27 668BD0 * mov edx,eax
7D2A 66C1EA10 * shr edx,10
7D2E F7361A00 * div word [001A] ; [7C1A] = Number of Heads
7D32 86D6 XCHG DL,DH
7D34 8A162400 MOV DL,[0024] ; [7C24] = Hard Drive Number
7D38 8AE8 MOV CH,AL
7D3A C0E406 * shl ah,06
7D3D 0ACC OR CL,AH
7D3F B80102 MOV AX,0201 ; Function 02h of INT 13:
7D42 CD13 INT 13 ; "Read Sector into Memory"
7D44 0F821900 * jb 7D61 ; -> "A disk read error..." etc.
7D48 8CC0 MOV AX,ES
7D4A 052000 ADD AX,0020 ; Add another 200h (512 bytes) to
7D4D 8EC0 MOV ES,AX ; the Segment pointer in ES.
7D4F 66FF061000 * inc dword [0010] ;
7D54 FF0E0E00 DEC WORD PTR [000E] ; Decrement the Count of how
; many Sectors are left to read
7D58 0F856FFF * jnz 7CCB
7D5C 07 POP ES
7D5D 1F POP DS
7D5E 6661 * popad
7D60 C3 RET
--------------------------------------------------------------------------------
7D61 A0F801 MOV AL,[01F8] ; Contains 83h (for all Languages)
; -> "A disk read error occurred"
7D64 E80900 CALL 7D70 ; DISPLAY MESSAGE
7D67 A0FB01 MOV AL,[01FB] ; Contains C9h (for English).
; -> "Press Ctrl+Alt+Del to restart"
7D6A E80300 CALL 7D70 ; DISPLAY MESSAGE
7D6D FB STI
7D6E EBFE JMP 7D6E ; Endless Loop -> Lock-up System,
; so a reboot is necessary!
7D70 B401 MOV AH,01 ; An alternate method to add 100h to
; the AX register for the Message
7D72 8BF0 MOV SI,AX ; Offsets in AL -> Error Messages.
7D74 AC LODSB ; Load Error Message strings 1 byte
; at a time and INC SI pointer.
7D75 3C00 CMP AL,00 ; Look for Zero-byte terminator in
; the Error Message strings.
7D77 7409 JZ 7D82 ; Return (done)
7D79 B40E MOV AH,0E ; Function 0Eh of INT 10:
; "Teletype Output" (One Character)
7D7B BB0700 MOV BX,0007 ; (BH=Page Zero; BL=Normal display)
7D7E CD10 INT 10
7D80 EBF2 JMP 7D74 ; Do it all over again . . .
7D82 C3 RET
Code:
mainEntryPoint:
mov BS.bsDriveNumber, dl
;=----------------------------------------------------------=
; Load entire FAT (maximum 6KB for FAT12)
;=----------------------------------------------------------=
push ax ; ax = "load" segment
mov ax, BPB.bpbBytesPerSector
mov cx, BPB.bpbSectorsPerFAT
mul cx
shr ax, 4 ; convert to paragraphs
mov di, ss ;
sub di, ax ; es = di = FAT buffer
mov es, di ;
mov ax, BPB.bpbReservedSectors
call int13ReadSector
pop es ; es = "load" segment
;=----------------------------------------------------------=
; Load entire Root Directory (maximum 16KB for FAT12/FAT16)
;=----------------------------------------------------------=
mov ax, 32
mov si, BPB.bpbRootEntries
mul si
div BPB.bpbBytesPerSector
xchg ax, cx ; cx = root sectors, ax = zero
mov al, BPB.bpbNumberOfFATs
mul BPB.bpbSectorsPerFAT
add ax, BPB.bpbReservedSectors
call int13ReadSector
push dx ; mzldrDataAreaHi
push ax ; mzldrDataAreaLo
push di ; mzldrFATSegment
push es ; mzldrBufSegment
;=----------------------------------------------------------=
; Look through list of "images" and load the first match
;=----------------------------------------------------------=
xchg ax, si ; ax = root entries
mov si, OFFSET szImageListDef
;---------------------------------------------------------------------------
; fat12ReadCluster
;
; Entry:
; ch = 0
; si = cluster number to read
; es = segment of read buffer
; Exit:
; si = next cluster number in chain (if CF == 0)
; es = next segment
;
fat12ReadCluster PROC NEAR
lea ax, [si-2]
; cx = sectors per cluster
mov cl, BPB.bpbSectorsPerCluster
mul cx
; add start of dataarea
add ax, VAR.mzldrDataAreaLo
adc dx, VAR.mzldrDataAreaHi
call int13ReadSector
shr bx, 4 ; convert bytes into paragraphs
mov ax, es ; ax = our buffer
add ax, bx ; ax = old buffer + bytes read
mov es, ax ; es = new buffer
mov ds, VAR.mzldrFATSegment
mov ax, 3 ;
mul si ; ax = si * 3 / 2
shr ax, 1 ;
xchg ax, si ;
mov si, ds:[si] ; get next cluster
jnc fat12ReadClusterEven
shr si, 4 ; keep upper 4 bits
fat12ReadClusterEven:
and si, 0FFFh ; mask off junk, EOF?
cmp si, FAT12_EOF ;
cmc
ret
fat12ReadCluster ENDP
;---------------------------------------------------------------------------
; int13ReadSector
;
; Entry:
; ax = sector number (16-bit LBA)
; cx = sector count
; es = sector buffer segment
; Exit:
; bx = number of bytes read
; cx = zero
; dx:ax = sector number (32-bit LBA) of next sector
;
int13ReadSector PROC NEAR
push di
xor bx, bx
xor dx, dx
int13ReadNext:
mov di, 5 ; five retries
int13ReadMore:
pusha
; add start of partition (harddisks only)
add ax, WORD PTR BPB.bpbHiddenSectors[0]
adc dx, WORD PTR BPB.bpbHiddenSectors[2]
xor cx, cx ; cx = null
xchg ax, cx ; ax = null, cx = LBA[0]
xchg ax, dx ; ax = LBA[2], dx = null
div BPB.bpbSectorsPerTrack
xchg ax, cx ; ax = LBA[0], cx = Result[2]
div BPB.bpbSectorsPerTrack
xchg dx, cx ; dx = Result[2], cx = Sector#
inc cx ; cx = one-based Sector#
div BPB.bpbHeadsPerCylinder
mov ch, al ; ch = Cylinder# [7:0]
shl ah, 6 ; ah = Cylinder# [9:8]
or cl, ah ; combine Cylinder & Sector fields
mov dh, dl ; dh = Head#
mov dl, BS.bsDriveNumber
mov ax, 0201h
int 13h
jnc int13ReadDone
;* mov ah, 00h ; uncomment if you want DISK RESETs
;* int 13h ;
popa
dec di
jnz int13ReadMore
int 18h ;*
int13ReadDone:
popa
add bx, BPB.bpbBytesPerSector
inc ax
jnz int13ReadSkip
inc dx
int13ReadSkip:
dec cx
jnz int13ReadNext
pop di
ret
int13ReadSector ENDP
đây là code của MBR
Code:
; MBR code
bootSegment SEGMENT USE16 'boot'
ASSUME cs:bootSegment, ds:bootSegment
cld
xor ax, ax
mov ss, ax
mov sp, 7C00h
mov ds, ax
mov es, ax
; relocate ourself down to 0060:0000
mov cx, 0100h
mov si, 7C00h
mov di, 0600h
rep movsw
JMPF 0060h, bootEntryPoint
bootEntryPoint:
push cs
pop ds
mov mbrBootDrive, dl
test BYTE PTR es:[417h], 08h
jnz findPartitionMain
mov ax, 020Fh
mov bx, 0800h
mov cx, 0002h
mov dx, 0080h
int 13h
cmp extMagicTag, 0AA55BEEFh
jne findPartitionMain
JMPF 0060h, 0200h
findPartitionMain:
mov cl, 4
mov si, OFFSET mbrPTable
findPartitionNext:
;* test [si].mbrBootFlag, MBR_ENTRY_BOOTABLE
cmp [si].mbrBootFlag, ch
jl findPartitionDone
add si, SIZE MBR_ENTRY
loop findPartitionNext
int 18h
findPartitionDone:
mov cx, [si][2]
mov dx, [si]
cmp dh, 0FFh
jne findPartitionNorm
cmp cx, 0FFFFh
jne findPartitionNorm
push LARGE NULL
push [si].mbrPartitionStart
push es
push bx
push SMALL 1
push SMALL 16
push ss
pop ds
mov si, sp
mov ah, 42h
int 13h
add sp, 16
jmp findPartitionExec
findPartitionNorm:
mov ax, 0201h
mov bx, 7C00h
int 13h
findPartitionExec:
JMPF 0000h, 7C00h
mbrBootDrive DB ?
MBR_TABLE_HERE
mbrPTable MBR_ENTRY 4 DUP (<>)
MBR_MAGIC_HERE
push 0B800h
pop es
mov ax, 1720h
mov cx, 2000
xor di, di
rep stosw
push 0
pop es
mov ah, 02h
mov bh, 00h
xor dx, dx
int 10h
jmp findPartitionMain
extMagicTag EQU DWORD PTR ds:[EXT_MAGIC_POS]
EXT_MAGIC_HERE
bootSegment ENDS
; DOS code
codeSegment SEGMENT USE16 'code'
ASSUME cs:codeSegment, ds:codeSegment
mainEntryPoint:
push cs
pop ds
push cs
pop es
mov ax, 0201h
mov bx, OFFSET ourSectorBuf
mov cx, 0001h
mov dx, 0080h
int 13h
push bootSegment
pop es
mov si, MBR_TABLE_POS + OFFSET ourSectorBuf
mov di, MBR_TABLE_POS
mov cx, 32
rep movsw
mov ax, 0302h
xor bx, bx
mov cx, 1
mov dx, 0080h
int 13h
mov ax, 4C00h
int 21h
ourSectorBuf DB 512 DUP (?)
codeSegment ENDS
END mainEntryPoint
Have fun với mấy cái code này .
|
|
|
Mình đâu có nói đây là bài tập môn học lập trình đâu.
Môn này không phải là một môn lập trình nó là môn nguyên lý hệ điều hành và bài tập này thầy giáo yêu cầu là sưu tầm code chứ không phải là tự lập trình nên những đoạn code đó có lẽ các bạn hiểu nhầm topic này ( nếu thế thật thì cho mình xin lỗi vì dùng từ ngữ không chính xác làm mọi người hiểu nhầm).
Mình cũng xin nói lại lần nữa để mọi người không hiểu nhầm : đây không phải là một bài lập trình hệ thống bình thường, không đòi hỏi phải tự tay viết nên cái code của các thủ tục trên mà đơn giản chỉ là sưu tầm và biên soạn lại cái code của các thủ tục trên sao cho chính xác nhất vậy thôi.
Như vậy là mình làm đúng như yêu cầu của bài tập thui chứ không phải là làm một cách đối phó hay lãng phí tiền học (cái này ThangCuEm có lẽ hơi nặng lời rồi ).
|
|
|
tmd wrote:
Không có mục đích sưu tầm cụ thể thì chịu, không biết search cái gì. Mấy cái tài liệu ở trên, có cái mô tả kỹ về cấu trúc của mấy thứ bạn nói, kỹ tới chi tiết như cái file system forensics analysis, còn mấy cái kia là trong môi trường windows, có thể chẳng ăn nhập gì với chuyện sưu tầm code. Bạn cũng chẳng biết mình muốn sưu tầm cái code của ngôn ngữ nào nữa. Cái này là bó xác ướp. Tốt nhất là bạn tự rèn cái kỹ năng search google cho chính mình.
Bác tmd có lẽ nhầm lẫn vì mục đích sưu tầm của mình là rất rõ ràng và cụ thể (mình sưu tầm code của các thủ tục mà HĐH dùng để đọc bảng FAT thư mục gốc và cluster ..).
ducbinh1986 wrote:
Mình cần code của mấy cái này mọi người có thì share cho mình với :
1-Trương trình truy nhập và giải mã tham số boot sector
2-Thủ tục đọc FAT và đổi địa chỉ
3-Thủ tục đọc thư mục gốc
4-Thủ tục đọc cluster theo sector
Còn về ngôn ngữ thì do HĐH chứ không phải do mình vì mình sưu tầm chứ ko viết code.
Mình cũng xin nói lại là mình rất dốt khoản lập trình nên có cho mình code mình đọc cũng không hiểu vì thế mình không có tham vọng viết được cái code của nó mình chỉ quan tâm đến chỗ nào có code là mình copy về đem nộp thui .
Còn về kỹ năng search google của mình thì đúng là kém thật mình đang học TA để có thể nâng cao kỹ năng tìm kiếm của mình.
Cảm ơn bài góp ý của bạn.
P/s: quên mất mình muốn
|
|
|
Mình có 2 vấn đề muốn mọi người cùng tham khảo :
1.Mình muốn dùng 1 fire wall cho server vậy nên dung firewall nào : dùng firewall của winserver có lẽ không hay lắm vì nó có nhiều hạn chế còn nếu xài ISA thì chiếm quá nhiều tài nguyên của server mình muốn sử dụng một soft để làm firewall (như zonealarm nhưng zonealarm lại không support cho win2k3server). Và server mình chạy trên nền win2k3 server.
2.Mình có đọc một bài trên diễn đàn về bảo mật mysql step by step nhưng đáng tiếc nó viết cho linux vậy bảo mật mysql trong win2k3server khác gì trong linux và cụ thể ta sẽ phải cấu hình bảo mật những gì.
Mời các bạn cho ý kiến.
|
|
|
light.phoenix wrote:
Bạn cần xác định chương trình đọc/ghi đĩa cứng chạy trên nền tảng nào. Nếu là DOS thực hoặc Win9x, có thể truy cập trực tiếp qua intr 13h extension của BIOS (tra cứu techhelp hoặc tìm technical document về Intr này).
Cái này chính xác là cái em cần tìm vì yêu cầu đưa ra chỉ cần là code do HĐH thực hiện để đọc bảng FAT và thư mục gốc thôi.
Đây là mấy cái hàm em tìm được bác xem có đúng là nó không :
Code:
; Subroutine to test for INT13 Extensions
7CAA B441 MOV AH,41 ; Function 41h of INT 13:
7CAC BBAA55 MOV BX,55AA ; (with BX = 55AAh) is a check for
; the "Installation of the INT 13
; BIOS Extensions" in Memory.
7CAF 8A162400 MOV DL,[0024] ; -> 80h (for First drive).
7CB3 CD13 INT 13
7CB5 720F JB 7CC6 ; Return
7CB7 81FB55AA CMP BX,AA55
7CBB 7509 JNZ 7CC6 ; Return
7CBD F6C101 TEST CL,01
7CC0 7404 JZ 7CC6 ; Return
7CC2 FE061400 INC BYTE PTR [0014]
7CC6 C3 RET
Code:
; Subroutine to Read all 16 Sectors of Boot Code into Memory
7CC7 6660 * pushad ; Push all "Double" Registers onto the
; stack: EAX, ECX, EDX, EBX, original
; ESP, EBP, ESI, and EDI.
7CC9 1E PUSH DS
7CCA 06 PUSH ES
7CCB 66A11000 * mov eax,[0010] ; "Must always be zero for NTFS!"
7CCF 6603061C00 * add eax,[001C] ; Number of "Hidden Sectors"
7CD4 663B062000 * cmp eax,[0020] ; Apparent Sectors in partition.
7CD9 0F823A00 * jb 7D17 ; Can't have more "Hidden Sectors"
; than the total you start with!
7CDD 1E PUSH DS
7CDE 666A00 * push 00000000
7CE1 6650 * push eax
7CE3 06 PUSH ES
7CE4 53 PUSH BX
7CE5 6668100001 * push 00010010
00
7CEB 803E140000 CMP BYTE PTR [0014],00
7CF0 0F850C00 * jnz 7D00
7CF4 E8B3FF CALL 7CAA ; Check for Extended INT13 code.
7CF7 803E140000 CMP BYTE PTR [0014],00
7CFC 0F846100 * jz 7D61 ; Extensions are not installed.
; -> "A disk read error..." etc.
7D00 B442 MOV AH,42 ; Function 42h of INT 13:
; " Extended Read "
7D02 8A162400 MOV DL,[0024] ; -> "80h" (first hard drive).
7D06 16 PUSH SS
7D07 1F POP DS
7D08 8BF4 MOV SI,SP
7D0A CD13 INT 13
7D0C 6658 * pop eax
7D0E 5B POP BX
7D0F 07 POP ES
7D10 6658 * pop eax
7D12 6658 * pop eax
7D14 1F POP DS
7D15 EB2D JMP 7D44
7D17 6633D2 * xor edx,edx
7D1A 660FB70E18 * movzx ecx,word [0018] ; [7C18] = Sectors per Track
00
7D20 66F7F1 * div ecx
7D23 FEC2 INC DL
7D25 8ACA MOV CL,DL
7D27 668BD0 * mov edx,eax
7D2A 66C1EA10 * shr edx,10
7D2E F7361A00 * div word [001A] ; [7C1A] = Number of Heads
7D32 86D6 XCHG DL,DH
7D34 8A162400 MOV DL,[0024] ; [7C24] = Hard Drive Number
7D38 8AE8 MOV CH,AL
7D3A C0E406 * shl ah,06
7D3D 0ACC OR CL,AH
7D3F B80102 MOV AX,0201 ; Function 02h of INT 13:
7D42 CD13 INT 13 ; "Read Sector into Memory"
7D44 0F821900 * jb 7D61 ; -> "A disk read error..." etc.
7D48 8CC0 MOV AX,ES
7D4A 052000 ADD AX,0020 ; Add another 200h (512 bytes) to
7D4D 8EC0 MOV ES,AX ; the Segment pointer in ES.
7D4F 66FF061000 * inc dword [0010] ;
7D54 FF0E0E00 DEC WORD PTR [000E] ; Decrement the Count of how
; many Sectors are left to read
7D58 0F856FFF * jnz 7CCB
7D5C 07 POP ES
7D5D 1F POP DS
7D5E 6661 * popad
7D60 C3 RET
--------------------------------------------------------------------------------
7D61 A0F801 MOV AL,[01F8] ; Contains 83h (for all Languages)
; -> "A disk read error occurred"
7D64 E80900 CALL 7D70 ; DISPLAY MESSAGE
7D67 A0FB01 MOV AL,[01FB] ; Contains C9h (for English).
; -> "Press Ctrl+Alt+Del to restart"
7D6A E80300 CALL 7D70 ; DISPLAY MESSAGE
7D6D FB STI
7D6E EBFE JMP 7D6E ; Endless Loop -> Lock-up System,
; so a reboot is necessary!
7D70 B401 MOV AH,01 ; An alternate method to add 100h to
; the AX register for the Message
7D72 8BF0 MOV SI,AX ; Offsets in AL -> Error Messages.
7D74 AC LODSB ; Load Error Message strings 1 byte
; at a time and INC SI pointer.
7D75 3C00 CMP AL,00 ; Look for Zero-byte terminator in
; the Error Message strings.
7D77 7409 JZ 7D82 ; Return (done)
7D79 B40E MOV AH,0E ; Function 0Eh of INT 10:
; "Teletype Output" (One Character)
7D7B BB0700 MOV BX,0007 ; (BH=Page Zero; BL=Normal display)
7D7E CD10 INT 10
7D80 EBF2 JMP 7D74 ; Do it all over again . . .
7D82 C3 RET
Nếu không phải bác có thể cho em cái code mà bác đang nói đến không (em tham khảo).
|
|
|
Cái này là code của HĐH làm việc với bảng FAT chứ có phải lập trình gì gì đâu bác tmd cái này là sưu tầm code (dĩ nhiên là không phải do mình viết ra rồi) với lại em không phải là dân lập trình (em toàn thi rớt mấy môn này ở trường thui ) nên có cho em code em cũng chả hiểu chứ nói gì đến chuyện viết ra nó.
Cái này là sưu tầm thui chứ không phải lập trình bác hiểu nhầm rồi.
Còn chuyện em hỏi bác key word vì em nghĩ bác dùng gooogle quen rùi mấy cái key đó bác có kinh nghiệm search có kết quả nhanh và chính xác hơn em (em cũng đã thử tìm rồi nhưng rất tiếc kết quả ko như mong đợi nên muốn hỏi bác xem kết quả có khả quan hơn không).
Cảm ơn bác về lời góp ý của bác.
|
|
|
Em seach google.com với từ khóa : function read FAT nhưng nó toàn ra những cái linh tinh.
Bác có thể cho em key word của mấy cái thủ tục em cần tìm không (key để seach trên google ấy).
Thank bác nhìu.
|
|
|
neo_mg wrote:
oài có gì đâu mà khó cần phải edit 1 nhan vô file -> save as -> tìm file mới tải về roài nhấn phải chuột -> edit OK men
Vậy trên PC mình dùng để edit sẽ phải setup một số phần mềm có thể edit web (fronpage chẳng hạn) nhưng như thế thì sẽ không được cơ động lắm mình muốn thực hiện nó với một số trình duyệt (IE hoặc fire fox..).
Thank lời góp ý của bạn.
|
|
|
SonNguyen_sn wrote:
Theo tớ.
Bạn làm cách này. Mua con cóc bỏ trên đĩa rồi bắt nó Ngồi đấy từ sáng đến tối thì vui hơn.
Setup mấy cái đso làm j cho mệt.
Dynamic IP cũng thế thôi..... Mọi cách làm cũng cần 1 cái Soft update IP /
Mod nên cho cái này dừng lại là ok rồi
Mình không hiểu bạn bảo mình bắt cóc cho ngồi trên đĩa để làm gì (mình đang phân vân không biết liệu con cóc này có thể chuyển IP -> host name cho webserver của mình không :lol ).
Soft update IP thì kiểu gì mình cũng phải dùng vì mình không có IP tĩnh nhưng vấn đề đặt ra ở đây không phải là vấn đề có cài soft update IP hay không mà vấn đề nằm trên DNS server.
To SonNguyen_sn : Bạn nên đọc kỹ topic trước khi trả lời nếu không biết thì chờ mọi người góp ý đừng bàn lùi như thế nếu cứ thấy khó bỏ qua không làm thì không bao giờ có thể làm được cái gì ra hồn cả.
Mình nói có gì không phải bạn bỏ qua đây chỉ là chút góp ý nhỏ của mình.
Thân.
|
|
|
ductv wrote:
nếu bạn nắm được cấu trúc bảng FAT thì việc viết code đọc FAT không khó. Mình không có code chạy con này nhưng nếu bạn học ở Bách Khoa Hà nội thì ra mua quyển giáo trình Hệ Điều Hành của thầy Nguyễn Thanh Tùng. trong đó có list code sẵn rùi đó.
Mình đang theo học tại Hải Phòng không có điều kiện lên HN bạn à nếu bạn có quyển giáo trình đó (word hoặc pdf) thì cho mình xin hoặc không bạn cho mình xin cái code cũng được.
Thank bạn.
|
|
|
KZM wrote:
Chào các bros, tôi học ĐTVT tôi rất muốn theo ngành bảo mật mạng. Nhưng có một thực tế về chương trình ĐH ở VN là chưa thấy có một cuốn giáo trình nào về bảo mật mạng. Vậy theo các bros thì tôi nên đi kiếm một chứng chỉ QT hay tự học? Và qui trình học là ntn:bắt đầu từ đâu, phạm vi kiến thức là gì?
Thanks.
Muốn học bảo mật trước hết bạn phải am hiểu về hệ thống của các OS/2 và network (các kiến thức cơ bản nhất) sau đó hãy nghĩ đến phần bảo mật. Nếu bạn tự học được thì càng tốt nhưng theo mình nếu có ĐK bạn nên theo học một vài chứng chỉ quản trị mạng ( CCNA , MSCA , MSCE ..) từ đó có nền tảng để phát triển kỹ năng bảo mật của bạn (theo mình nên học ngoài đừng học ở trường ĐH vì ĐH chả dạy gì về cái này đâu).
Trên đây là một vài ý kiến của mình bạn có thể tham khảo.
Chúc bạn sớm trở thành một chuyên gia bảo mật ) .
|
|
|
Không biết cái này là lập trình hay chỉ đơn giản là code của HĐH nhỉ ?
Chả nhẽ bó tay với cái này hả các bạn .
|
|
|
Em xài windows dùng Mysql,php và apache.
Bác xem dùng cái nào thì hỗ trợ tốt nhất cho bộ webserver này .
|
|
|
Có ai biết phần mềm nào dùng để giám sát và quản lý server không cho mình với mình đang làm webserver muốn có một phần mềm theo dõi server (cụ thể là webserver). Nó theo dõi tình trạng của webserver để mình tiện kiểm tra.
Mình có nghe nói analog là 1 phần mềm như vậy nhưng mình không biết nó dùng có hay không ai biết phần mềm nào khác good hơn chỉ mình với nha.
Thank các bạn.
|
|
|
NetSupport Manager
Bạn thử cái này chưa chỉ cần cài bản client vào máy con là bạn có thể theo dõi từng máy 1 (thậm chí có thể remote máy của client theo ý bạn) có thể dùng cho 999 license .
|
|
|
Đúng đó chính xác là cái mà mình đang tìm hiểu nhưng mà còn gian nan lắm lúc này mình chưa đủ tiềm lực để thực hiện . Hy vọng trong một tương lai không xa nó sẽ thành hiện thực.
minhmang wrote:
Mình cũng ủng hộ ý tưởng này của bạn. Nếu mà thành công cho mình nhờ để update một cái client nha..he ..he
OK lúc đó free cho mỗi thành viên HVA 1 cái client ) .
|
|
|
Bạn vẫn chưa hiểu ý mình thì phải nếu có IP tĩnh thì mình post bài này làm gì.
Cái lằng nhằng ở đây không phải là webserver , IP tĩnh hay tên miền gì như bạn nói cả mà vấn đề ở đây là DNS server tức là mình muốn tạo 1 DNS của riêng mình chứ không phụ thuộc vào 1 DNS (như bạn nói là của zoneedit hay dyndns) trung gian nào cả bạn hiểu chứ.
|
|
|
Có lẽ yêu càu của mình đưa ra hơi cao quá so với khả năng của mình ( cả về mặt kinh tế và kiến thức ) nhưng có lẽ không phải là không thể thực hiện được (khi đã có đủ kinh phí + kiến thức) cảm ơn các bạn đã giúp đỡ bây giờ giải pháp cho webserver của mình có lẽ là zoneedit (hoặc dyndns) còn để làm dns server mình sẽ nghiên cứu và làm sau vậy .
Một lần nữa cảm ơn ý kiến đóng góp của mọi người.
|
|
|
Quên bạn cho mình hỏi là dùng web động thì có thể giải quyết vấn đề mình nêu ra không ( edit web trực tiếp thông qua một số trình duyệt thông dụng như IE,fire fox) chứ mình không muốn download mấy cái trang .php (hoặc HTML) về chỉnh sửa rồi update lên đâu (cái này vừa mất thời gian vừa không cơ động vì chắc gì những nơi mình muốn edit web có các phần mềm để viết web đầu).
|
|
|
canh_nguyen wrote:
Bạn phải có database để lưu lại nội dung. Khi đó dung các ngôn ngữ đã nói ở trên để tương tác với database nhắm thêm mới, chỉnh sửa hoặc xóa nội dung trong database.
Để nắm rõ hơn bạn tham khảo http://en.wikipedia.org/wiki/Dynamic_web_page
Bạn có thể cho mình một ít thông tin tổng quan về web động được không (không cần chi tiết mình chỉ cần sơ lược thui)
Thank ban trước .
|
|
|
To minh mang : có lẽ bạn chưa hiểu ý của mình. Mình làm webserver nhưng mình muốn máy của mình đồng thời là DNS server luôn vì DNS có tác dụng chuyển đổi giữa tên miền và IP nếu bạn ko làm DNS server trên máy của bạn mà thông qua 1 DNS khác (như zoneedit hay DYNDNS chẳng hạn) thì khi người khác truy cập vào domain của bạn (ví dụ : abc.com) thì trước hết nó chuyển về DNS của thằng zoneedit (hoặc dyndns) sau đó zoneedit (hoặc dyndns) mới chuyển kết nối đó tới máy của bạn. Mình muốn khi người khác truy cập vào domain của mình thì DNS của mình sẽ làm nhiệm vụ này chứ không phải là zoneedit (hoặc dyndns) (DNS này được setup + config ngay trên máy chủ cài webserver của mình).
To kdot : nếu DNS mà bạn nói đến (trong mạng Lan) thì khỏi nói cái đó dễ quá nhưng quy mô của nó quá nhỏ mình muốn mở rộng quy mô ra ngoài internet chứ không muốn bị giới hạn trong localhost
Được. Khi đó không chỉ các máy trong mạng LAN mà bất kỳ máy nào trên mạng Internet đều sử dụng được DNS server do bạn lập ra.
Các DNS server của FPT, VDC, Viettel.... là ví dụ điển hình nhất. Rất hiều máy tính hiện đang sử dụng các DNS server này
Mình chưa hiểu rõ lắm cái DNS này bạn đang nói đến là DNS gì (theo như mình nghĩ bạn đang nói đến việc cung cấp đường truyền thì phải).
Để hiểu rõ hơn về vấn đề này, bạn nên đọc thêm các tài liệu về DNS.
Tài liệu về DNS thì mình có đọc nhưng hầu hết là nói về cách thức làm việc của nó và giời thiệu về DNS chứ không có cái tài liệu nào nói về cấu hình DNS cho các mục đích cụ thể bạn có tài liệu nào về cấu hình DNS theo mục đích thì share cho mình nhé.
|
|
|
kdot wrote:
Không được đâu bạn à.
Điều bạn nói chỉ có thể trở thành hiện thực nếu máy tính của người dùng chọn DNS server là máy của bạn. Nhưng điều này là không thể.
Chỉ có một cách là cho các DNS server trên thế giới biết domain abcdef.com phải được trỏ đến địa chỉ IP của máy bạn, và không gì khác là ... phải nhờ vào dịch vụ của các trang web đủ "thẩm quyền" như DYNDNS.org chẳng hạn.
P/S: việc thiết lập DNS server của riêng mình là tương đối dễ. Do đó, nó không phải là vấn đề! Bởi vì, nếu có thiết lập, cũng chỉ có mình và những người trong mạng LAN dùng được thôi.
Như vậy mình không thể làm DNS server nếu như không có IP tĩnh đúng không.
Vậy mình hỏi thêm câu này nhé nếu mình có IP tĩnh rồi mình có làm được DNS server không, theo như mình nghe nói thì mình vẫn phải trỏ domain của mình (trong phần manager domain tại nơi mình mua domain) về địa chỉ Ip tĩnh đó tức là vẫn phải qua DNS của bọn cung cấp domain cho mình đúng không.
|
|
|
BlueBird wrote:
Sử dụng web động (ASP, PHP....) cập nhật - chỉnh sửa - xóa nội dung của trang web
Mình xài php nhưng mình chỉ làm phần setup + config server thôi phần viết web người khác làm.
Bạn có thể nói rõ hơn 1 chút về phần dùng php cập nhật chỉnh sửa thay đổi nội dung của trang web được không.
Thank
|
|
|
nlfb wrote:
hi bạn, nếu dùng qua FTP thì thằng Frontpage đã có thể làm được việc đó đấy, đôi khi tớ dùng Total Commander để FTP và edit trực tiếp bằng FP, thân.
Server của mình không dùng FTP chỉ dùng only webserver thui bạn ạ.
Cám ơn góp ý của bạn đó cũng là 1 giải pháp (nhưng lai phải làm thêm FTP server nữa chứ mà mình thì chả dùng thằng FTP làm gì cả).
Bạn nào có thêm giải pháp nào khác thì chỉ mình nha.
|
|
|
|
|
|
|