├── README.md
├── 卓然主动防御源码(可执行文件+完整源码+完整作品报告).rar
└── 卓然主动防御源码(可执行文件+完整源码+完整作品报告)
├── 作品报告.doc
├── 源码(应用层+驱动部分)
├── 驱动部分
│ ├── mem
│ │ ├── SOURCES
│ │ ├── memmon.c
│ │ ├── memmon.h
│ │ └── MAKEFILE
│ ├── reg
│ │ ├── SOURCES
│ │ ├── regmon.c
│ │ ├── regmon.h
│ │ └── MAKEFILE
│ ├── file
│ │ ├── SOURCES
│ │ ├── filemon.c
│ │ ├── filemon.h
│ │ └── MAKEFILE
│ └── proc
│ │ ├── sources
│ │ ├── ProcMon.C
│ │ ├── procmon.h
│ │ └── makefile
└── 应用程序部分
│ ├── 卓然驱动级主动防御.suo
│ ├── 卓然驱动级主动防御
│ ├── Main.cpp
│ ├── Main.h
│ ├── SetReg.h
│ ├── http.cpp
│ ├── http.h
│ ├── ioctls.h
│ ├── stdafx.h
│ ├── Dialog3.h
│ ├── HaveProc.h
│ ├── MainDlg.h
│ ├── MainRes.rc
│ ├── MyPage0.h
│ ├── MyPage1.h
│ ├── MyPage2.h
│ ├── MyPage3.h
│ ├── MyPage4.h
│ ├── MyPage5.h
│ ├── MySheet.h
│ ├── ReadMe.txt
│ ├── SetReg.cpp
│ ├── getmd5.cpp
│ ├── memioctl.h
│ ├── regioctl.h
│ ├── rulls.mdb
│ ├── stdafx.cpp
│ ├── AddProcRull.h
│ ├── AddRegRull.h
│ ├── Dialog3.cpp
│ ├── HaveProc.cpp
│ ├── MainDlg.cpp
│ ├── MainRes.aps
│ ├── MyPage0.cpp
│ ├── MyPage1.cpp
│ ├── MyPage2.cpp
│ ├── MyPage3.cpp
│ ├── MyPage4.cpp
│ ├── MyPage5.cpp
│ ├── MySheet.cpp
│ ├── fileioctl.h
│ ├── res
│ │ ├── ico22.ico
│ │ └── bitmap1.bmp
│ ├── AddProcRull.cpp
│ ├── AddRegRull.cpp
│ ├── 卓然驱动级主动防御.vcproj
│ ├── md5.h
│ ├── HttpClient.h
│ ├── 卓然驱动级主动防御.vcproj.lovesuae-PC.lovesuae.user
│ ├── resource.h
│ ├── HttpClient.cpp
│ ├── main.c
│ └── md5.c
│ ├── PropertyDialog_MultiPage.suo
│ └── 卓然驱动级主动防御.sln
└── 导出
├── MemMon.sys
├── RegMon.sys
├── rulls.mdb
├── FileMon.sys
└── ProcMon.sys
/README.md:
--------------------------------------------------------------------------------
1 | # InitiativeDefense
2 | 卓然主动防御源码(可执行文件+完整源码+完整作品报告)
3 |
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告).rar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告).rar
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/作品报告.doc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/作品报告.doc
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/mem/SOURCES:
--------------------------------------------------------------------------------
1 | TARGETNAME=MemMon
2 | TARGETPATH=.\sys
3 | TARGETTYPE=DRIVER
4 | SOURCES=memmon.c
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/reg/SOURCES:
--------------------------------------------------------------------------------
1 | TARGETNAME=RegMon
2 | TARGETPATH=.\sys
3 | TARGETTYPE=DRIVER
4 | SOURCES=RegMon.c
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/导出/MemMon.sys:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/导出/MemMon.sys
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/导出/RegMon.sys:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/导出/RegMon.sys
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/导出/rulls.mdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/导出/rulls.mdb
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/file/SOURCES:
--------------------------------------------------------------------------------
1 | TARGETNAME=FileMon
2 | TARGETPATH=.\sys
3 | TARGETTYPE=DRIVER
4 | SOURCES=filemon.c
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/proc/sources:
--------------------------------------------------------------------------------
1 | TARGETNAME=ProcMon
2 | TARGETPATH=OBJ
3 | TARGETTYPE=DRIVER
4 | SOURCES=PrcoMon.c
5 |
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/导出/FileMon.sys:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/导出/FileMon.sys
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/导出/ProcMon.sys:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/导出/ProcMon.sys
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/mem/memmon.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/mem/memmon.c
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/mem/memmon.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/mem/memmon.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/reg/regmon.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/reg/regmon.c
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/reg/regmon.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/reg/regmon.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御.suo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御.suo
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/file/filemon.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/file/filemon.c
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/file/filemon.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/file/filemon.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/proc/ProcMon.C:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/proc/ProcMon.C
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/proc/procmon.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/proc/procmon.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/Main.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/Main.cpp
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/Main.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/Main.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/SetReg.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/SetReg.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/http.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/http.cpp
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/http.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/http.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/ioctls.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/ioctls.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/stdafx.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/stdafx.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/Dialog3.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/Dialog3.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/HaveProc.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/HaveProc.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MainDlg.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MainDlg.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MainRes.rc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MainRes.rc
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage0.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage0.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage1.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage1.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage2.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage2.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage3.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage3.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage4.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage4.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage5.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage5.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MySheet.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MySheet.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/ReadMe.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/ReadMe.txt
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/SetReg.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/SetReg.cpp
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/getmd5.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/getmd5.cpp
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/memioctl.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/memioctl.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/regioctl.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/regioctl.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/rulls.mdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/rulls.mdb
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/stdafx.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/stdafx.cpp
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/AddProcRull.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/AddProcRull.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/AddRegRull.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/AddRegRull.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/Dialog3.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/Dialog3.cpp
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/HaveProc.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/HaveProc.cpp
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MainDlg.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MainDlg.cpp
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MainRes.aps:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MainRes.aps
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage0.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage0.cpp
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage1.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage1.cpp
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage2.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage2.cpp
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage3.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage3.cpp
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage4.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage4.cpp
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage5.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MyPage5.cpp
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MySheet.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/MySheet.cpp
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/fileioctl.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/fileioctl.h
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/res/ico22.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/res/ico22.ico
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/AddProcRull.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/AddProcRull.cpp
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/AddRegRull.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/AddRegRull.cpp
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/res/bitmap1.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/res/bitmap1.bmp
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/PropertyDialog_MultiPage.suo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/PropertyDialog_MultiPage.suo
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/卓然驱动级主动防御.vcproj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fengjixuchui/InitiativeDefense/HEAD/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/卓然驱动级主动防御.vcproj
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/proc/makefile:
--------------------------------------------------------------------------------
1 | #
2 | # DO NOT EDIT THIS FILE!!! Edit .\sources. if you want to add a new source
3 | # file to this component. This file merely indirects to the real make file
4 | # that is shared by all the driver components of the Windows NT DDK
5 | #
6 |
7 | !INCLUDE $(NTMAKEENV)\makefile.def
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/mem/MAKEFILE:
--------------------------------------------------------------------------------
1 | #
2 | # DO NOT EDIT THIS FILE!!! Edit .\sources. if you want to add a new source
3 | # file to this component. This file merely indirects to the real make file
4 | # that is shared by all the driver components of the Windows NT DDK
5 | #
6 |
7 | !INCLUDE $(NTMAKEENV)\makefile.def
8 |
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/reg/MAKEFILE:
--------------------------------------------------------------------------------
1 | #
2 | # DO NOT EDIT THIS FILE!!! Edit .\sources. if you want to add a new source
3 | # file to this component. This file merely indirects to the real make file
4 | # that is shared by all the driver components of the Windows NT DDK
5 | #
6 |
7 | !INCLUDE $(NTMAKEENV)\makefile.def
8 |
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/驱动部分/file/MAKEFILE:
--------------------------------------------------------------------------------
1 | #
2 | # DO NOT EDIT THIS FILE!!! Edit .\sources. if you want to add a new source
3 | # file to this component. This file merely indirects to the real make file
4 | # that is shared by all the driver components of the Windows NT DDK
5 | #
6 |
7 | !INCLUDE $(NTMAKEENV)\makefile.def
8 |
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/md5.h:
--------------------------------------------------------------------------------
1 | #ifndef MD5_H
2 | #define MD5_H
3 |
4 | #ifdef __alpha
5 | typedef unsigned int uint32;
6 | #else
7 | typedef unsigned long uint32;
8 | #endif
9 |
10 | struct MD5Context {
11 | uint32 buf[4];
12 | uint32 bits[2];
13 | unsigned char in[64];
14 | };
15 |
16 | extern void MD5Init();
17 | extern void MD5Update();
18 | extern void MD5Final();
19 | extern void MD5Transform();
20 |
21 | /*
22 | * This is needed to make RSAREF happy on some MS-DOS compilers.
23 | */
24 | typedef struct MD5Context MD5_CTX;
25 |
26 | #endif /* !MD5_H */
27 |
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 10.00
3 | # Visual Studio 2008
4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "卓然驱动级主动防御", "卓然驱动级主动防御\卓然驱动级主动防御.vcproj", "{73214F96-D4CC-4139-ACB1-01AF2001F026}"
5 | EndProject
6 | Global
7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
8 | Debug|Win32 = Debug|Win32
9 | Release|Win32 = Release|Win32
10 | EndGlobalSection
11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
12 | {73214F96-D4CC-4139-ACB1-01AF2001F026}.Debug|Win32.ActiveCfg = Debug|Win32
13 | {73214F96-D4CC-4139-ACB1-01AF2001F026}.Debug|Win32.Build.0 = Debug|Win32
14 | {73214F96-D4CC-4139-ACB1-01AF2001F026}.Release|Win32.ActiveCfg = Release|Win32
15 | {73214F96-D4CC-4139-ACB1-01AF2001F026}.Release|Win32.Build.0 = Release|Win32
16 | EndGlobalSection
17 | GlobalSection(SolutionProperties) = preSolution
18 | HideSolutionNode = FALSE
19 | EndGlobalSection
20 | EndGlobal
21 |
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/HttpClient.h:
--------------------------------------------------------------------------------
1 | // HttpClient.h: interface for the CHttpClient class.
2 | //
3 | //////////////////////////////////////////////////////////////////////
4 |
5 | #if !defined(AFX_HTTPCLIENT_H__EA769DCB_AAB9_47CD_BD87_FBD6913592C5__INCLUDED_)
6 | #define AFX_HTTPCLIENT_H__EA769DCB_AAB9_47CD_BD87_FBD6913592C5__INCLUDED_
7 |
8 | #if _MSC_VER > 1000
9 | #pragma once
10 | #endif // _MSC_VER > 1000
11 | #include "wininet.h"
12 | #include "afxinet.h"
13 | class CHttpClient
14 | {
15 | public:
16 | void addParam(CString name,CString value);
17 | CString doPost(CString href);
18 | CString doGet(CString href);
19 | CHttpClient();
20 | virtual ~CHttpClient();
21 |
22 | private:
23 | CString CONTENT;
24 | int CL;
25 | CStringList values;
26 | CStringList names;
27 | };
28 |
29 | #endif // !defined
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/卓然驱动级主动防御.vcproj.lovesuae-PC.lovesuae.user:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
11 |
35 |
36 |
39 |
63 |
64 |
65 |
66 |
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/resource.h:
--------------------------------------------------------------------------------
1 | //{{NO_DEPENDENCIES}}
2 | // Microsoft Visual C++ generated include file.
3 | // Used by MainRes.rc
4 | //
5 | #define IDOK2 3
6 | #define IDCANCEL2 4
7 | #define IDM_ABOUTBOX 0x0010
8 | #define IDD_ABOUTBOX 100
9 | #define IDS_ABOUTBOX 101
10 | #define IDD_PROPERTYDIALOG_MULTIPAGE_DIALOG 102
11 | #define IDD_MAIN 102
12 | #define IDD_PROPPAGE_2 103
13 | #define IDD_PROPPAGE_1 104
14 | #define IDD_PROPPAGE_SMALL3 105
15 | #define IDD_PROPPAGE_3 105
16 | #define IDD_PROPPAGE_SMALL 106
17 | #define IDD_PROPPAGE_4 106
18 | #define IDD_DIALOG1 129
19 | #define IDD_DIALOG2 130
20 | #define IDD_PROPPAGE_SMALL1 131
21 | #define IDD_PROPPAGE_5 131
22 | #define IDD_PROPPAGE_SMALL2 132
23 | #define IDD_PROPPAGE_0 132
24 | #define IDB_BITMAP1 137
25 | #define IDD_DIALOG3 139
26 | #define IDD_DIALOG4 140
27 | #define IDB_BITMAP2 141
28 | #define IDI_ICON1 142
29 | #define IDR_MAINFRAME 142
30 | #define IDI_ICON2 143
31 | #define IDI_ICO1 143
32 | #define IDC_BUTTON1 1000
33 | #define IDC_EDIT1 1001
34 | #define IDC_EDIT2 1002
35 | #define IDC_EDIT3 1003
36 | #define IDC_BUTTON2 1004
37 | #define IDC_EDIT4 1004
38 | #define IDC_BUTTON3 1005
39 | #define IDC_EDIT5 1005
40 | #define IDC_BUTTON4 1006
41 | #define IDC_BUTTON5 1007
42 | #define IDC_BUTTON7 1007
43 | #define IDC_CHECK1 1008
44 | #define IDC_LIST1 1010
45 | #define IDC_BUTTON6 1011
46 | #define IDC_BUTTON8 1012
47 | #define IDC_BUTTON9 1013
48 | #define IDC_BUTTON10 1014
49 | #define IDC_BUTTON11 1015
50 | #define IDC_BUTTON12 1016
51 | #define IDC_LIST3 1019
52 |
53 | // Next default values for new objects
54 | //
55 | #ifdef APSTUDIO_INVOKED
56 | #ifndef APSTUDIO_READONLY_SYMBOLS
57 | #define _APS_NEXT_RESOURCE_VALUE 144
58 | #define _APS_NEXT_COMMAND_VALUE 32771
59 | #define _APS_NEXT_CONTROL_VALUE 1021
60 | #define _APS_NEXT_SYMED_VALUE 101
61 | #endif
62 | #endif
63 |
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/HttpClient.cpp:
--------------------------------------------------------------------------------
1 | // HttpClient.cpp: implementation of the CHttpClient class.
2 | // Download by http://www.51xue8xue8.com
3 | //////////////////////////////////////////////////////////////////////
4 |
5 | #include "stdafx.h"
6 | // #include "emailsenderv2.h"
7 | #include "HttpClient.h"
8 |
9 | #ifdef _DEBUG
10 | #undef THIS_FILE
11 | static char THIS_FILE[]=__FILE__;
12 | #define new DEBUG_NEW
13 | #endif
14 |
15 | //////////////////////////////////////////////////////////////////////
16 | // Construction/Destruction
17 | //////////////////////////////////////////////////////////////////////
18 |
19 | CHttpClient::CHttpClient()
20 | {
21 |
22 | }
23 |
24 | CHttpClient::~CHttpClient()
25 | {
26 |
27 | }
28 |
29 | CString CHttpClient::doGet(CString href)
30 | {
31 | CString httpsource=L"";
32 | CInternetSession session1(NULL,0);
33 | CHttpFile* pHTTPFile=NULL;
34 | try{
35 | pHTTPFile=(CHttpFile*)session1.OpenURL(href);
36 | //session1.
37 | }catch(CInternetException){
38 | pHTTPFile=NULL;
39 | }
40 | if(pHTTPFile)
41 | {
42 | CString text;
43 | for(int i=0;pHTTPFile->ReadString(text);i++)
44 | {
45 | httpsource=httpsource+text+L"\r\n";
46 | }
47 | pHTTPFile->Close();
48 | delete pHTTPFile;
49 | }else
50 | {
51 |
52 | }
53 | return httpsource;
54 | }
55 |
56 | CString CHttpClient::doPost(CString href)
57 | {
58 | CString httpsource=L"";
59 | CInternetSession session1;
60 | CHttpConnection* conn1=NULL;
61 | CHttpFile* pFile = NULL;
62 | CString strServerName;
63 | CString strObject;
64 | INTERNET_PORT nPort;
65 | DWORD dwServiceType;
66 | AfxParseURL((LPCTSTR)href,dwServiceType, strServerName, strObject, nPort);
67 | DWORD retcode;
68 | WCHAR * outBuff = CONTENT.GetBuffer(1000);
69 | try
70 | {
71 | conn1 = session1.GetHttpConnection(strServerName,nPort);
72 | pFile = conn1->OpenRequest(0,strObject,NULL,1,NULL,L"HTTP/1.1",INTERNET_FLAG_EXISTING_CONNECT|INTERNET_FLAG_NO_AUTO_REDIRECT);
73 | pFile -> AddRequestHeaders(L"Content-Type: application/x-www-form-urlencoded");
74 | pFile -> AddRequestHeaders(L"Accept: */*");
75 | pFile -> SendRequest(NULL,0,outBuff,wcslen(outBuff)+1);
76 | pFile -> QueryInfoStatusCode(retcode);
77 | }
78 | catch (CInternetException * e){};
79 | if(pFile)
80 | {
81 | CString text;
82 | for(int i=0;pFile->ReadString(text);i++)
83 | {
84 | httpsource=httpsource+text+L"\r\n";
85 | }
86 | pFile->Close();
87 | }else
88 | {
89 |
90 | }
91 | return httpsource;
92 | delete pFile;
93 | delete conn1;
94 | session1.Close();
95 | }
96 |
97 | void CHttpClient::addParam(CString name, CString value)
98 | {
99 | names.AddTail((LPCTSTR)name);
100 | values.AddTail((LPCTSTR)value);
101 | CString eq=L"=";
102 | CString an=L"&";
103 | CONTENT=CONTENT+name+eq+value+an;
104 | CL=CONTENT.GetLength();
105 | }
106 |
107 |
108 |
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/main.c:
--------------------------------------------------------------------------------
1 |
2 | #include
3 | #include
4 | #include
5 |
6 | #include
7 | #include
8 |
9 |
10 | #include "md5.h"
11 |
12 | #define FALSE 0
13 | #define TRUE 1
14 |
15 | #define EOS '\0'
16 |
17 | /* Main program */
18 |
19 | int main(argc, argv)
20 | int argc; char *argv[];
21 | {
22 | int i, j, cdata = FALSE, docheck = FALSE, f = 0;
23 | unsigned int bp;
24 | char *cp, *clabel, opt;
25 | FILE *in = stdin, *out = stdout;
26 | unsigned char buffer[16384], signature[16], csig[16];
27 | struct MD5Context md5c;
28 |
29 | MD5Init(&md5c);
30 | for (i = 1; i < argc; i++) {
31 | cp = argv[i];
32 | if (*cp == '-') {
33 | opt = *(++cp);
34 | if (islower(opt)) {
35 | opt = toupper(opt);
36 | }
37 |
38 | switch (opt) {
39 |
40 | case 'C': /* -Csignature -- Check signature, set return code */
41 | docheck = TRUE;
42 | if (strlen(cp + 1) != 32) {
43 | docheck = FALSE;
44 | }
45 | memset(csig, 0, 16);
46 | clabel = cp + 1;
47 | for (j = 0; j < 16; j++) {
48 | if (isxdigit(clabel[0]) && isxdigit(clabel[1]) &&
49 | sscanf((cp + 1 + (j * 2)), "%02X", &bp) == 1) {
50 | csig[j] = (unsigned char) bp;
51 | } else {
52 | docheck = FALSE;
53 | break;
54 | }
55 | clabel += 2;
56 | }
57 | if (!docheck) {
58 | fprintf(stderr, "Error in signature specification. Must be 32 hex digits.\n");
59 | return 2;
60 | }
61 | break;
62 |
63 | case 'D': /* -Dtext -- Compute signature of given text */
64 | MD5Update(&md5c, (unsigned char *) (cp + 1), strlen(cp + 1));
65 | cdata = TRUE;
66 | f++; /* Mark no infile argument needed */
67 | break;
68 |
69 | case '?': /* -U, -? -H -- Print how to call information. */
70 | case 'H':
71 | case 'U':
72 | fprintf(stderr,"\nMD5 -- Calculate MD5 signature of file. Call");
73 | fprintf(stderr,
74 | "\n with md5 [ options ] [input [output]]");
75 | fprintf(stderr,"\n");
76 | fprintf(stderr,"\n Options:");
77 | fprintf(stderr,"\n -csig Check against sig, set exit status 0 = OK");
78 | fprintf(stderr,"\n -dtext Compute signature of text argument");
79 | fprintf(stderr,"\n -u Print this message");
80 | fprintf(stderr,"\n");
81 | fprintf(stderr,"\nby John Walker -- http://www.fourmilab.ch/");
82 | fprintf(stderr,"\n");
83 | return 0;
84 | }
85 | } else {
86 | switch (f) {
87 | case 0:
88 | if (strcmp(cp, "-") != 0) {
89 | if ((in = fopen(cp, "rb")) == NULL) {
90 | fprintf(stderr, "Cannot open input file %s\n", cp);
91 | return 2;
92 | }
93 | }
94 | f++;
95 | break;
96 |
97 | case 1:
98 | if (strcmp(cp, "-") != 0) {
99 | if ((out = fopen(cp, "w")) == NULL) {
100 | fprintf(stderr, "Cannot open output file %s\n", cp);
101 | return 2;
102 | }
103 | }
104 | f++;
105 | break;
106 |
107 | default:
108 | fprintf(stderr, "Too many file names specified.\n");
109 | return 2;
110 | }
111 | }
112 | }
113 |
114 | if (!cdata) {
115 | #ifdef _WIN32
116 | /** Warning! On systems which distinguish text mode and
117 | binary I/O (MS-DOS, Macintosh, etc.) the modes in the open
118 | statement for "in" should have forced the input file into
119 | binary mode. But what if we're reading from standard
120 | input? Well, then we need to do a system-specific tweak
121 | to make sure it's in binary mode. While we're at it,
122 | let's set the mode to binary regardless of however fopen
123 | set it.
124 |
125 | The following code, conditional on _WIN32, sets binary
126 | mode using the method prescribed by Microsoft Visual C 5.0
127 | ("Monkey C"); this may require modification if you're
128 | using a different compiler or release of Monkey C. If
129 | you're porting this code to a different system which
130 | distinguishes text and binary files, you'll need to add
131 | the equivalent call for that system. */
132 |
133 | _setmode(_fileno(in), _O_BINARY);
134 | #endif
135 | while ((i = fread(buffer, 1, sizeof buffer, in)) > 0) {
136 | MD5Update(&md5c, buffer, (unsigned) i);
137 | }
138 | }
139 | MD5Final(signature, &md5c);
140 |
141 | if (docheck) {
142 | docheck = 0;
143 | for (i = 0; i < sizeof signature; i++) {
144 | if (signature[i] != csig[i]) {
145 | docheck = 1;
146 | break;
147 | }
148 | }
149 | } else {
150 | for (i = 0; i < sizeof signature; i++) {
151 | fprintf(out, "%02X", signature[i]);
152 | }
153 | fprintf(out, "\n");
154 | }
155 |
156 | return docheck;
157 | }
158 |
--------------------------------------------------------------------------------
/卓然主动防御源码(可执行文件+完整源码+完整作品报告)/源码(应用层+驱动部分)/应用程序部分/卓然驱动级主动防御/md5.c:
--------------------------------------------------------------------------------
1 |
2 |
3 | #include /* for memcpy() */
4 | #include "md5.h"
5 |
6 | #ifdef sgi
7 | #define HIGHFIRST
8 | #endif
9 |
10 | #ifdef sun
11 | #define HIGHFIRST
12 | #endif
13 |
14 | #ifndef HIGHFIRST
15 | #define byteReverse(buf, len) /* Nothing */
16 | #else
17 | /*
18 | * Note: this code is harmless on little-endian machines.
19 | */
20 | void byteReverse(buf, longs)
21 | unsigned char *buf; unsigned longs;
22 | {
23 | uint32 t;
24 | do {
25 | t = (uint32) ((unsigned) buf[3] << 8 | buf[2]) << 16 |
26 | ((unsigned) buf[1] << 8 | buf[0]);
27 | *(uint32 *) buf = t;
28 | buf += 4;
29 | } while (--longs);
30 | }
31 | #endif
32 |
33 | /*
34 | * Start MD5 accumulation. Set bit count to 0 and buffer to mysterious
35 | * initialization constants.
36 | */
37 | void MD5Init(ctx)
38 | struct MD5Context *ctx;
39 | {
40 | ctx->buf[0] = 0x67452301;
41 | ctx->buf[1] = 0xefcdab89;
42 | ctx->buf[2] = 0x98badcfe;
43 | ctx->buf[3] = 0x10325476;
44 |
45 | ctx->bits[0] = 0;
46 | ctx->bits[1] = 0;
47 | }
48 |
49 | /*
50 | * Update context to reflect the concatenation of another buffer full
51 | * of bytes.
52 | */
53 | void MD5Update(ctx, buf, len)
54 | struct MD5Context *ctx; unsigned char *buf; unsigned len;
55 | {
56 | uint32 t;
57 |
58 | /* Update bitcount */
59 |
60 | t = ctx->bits[0];
61 | if ((ctx->bits[0] = t + ((uint32) len << 3)) < t)
62 | ctx->bits[1]++; /* Carry from low to high */
63 | ctx->bits[1] += len >> 29;
64 |
65 | t = (t >> 3) & 0x3f; /* Bytes already in shsInfo->data */
66 |
67 | /* Handle any leading odd-sized chunks */
68 |
69 | if (t) {
70 | unsigned char *p = (unsigned char *) ctx->in + t;
71 |
72 | t = 64 - t;
73 | if (len < t) {
74 | memcpy(p, buf, len);
75 | return;
76 | }
77 | memcpy(p, buf, t);
78 | byteReverse(ctx->in, 16);
79 | MD5Transform(ctx->buf, (uint32 *) ctx->in);
80 | buf += t;
81 | len -= t;
82 | }
83 | /* Process data in 64-byte chunks */
84 |
85 | while (len >= 64) {
86 | memcpy(ctx->in, buf, 64);
87 | byteReverse(ctx->in, 16);
88 | MD5Transform(ctx->buf, (uint32 *) ctx->in);
89 | buf += 64;
90 | len -= 64;
91 | }
92 |
93 | /* Handle any remaining bytes of data. */
94 |
95 | memcpy(ctx->in, buf, len);
96 | }
97 |
98 | /*
99 | * Final wrapup - pad to 64-byte boundary with the bit pattern
100 | * 1 0* (64-bit count of bits processed, MSB-first)
101 | */
102 | void MD5Final(digest, ctx)
103 | unsigned char digest[16]; struct MD5Context *ctx;
104 | {
105 | unsigned count;
106 | unsigned char *p;
107 |
108 | /* Compute number of bytes mod 64 */
109 | count = (ctx->bits[0] >> 3) & 0x3F;
110 |
111 | /* Set the first char of padding to 0x80. This is safe since there is
112 | always at least one byte free */
113 | p = ctx->in + count;
114 | *p++ = 0x80;
115 |
116 | /* Bytes of padding needed to make 64 bytes */
117 | count = 64 - 1 - count;
118 |
119 | /* Pad out to 56 mod 64 */
120 | if (count < 8) {
121 | /* Two lots of padding: Pad the first block to 64 bytes */
122 | memset(p, 0, count);
123 | byteReverse(ctx->in, 16);
124 | MD5Transform(ctx->buf, (uint32 *) ctx->in);
125 |
126 | /* Now fill the next block with 56 bytes */
127 | memset(ctx->in, 0, 56);
128 | } else {
129 | /* Pad block to 56 bytes */
130 | memset(p, 0, count - 8);
131 | }
132 | byteReverse(ctx->in, 14);
133 |
134 | /* Append length in bits and transform */
135 | ((uint32 *) ctx->in)[14] = ctx->bits[0];
136 | ((uint32 *) ctx->in)[15] = ctx->bits[1];
137 |
138 | MD5Transform(ctx->buf, (uint32 *) ctx->in);
139 | byteReverse((unsigned char *) ctx->buf, 4);
140 | memcpy(digest, ctx->buf, 16);
141 | memset(ctx, 0, sizeof(ctx)); /* In case it's sensitive */
142 | }
143 |
144 |
145 | /* The four core functions - F1 is optimized somewhat */
146 |
147 | /* #define F1(x, y, z) (x & y | ~x & z) */
148 | #define F1(x, y, z) (z ^ (x & (y ^ z)))
149 | #define F2(x, y, z) F1(z, x, y)
150 | #define F3(x, y, z) (x ^ y ^ z)
151 | #define F4(x, y, z) (y ^ (x | ~z))
152 |
153 | /* This is the central step in the MD5 algorithm. */
154 | #define MD5STEP(f, w, x, y, z, data, s) \
155 | ( w += f(x, y, z) + data, w = w<>(32-s), w += x )
156 |
157 | /*
158 | * The core of the MD5 algorithm, this alters an existing MD5 hash to
159 | * reflect the addition of 16 longwords of new data. MD5Update blocks
160 | * the data and converts bytes into longwords for this routine.
161 | */
162 | void MD5Transform(buf, in)
163 | uint32 buf[4]; uint32 in[16];
164 | {
165 | register uint32 a, b, c, d;
166 |
167 | a = buf[0];
168 | b = buf[1];
169 | c = buf[2];
170 | d = buf[3];
171 |
172 | MD5STEP(F1, a, b, c, d, in[0] + 0xd76aa478, 7);
173 | MD5STEP(F1, d, a, b, c, in[1] + 0xe8c7b756, 12);
174 | MD5STEP(F1, c, d, a, b, in[2] + 0x242070db, 17);
175 | MD5STEP(F1, b, c, d, a, in[3] + 0xc1bdceee, 22);
176 | MD5STEP(F1, a, b, c, d, in[4] + 0xf57c0faf, 7);
177 | MD5STEP(F1, d, a, b, c, in[5] + 0x4787c62a, 12);
178 | MD5STEP(F1, c, d, a, b, in[6] + 0xa8304613, 17);
179 | MD5STEP(F1, b, c, d, a, in[7] + 0xfd469501, 22);
180 | MD5STEP(F1, a, b, c, d, in[8] + 0x698098d8, 7);
181 | MD5STEP(F1, d, a, b, c, in[9] + 0x8b44f7af, 12);
182 | MD5STEP(F1, c, d, a, b, in[10] + 0xffff5bb1, 17);
183 | MD5STEP(F1, b, c, d, a, in[11] + 0x895cd7be, 22);
184 | MD5STEP(F1, a, b, c, d, in[12] + 0x6b901122, 7);
185 | MD5STEP(F1, d, a, b, c, in[13] + 0xfd987193, 12);
186 | MD5STEP(F1, c, d, a, b, in[14] + 0xa679438e, 17);
187 | MD5STEP(F1, b, c, d, a, in[15] + 0x49b40821, 22);
188 |
189 | MD5STEP(F2, a, b, c, d, in[1] + 0xf61e2562, 5);
190 | MD5STEP(F2, d, a, b, c, in[6] + 0xc040b340, 9);
191 | MD5STEP(F2, c, d, a, b, in[11] + 0x265e5a51, 14);
192 | MD5STEP(F2, b, c, d, a, in[0] + 0xe9b6c7aa, 20);
193 | MD5STEP(F2, a, b, c, d, in[5] + 0xd62f105d, 5);
194 | MD5STEP(F2, d, a, b, c, in[10] + 0x02441453, 9);
195 | MD5STEP(F2, c, d, a, b, in[15] + 0xd8a1e681, 14);
196 | MD5STEP(F2, b, c, d, a, in[4] + 0xe7d3fbc8, 20);
197 | MD5STEP(F2, a, b, c, d, in[9] + 0x21e1cde6, 5);
198 | MD5STEP(F2, d, a, b, c, in[14] + 0xc33707d6, 9);
199 | MD5STEP(F2, c, d, a, b, in[3] + 0xf4d50d87, 14);
200 | MD5STEP(F2, b, c, d, a, in[8] + 0x455a14ed, 20);
201 | MD5STEP(F2, a, b, c, d, in[13] + 0xa9e3e905, 5);
202 | MD5STEP(F2, d, a, b, c, in[2] + 0xfcefa3f8, 9);
203 | MD5STEP(F2, c, d, a, b, in[7] + 0x676f02d9, 14);
204 | MD5STEP(F2, b, c, d, a, in[12] + 0x8d2a4c8a, 20);
205 |
206 | MD5STEP(F3, a, b, c, d, in[5] + 0xfffa3942, 4);
207 | MD5STEP(F3, d, a, b, c, in[8] + 0x8771f681, 11);
208 | MD5STEP(F3, c, d, a, b, in[11] + 0x6d9d6122, 16);
209 | MD5STEP(F3, b, c, d, a, in[14] + 0xfde5380c, 23);
210 | MD5STEP(F3, a, b, c, d, in[1] + 0xa4beea44, 4);
211 | MD5STEP(F3, d, a, b, c, in[4] + 0x4bdecfa9, 11);
212 | MD5STEP(F3, c, d, a, b, in[7] + 0xf6bb4b60, 16);
213 | MD5STEP(F3, b, c, d, a, in[10] + 0xbebfbc70, 23);
214 | MD5STEP(F3, a, b, c, d, in[13] + 0x289b7ec6, 4);
215 | MD5STEP(F3, d, a, b, c, in[0] + 0xeaa127fa, 11);
216 | MD5STEP(F3, c, d, a, b, in[3] + 0xd4ef3085, 16);
217 | MD5STEP(F3, b, c, d, a, in[6] + 0x04881d05, 23);
218 | MD5STEP(F3, a, b, c, d, in[9] + 0xd9d4d039, 4);
219 | MD5STEP(F3, d, a, b, c, in[12] + 0xe6db99e5, 11);
220 | MD5STEP(F3, c, d, a, b, in[15] + 0x1fa27cf8, 16);
221 | MD5STEP(F3, b, c, d, a, in[2] + 0xc4ac5665, 23);
222 |
223 | MD5STEP(F4, a, b, c, d, in[0] + 0xf4292244, 6);
224 | MD5STEP(F4, d, a, b, c, in[7] + 0x432aff97, 10);
225 | MD5STEP(F4, c, d, a, b, in[14] + 0xab9423a7, 15);
226 | MD5STEP(F4, b, c, d, a, in[5] + 0xfc93a039, 21);
227 | MD5STEP(F4, a, b, c, d, in[12] + 0x655b59c3, 6);
228 | MD5STEP(F4, d, a, b, c, in[3] + 0x8f0ccc92, 10);
229 | MD5STEP(F4, c, d, a, b, in[10] + 0xffeff47d, 15);
230 | MD5STEP(F4, b, c, d, a, in[1] + 0x85845dd1, 21);
231 | MD5STEP(F4, a, b, c, d, in[8] + 0x6fa87e4f, 6);
232 | MD5STEP(F4, d, a, b, c, in[15] + 0xfe2ce6e0, 10);
233 | MD5STEP(F4, c, d, a, b, in[6] + 0xa3014314, 15);
234 | MD5STEP(F4, b, c, d, a, in[13] + 0x4e0811a1, 21);
235 | MD5STEP(F4, a, b, c, d, in[4] + 0xf7537e82, 6);
236 | MD5STEP(F4, d, a, b, c, in[11] + 0xbd3af235, 10);
237 | MD5STEP(F4, c, d, a, b, in[2] + 0x2ad7d2bb, 15);
238 | MD5STEP(F4, b, c, d, a, in[9] + 0xeb86d391, 21);
239 |
240 | buf[0] += a;
241 | buf[1] += b;
242 | buf[2] += c;
243 | buf[3] += d;
244 | }
245 |
--------------------------------------------------------------------------------