Skip to content

Commit f8644c0

Browse files
committed
google translations of WSO announcements
1 parent 0d73d8b commit f8644c0

12 files changed

+1930
-119
lines changed

vigilante_suspected/README.md

+196-109
Large diffs are not rendered by default.

vigilante_suspected/create_func_longevity

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ echo '|Serial Number|Initial appearance|Final appearance|'
44
echo '|-------------|------------------|----------------|'
55
ls -1 renamed_functions/*/R*php |
66
sed -e 's/renamed_functions\///' -e 's/\// /' -e 's/R//' -e 's/.php//' |
7-
sort -k2.1n -k1.1 |
7+
sort -k2.1n -k1.1 | sed 's/\(....-..-..\)./\1/' |
88
awk 'NR==1 { firstdate=$1; sn=$2 } \
99
NR > 1 { if ($2 == sn) { lastdate = $1; } \
1010
if ($2 != sn) {printf "|%s|%s|%s|\n", sn, firstdate, lastdate; firstdate=$1; sn=$2; lastdate=""}\

vigilante_suspected/def_graphs

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ rm -f defs.cont
33
touch defs.cont
44
for FNAME in extracted_defs/*
55
do
6-
TIMESTAMP=$(basename $FNAME | sed 's/def.//')
6+
TIMESTAMP=$(basename $FNAME | sed -e 's/def.//' -e 's/.$//' )
77
# Skip timestamps in which no changes take place
88
if [[ $TIMESTAMP =~ 2018-11-2[235] ]]
99
then
@@ -35,4 +35,4 @@ do
3535
fi
3636
done
3737

38-
sort -k2.1n defs.cont | awk 'NR==1 {last=$2; print $0} NR>1 {if (last != $2) { print "\n"} print $0; last=$2}' > defs.lines
38+
sort -k2.1n defs.cont | awk 'NR==1 {lastline=$0; last=$2; print $0} NR>1 {if (lastline != $0) {if (last != $2) { print "\n"} print $0; last=$2} lastline=$0}' > defs.lines

vigilante_suspected/extract_defs

+6
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,12 @@ do
1515
EPOCH=$( fgrep '[REQUEST_TIME]' $NEWFNAME | awk '{print $3}' )
1616
TIMESTAMP=$(date --date="@$EPOCH" '+%Y-%m-%d' )
1717

18+
LETTER=a
19+
while [[ -f extracted/defs.$TIMESTAMP$LETTER ]]
20+
do
21+
LETTER=$(echo $LETTER | tr "a-z" "b-za")
22+
done
23+
TIMESTAMP=$TIMESTAMP$LETTER
1824

1925
# Serialized array
2026
echo '<?php' > extracted/defs.$TIMESTAMP

vigilante_suspected/function_counts

+3-3
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,12 @@ done
1111
echo '|Capture date|Serial Number Count |Deletions |Additions |'
1212
echo '|------------|:-------------------:|:---------:|:---------:|'
1313

14-
PREV=serial_number_lists/2016-04-17
14+
PREV=serial_number_lists/2016-04-17a
1515
for FNAME in serial_number_lists/*
1616
do
17-
if [[ $FNAME != serial_number_lists/2016-04-17 ]]
17+
if [[ $FNAME != serial_number_lists/2016-04-17a ]]
1818
then
19-
TIMESTAMP=$(basename $FNAME | sed 's/def.//')
19+
TIMESTAMP=$(basename $FNAME | sed -e 's/def.//' -e 's/.$//' )
2020
# Elements of B not in A:
2121
# fgrep -v -f A B
2222
ADDITIONS=$( fgrep -x -v -f $PREV $FNAME | wc -l )
-2.04 KB
Loading

webshells/wso_in_depth/README.md

+20-4
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,25 @@ like [Dameware](https://www.dameware.com/).
99
https://www.wordfence.com/blog/2017/06/wso-shell/
1010
https://forum.antichat.ru/threads/103155/
1111

12-
A family of programs, modified in the wild by everyone.
12+
A family of programs, modified in the wild by many programmers.
1313

1414
![WSO phylogeny](wso_phylogeny.png?raw=true)
1515

1616
## Origin
1717

1818
![oRb's avatar](orb_avatar.jpg?raw=true)
19+
![oRb's antichat avatar](avatar_m.png?raw=true)
20+
21+
Announcements
22+
23+
* https://forum.antichat.ru/threads/103155/
24+
* http://xaker.name/arhiv/threads/20827/
1925

2026
## Timeline
2127

28+
1.
29+
2.
30+
2231
###
2332

2433
2.1 - 2.5 orderly development by oRb (?)
@@ -37,9 +46,10 @@ I can't find a 1.x version.
3746

3847
### 4.x HardLinux variants
3948

40-
Started with WSO 2.4,
49+
Started with WSO 2.3, (how do we know this?)
4150
worked from there,
4251
development hosted by github.
52+
Russian-language developers.
4353

4454
## Design
4555

@@ -84,6 +94,8 @@ This is a unique, distinctive feature of all WSO variants.
8494
call_user_func('action' . $_POST['a']);
8595
}
8696

97+
Which actions use c/p1/p2/p3?
98+
8799
I suspect that between `call_user_func()`,
88100
the modularity provided by the action functions,
89101
and keeping HTML in PHP strings (rather than interleaved code and HTML),
@@ -106,6 +118,8 @@ or with a cookie, no explicit login needed.
106118
This often happens when attackers invoke `actionRC`,
107119
"a=RC" POST parameter and value.
108120

121+
Is it worth mentioning the vigilante cookie?
122+
109123
### "action" functions
110124

111125
The value of the POST parameter named "a" determines a category
@@ -146,9 +160,11 @@ Several other string-substituted variants occur.
146160

147161
The Russian 4.x variants descend from 2.4 -
148162
they use a PHP session to keep state rather than keeping state in a cookie.
163+
Why did phylogeny indicate a 2.3 origin?
149164

150-
WSO 2.5.1 is WSO 2.5 with a "call home" borrowed from fx29
151-
web shells. WSO 2.8 is 2.5.1 with another "call home".
165+
WSO 2.5.1 is WSO 2.5 with a "phone home" borrowed from fx29
166+
web shells. WSO 2.8 is 2.5.1 with an additional "phone home",
167+
the previous phone home is preserved.
152168

153169
### Conserved Features
154170

webshells/wso_in_depth/WSO (web shell) | ANTICHAT - Security online community.html

+319
Large diffs are not rendered by default.

webshells/wso_in_depth/xaker.name/WSO web shell | Archive xaker.name, hacker forum.html

+106
Large diffs are not rendered by default.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
#!/bin/bash
2+
wget -r -np -k http://xaker.name/arhiv/threads/20827

0 commit comments

Comments
 (0)