Jump to content
XPEnology Community

Leaderboard

Popular Content

Showing content with the highest reputation on 10/23/2021 in all areas

  1. I made the bsp and config files of the new pat file for DS3615xs (I will make the bsp and config files of ds918+ later today) Welcome to test (I have not tested usability,If you can’t boot it, please leave a message to me!) And you can download the old pat of DS3615xs from here:https://share.llilii.cn/xpenology/pat/dsm7.0.1-42218/DSM_DS3615xs_42218_OLD.pat https://github.com/unknown-o/redpill-load
    2 points
  2. The RedPill is back! As some of you may be aware a lot of research materials as well as the code for parts of the kernel module were pulled from GH. We're happy to report it's back and fully public! Before further ado we have a small sneak-peek of the current state: Repositories Both LKM code and the research materials are present in two repositories. Both are automatic forks from our internal serves and are updated few times a day. - RedPill LKM: contains the current version of the Linux kernel module source code along with implementation details description - DSM Research/Docs: hosts documentation for developers regarding the inner details of DSM boot process While the dates and authors in both repos are anonymized, the history is preserved. Thus, your forks and PRs will work properly. The Current State As of now the DSM installs & boots properly (sort of, continue reading). We are currently working on a toolset for generating the loader image automatically so that testing new iterations is easier for people not familiar with full inner workings of the kernel component & the bootloader itself. The tool with instructions will be published in a separate repo. The kernel module is currently missing the PCI-IDs shimming and RTC emulation. While the latter is most likely not crucial, the former must be implemented. However, it's not really straight-forward as naturally the kernel doesn't have a high-level API to lie about nonexisting hardware The current revision of the LKM causes some errors to be sent to the PMU. If anyone in the community (@Vortex? @IG-88?) has an idea of what is the source of these we will be grateful for some pointers. --R--R-p--R-4 -9 --R-r-K-8-3-8 As of now we're working on a robust PCI emulation layer. This isn't hard in theory but has many pitfalls if we want to do it properly and none of us ever studied inner workings of PCI on x86 As described in the PCI document in the research repo there are three methods. We picked the third one (full PCI emulation) as it allows for creation of devices which are indistinguishable from real ones. While this is the hardest to pull off properly, it doesn't rely on a hack but rather an official and documented Linux API. Q&A Who are you? We're a group of passionates dating back to the (great) phreaking times. If you know where to look you will find us on IRC Can I get involved in the development? Yes! As this project took a lot from the community we strongly believe it should continue to be shared and developed under GPL. We greatly appreciate any PRs on GH. I'm not a developer, can I help? At this stage most likely not. However, we wish to have some testing version not too far in time. For various reasons we cannot (and not willing to) accept any donations. If you want to make us feel better leave a like and a good word for us, as naturally this isn't our full-time job :))) Why is making the code public matters? We believe that the code of the loader MUST be public. We aren't sure if the general community is aware of the degree of control the "loader" has over their box. Despite the name it is not just a load-and-leave situation. The majority of the loader code is active in the system for the whole time (you can check that by doing lsmod and looking for an entry which doesn't look like a proper module name but one or more random characters). The kernel module can do literally anything you can as root... and more. It can read files, send them in the background somewhere, hide files from you, execute programs with higher-than-root privileges without showing them in any tools, use your CPU while showing 0% in htop etc... and the worst part is that you will never know that it happened (unless you're monitoring your device from the outside). However, after this scary paragraph we can say two things: Jun's loader doesn't seem to do any evil things, and the actions any loader needs to perform in the system after the initial load are minimal (e.g. fake responses to "turn on HDD led"). We've also reviewed the code we cloned and it's a solid base. Additionally, making the code open means anybody can tinker with it and adjust to new scenarios instead of relying to bit-patching a .ko. What happened to previous repos? Are you crediting the previous author? The author of the original code wishes to distance himself from the project and we are respecting that. That's all we know. Do you/anyone have the code of Jun's loader? We saw that there's some confusion on the forum regarding Jun's loader and why the work had to start from scratch. Neither the Jun's loader code nor any deeper implementation details regarding inner working of his amazing loader were ever shared with the public. We weren't able to obtain the code through our sources either. There's a good chance he never shared the with anybody. Is Syno trying to block the loader? While we cannot comment on any actions, we can surely talk about the code. The new kernel contains something which isn't present before 25556: https://github.com/RedPill-TTG/dsm-research/blob/master/quirks/boot_params-validation.md It is true that the "va not found" error triggered by the Jun's loader when used with >6.2.3 is indeed related to offsets which changed in the new build. However, the rabbit hole doesn't stop there. The new "boot_params" check doesn't seem to have any other purpose than detecting violation of the chain of trust. So did the new kernel build broke the loader intentially? Most likely not (it's probably a by-product of the new validation code present very early in the image) but why the boot params validation was placed in 6.2.4 in the first place? We leave the interpretation to the reader. When we can expect a stable release? Will it work on v7? We cannot promise any date for two reasons: 1) we can hit an unexpected roadblock (e.g. see errors mentioned above), and 2) we will like to test it and have it working on v6.2.4 and v7 as well (as of now v7 is available for selected devices only and from our tests it is not fully stable even on the devices it was officially released). Some of the protections found in v6 were pulled from v7... but don't worry, they will be back as soon as they port them... it's a carrot and a stick situation. cc for people who followed the original topic: @AleAmadoC @alexku44 @Amoureux @Balrog @blindspot @Bobbenoster @Bobur @coolinx @dimcheff @Fede @FiberInternetUser @gadreel @ilovepancakes @impala_84 @intrax @jarugut @juud @kiwiuk @lemon55 @loomes @minigranis @NeoID @Nuno @Piteball @pkdick1 @pro_info @profet @rufik @s2k7 @scoobdriver@setsunakawa @smilenkovski @smileyworld @smoojay @snakefox666 @Snyaify @SpiRe @T-REX-XP @The Chief @toolazy @vasiliy_gr
    1 point
  3. same error ,I downloaded https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS918%2B_42218.pat and checked the sha256sum is a403809ab2cd476c944fdfa18cae2c2833e4af36230fa63f0cdee31a92bebba2 I guess it case by synology updating the pat file. how to fix the shell ?? "sha256sum DSM_DS918+_42218.pat a403809ab2cd476c944fdfa18cae2c2833e4af36230fa63f0cdee31a92bebba2 DSM_DS918+_42218.pat"
    1 point
  4. NVMe patch ok (hardcorde you pci id into libsynonvme.so.1) works fine. The speed is really better than jun's loader 6.2.3:
    1 point
  5. WoW !! Have the answer from synology, they will upload the GPL sources on SourceForge ASAP !! Wait & see !! They said the global deploy of 7.0.1 is not finished now, and we just have to wait 1 or 2 week to have the kernel sources
    1 point
  6. Hello, is it possible to post a overwiew how to install dsm 7.01? Greats Dirk
    1 point
  7. You must use the @pocopicodriver. because there is a bug with the stock driver. You will have for sure a kernel panic. Just add the extension on your user_config.json I you must use other driver and have no space left, you can use a custom img with a larger 1st partition. I already gave the method, or you can use repo forked with the image builded
    1 point
  8. Check this out for solution: https://github.com/SynoCommunity/spksrc/issues/4897 Essentially this commands can fix it: # ssh to your NAS first sudo -i mv /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt.bak curl -Lko /etc/ssl/certs/ca-certificates.crt https://curl.se/ca/cacert.pem
    1 point
  9. IN DSM7.0 DS918 2021-08-19T12:57:25+08:00 U820 synofoto-face-extraction[5952]: /source/synophoto-plugin-face/src/face_plugin/lib/face_detection.cpp:214 Error: (face plugin) load network failed 2021-08-19T12:57:25+08:00 U820 synofoto-face-extraction[5952]: uncaught thread task exception /source/synofoto/src/daemon/plugin/plugin_worker.cpp:90 plugin init failed: /var/packages/SynologyPhotos/target/usr/lib/libsynophoto-plugin-face.so Can you upgrade
    1 point
  10. Sorry, I forgot there is a cache here. I just downloaded DSM again_ DS918+_ 42218.pat tried, The syno modified their release file without any notice!!!
    0 points
×
×
  • Create New...