利用js快速完成大学生新生安全教育课程

0. 注意

全文仅供学习参考,有时间的同学还是请认认真真的学习该课程。

1. 解决方法

  1. 用浏览器(建议用chrome)打开课程主页,然后点击去学习接着点击该课程下的一节课!

  2. F12打开开发者工具,打开console,然后切换javascript contextmcwk
    在这里插入图片描述

  3. 输入finishWxCourse();回车即可!

在这里插入图片描述

  1. 返回课程列表页面,查看该节课是否已完成?

Ps: 注意以下几点:

  • 如果返回到课程列表页面,该节课是未完成状态,可能是缓存,可以重新执行上述步骤,或者先处理其他课,隔一段时间再看是否已完成。

2. 分析

登录之后,点击新生课堂
在这里插入图片描述

然后随便一门课
在这里插入图片描述
在这里插入图片描述

就第一个 防盗知识-基础篇吧,完成该节课学习之后,弹出来一个alert。

在这里插入图片描述

看到嵌入式页面,可以猜测是从<iframe></iframe>中弹出来的。

同时,我们可以从network中看到多一个请求

在这里插入图片描述

根据字面意思,大概就是向服务器发送请求表明我已经完成了该节课的学习。

通过查看该请求的Initiator(下图),可以得知该请求是从wx.jsfinishWxCourse()发起的。

在这里插入图片描述

wx.js中的finishWxCourse()如下:

function finishWxCourse() {
	try{console.log(exportRoot.currentFrame)}catch(e){}
    try {
        var userid = getQueryString("userCourseId");
        var jiaoxuejihuaid = getQueryString("tenantCode");
        var finishWxHost = document.referrer.replace("http://","").replace("https://","").split("/")[0];
		if(document.referrer=="" || document.referrer==null || document.referrer==undefined){
			finishWxHost = "weiban.mycourse.cn"
		}

        var webUrl = window.location.href;
		var finishWxUrl=getRecordUrl(webUrl);
		if(finishWxHost.indexOf("218.25.139.161") > 0){
            //finishWxUrl = "http://"+finishWxHost+"/pharos/usercourse/finish.do";
			finishWxUrl = "https://"+finishWxHost+"/pharos/usercourse/finish.do";
        }
			 
		var finishData = {"userCourseId": userid, "tenantCode": jiaoxuejihuaid};
        	
        $.ajax({
            async: false,
            url: finishWxUrl,
            type: "GET",
            dataType: "jsonp",
            data: finishData,
            timeout: 5000,

            success : function (data) {
                if (data.msg == "ok") {
                    alert("恭喜,您已完成本微课的学习");
                } else {
                    alert("发送完成失败");
                }
            },
            error: function (XMLHttpRequest, textStatus, errorThrown) {
            }
        });
    } catch (e) {
        alert("报了啥错误" + e)
    }
}

可以看到该函数主要就是拿到var finishData = {"userCourseId": userid, "tenantCode": jiaoxuejihuaid};之后发起Ajax请求。

那我们先直接无脑在console中直接运行该函数,看能得到什么结果。

注意此处将javascript context切换到mcwk.mycourse.cn这个iframe中。

在这里插入图片描述

结果运行如下:

在这里插入图片描述

返回到课程页面,可以看到该课程已完成。

3. 总结

很意外找到此方法!他并没有用到瑞数那种比较复杂的反爬技术,仅供学习参考吧!

另外,该课程的考试比较简单,建议开两个窗口,一个是考试窗口,另一个用百度在过程中搜题!

<think>好的,我现在需要处理用户的这个查询,用户想要寻找与安全微相关的脚本或教程,特别是IT安全培训方面的。首先,我得仔细分析用户的需求。用户提到了“安全微”、“脚本”、“示例”以及“IT安全培训”,所以核心是要找到相关的教育资源,可能包括课程设计、脚本示例、制作工具等。 接下来,我应该回顾用户提供的引用内容。引用1提到了HTML5和CSS3的前端教程,附带了很多资源,比如思政元素、案例代码、PPT件、微视频等,这可能对用户有帮助,特别是如果用户需要制作微的技术指导。引用2讲的是用Python在Mac上录制PPT微,这直接关联到微制作的技术步骤,可能用户需要具体的脚本示例。引用3是关于运行Web项目的Docker命令,可能和部署有关,但不确定是否相关。引用4推荐了一些免费工具,如MindShow和剪映,这对制作微的工具选择有帮助。 用户的需求可能包括几个方面:寻找现成的微脚本示例,了解如何制作安全相关的微,获取制作工具的建议,以及可能的IT安全培训内容的设计。我需要综合引用中的信息,给出结构化的回答,包括示例脚本、制作工具推荐、内容设计建议和相关资源推荐。 首先,关于脚本示例,引用2提到了用Python录制PPT微的脚本,可以提供一个修改后的示例,专注于IT安全内容,比如在PPT中添加安全相关的幻灯片,并用Python自动化录制。同时,引用1中的案例源代码和PPT件可能可以作为模板,帮助用户设计内容。 其次,制作工具方面,引用4推荐了MindShow和剪映,这些都是用户友好的工具,适合制作微。可能需要详细说明如何使用这些工具,特别是如何结合安全主题。 内容设计方面,用户需要IT安全培训的素材,可以建议结合真实案例,如钓鱼攻击、数据泄露,并设计互动环节,比如选择题或模拟演练。引用1中的思政元素可能可以融入安全教育,强调安全意识的重要性。 资源推荐部分,引用1的书籍和配套资源可以直接推荐,同时引用2和4的工具和脚本也是重点。另外,可能需要补充一些外部资源链接,但根据用户提供的引用,只能使用站内引用,所以需要确保所有推荐都基于已有的四个引用。 还要注意用户可能需要分步指导,比如如何规划微结构,如何制作,如何集成互动元素。同时,用户可能希望了解如何将技术工具(如Python脚本)与安全教育内容结合,所以示例脚本需要清晰展示这一点。 最后,生成的相关问题需要围绕用户可能的后续需求,比如如何设计互动环节、如何评估培训效果、如何将微部署到在线平台,以及具体的工具使用问题。这些问题应该基于已有的引用内容,确保用户可以在站内找到更多信息。</think>### 安全教育脚本设计与IT安全培训示例 #### 一、安全教育脚本设计框架 1. **微结构示例**(基于引用[2]中的脚本思路): ```python # 导入录制PPT所需的库(示例代码需结合具体工具API) from ppt_recorder import start_recording, add_narration # 定义安全教育PPT内容结构 security_content = [ {"title": "钓鱼攻击案例", "duration": 30, "narration": "讲解邮件钓鱼的识别方法..."}, {"title": "密码安全管理", "duration": 45, "narration": "演示强密码生成技巧..."}, {"title": "数据泄露应对", "duration": 40, "narration": "分析企业级应急响应流程"} ] # 自动化生成微视频 def create_security_microcourse(): start_recording("IT安全培训") for slide in security_content: add_narration(slide["title"], slide["narration"], slide["duration"]) return "生成文件路径" ``` 2. **互动设计建议**(参考引用[1]中的案例设计): - 插入选择题:`<iframe>嵌入网络安全知识测试题</iframe>` - 模拟攻击场景:通过动画展示`$XSS攻击流程 \rightarrow 防御方案$` #### 二、IT安全培训内容设计 1. **核心知识点**: - 密码学基础:`$RSA加密原理: C = M^e \mod n$` - 网络协议安全:`$$TLS 1.3握手时延 \leq 1RTT$$` - 渗透测试方法(结合引用[3]的部署环境): ```bash # 模拟安全测试容器部署 docker run -p 8080:8080 --security-opt seccomp=unconfined pentest-tool:v2 ``` #### 三、推荐制作工具 1. **快速开发工具**(引用[4]建议): - MindShow:支持`Markdown转安全知识思维导图` - 剪映:添加`漏洞演示动画`+`AI语音解说` #### 四、配套资源推荐 - 《HTML5+CSS3》教材的"表单安全验证"章节案例源码(引用[1]) - 教学大纲设计模板(含思政元素:工程师伦理责任)
评论 34
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Honyelchak

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值