Skip to content

Commit f12e837

Browse files
authored
Merge pull request #26 from LittleBigRefresh/patchwork
Docs changes for Patchwork
2 parents 3d8de1c + 3aa0b2c commit f12e837

File tree

7 files changed

+141
-46
lines changed

7 files changed

+141
-46
lines changed

.idea/AndroidProjectSystem.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
-21.5 KB
Binary file not shown.
-18.1 KB
Loading

Docs/topics/Library.topic

Lines changed: 43 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -10,57 +10,65 @@
1010
You should have been given a URL by the person operating the server you're trying to connect to.
1111
Copy this URL into the second field - the one named 'Server URL'.
1212
</p>
13-
<p>
14-
In the case of the official Bonsai instance, you will use the IP <code>http://lbp.lbpbonsai.com:2095/lbp</code>
15-
</p>
13+
<note>
14+
In the case of the official Bonsai instance, you should use the IP <code>http://lbp.lbpbonsai.com:2095/lbp</code>
15+
</note>
1616
<p>
1717
Next, hit the button that says 'AutoDiscover'.
1818
This will trigger Refresher to attempt to connect to the remote server to gather more details and extra patching instructions from it.
1919
AutoDiscover is required for some games, so you should always use it.
2020
</p>
2121
<p>
22-
Most servers based on Bunkum, most notably Refresh, should support this protocol.
23-
Other servers such as Project Lighthouse do not support this protocol.
22+
If successful, Refresher will automatically fill in the appropriate settings from that server.
2423
</p>
24+
</snippet>
25+
26+
<snippet id="lobby-password">
2527
<p>
26-
If successful, Refresher will open a pop-up presenting the information it gathered from the server.
27-
Click 'Yes' to accept these settings, and Refresher will automatically do the rest when you patch.
28+
If patching an LBP game, you can also set a lobby password to play multiplayer.
29+
Current security patches require that multiplayer be effectively disabled by randomizing the encryption key.
2830
</p>
29-
30-
<img src="autodiscover-success.png" alt="A dialog box from Refresher, indicating that AutoDiscover has been performed successfully." />
31-
32-
<note id="use-autodiscover-note">
33-
<p>If you are a developer of a custom server for any game, you can read up on our AutoDiscover protocol's documentation <a href="https://docs.littlebigrefresh.com/autodiscover-api">here</a>.</p>
34-
<p>We recommend you support it, as it helps users ensure that they are following the correct procedures before they launch the game.</p>
35-
</note>
31+
32+
<p>
33+
By setting your own key for multiplayer,
34+
you can regain the ability to play with those who are using the same key!
35+
</p>
36+
37+
<warning>
38+
<p>
39+
ONLY SHARE THIS CODE WITH YOUR FRIENDS, OTHERWISE FACE SECURITY VULNERABILITIES.
40+
</p>
41+
<p>
42+
Read more about LBP security <a href="https://docs.littlebigrefresh.com/lbp-security.html">here</a>.
43+
</p>
44+
</warning>
3645
</snippet>
3746

3847
<snippet id="download-refresher">
3948
<p>
4049
To download Refresher, you must first visit the <a href="https://github.com/LittleBigRefresh/Refresher/releases/latest">Releases Page</a>.
4150
</p>
4251
<p>
43-
Then, pick the option corresponding to the operating system that is running on your computer.
44-
Refresher currently does not provide built binaries for macOS due to issues with code signing. To run
45-
Refresher on macOS, you must build the project yourself via the dotnet toolset.
52+
Then, pick the option corresponding to the OS running on your computer.
53+
On macOS, you will have to run a terminal command to get Refresher to run correctly. Those instructions are listed on the GitHub release.
4654
</p>
4755
<img src="refresher-artifacts.png" alt="Refresher Artifacts"/>
4856
<p>
49-
Once you have downloaded the built binaries for your operating system,
57+
Once you have downloaded the built binaries for your computer,
5058
simply unzip the archive, and you should have an executable.
5159
</p>
5260
</snippet>
5361

5462
<snippet id="supported-version-notice">
55-
<note>
63+
<warning>
5664
Refresh only officially supports the latest release of every LBP game.
5765
Please update your game to the latest release <b>before</b> following this guide, else you may run into unexpected errors.
58-
</note>
66+
</warning>
5967
</snippet>
6068

6169
<snippet id="final-patching-message">
6270
<p>
63-
When all is set and ready to go, register an account on <a href="https://lbp.littlebigrefresh.com/">our website</a>,
71+
When all is set and ready to go, register an account on <a href="https://lbp.lbpbonsai.com/">our website</a>,
6472
and then open the game and start browsing levels to activate your account!
6573
</p>
6674
</snippet>
@@ -71,4 +79,18 @@
7179
For a UMD or Playstation Store copy, press triangle on the game in the XMB and select Update.
7280
For a dumped copy of the game, you can use <a href="https://old.reddit.com/r/PSP/wiki/updateiso/">this guide</a> to update your dump.</p>
7381
</snippet>
82+
83+
<snippet id="reconfigure-patch">
84+
<note>
85+
This only applies to the LBP games, which all use Patchwork.
86+
You cannot use this method to patch new games, but all games that you've patched beforehand should automatically update.
87+
</note>
88+
<p>
89+
If you'd like to switch servers, you can easily do so! In Refresher, click 'Reconfigure Patch for PS3'.
90+
You should see your previous settings.
91+
</p>
92+
<p>
93+
Simply change the Server URL, or whatever else you'd like to change, and hit 'Patch!'. Refresher will update Patchwork's configuration for you.
94+
</p>
95+
</snippet>
7496
</topic>

Docs/topics/lbp/lbp-security.topic

Lines changed: 61 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -4,26 +4,23 @@
44
<topic xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
55
xsi:noNamespaceSchemaLocation="https://resources.jetbrains.com/writerside/1.0/topic.v2.xsd"
66
title="LittleBigPlanet &amp; Security" id="lbp-security">
7-
8-
<note>
9-
<p>
10-
This page is a bit of a placeholder since I'm rushing to get registrations back up.
11-
Sorry if this is confusing.
12-
- jvyden
13-
</p>
14-
</note>
15-
167
<warning>
178
<p>
189
<b>TL;DR</b>: LBP is unsafe for both your save data, and the console it's running on when playing online.
1910
You should play behind a VPN and take frequent backups of both your LBP save
2011
and anything you else want to keep on the console you're playing on.
2112
</p>
2213
<p><b>
23-
The best way to protect yourself against any attacks is to play offline.
14+
Although there are some miscellaneous workarounds and patches,
15+
the ultimate way to protect yourself against any attacks is to play offline.
2416
</b></p>
2517
</warning>
2618

19+
<note>
20+
These warnings don't apply to <b>LittleBigPlanet PSP</b>, as it doesn't use scripting or multiplayer.
21+
It <i>is</i>, however, <b><i>still applicable</i></b> to <b>LBP Vita</b> as it is a fork of LBP2's engine.
22+
</note>
23+
2724
<chapter title="What is 'scripting'?" id="scripting">
2825
<p>
2926
As the scripting portion of LittleBigPlanet has been cracked open,
@@ -46,7 +43,7 @@
4643
<note>
4744
The community has also used scripts to develop innocent things, such as
4845
<a href="https://gamebanana.com/mods/536722">LBAC</a>, an anti-cheat,
49-
or server patchers, or certain joke items/meta memes.
46+
in-game server patchers, or certain joke items/meta memes.
5047
</note>
5148

5249
<p>
@@ -100,34 +97,77 @@
10097
Okay, I'll just play my friends with who I trust and deny anyone else.
10198
</i>'
10299

103-
Unfortunately, using <i>another</i> exploit, it's possible for attackers to join your session
100+
Unfortunately, using <i>another</i> exploit, it's possible for attackers to fake an in-game invite and join your session
104101
without any consent on your end.
105102
</p>
103+
</chapter>
104+
105+
<chapter title="Your IP is exposed because of P2P" id="ip">
106+
<p>
107+
The <i>LittleBigPlanet</i> games use a multiplayer scheme called peer-to-peer (P2P).
108+
This means each player connects directly to a host - another player.
109+
</p>
110+
111+
<note>
112+
Some modern P2P variants, like Steam Networking, can mask your IP address and obscure it from attackers.
113+
However, the PS3's aging software doesn’t support anything like this.
114+
</note>
106115

107116
<p>
108-
I won't go into how this is possible for obvious reasons, but just know that in theory,
109-
someone could join your game and immediately spawn something that corrupts your save, or something far worse.
117+
Because each player needs to know the host's IP to play multiplayer with them,
118+
your IP is shared with anyone who connects to you on RPCN or PSN.
110119
</p>
120+
121+
<p>
122+
An attacker could use your IP to perform a DDoS attack (or "boot" you offline),
123+
or to discover your general location.
124+
125+
In rare cases, they might also mess with services you've port forwarded,
126+
though most home networks don't have ports forwarded unless you've done so yourself.
127+
</p>
128+
129+
<p>
130+
To hide your IP and protect against these types of attacks, you can use a <b>VPN</b>
131+
to route all traffic through a secure server.
132+
133+
In the case of PS3, there is no explicit mechanism for VPNs, so you'll have to figure out how to proxy connections through your computer.
134+
</p>
135+
136+
<note>
137+
An alternative to VPNs is tightening your firewall to disallow all incoming connections to your PS3.
138+
</note>
111139
</chapter>
112140

113141
<chapter title="Protecting Yourself" id="protections">
114142
<p>
115-
There's not much that could be done about these exploits right now,
116-
pending some work on making patches to all the games that blocks P2P scripts from being synced over multiplayer.
143+
A workaround has been developed by <a href="https://github.com/Zaprit">Zaprit</a> called <b><a href="https://github.com/HugeSpaceship/Patchwork">Patchwork</a></b>
144+
that newer versions of <a href="https://github.com/LittleBigRefresh/Refresher">S</a> will automatically deploy for you.
145+
</p>
146+
147+
<p>
148+
Patchwork currently works by changing the encryption key used for P2P multiplayer,
149+
effectively preventing connections from people who don't know the key.
117150
</p>
118151

119152
<p>
120-
You could theoretically make a firewall rule to block P2P multiplayer, making yourself NAT type 3,
121-
but this protection could potentially fail, and it blocks you from playing with your friends.
153+
The downside is that this still doesn't block scripts from being shared over P2P,
154+
nor does it make it as easy to play with your friends.
155+
By default, keys are randomized, and you'll have to share your own 'password' with friends to play with them.
122156
</p>
123157

158+
<note>
159+
In real-world terms, this is like changing the locks on your safe instead of securing anything inside.
160+
It'll still help, but if you get past the lock, either by breaking it or guessing the code,
161+
you can still do whatever you want to what's inside.
162+
</note>
163+
124164
<p>
125-
Your best bet is to play offline while a patch is developed, or accept the risk and make frequent backups.
126-
The silver lining is that these attacks haven't been performed yet, at least that I'm aware of. But that doesn't mean LBP is safe.
165+
Servers like Bonsai and Beacon will block connections that don't use the latest versions of these patches,
166+
effectively requiring you to use these patches before you can play.
127167
</p>
128168

129169
<p>
130-
Join our <a href="https://discord.gg/xN5yKdxmWG">Discord</a> and be the first to get notified when such a patch is developed.
170+
Join our <a href="https://discord.gg/xN5yKdxmWG">Discord</a> and be the first to get notified when more patches are developed.
131171
</p>
132172
</chapter>
133173
</topic>

Docs/topics/patching/ps3.md

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,13 @@
22

33
<include from="Library.topic" element-id="supported-version-notice"/>
44

5-
Refresher has native support for decrypting, encrypting and patching PS3 games. This guide aims to show you how to operate Refresher's PS3 patcher.
5+
Refresher has native support for decrypting, encrypting and patching PS3 games, including the LittleBigPlanet series.
6+
This guide shows you how to operate Refresher's PS3 patcher.
7+
8+
<note>
9+
For the LBP games, Refresher will instead use a new patching method called Patchwork to hook into the game to provide extra security patches.
10+
It comes with the benefit that it is configurable without a full repatch, with the downside that it only works for select games.
11+
</note>
612

713
<include from="Library.topic" element-id="download-refresher"/>
814

@@ -20,7 +26,7 @@ Once you've gotten a modded firmware up and running, head on over to GitHub and
2026

2127
Move the installer .pkg onto your PS3, and use your PS3's package manager to get the installer on your PS3, then run it to install webMAN-MOD onto your system.
2228

23-
<note>webMAN-MOD Lite will not work to patch digital copies. Please ensure you are using the full version of webMAN-MOD.</note>
29+
<warning>webMAN-MOD Lite will <i>not</i> work to patch digital copies. Please ensure you are using the full version of webMAN-MOD.</warning>
2430

2531
## Step 2: Find your PS3's IP Address
2632

@@ -33,10 +39,21 @@ Click the 'Connect' button, and Refresher should connect to your PS3. It may tak
3339

3440
## Step 3: Fill in the server URL
3541

42+
Next, go to Refresher and click either 'Patch LBP1/2/3 for PS3' or 'Patch any PS3 game' depending on if you're patching an LBP game.
43+
The latter will not work for LBP as it does not include critical security fixes through Patchwork, so beware!
44+
3645
<include from="Library.topic" element-id="fill-in-server-url"/>
3746

47+
## Step 3.5: Lobby passwords
48+
49+
<include from="Library.topic" element-id="lobby-password"/>
50+
3851
## Step 4: Patch!
3952

40-
Now, click the patch button. It should decrypt the game, patch, then place a working EBOOT onto your PS3.
53+
Now, click the patch button. It should decrypt the game, patch, then place a new EBOOT and a copy of Patchwork onto your PS3!
54+
55+
<include from="Library.topic" element-id="final-patching-message" />
56+
57+
## Step 4.5: Reconfiguring the patch
4158

42-
<include from="Library.topic" element-id="final-patching-message" />
59+
<include from="Library.topic" element-id="reconfigure-patch" />

Docs/topics/patching/rpcs3.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,16 @@
55
Refresher has native support for decrypting and patching RPCS3 games. This guide aims to show you how to operate Refresher's RPCS3 patcher.
66
At the end of this, you will be able to select your server of choice inside the game patches menu of RPCS3.
77

8+
<warning>
9+
<p>
10+
Refresher is currently out of date and doesn't support patching LBP games with Patchwork.
11+
Following this guide for LBP games won't work for the time being.
12+
</p>
13+
<p>
14+
Join our <a href="https://discord.gg/xN5yKdxmWG">Discord</a> and be the first to get notified when RPCS3 support is fixed!
15+
</p>
16+
</warning>
17+
818
<warning>
919
<p>
1020
If you're intending to play on <b>Bonsai</b>, you do not need to follow this guide.

0 commit comments

Comments
 (0)