分类 技术 下的文章

!注意,本文并不一定完全支持Windows 11,本篇文章仅供学习参考!

想发这篇文章是因为刚刚想在Windows XP使用RDP的时候,
察觉到WinXP它默认并不支持多用户登录。
再加上我家里也有一台打了多用户补丁的Win10,
所以就在这里写下一些经历吧。

总所周知,Windows的家庭版一直都不支持RDP和多用户登录。
所以如果我们想让家庭版支持RDP和多用户,我们就得对Termsrv.dll做一些手脚。

幸运的是,针对于Windows Vista以上的系统,
互联网上有个叫做Rdpwarp的工具可以帮助我们自动化修补。
这是它原始版本(由stascorp开发)的Github链接
但是截止发稿之前他已经有7年已经没有更新了。
所以Github上也就出现了一些兼容最新版Windows 10的改版。

本文比较推荐使用由sebaxakerhtc改版的rdpwarp。
我是从知乎上了解到的,经过测试之后才推荐的。
这是它的github链接,推荐的原因是相比原版更加开箱即用。
并且相对于原版来说也多了一些功能:
2025-01-24T13:10:59.png
而且它也支持一部分win11最新版本,
截止发稿时间它的配置文件仍然在更新。

除了rdpwarp外,站长也用了另外一个叫做SuperRDP的工具。
它是由anhkgg改版的,这是它的Github链接
他是在我发现sebaxakerhtc的改版之前,
所找到的我当时可用的一个rdpwarp改版版本。
它的配置文件需要关注公众号获取密码才能获取的,
目前还不清楚是否在维护,或许你也可以去看一眼。




理论上来讲,rdpwarp的主要核心在于rdpwarp.ini。
它负责告诉rdpwarp根据Windows版本号如何修补Termsrv.dll的。

插嘴一下,在原仓库的readme.md中其中有一句是写了:
RDP Wrapper does not patch termsrv.dll, it loads termsrv with different parameters
这是因为Rdpwarp会在系统中复制一份termsrv.dll保存为rdpwarp.dll在程序目录
如果直接去替换termsrv.dll的话,会因为此文件被Windows占用+权限不足的原因无法替换。
随后作者利用了注册表,将Termsrv的服务劫持成软件目录下的rdpwarp.dll。
实际上修补也是有修的,只不过不影响原来的Termsrv.dll罢了。

如果你对这个配置文件感兴趣,可以看看这些链接:
https://github.com/sebaxakerhtc/rdpwrap.ini
https://www.youtube.com/watch?v=FiD86tmRBtk
https://www.cnblogs.com/suv789/p/18350291
https://liujiahua.com/blog/2021/04/22/software-RDPWrapper/

并且在最新的win10中,微软将rfxvmt.dll在家庭版中移除,
使用最新改版的rdpwarp还会自动帮你修补这个文件。
原版的rdpwarp不确定是否会进行修补,
但仓库的readme.md中也提到了这个问题,
rfxvmt.dll的文件链接也在其中。




而关于Windows XP及其以下的,则需要自己去手动修补了。
在本文提到的这个rdpwarp,并不适用vista以下的系统。
直接用ida反编译,一个一个去找函数改也不现实,
而且对于我们这些小白来说会挺难受的。
所以本文推荐的方法,
就是使用网上现成的文件和注册表进行修补。

本文将以Windows XP为例子,不教rdp怎么启用。
参考链接在此,RDP怎么启用你可以去百度查找,很简单的。
(实际上XP的RDP启用方法和现在的RDP启用方法基本没有区别)
首先下载UniversalTermsrvPatch_2009(点击即可下载)
随后根据你的系统运行UniversalTermsrvPatch-x86.exe (32位)或UniversalTermsrvPatch-x64.exe(64位)
(不知道?让微软教你
(实际上,除Windows XP SP3 64-bit Edition和Windows XP 64-bit Edition以外都是32位的。如果你的xp启动画面有x64那就是64位,否则你哪怕用更新补丁升的SP3那也一样是32位)
在弹出的窗口中,点击破解(Patch)即可开始修补,
随后他会在windows\System32下创建一个Termsrv.dll.backup的备份文件,
之后要求你重新启动Windows XP,重启之后自己再配置下rdp即可使用。
如果你想恢复,只需要在程序里点击恢复。
或者手动改名备份文件为Termsrv.dll,运行xp.reg即可

前言

大概很早的时候,我就注意到这台诺基亚(包括其它较新的诺基亚机型)中软件列表里都有个视频中心这个东西

后来经过一番了解之后,这个视频中心是利用Media RSS(貌似又叫RSS 2.0)技术获取网站的视频内容。

今天下午醒来的时候没什么事做,所以便研究了一下这个rss

(这篇文章仍然会继续更新。。。如果我还有在研究的话,如果有什么问题可以发邮箱问我)

行动

首先使用Charles对Nokia进行了Wifi代理(关于SSL证书部分请查看"导入SSL证书"部分)

如图所示,Nokia的视频中心会在获取视频之前,利用自己的3gpp-gba请求头向connectivity-test.ext.nokia.com发送请求
2025-01-04T08:09:07.png

这个url在Website WayBack中是403的结果,而如今则是404。根据url的字面意思也很好猜,就是测试连接用的

利用Charles重写将404 Not Found 替换成200 OK 即可
2025-01-04T08:15:23.png

接下来呢就是MediaRSS的部分了,继续之前你可以简单看一下这些相关资料:

https://www.rssboard.org/media-rss

https://support.signagelive.com/en/articles/138180-using-items-media-content-elements-and-validity-in-media-rss-feeds

总而言之,一个视频中心可以用的MediaRSS的xml是这样的:

<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" version="2.0">
<channel>
    <title>帆帽之洋</title>
    <link>http://fanhat.cn/</link>
    <description>你好!这是Fanhat的MediaRSS</description>
    <item>
        <title>IndiHome paket Phoenix meme (打打だいずRemix)</title>
        <link>http://fanhat.cn/media_rss/IndiHome.mp4</link>
        <description>IndiHome paket Phoenix meme (Remix) --- 打打だいず</description>
        <media:category>All</media:category>
        <media:category>打打だいず</media:category>
        <media:content url="http://fanhat.cn/media_rss/IndiHome.mp4" type="video/mp4" ></media:content>
    </item>
</channel>
</rss>

这段rss是我目前在我诺基亚上测试时能用的一些标签,因为弄的时候比较潦草所以还没有完全测试完

至于其他的样例,除了上面的参考资料以外你还可以看一下本站的MediaRSS的主用RSS还有样例RSS

(本站在无特殊要求下均可使用http,但是目前的rss还是人工手动编写的。域名基本是固定的主域名(fanhat.cn),如果出现了连接等问题,记得检查一下对应链接所使用的域名是否和你可以访问的域名一致呢💦)

还有关于视频这部分,目前现代的mp4由于分辨率和码率均与以前的不同,这里推荐你可以使用一些工具进行转换。比如咱自己用的这个工具的破解版
2025-01-04T09:03:20.png

结尾

操作完上面的步骤后理论上你的视频中心可以用了,效果大概是这样的:
1000351643.jpg
1000351644.jpg
1000351642.jpg

但是目前还有很多问题还没有解决💦

最主要的还是connectivity-test.ext.nokia.com,若要解决这些的话要做的事情还有很多。

(顺便留个笔记:https://stackoverflow.com/questions/1193740/is-there-a-hosts-file-on-symbian-series-60-5th-edition-devices http://wiki.forum.nokia.com/index.php/Hosts_file_on_S60_3.x_Devices http://discussion.forum.nokia.com/forum/showpost.php?p=609875&postcount=4

也希望我未来有机会能继续弄下去吧~

导入SSL证书

本段参考资料主要有以下:
https://www.geekzone.co.nz/forums.asp?forumid=11&topicid=11062 (Archive)

http://www.jacco2.dds.nl/networking/symbian_cert_import.html (Archive)

http://forum.nokia.com/main/resources/technologies/browsing/support/phone_security_faq.html (Archive)

http://blogs.forum.nokia.com/index.php?op=ViewArticle&blogId=104645&articleId=334 (Archive)

http://discussion.forum.nokia.com/forum/archive/index.php/t-77239.html (Archive)

http://discussion.forum.nokia.com/forum/showthread.php?t=77239 (Archive)

https://www.cnblogs.com/52why/p/13292708.html

简单来讲,

你需要先在Charcles上代理Windows,随后在浏览器访问chls.pro/ssl并下载证书

之后使用openssl,在下载到的证书的所在文件夹上使用cmd上并按照格式使用这条命令:openssl x509 -in <下载到的证书文件名> -out content.der -outform DER

如果没有问题的话,你会在同目录下看到content.der

对于我这部诺基亚(即S60v5)来讲,之后将content.der复制进手机,然后在文件管理找到此文件并点击运行并导入就行。

而对于老机型来讲,你就需要根据上面的参考资料进行搭建一个网站服务器,然后根据你的手机所出生年代判断你需要给content.der返回什么类型的MIME才能让手机自带的浏览器识别并自动安装证书。

由于本人并没有参考资料上的手机机型(或者说,我有。但是我的那个机型不支持WIFI),所以没有办法进行测试。也就暂时不在本文章写入关于这段的详细说明了。

如果你有其他问题欢迎评论或邮箱私信~