杂谈nginx 301 重定向在非常规破解中的利用

在某些特定的情况下,如果软件采用本地加服务器校验的方式进行注册时候。单纯的本地破解可能很快就是失效,而服务器破解就成了一个可行的方式。例如pycharm系列的软件,但是有的时候认证服务器和资源服务器在同一个机器上,那么如果直接劫持校验服务器,资源也会无法下载,例如某editor。网上的破解脚本很多,基本都是基于文章最后的python代码。

但是这个东西虽然屏蔽掉了破解校验,但是无法下载服务器的模版和脚本。因为所有的资源都被劫持了,于是通过nginx进行重定向就成了一个选择。可以直接参考下面的代码:

location /***editor {
proxy_pass http://www.***.com/****editor/;
proxy_redirect off ;
 
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

至于如何跳过序列号校验,参考这个代码吧:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
from BaseHTTPServer import HTTPServer, BaseHTTPRequestHandler
 
HOST = "127.0.0.1"
PORT = 80
 
class RequestHandler(BaseHTTPRequestHandler):
    def do_GET(self):
        self.send_response(200)
        self.send_header("Content-Type", "text/html")
        self.end_headers()
        self.wfile.write("<ss>valid</ss>")
 
def run_server():
    server = HTTPServer((HOST, PORT), RequestHandler)
    server.serve_forever()
 
if __name__ == "__main__":
    # redirect www.sweetscape.com to 127.0.0.1 in hosts
    run_server()
Continue Reading

osx cycript image not found

今天在osx上运行cycript的时候出现了如下的错误:

/Users/obaby/Desktop/小项目/keygen/cycript_0.9.594/cycript
dyld: Library not loaded: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/libruby.2.0.0.dylib
Referenced from: /Users/obaby/Desktop/小项目/keygen/cycript_0.9.594/Cycript.lib/cycript-apl
Reason: image not found
Abort trap: 6

看起来貌似是因为libruby.2.0.0.dylib文件没有找到,打开ruby目录发现果然没有2.0的文件,只有2.3的。处理方法也很简单,直接把2.3的复制一份,改为2.0即可

Continue Reading

Broadlink-e-control-db-dump bug fix

This script will “parse” the broadlink e-Control Android application **rmt.db database** and dump the IR / RF codes (in HEX format) for selected accessories into a text file which can be later used with broadlink-python to send the codes to the RM PRO hub.

这个东西在处理逻辑上有bug,如果出现查询为空的情况,就挂了。

Continue Reading

domoticz 检测设备在线状态

最近又开始折腾语音控制相关的东西,比较郁闷的是家里的电视机和机顶盒貌似并不能直接接入。于是每次想要开关电视和机顶盒就需要知道设备的在线状态。那么为了获取在线状态,最简单的办法就是创建一个开关,标记当前设备的状态:

设备类型如下:

如果不能手工添加开关,现在硬件页面创建一个Dummy类型的设备,新增加的开关类型为Dummy。

Continue Reading