Skip to content

Commit 45d30c7

Browse files
authored
Merge pull request #228 from sboldyreva/crypto-js
Add crypto-js page and updated JS projects list
2 parents 95f418a + 7b4cc30 commit 45d30c7

File tree

3 files changed

+192
-23
lines changed

3 files changed

+192
-23
lines changed

docs/.vuepress/components/ELSTechnology.vue

Lines changed: 69 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -161,31 +161,11 @@ const techData = [
161161
versions: "1.5.x | 1.6.x | 1.7.x | 1.8.x",
162162
link: "./angularjs/",
163163
},
164-
{
165-
name: "RequireJS",
166-
versions: "2.3.x",
167-
},
168-
{
169-
name: "Passport",
170-
versions: "0.2.2",
171-
},
172164
{
173165
name: "Lodash",
174166
versions: "4.5.0 | 4.17.x",
175167
link: "./lodash/",
176168
},
177-
{
178-
name: "Loopback",
179-
versions: "3.x | 2.x",
180-
},
181-
{
182-
name: "YUI",
183-
versions: "3.18.1",
184-
},
185-
{
186-
name: "Next.js",
187-
versions: "12.3.x",
188-
},
189169
{
190170
name: "request",
191171
versions: "2.88.0 | 2.88.2",
@@ -199,6 +179,7 @@ const techData = [
199179
{
200180
name: "crypto-js",
201181
versions: "3.3.0",
182+
link: "./crypto-js/",
202183
},
203184
{
204185
name: "vue-template-compiler",
@@ -214,19 +195,19 @@ const techData = [
214195
},
215196
{
216197
name: "jsonwebtoken",
217-
versions: "8.5.1",
198+
versions: "0.4.0 | 8.5.1",
218199
},
219200
{
220201
name: "ip",
221-
versions: "1.1.5,2.0.0",
202+
versions: "1.1.5 | 2.0.0",
222203
},
223204
{
224205
name: "Quill",
225206
versions: "1.3.7",
226207
},
227208
{
228209
name: "undici",
229-
versions: "5.28.4",
210+
versions: "5.28.5",
230211
},
231212
{
232213
name: "rollup",
@@ -244,6 +225,71 @@ const techData = [
244225
name: "formidable",
245226
versions: "2.1.2",
246227
},
228+
{
229+
name: "bootstrap",
230+
versions: "4.6.2",
231+
},
232+
{
233+
name: "braces",
234+
versions: "2.3.2",
235+
},
236+
{
237+
name: "dompurify",
238+
versions: "2.3.0 | 2.4.3",
239+
},
240+
{
241+
name: "express",
242+
versions: "3.21.2",
243+
},
244+
{
245+
name: "express-jwt",
246+
versions: "0.1.3",
247+
},
248+
{
249+
name: "form-data",
250+
versions: "2.3.3",
251+
},
252+
{
253+
name: "i18next",
254+
versions: "23.16.8",
255+
},
256+
{
257+
name: "jquery",
258+
versions: "1.12.4",
259+
},
260+
{
261+
name: "jsonpath-plus",
262+
versions: "7.2.0",
263+
},
264+
{
265+
name: "jspdf",
266+
versions: "2.5.2",
267+
},
268+
{
269+
name: "marked",
270+
versions: "2.3.3",
271+
},
272+
{
273+
name: "mongodb",
274+
versions: "2.2.36",
275+
},
276+
{
277+
name: "multer",
278+
versions: "1.4.5-lts",
279+
},
280+
{
281+
name: "node-forge",
282+
versions: "0.10.0",
283+
},
284+
{
285+
name: "mysql2",
286+
versions: "2.3.3",
287+
},
288+
{
289+
name: "ssr-window",
290+
versions: "4.0.2",
291+
},
292+
247293
],
248294
},
249295
{

docs/.vuepress/config-client/sidebar.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ export default {
5151
"/els-for-runtimes-and-libraries/",
5252
"/els-for-runtimes-and-libraries/angular/",
5353
"/els-for-runtimes-and-libraries/angularjs/",
54+
"/els-for-runtimes-and-libraries/crypto-js/",
5455
"/els-for-runtimes-and-libraries/dotnet/",
5556
"/els-for-runtimes-and-libraries/lodash/",
5657
"/els-for-runtimes-and-libraries/openjdk/",
Lines changed: 122 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,122 @@
1+
# CryptoJS
2+
3+
Endless Lifecycle Support (ELS) for CryptoJS from TuxCare provides security fixes for CryptoJS versions that have reached their end of life. This allows you to continue running CryptoJS applications without vulnerability concerns, even after official support has ended.
4+
5+
6+
## Supported CryptoJS Versions
7+
8+
* CryptoJS 3.3.0
9+
10+
## Connection to ELS for CryptoJS Library
11+
12+
This guide outlines the steps needed to integrate the TuxCare ELS for the CryptoJS library.
13+
14+
## Step 1: Get Token
15+
16+
You need a token in order to use TuxCare ELS CryptoJS library. Anonymous access is disabled. To receive the token, please contact [[email protected]](mailto:[email protected]).
17+
18+
## Step 2: Set Up ELS for CryptoJS
19+
20+
TuxCare provides ELS for CryptoJS as an NPM package, hosted on a secure internal registry. Follow the steps below to add it to your project and get started.
21+
22+
1. Navigate to the root directory of your CryptoJS project.
23+
2. Create a `.npmrc` file or update it if it already exists.
24+
25+
**Example:**
26+
27+
```text
28+
my-crypto-js-project/
29+
├── node_modules/
30+
├── package.json
31+
├── .npmrc ⚠️ ← Create it here
32+
└── package-lock.json
33+
```
34+
35+
3. Use an editor of your choice (e.g., VS Code) to add the following registry address line:
36+
37+
<CodeWithCopy>
38+
39+
```text
40+
registry=https://registry.npmjs.org/
41+
@els-js:registry=https://nexus.repo.tuxcare.com/repository/els_js/
42+
//nexus.repo.tuxcare.com/repository/els_js/:_auth=${TOKEN}
43+
```
44+
45+
</CodeWithCopy>
46+
47+
:::warning
48+
Replace ${TOKEN} with the token you received from [[email protected]](mailto:[email protected]).
49+
:::
50+
51+
4. Update your `package.json` file to replace your CryptoJS dependencies with the TuxCare packages:
52+
53+
<CodeWithCopy>
54+
55+
```text
56+
"dependencies": {
57+
"crypto-js": "npm:@els-js/[email protected]"
58+
}
59+
```
60+
61+
</CodeWithCopy>
62+
63+
5. You need to remove the `node_modules` directory and the `package-lock.json` file, and also clear the `npm cache` before installing the patched packages. Use the following commands:
64+
65+
<CodeWithCopy>
66+
67+
```text
68+
rm -rf node_modules package-lock.json && npm cache clean --force
69+
```
70+
71+
</CodeWithCopy>
72+
73+
6. Run the following command to install the ELS version of the CryptoJS library (token for the TuxCare repository will be automatically picked up from your `.npmrc` file):
74+
75+
<CodeWithCopy>
76+
77+
```text
78+
npm install
79+
```
80+
81+
</CodeWithCopy>
82+
83+
You will see an output like:
84+
85+
```text
86+
added 1 package, and audited 2 packages in 815ms
87+
88+
found 0 vulnerabilities
89+
```
90+
91+
7. You've successfully installed the Tuxcare ELS version of the CryptoJS library into your project.
92+
93+
## Vulnerability Exploitability eXchange (VEX)
94+
95+
VEX is a machine-readable format that tells you if a known vulnerability and is actually exploitable in your product. It reduces false positives, helps prioritize real risks.
96+
97+
TuxCare provides VEX for CryptoJS ELS versions: [security.tuxcare.com/vex/cyclonedx/els_lang_javascript/crypto/](https://security.tuxcare.com/vex/cyclonedx/els_lang_javascript/crypto/).
98+
99+
## How to Upgrade to a Newer Version of TuxCare Packages
100+
101+
If you have already installed a package with a `tuxcare.1` suffix and want to upgrade to a newer release (for example, `tuxcare.32`), there are two options:
102+
103+
* **Option 1**. Run the `npm install` command with the specific version. This will automatically update both `package.json` and `package-lock.json`:
104+
105+
<CodeWithCopy>
106+
107+
```text
108+
npm install crypto-js@npm:@els-js/[email protected]
109+
```
110+
111+
</CodeWithCopy>
112+
113+
* **Option 2**. Update the version string in your `package.json`, remove installed files and clear npm cache to avoid conflicts:
114+
115+
<CodeWithCopy>
116+
117+
```text
118+
rm -rf node_modules package-lock.json && npm cache clean --force
119+
npm install
120+
```
121+
122+
</CodeWithCopy>

0 commit comments

Comments
 (0)