Category Archives: 技术学习

学而时习之!

使用Chrome插件在页面加载完成之前执行JS注入

使用以下代码可以跳过chrome 插件沙盒执行JS注入 extension/manifest.json {   "manifest_version": 2,   "name": "Content Script Sandbox Breakout Extension",   "version": "1.0.0",   "applications": {     "gecko": {       "id": "[email protected]"     }   },   "content_scripts": [     {       "matches": ["<all_urls>"],       "js": ["sandbox-breakout.js"],       "run_at": "document_start"… Read More »

【技巧】Windows Server 2012/2016/2019桌面显示我的电脑图标

从Windows Server 2012开始,微软取消了服务器桌面个性化设置功能,Windows Server 2012/2016用户桌面上默认只有一个回收站的图标,这让习惯于使用我的电脑图标功能的用户很不适应,本文说明如何让Windows Server 2012/2016的用户桌面显示我的电脑图标。 很简单的事情就不上图了,操作如下: 打开运行对话框 按下Windows系统热键Win+R,打开运行对话框。 输入如下命令,按回车或点击确定按钮,就会打开桌面图标设置功能。 rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,0 桌面图标设置功能 这样就出现了原来的桌面图标设置功能,需要显示什么自己勾选即可。

使用浏览器特征检测浏览器

// Opera 8.0+ var isOpera = (!!window.opr && !!opr.addons) || !!window.opera || navigator.userAgent.indexOf(’ OPR/’) >= 0; // Firefox 1.0+ var isFirefox = typeof InstallTrigger !== ‘undefined’; // Safari 3.0+ "[object HTMLElementConstructor]" var isSafari = /constructor/i.test(window.HTMLElement) || (function (p) { return p.toString() === "[object SafariRemoteNotification]"; })(!window[’safari’] || (typeof safari !== ‘undefined’ && safari.pushNotification)); // Internet Explorer… Read More »

MYSQL数据库的一些常用操作

mysql查询重复数据(把有重复的给列出来) SELECT * FROM `it_info` GROUP BY `last_name` HAVING COUNT(*)>1 使用replace批量更新SQL某个字段的某个字符,比如批量替换last_name里包含的’位空 update `user` set `last_name`=REPLACE(`last_name`,"’","") WHERE `last_name` LIKE "%’%" 批量更新数据库数组,在长度小于5的数据前面加0 update `address` set `zip`=concat(’0′,`zip`) WHERE length(`zip`) < 5 Think PHP 查询数据库某一个字段的唯一值  Db::table(’user’)->distinct(true)->field(’class’)->select(); 这将仅取出 class 唯一值的列表 Db::table(’user’)->group(’class’)->order(’name desc’)->select(); 这将取出class唯一的每一条记录,组成列表 随机取同一个字段里面,不同分组的一条记录  Db::table(’user’) ->where(’status’,1) ->orderRand() ->buildSql(); 先构建一个子查询,把所有值随机排序  Db::table($subQuery . ‘ a’) ->group(’class’) ->orderRand() ->select(); 然后再把子查询的值分组

js replace 全局替换的操作方法

js 的replace 默认替换只替换第一个匹配的字符,如果字符串有超过两个以上的对应字符就无法进行替换,这时候就要进行一点操作,进行全部替换。 <script language="javascript"> var strM = "这是要被替换的字符串啊啊!"; //在此我想将字母a替换成字母A alert(strM.replace("啊","额")); </script> 上面这段代码,只能替换第一个字符“啊”,第二个“啊”就无法替换,这样就没办法满足大多数使用js(replace)的需求 <script type="text/javascript" language="javascript"> var s = "这是要被替换的字符换啊啊!"; alert(s); alert(s.replace(/啊/g, "额")); 这样,就可以实现整个字符串的替换。 我们这里用到了正则函数的/g全部的使用。这样就可以实现整个字符串的替换效果。 下面,我们大家可能还有个需求无法满足,那就是,我们替换定值可以使用这个,但是替换变量怎么使用? 接下来,就说一下替换变量的使用方式。 简单介绍一下eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。接下来主要靠这个函数。 <script> var ch = "变量"; var reg = "/"+ch+"/g"; var str = "这是一个变量,这是一个变量"; var val = str.replace(eval(reg),"替换"); alert(val); </script> 但是如果要替换的字符串中含有/符号时,上面的就不能用了,需要采取以下方法 <script> var ch =… Read More »

JS解密相关资料

Javascript \x 反斜杠x 16进制 编解码: js 里 \x 开头的通常是16进制编码的数据,下面代码实现编解码: 解码 function decode(str){ return str.replace(/\\x(\w{2})/g,function(_,$1){ return String.fromCharCode(parseInt($1,16)) }); } decode(’\x5f\x63\x68\x61\x6e\x67\x65\x49\x74\x65\x6d\x43\x72\x6f\x73\x73\x4c\x61\x79\x65\x72’) "_changeItemCrossLayer" 编码 function encode(str){ return str.replace(/(\w)/g,function(_,$1){ return "\\x"+ $1.charCodeAt(0).toString(16) }); } encode("_changeItemCrossLayer") "\x5f\x63\x68\x61\x6e\x67\x65\x49\x74\x65\x6d\x43\x72\x6f\x73\x73\x4c\x61\x79\x65\x72" 在线解码地址: 批量  https://jscompress.com/   单个 https://www.mokuge.com/tool/js_x16/

禁用WEBRTC隐藏真实IP

WEBRTC为什么检测到我的真实IP地址? 首先,您需要认识到通过WebRTC显示 PC/平板电脑/电话的所有IP地址,不是VPN / tor / socks的问题或缺点,但这是浏览器的问题。 WebRTC项目是由Google创建的,主要用于在用户浏览器(p2p连接)之间传输流数据(音频和视频),而无需任何辅助软件(例如Skype)或插件。这使支持WebRTC的浏览器不仅可以访问您的网络(独立于操作系统),而且可以通过STUN协议检测您的公共IP地址和本地IP地址,从而绕过任何类型的NAT建立p2p连接。 目前,已知在浏览器Chrome(版本23起),Firefox(版本22起)和Opera(版本18起)中默认启用了WebRTC,这使得这些浏览器的用户无法使用匿名功能。您应该禁用WebRTC的支持,以阻止它检测您的公共IP地址和本地IP地址。 如何在Firefox中禁用WebRTC: Mozilla Firefox中的WebRTC自Firefox 22开始受支持,并且默认情况下处于启用状态。 要禁用RTCPeerConnection并防止IP地址泄漏,请转到about:config并切换media.peerconnection.enabled到false。 要禁用媒体设备,请同时将media.navigator.enabled和切换media.peerconnection.enabled至false。 如何在Opera中停用WebRTC: 转到“设置”->“更多设置”在“ WebRTC”部分中,选择“在没有代理的情况下停用UDP” 如何在Chrome中禁用WebRTC: 自Chrome 23版起,默认情况下启用Google Chrome和基于Chromium的网络浏览器中的WebRTC,无法禁用;目前尚不知道如何通过浏览器设置在Chrome中禁用WebRTC的方法;为了防止IP地址泄漏,请使用官方的webrtc.org扩展WebRTC Network Limiter。 如何在Android中使用Chrome禁用WebRTC: 在最新版的适用于Android的Chrome浏览器上,即使设置中存在此类选项,也无法禁用WebRTC。如果您需要在Android上使用禁用了WebRTC的浏览器,建议您使用Firefox for Android。您可以根据上面的Firefox说明在其中禁用WebRTC。

浏览器对象:navigator 解析

Navigator对象的属性 navigator.appCodeName : 浏览器的代码名; 例如:“Mozilla” 浏览器代码名 navigator.appMinorVersion :浏览器的次级版本 navigator.appName :浏览器的名称 浏览器的名称 navigator.appVersion : 浏览器的平台和版本信息;把该字符串传递给 parseInt() 只能获取主版本号。 浏览器的平台和版本信息 浏览器的主版本号 navigator.browserLanguage :当前浏览器的语言 navigator.cookieEnabled :指明浏览器中是否启用cookie的布尔值 浏览器中是否启用cookie navigator.cpuClass :浏览器系统的CPU等级 navigator.onLine :指明系统是否处于脱机模式的布尔值 浏览器是否处于脱机模式 navigator.platform :运行浏览器的操作平台系统 浏览器的操作平台系统 navigator.systemLanguage :OS使用的默认语言 navigator.userAgent :由客户机发送服务器的user-agent头部的值 浏览器的user-agent navigator.userLanguage :OS的自然语言设置 汇总 windows、iphone、android三大平台的主流浏览器解析 Windows操作系统浏览器系列: IE浏览器系列 特征表现:均以 “mozilla/” 开头,”msie x.0;” 中的x表示其版本; 判断方法:粗略判断可以只检索 “msie x.0;” 字符串即可 Windows版Firefox 特征表现:以”mozilla/x.0″开头,包含”windows nt”,”gecko/”和”firefox/” ;… Read More »

TinyPortMapper 实现中继(中转/端口转发)加速

首先建立并进入文件夹(假设你当前目录是  /root  ,那么 tinyPortMapper的目录就是  /root/tinyPortMapper  ): mkdir tinyPortMapper && cd tinyPortMapper wget –N —no–check–certificate “https://github.com/wangyu-/tinyPortMapper/releases/download/20180620.0/tinymapper_binaries.tar.gz” 最新的版本查看 https://github.com/wangyu-/tinyPortMapper   # 解压下载的压缩包 tar –xzf tinymapper_binaries.tar.gz   # 然后你需要判断一下VPS的位数,运行 uname -m 会输出VPS的位数,如果显示 x86_64 则是64位,如果显示 386/i386/686/i686 这四个之一,则是32位。 # x86_64,64位运行: mv tinymapper_amd64 tinymapper # 386/i386/686/i686 四个之一,32位运行: mv tinymapper_x86 tinymapper   最后只需要赋予一下执行权限即可继续看下面的使用方法了。 chmod +x tinymapper 使用方法 完整端口转发命令 nohup ./tinymapper –l 0.0.0.0:2333 –r… Read More »

win10远程桌面怎么保存密码?win10让远程桌面记住密码的方法

win10安装版系统自带远程桌面连接功能非常实用,一般登录远程的时候都会有账号和密码,为了保护系统安全。每次连接远程桌面都要输入密码比较麻烦,方便下次不用输入密码,可让远程桌面连接记住密码,下面小编教你win10远程桌面如何保存密码。 win10系统远程桌面保存密码的方法: 方法一: 1、小娜搜索里输入“凭据管理器”; 2、回车进入控制面板–点击Windows凭据–删除账号相关的凭据即可。 方法二: 1、在win10系统桌面上,开始菜单。右键,运行。 2、输入gpedit.msc,确定。 3、在本地计算机策略-计算机配置-管理模板-系统-凭据分配。找到允许分配保存的凭据用于仅 NTLM 服务器身份验证。右键,编辑。 4、单击启用。点击“将服务器添加到列表”后的“显示”按钮。 5、在值处,输入 TERMSRV/*。再确定。再应用,确定。 6、返回win10桌面上,单击开始菜单,单击Windows附件-远程桌面连接。 7、输入计算机,用户名。再单击保存。这样即可。 win10系统让远程桌面记住密码的设置步骤分享到这里了,此设置帮助用户记着复杂密码,避免发生无法进入远程桌面的情况。