od

HR组织发展方面的书籍推荐

痴心易碎 提交于 2020-04-07 02:18:30
有HR朋友最近问起笔者有哪些组织发展(OD)书籍值得推荐? 虽然身为人力资源管理的一项重要职能,但组织发展(OD)在国内起步较晚,以至于时至今日在人力资源圈内“OD”都还是一个略显时髦的专业字眼。但时髦归时髦,如今的组织发展OD在企业人力资源管理中正扮演着越来越重要的角色。 很多身处组织发展(OD)岗位的HR也无不紧跟潮流迫切想要提高自己的相关技能。今天为大家推荐的这些组织发展(OD)方面的书籍都是干货满满,可以快速帮助你掌握与组织发展相关的专业知识,从而更好地开展工作。(注:排名不分先后,但涉及到12Reads必读12篇的书,都仅能从信汇中正领导力官网购得,可自行百度书名,其他OD推荐书籍大抵在京东一类的平台都可寻其影踪。) 1、《人力资源管理必读12篇》 人力资本在企业中的重要性与日俱增,企业与企业间的竞争首先即是「人」的竞争。如何通过科学的方法及人力资源机制有效激励和管理员工,是每家企业都在面临的人才挑战。 《人力资源必读12篇》集结世界顶级人力资源管理大师经典,从激励、员工、薪酬、绩效、组织发展、招聘、培训等面向与模块入手,即充分体现人力资本管理的细枝末节又不失实战高度,帮助企业破除组织人力资源顽疾,让CHO(首席人力资源官)比肩CFO(首席财务官)。 2、《卓有成效的组织》 在组织文化领域中,本书作者率先提出了关于文化本质的概念,对于文化的构成因素进行了分析

【逆向笔记】OD工具使用-逆向TraceMe.exe

两盒软妹~` 提交于 2020-03-26 23:46:03
阅览目录 名词注释 OD快捷键熟悉 逆向之猜 算法逆向 暴力破解 样本引用 回到顶部 名词注释 System breakpoint:系统断点,OllyDbg用CreateProcessA加载DEBUG_ONLY_THIS_PROCESS参数执行,程序运行之后会触发一个INT13,在系统空间里。 Entry point of main module:主模块的入口点,即文件的入口点。 WinMain:程序的WinMain()函数入口点 OD的设置中-选项-事件中设置 OD快捷键熟悉 1、F2 下断点, 2、Alt+b 打开断点编辑器,可编辑所有下过的断点 3、空格键 可快速切换断点状态。 4、Ctrl+F9.当位于某个CALL中,这时想返回到调用这个CALL的地方时,可以按“Ctrl+F9”快捷键执行返回功能。这样OD就会停在遇到的第一个返回命令(如RET、RETF或IRET)。 5、Alt+F9 如果跟进系统DLL提供的API函数中,此时想返回到应用程序领空里,可以按快捷键“Alt+F9”执行返回到用户代码命令。 6、Ctrl+G 跳转到API、地址的位置 逆向之猜 逆向与开发的知识是成正比关系,只有对开发特别熟悉,逆向一个程序才能猜测到该用哪个关键的API才能快速定位到程序的数据处理。 通过PEID查看程序特征,根据程序语言用IDE生成特征或者熟悉开发的API函数

OD之修改文件标题(一)

时光毁灭记忆、已成空白 提交于 2020-03-26 23:40:42
OD是逆向工程中的一个重要工具,逆向工程调试说明具体请参考: 百度百科 , OD介绍 ,当然就我了解而言,俗话就是破解软件,市面上的什么破解版,精简版啥的基本都是通过这种技术的,但是这并不能一概而论说逆向工程就是侵权的,在调试测试中它可起的重要的作用. 逆向调试可分为动态分析技术和静态分析技术,动态分析就是实时加载软件,对软件进行实时断点操作;静态分析是指在某些不适合运用软件执行的场合使用的,比如对某种病毒的分析,你运行就不是中招了吗..当然我相信大家在对某种病毒调试时,多会用虚拟机来进行实验吧,就算病毒是内核级的,指向系统硬件的,也不怕它,(重装(新建加载ISO);(或者恢复到相应的快照)这是vm虚拟机的用法,大家可以百度安装,据我了解,新win10也支持了虚拟机的设置,但这里我得提醒一下,win10的虚拟化技术与虚拟机是不兼容的,特别是我在python中部署docker容器的时候,出现的一些错误(虽然我知道docker部署在linux好用一点,但是我对Linux不是很搞得懂的,现在连python的环境配置都失败了好几次,RHEL系统太那个了(一个yum源非得要收费..还得建立本地yum仓库和更改阿里云的centos yum源),几次想rm -rf/*了. 首先得了解一下OD可是比喻为动态分析的宝刀,可以通过这张图了解一下OD的基本界面: 首先我们可以来个最简单的

python loger对象配置 collections random模块

偶尔善良 提交于 2020-03-25 05:44:44
logging 日志 #记录.花钱的,(淘宝)败家的, # 访问的记录, # 员工信息,debug等等都需要日志. # 1,被动触发: 与异常处理配合.访问记录. #2, 主动触发:检测运维人员输入的指令,检测服务器的重要信息,访问记录.等等. 低配版 low版 # import logging # logging.basicConfig(level=logging.INFO, # format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s', # filename='low版logging.log' # ) # msg = 'cpu 正常,硬盘参数...,流量的max:..最小值:.....' # logging.info(msg) # 日志的信息:不能写入文件与显示 同时进行.    logging库提供了多个组件:Logger、Handler、Filter、Formatter。Logger对象提供应用程序可直接使用的接口,Handler发送日志到适当的目的地,Filter提供了过滤日志信息的方法,Formatter指定日志显示格式。另外,可以通过:logger.setLevel(logging.Debug)设置级别,当然,也可以通过 fh.setLevel(logging.Debug

脱壳第二讲,手动脱壳PECompact 2.x

浪尽此生 提交于 2020-03-23 13:46:36
              脱壳第二讲,手动脱壳PECompact 2.x PS: 此博客涉及到PE格式.所以观看此博客你要熟悉PE格式 首先,逆向inc2l这个工具,汇编中可能会用的 inc头文件转换为lib的工具 但是他有壳,先查壳. 发现是这个壳 利用Esp定律,脱掉这个壳. 首先,inc2l.exe是32位的,所以要放到虚拟机中. 一丶OD打开分析 1.OD分析 发现,首先给eax赋值,然后压栈eax,那么eax肯定会访问,那么我们F8到push eax的下面,也就是4022EA的位置 2.查看栈数据 查看栈数据. 那么在栈位置12FFC0的位置,肯定会有访问,我们数据窗口 定位到ESP的位置,也就是0012FFC0 3.在数据窗口定位栈顶位置. CTRL + G命令定位. 由于方便一起截图,事先已经定位过来了. 4.针对栈内容下硬件访问断点(4个字节) 选中栈中地址的值,也就是 push 的eax的值,下硬件访问断点 5.F9运行起来,直到跟到我们的模块分析 第一次F9 依次类推,下方肯定会跳转到我们的程序里面. 一直找到一个跳转到eax的位置 此时EAX的值是 004022E4 而JMP的位置是0040AC1E 由此可以判断出,入口点的位置是4022E4 为什么? 因为壳一般加密之后,如果跳转到入口点,那么它是一个远跳 此时看JMP的地址,和跳的位置就是一个远跳. 6

OD调试学习笔记7—去除未注册版软件的使用次数限制

风格不统一 提交于 2020-03-02 00:37:25
OD调试学习笔记7—去除未注册版软件的使用次数限制 本节使用的软件链接 (想自己试验下的可以下载) 一:破解的思路   仔细观察一个程序,我们会发现,无论在怎么加密,无论加密哪里,这个程序加密的目的就是需要你掏腰包来获得更多的功能或者解除限制。那么我们就可以逆向的来思考,如果该程序成功的注册后,那么程序的行为必将发生变化,如NAG去除了,如功能限制没有了等等。也就是说,程序的代码的走法也会跟未注册的时候截然不同。因为程序的行为改变了,那么决定它所有行为的代码走法也会发生变化。 二:认识OD的两种断点 OllyDBG从原理上来区分,有两种不同的断点:软件断点和硬件断点。 也许会有朋友说那不是还有内存断点吗? 内存断点严格来说是属于一种特殊的软件断点。 内存断点: – 内存断点每次只能设置一个,假如你设置了另一个内存断点,则上一个会被自动删除。 – 设置一个内存断点,会改变整块(4KB)内存的属性,哪怕你只设置一个字节的内存断点。 – 另外还需要提一下的是,内存断点会明显降低OD的性能,因为OD经常会校对内存。 软件断点: – 当我们按下F2设置的断点就是软件断点。 – 设置该断点的原理是在断点处重写代码,插入一个int3中断指令,当CPU执行到int3指令的时候,OD就可以获得控制权。 硬件断点: – 这个原理跟软件断点不同,硬件断点的可行性依赖于CPU的物理支持。 – 传说中

OllyDbg学习之路-3

烈酒焚心 提交于 2020-02-10 00:32:18
6.比较和跳转指令 (1)cmp eax,ecx 相当于sub eax,ecx 但不保存结果到第一个操作数。 根据结果改变零标志位(Z)。相等时,零标志位置1。 根据结果正负改变符号标志位(S)。运算结果为负时,置为1。 cmp允许寄存器与byte、word、dword类型的内存单元做比较。 eg:cmp ax,word ptr ds:[405000] (2)test 两个数值进行与操作,结果不保存,改变相应标志位 eg:test eax,eax 这个指令可以确定eax是否为0 (3)关于寻找跳转,容易忽略提示框中的本地调用来自xxx。 7.call、ret (1)ret指令不仅仅可用于子程序的返回,eg: 12 push 401256ret 等价于 1 jmp 401256 (2)改变程序代码后,反汇编界面右键重新分析。(否则分析可能出错,如栈中信息没有分析出函数间调用。) 8.循环、字符串指令和寻址方式 (1)loop [lable] 等价于 cx=cx-1 若cx!=0 转到lable loopz/loope 等价于cx=cx-1 若cx!=0且zf=1 转到lable loopnz/loopne 等价于cx=cx-1 若cx!=0且zf=0 转到lable (2)movs 从一个地址向另一个地址复制数据。源地址保存在ESI寄存器中,目的地址保存在EDI寄存器中。

线与逻辑详解

亡梦爱人 提交于 2020-01-13 11:57:11
  什么是线与逻辑?需要和CMOS漏极开路门(Open Drain, OD)一起介绍。   通常CMOS门电路都有反相器作为输出缓冲电路,而在工程实践中,有时需要将两个门的输出端并联以实现“与”逻辑的功能称为“线与”逻辑,或者用于驱动大电流负载,或者实现逻辑电平变换。   现在来考虑一种情况,如果将将两个CMOS与非门G 1 和G 2 的输出端连接在一起,如图1所示,并设G 1 的输出处于高电平,T N1 截止,T P1 导通;而G 2 的输出处于低电平,T N2 导通,T P2 截止,这样从G 1 的T P1 端到G 2 的T N2 端将形成一低阻通路,从而产生很大的电流,很有可能导致器件的损毁,并且无法确定输出是高电平还是低电平,这一问题就需要OD门来解决 。    所谓漏极开路门是指CMOS门电路的输出只有NMOS管,并且它的漏极是开路的。使用OD门时必须在漏极和电源V DD 之间外接一个上拉电阻(pull-up resister)R P 。如图2所示为两个OD与非门实现线与,将两个门电路输出端接在一起,通过上拉电阻接电源。   当两个与非门的输出全为1时,输出为1;只要其中以输出为0,则输出为0,所以该电路符合与逻辑功能,即L=(AB)'(CD)'。   上拉电阻对OD门动态性能的影响:   当其他门电路作为OD门的负载时,OD门称为驱动门,其后所接的门电路称为负载门

华为OD两轮技术面试

瘦欲@ 提交于 2020-01-08 20:59:18
华为OD面试 1性格测试 选积极向上的选项,注意,性格测试也会挂人,我一个朋友性格测试就没过。 2机试 一道变成题目 1h 用例60%通过即可 任给一个数组,元素有20M,1T,300G之类的,其中1T=1000G,1G=1000M 按从小到大输出结果 例如:输入:3 20M 1T 300G 输出: 20M 300G 1T 我给出的代码如下(已通过100%用例): package Huawei ; import java . util . Scanner ; /** * Created by xuzhenyu on 2020/1/5. */ public class Test { public static void main ( String [ ] args ) { Scanner scanner = new Scanner ( System . in ) ; int n = scanner . nextInt ( ) ; String [ ] strings = new String [ n ] ; for ( int i = 0 ; i < n ; i ++ ) { strings [ i ] = scanner . next ( ) ; } String [ ] ruslutStrs = sort ( strings ) ; for ( int i = 0 ; i <

python OrderedDict

限于喜欢 提交于 2019-12-16 10:03:42
15年16年接触python时候,还不知道这个函数,只知道dict的无序,造成了一些麻烦 今天view 代码,发现了 OrderedDict() 在python2.7中比较吃内存 pop(获取指定key的value,并在字典中删除) from collections import OrderedDict print("Before deleting:\n") od = OrderedDict() od['a'] = 1 od['b'] = 2 od['c'] = 3 od['d'] = 4 for key, value in od.items(): print(key, value) print("\nAfter deleting:\n") od.pop('c') for key, value in od.items(): print(key, value) print("\nAfter re-inserting:\n") od['c'] = 3 for key, value in od.items(): print(key, value) 来源: https://www.cnblogs.com/vivivi/p/12047456.html